Rechnungsdaten auf ZUGFeRD abbilden
Der Service Task „Rechnungsdaten für ZUGFeRD aufbereiten" wandelt die Rechnungsdaten aus dem Pantarey-Formular in die strukturierte ZUGFeRD-Datenstruktur (EN16931, Cross-Industry Invoice) um. Damit wird die Grundlage für die elektronische Rechnungsstellung nach dem europäischen Standard geschaffen.
Funktionsweise
Der Service nimmt die flachen Rechnungsdaten (nach der Betragsberechnung) und erzeugt daraus ein strukturiertes JSON-Objekt gemäß dem ZUGFeRD EN16931-Standard:
- Verkäufer und Käufer werden aus den Rechnungsdaten extrahiert und den entsprechenden ZUGFeRD-Feldern zugeordnet.
- Rechnungspositionen werden in das CII-Zeilenformat (Cross-Industry Invoice) überführt.
- Steueraufschlüsselung, Zahlungsbedingungen und Lieferdaten werden automatisch abgeleitet.
- Mengeneinheiten werden von Klartext (z. B. „Stunden", „Stück") in die standardisierten UN/ECE-Codes (z. B.
HUR,C62) übersetzt.
Input-Parameter
Als Eingabe wird das Rechnungsobjekt erwartet — idealerweise nach der Betragsberechnung durch Rechnungsbeträge berechnen:
{
"app_invoice_no": "RE-2026-001",
"app_invoice_date": "2026-04-08",
"app_due_date": "2026-05-08",
"app_seller_name": "Meine Firma GmbH",
"app_seller_street": "Musterstraße 1",
"app_seller_zip": "12345",
"app_seller_city": "Musterstadt",
"app_seller_country": "DE",
"app_seller_vat_id": "DE123456789",
"app_recipient_name": "Kunde AG",
"app_recipient_street": "Kundenweg 5",
"app_recipient_zip": "54321",
"app_recipient_city": "Kundenstadt",
"app_invoice_items_custom": [
{
"app_item_description": "Beratung",
"app_amount": 10,
"app_item_price_net": 150.00,
"app_vat_percentage": 19,
"app_unit": "Stunden",
"app_items_total_sum_net": 1500.00
}
],
"app_net_total": 1500.00,
"app_vat_total": 285.00,
"app_gross_total": 1785.00
}
Erläuterung:
- Alle Felder mit dem Präfix
app_seller_*beschreiben den Rechnungssteller. - Alle Felder mit dem Präfix
app_recipient_*beschreiben den Rechnungsempfänger. - Die berechneten Beträge (
app_net_total,app_vat_total,app_gross_total) werden aus dem vorherigen Berechnungsschritt übernommen.
Output
Das Rechnungsobjekt wird um das Feld app_zugferd_data erweitert, das die vollständige ZUGFeRD-Datenstruktur enthält:
{
"app_zugferd_data": {
"exchangeddocumentcontext": { ... },
"exchangeddocument": {
"id": "RE-2026-001",
"typecode": "380",
"issuedatetime": "20260408"
},
"supplychaintradetransaction": {
"includedsupplychaintradelineitem": [ ... ],
"applicableheadertradeagreement": { ... },
"applicableheadertradedelivery": { ... },
"applicableheadertradesettlement": { ... }
}
}
}
Dieses Feld wird anschließend vom Service E-Rechnung erstellen (ZUGFeRD) verwendet, um die XML-Daten in ein PDF/A-3-Dokument einzubetten.
Unterstützte Mengeneinheiten
| Eingabe | UN/ECE Code | Bedeutung |
|---|---|---|
| Stück, Stk | C62 | Stück |
| Pauschal | LS | Pauschal |
| Stunde, Stunden | HUR | Stunde |
| Tag, Tage | DAY | Tag |
| Monat, Monate | MON | Monat |
| km | KMT | Kilometer |
| kg | KGM | Kilogramm |
| Liter | LTR | Liter |
| m, m², m³ | MTR, MTK, MTQ | Meter / Fläche / Volumen |
Hinweise
- Dieser Service wird typischerweise zwischen der Betragsberechnung und der ZUGFeRD-Einbettung eingesetzt.
- Die Zuordnung erfolgt automatisch — es müssen keine ZUGFeRD-spezifischen Felder manuell befüllt werden.
- Optional können zusätzliche Felder wie
app_buyer_reference(Leitweg-ID),app_service_date,app_service_period_startundapp_service_period_endübergeben werden. - Der Rechnungstyp-Code ist standardmäßig
380(Handelsrechnung).
Tipp
Für die meisten Anwendungsfälle wird empfohlen, statt der einzelnen Zwischenschritte den Service Komplette E-Rechnung erstellen zu verwenden — dieser übernimmt Berechnung, PDF-Erzeugung, ZUGFeRD-Mapping und XML-Einbettung automatisch in einem Schritt.