Skip to content

feat: add invoice row details, tax summary fields, and fix XML element ordering#36

Merged
samupl merged 1 commit intomasterfrom
feat/invoice-row-details-and-tax-summary
Mar 25, 2026
Merged

feat: add invoice row details, tax summary fields, and fix XML element ordering#36
samupl merged 1 commit intomasterfrom
feat/invoice-row-details-and-tax-summary

Conversation

@samupl
Copy link
Copy Markdown
Owner

@samupl samupl commented Mar 25, 2026

  • Fix: Nazwa element placement — Moved buyer name (Nazwa) inside DaneIdentyfikacyjne where the FA(3) schema requires it, instead of directly under Podmiot2
  • Fix: XML element ordering — Moved Adres before Nazwa in Podmiot2, and P_13/P_14 tax summary before P_15 in Fa
  • Add: Invoice row fields — InvoiceRow now supports unit_of_measure (P_8A), quantity (P_8B), unit_net_price (P_9A), net_value (P_11), and delivery_date (P_6A)
  • Add: Tax rate type safety — Replaced int tax field with TaxRate literal type covering all 14 valid TStawkaPodatku enum values. Added constants (TAX_23, TAX_0_WDT, TAX_NP_I, etc.)
  • Add: OSS/IOSS support — InvoiceRow.tax_oss field (P_12_XII) for EU consumer VAT rates not in the standard enum (e.g. 21%, 19%)
  • Add: Tax summary — TaxSummary model with all P_13_/P_14_ fields for net/VAT totals per rate group, added as optional field on InvoiceData

@samupl samupl merged commit 342fb34 into master Mar 25, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant