Zum Inhalt

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_start und app_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.