npm / @e-invoice-eu/core
@e-invoice-eu/core
What changed in @e-invoice-eu/core 2 to 3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-25.
5 breaking1 security5 new APIs and options4 behavior and defaults1 tooling18 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli init@e-invoice-eu/core 332 changes
Breaking changes 5
The software now uses cbc:CompanyLegalForm instead of cbc:LegalForm.
Amount elements no longer include @currencyID, which is forbidden by CII-DT-031.
ReceivableSpecifiedTradeAccountingAccount is now placed inside ApplicableHeaderTradeSettlement.
A global ID is downgraded when no scheme is present.
The invoice interface has a breaking change; code referencing its types directly may need changes.
New APIs and options 5
The library allows overriding invoice metadata; this experimental feature may be removed in the next major release.
CII Extensions are supported for invoice note subject codes (BT-21) through this special element.
Base64 padding is optional.
Adds the UnitPriceAmount type for BT-146, BT-147, and BT-148.
Adds a postprocessor option to modify invoice data before XML is rendered.
Behavior and default changes 4
Top-level cbc:Note can now be a single string value or an array of strings.
Top-level x-cii:SubjectCode can now be a single string value or an array of strings.
Uses the new tag schema.
VAT date codes are automatically converted between UBL UNCL 2005 and CII UNCL 2445 according to the selected invoice format.
Fixes and other changes 18
Top-level cbc:Note elements are now nested correctly in CII output.
The embedded colour profile now includes the number of components, fixing PDF/A output intent.
Updates the base64 regex.
Updates BT 21 to the specification.
Reads cbccompanylegalform instead of cbclegalform so BT 33 is not silently dropped.
Emits CII due date type code from cac:InvoicePeriod/cbc:DescriptionCode.
Fixes the missing Creditor Reference ID.
Preserves property order when downgrading ram:GlobalID to ram:ID.
Reports the correct version.
Invoice period description codes are now mapped to CII.
Downgrading ram:GlobalID to ram:ID now preserves the correct ID.
Seller party identifications are mapped to CII.
The CII mapping for the payee identifier is fixed.
Fixes mapping of cac:BillingReference to CII.
Fixes CII price handling.
Invalid tags are avoided.
Fixes XMP metadata encoding.
Fixes invalid elements in XRechnung CII classcode and specifiedlinetradeagreement.
@e-invoice-eu/core 22 changes
Security 1
Fixes vulnerabilities.
Tooling 1
Adds a slim Docker image for deployment.