BT-9 ist das Fälligkeitsdatum – der Tag, bis zu dem die Rechnung zu zahlen ist. In csv2zugferd setzen Sie es über paymentTerms.dueDate. Es macht das Zahlungsziel eindeutig, statt es nur in einer Freitext-Zahlungsbedingung zu beschreiben.
Was ist BT-9?#
BT-9 (Payment due date) gibt das konkrete Datum an, bis zu dem die Zahlung erwartet wird. Es ist ein strukturiertes Datum und damit maschinell auswertbar – im Unterschied zu einer reinen Textangabe wie „zahlbar innerhalb von 14 Tagen".
Pflicht oder optional?#
Optional nach EN 16931. Sinnvoll ist BT-9 überall dort, wo ein festes Zahlungsziel gilt. Dann kann der Empfänger das Datum direkt übernehmen, ohne es aus den Zahlungsbedingungen errechnen zu müssen.
YAML-Key in csv2zugferd#
paymentTerms:
description:
value: "Zahlbar ohne Abzug bis zum Faelligkeitsdatum"
dueDate:
column: "INVOICE_DUEDATE"dueDate entspricht BT-9. description ist die optionale Freitext-Zahlungsbedingung und ersetzt das strukturierte Datum nicht.
CSV-Beispiel#
| INVOICE_DATE | INVOICE_DUEDATE |
|---|---|
| 31.05.2026 | 24.06.2026 |
INVOICE_DUEDATE (24.06.2026) wird auf BT-9 gemappt. Das Datum muss dem in csv.dateFormat konfigurierten Format entsprechen.
So landet der Wert im ZUGFeRD-XML#
paymentTerms.dueDate wird als Fälligkeitsdatum (SpecifiedTradePaymentTerms → DueDateDateTime) geschrieben. Wie alle Datumsfelder wird der Wert anhand von csv.dateFormat geparst.
Typischer Fehler#
- Zahlungsbedingung ohne strukturiertes Datum – nur ein Freitext in
description, aber keindueDate. - Datumsformat passt nicht zum konfigurierten
csv.dateFormat. - Fälligkeitsdatum mit Lieferdatum verwechselt –
BT-9undBT-72haben unterschiedliche Bedeutung.
Praxishinweis für csv2zugferd#
BT-9 ist ein knappes Zahlungsziel-Feld, kein Einstieg in vollständige Bankdaten. Steht in der CSV kein eigenes Fälligkeitsdatum, kann – wie in der Demo – dieselbe Datumsspalte für Rechnungs- und Fälligkeitsdatum genutzt werden; sauberer ist eine eigene Spalte.