Alle 28 Länder unterstützt
17. Mai 2026Country-Coverage verdoppelt sich von 14 auf 28. Neue Format-Slots qr-bill (CH) und peppol-ubl (PL/PT/RO), Peppol-BIS UBL auf AT/CZ/ES/FR, und mehrere Request-Felder relaxed.
14 → 28 Länder
CY, DK, EE, FI, GB, GR, IE, LT, LU, LV, MT, NO, SE, SI ergänzt — jedes Land mit eigenem Adapter.
qr-bill (CH)
32-Zeilen-SPC-Payload als Plain-Text — du renderst den Swiss QR-Code selbst.
peppol-ubl
Reines Peppol BIS 3.0 UBL für PL/PT/RO, neben dem nationalen CIUS.
Schema-Relaxation
Felder, die der Generator zur Laufzeit defaultet, sind im Request-Schema jetzt explizit optional.
Neue Country-Coverage
Bisher: AT, BE, BG, CH, CZ, DE, ES, FR, HU, IT, NL, PL, PT, RO (14). Die 14 neuen Länder unterstützen alle pdf und ubl (Peppol BIS 3.0 UBL für Cross-Border B2B):
| Land | EAS | Besonderheit |
|---|---|---|
| SE | 0007 | Org-Nr (Luhn), F-skatt-Notice, SEK |
| NO | 0192 | Mod-11 Org-Nr, NOK |
| DK | 0184 | CVR, FIK/Giro Payment-Slips |
| FI | 0213 | Y-tunnus, EUR |
| IE | 9925 | VAT IE1234567X, EUR |
| GB | 0096 | UK-VAT, GBP |
| LU | 9938 | Matricule, EUR |
| MT | 0235 | C-Number, EUR |
| CY | 0096 | HE-Number, EUR |
| SI | 9952 | EUR, SI-UBL-2.0-CIUS unter ubl |
| EE | 0208 | Reg-Code, EUR |
| LV | 0233 | Reg-Number, EUR |
| LT | 0200 | Imones-Kodas, EUR |
| GR | 0196 | AFM, EUR, mydata als nationaler Slot |
Per-Country /api/v1/invoice/formats liefert jetzt 28 Einträge.
Beispiel: Schweden UBL-Generierung
1POST /api/v1/invoice/SE/ubl/generate2 3{4 "invoice": {5 "invoiceNumber": "SE-2026-0001",6 "type": "invoice",7 "issueDate": "2026-05-17",8 "currency": "SEK",9 "seller": {10 "name": "Helvetia AB",11 "street": "Storgatan 1",12 "city": "Stockholm",13 "postalCode": "11122",14 "countryCode": "SE",15 "vatId": "SE556677889901",16 "countrySpecific": { "orgnr": "5566778899" }17 },18 "buyer": { "name": "Kunde GmbH", "countryCode": "DE", "vatId": "DE123456789" },19 "items": [ { "description": "Beratung Mai 2026", "quantity": 8, "unitPrice": 1200, "taxRate": 25 } ],20 "subtotal": 9600.00,21 "total": 12000.0022 }23}Neue Format-Slots
/api/v1/invoice/CH/qr-bill/generate
Emittiert den strukturierten 32-Zeilen-SPC-Payload (UTF-8 text/plain) — den Inhalt, der in den Swiss QR-Code der Empfangsschein-Sektion encoded wird. Kein XML, kein PDF. Extern rendern.
/api/v1/invoice/{PL|PT|RO}/peppol-ubl/generate
Reines Peppol BIS 3.0 UBL für Cross-Border B2B aus den drei Ländern, deren ubl-Slot das nationale CIUS belegt (KSeF, CIUS-PT, eFactura). Vorher unzugänglich.
/api/v1/invoice/{AT|CZ|ES|FR}/ubl/generate
Peppol-BIS UBL auf vier weiteren Ländern — vorher emittierten diese Endpoints „Unsupported format“, obwohl die Generatoren bereits existierten. Jetzt verdrahtet.
Beispiel: Swiss QR-Bill-Payload
1POST /api/v1/invoice/CH/qr-bill/generate2 3# Returns UTF-8 text/plain — the 32-line SPC payload that4# encodes into the Swiss QR code. Use this to render the5# QR code yourself (custom PDF layout, mobile preview, etc.).6 7Content-Type: text/plain; charset=utf-88 9SPC10020011112CH443199912300088901213S14Helvetia Solutions AG15...16SCOR17RF1853900754703418Rechnung CH-2026-101019EPDFormat-Profile
POST /api/v1/invoice/DE/zugferd/generate akzeptiert formatOptions.profile; analog für FR/facturx mit EN16931 | BASIC.
| Profile | URN | Use Case |
|---|---|---|
| EN16931 | urn:cen.eu:en16931:2017 | Comfort-Profil, voller EN 16931 |
| BASIC | urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic | Minimal-Set für einfache Rechnungen |
| EXTENDED | urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended | Sub-Lines, Bauabschnittsrechnungen, Drittzahler |
Schema-Relaxation im Request-Body
Felder, die der Generator zur Laufzeit ohnehin defaultet, sind im Zod-Schema jetzt explizit optional. Rein additiv — alte Clients schicken sie weiterhin, neue brauchen sie nicht mehr.
Jetzt optional
party.street/city/postalCodeitems[].positionitems[].grossAmountpaymentTerms(kompletter Block, Fallback dueDays: 30)
paymentMethods[].type Aliases
credit_transfer— Alias für bank_transfer (UNTDID 4461 Code 30)danish_fik— UNTDID 93giro— UNTDID 50