BR-DE-TMP-32Eine Rechnung sollte zur Angabe des Liefer-/Leistungsdatums entweder BT-72 "Actual delivery date", BG-14 "Invoicing period" oder in jeder Rechnungsposition BG-26 "Invoice line period" enthalten.
Offizieller Regeltext
Ein Hinweis, kein Fehler: Die Rechnung sollte das Liefer- oder Leistungsdatum strukturiert angeben — als Lieferdatum (BT-72), als Abrechnungszeitraum (BG-14) oder als Zeitraum auf jeder einzelnen Rechnungsposition (BG-26). Fehlen alle drei Angaben, bleibt die Rechnung gültig, und der Validator empfiehlt sie weiterhin zur Annahme. Geprüft wird nur, ob eines der Elemente vorhanden ist; in UBL genügt deshalb schon ein cac:InvoicePeriod, das allein den Code für das Steuerdatum (BT-8) enthält, obwohl darin kein Datum steht.
- Schweregrad
- Hinweis
- Gilt für
- CII, UBL
- Regelwerk
- v2026-08-31
- Geprüft am
Geschrieben und gegen das offizielle KoSIT-Regelwerk geprüft von Dmytro Yalanskyi, NormAPI.
Warum tritt BR-DE-TMP-32 auf?
Alle drei Angaben sind in der EN 16931 optional, und viele Rechnungen nennen den Zeitpunkt der Lieferung oder Leistung — eine Pflichtangabe nach § 14 Abs. 4 Satz 1 Nr. 6 UStG — nur im Freitext („Leistungsdatum entspricht Rechnungsdatum“) oder als Steuerdatum (BT-7), der hier nicht zählt. Der Positionszeitraum wiederum hilft nur, wenn ihn jede Zeile trägt: Selbst die Testrechnung 01.01a aus der XRechnung-Testsuite der KoSIT erhält den Hinweis, weil ihre Zeile „Porto + Versandkosten“ keinen Zeitraum hat.
Was der Validator prüft
Der Ausdruck, den das offizielle KoSIT-Regelwerk auswertet — nicht paraphrasiert, sondern aus der ausgelieferten Schematron-Datei gelesen. UBL und CII adressieren verschiedene Dokumentbäume, deshalb steht dieselbe Regel je Syntax anders da.
- UBL
cac:Delivery/cbc:ActualDeliveryDate or cac:InvoicePeriod or (every $line in (cac:InvoiceLine | cac:CreditNoteLine) satisfies $line/cac:InvoicePeriod)- CII
ram:ApplicableHeaderTradeDelivery/ram:ActualDeliverySupplyChainEvent/ram:OccurrenceDateTime or ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod or (every $line in ram:IncludedSupplyChainTradeLineItem satisfies $line/ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod)
Quelle: Regelwerk v2026-08-31
Wie behebt man BR-DE-TMP-32?
Für eine einzelne Lieferung setzen Sie BT-72: in UBL cac:Delivery/cbc:ActualDeliveryDate, in CII ram:ApplicableHeaderTradeDelivery/ram:ActualDeliverySupplyChainEvent/ram:OccurrenceDateTime mit udt:DateTimeString format="102". Für eine Leistung über einen Zeitraum nehmen Sie BG-14 mit Beginn und Ende — cac:InvoicePeriod mit cbc:StartDate und cbc:EndDate in UBL, ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod mit ram:StartDateTime und ram:EndDateTime in CII. Tragen Positionen bereits eigene Zeiträume, müssen diese innerhalb von BG-14 liegen, sonst weisen PEPPOL-EN16931-R110 und PEPPOL-EN16931-R111 die Rechnung ab; eine leere Gruppe beseitigt den Hinweis zwar, scheitert aber an BR-CO-19.
Im XML
Ausschnitt in UBL. Der CII-Pfad steht oben im Text — dieselbe Änderung, andere Elementnamen.
<cbc:Note>Leistungszeitraum: September 2026</cbc:Note>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cbc:BuyerReference>04011000-12345-03</cbc:BuyerReference><cbc:Note>Leistungszeitraum: September 2026</cbc:Note>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cbc:BuyerReference>04011000-12345-03</cbc:BuyerReference>
<cac:InvoicePeriod>
<cbc:StartDate>2026-09-01</cbc:StartDate>
<cbc:EndDate>2026-09-30</cbc:EndDate>
</cac:InvoicePeriod>Verwandte Regeln
NormAPI liefert technische Validierung, keine Steuer- oder Rechtsberatung.