Files
skr/changelog.md

4.4 KiB

Changelog

2025-10-28 - 1.2.1 - fix(skr.classes.account)

Remove incorrect SKR04 automatic account 3300; improve VAT posting validation and test isolation; update readme hints and CI settings

  • ts/skr.classes.account.ts: Removed account '3300' from the SKR04 automatic accounts list (3300 is Fahrzeugkosten and must be postable).
  • ts/skr.postingkeys.ts: Relax VAT amount requirement — VAT amount is no longer required when posting to VAT accounts or to debtor/creditor accounts (settlement lines).
  • ts/skr.classes.journalentry.ts: Detect VAT lines in journal entries and pass VAT-aware context into posting key validation to avoid false-positive VAT errors.
  • test/test.skr04.ts: Use timestamped database names to ensure isolated test runs and avoid DB conflicts during CI.
  • readme.hints.md: Updated status and notes (tests passing, recent fixes, architecture notes and validation pipeline).
  • .claude/settings.local.json: Added local CI/agent permission settings used by the project environment.

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.2.0] - 2025-01-09

Added

  • E-Invoice Integration: Full XRechnung/ZUGFeRD support with import/export capabilities
  • Invoice Processing: Automatic booking of electronic invoices to accounting
  • Advanced Export Features: Comprehensive export functionality for accounts, balances, and ledger data
  • PDF Generation: Professional PDF report generation with customizable templates
  • Security Features: Merkle tree audit trails and digital signature support for tamper-proof records
  • Invoice Storage: Dedicated invoice persistence layer with search and filtering
  • Invoice Adapter: Bidirectional conversion between e-invoice formats and internal data model
  • Invoice Booking Engine: Intelligent automatic account detection and VAT splitting
  • Cryptographic Signatures: Support for signing exports with private keys and certificates
  • Structured Export Formats: Export data in multiple formats (JSON, CSV, PDF)
  • Jahresabschluss Export: Complete annual closing package generation
  • New dependencies: @e-invoice-eu/core, @fin.cx/einvoice, merkletreejs, node-forge
  • Enhanced documentation with invoice and export examples

Changed

  • Updated README with comprehensive documentation of new features
  • Expanded API reference with new invoice and export methods

[1.1.0] - 2025-01-09

Added

  • SKR standard validation in postJournalEntry to ensure accounts match official SKR03/SKR04 data
  • Module-level Maps for O(1) SKR standard lookups
  • validateAccountsAgainstSKR method for checking account type and class compliance
  • Smart validation that allows SKR04 class 8 custom accounts
  • Warning logs for non-standard accounts and type/class mismatches

Fixed

  • Test isolation issues by adding timestamps to database names
  • SKR04 test using correct account mappings (9xxx equity accounts)

Changed

  • Enhanced README with accurate API documentation and testing instructions
  • Updated legal section to Task Venture Capital GmbH

[1.0.0] - 2025-01-09

Added

  • Initial release of @fin.cx/skr module
  • Complete SKR03 implementation (Process Structure Principle)
  • Complete SKR04 implementation (Financial Classification Principle)
  • Double-entry bookkeeping validation system
  • MongoDB persistence layer using @push.rocks/smartdata
  • Comprehensive account management (100+ predefined accounts per SKR standard)
  • Transaction posting and reversal capabilities
  • Journal entry support with multiple lines
  • Financial reporting suite:
    • Trial Balance generation
    • Income Statement (P&L)
    • Balance Sheet
    • General Ledger
    • Cash Flow Statement
  • DATEV-compatible export formats
  • Full TypeScript support with comprehensive type definitions
  • API layer for external integration
  • CSV import/export functionality
  • VAT handling and cost center tracking
  • Automatic balance calculations
  • Period closing functionality
  • Batch transaction processing

Technical Features

  • Type-safe database operations
  • Indexed MongoDB collections for performance
  • Transaction atomicity and consistency
  • Comprehensive validation rules
  • 4-digit account number validation
  • Account class hierarchy (0-9)
  • Support for custom accounts
  • Real-time balance updates