BR-DE-TMP-32XRechnung 3.0 nur XRechnung

BR-DE-TMP-32: Liefer- oder Leistungsdatum fehlt

Die XRechnung erwartet ein Lieferdatum (BT-72), einen Abrechnungszeitraum (BG-14) oder einen Zeitraum je Position (BG-26). Fehlt alles drei, meldet der Validator diese Warnung.

Regeltext im Prüfregelwerk

Eine 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.

BT-72BG-14BG-26

Anders als die meisten Regeln auf diesen Seiten ist BR-DE-TMP-32 eine „sollte"-Regel: Der Validator meldet sie als Warnung, nicht als Fehler. Ignorieren solltest du sie trotzdem nicht, denn das Leistungsdatum ist in Deutschland ohnehin eine umsatzsteuerliche Pflichtangabe.

Was die Regel prüft

Die Rechnung soll erkennen lassen, wann geliefert oder geleistet wurde. Dafür gibt es drei gleichwertige Wege:

  • BT-72 (BT = Business Term, das nummerierte Feld der Norm): das tatsächliche Lieferdatum, ein einzelner Tag.
  • BG-14: der Abrechnungszeitraum auf Dokumentenebene, also von/bis, etwa für Wartungsverträge oder Monatsabrechnungen.
  • BG-26: ein eigener Zeitraum in jeder einzelnen Rechnungsposition. Dieser Weg zählt nur, wenn wirklich jede Position einen Zeitraum trägt.

Einer der drei reicht. Fehlen alle, kommt die Warnung.

Warum sie in der Praxis fehlschlägt

Der häufigste Fall ist schlicht: Das Rechnungsprogramm hat kein Feld für das Leistungsdatum, oder es ist optional und bleibt leer. Auf dem PDF steht dann oft ein Satz wie „Leistungsdatum entspricht Rechnungsdatum", aber ein Satz im Fließtext ist kein strukturiertes Datenfeld, der Validator sieht ihn nicht.

Zweiter Fall: Die Software füllt zwar BG-26 in den Positionen, aber nicht in allen. Sobald eine Position ohne Zeitraum bleibt, gilt der dritte Weg als nicht erfüllt.

So behebst du den Fehler

Trag das Leistungsdatum als eigenes Feld ein. Für den Normalfall einer abgeschlossenen Lieferung oder Leistung ist BT-72 richtig, auch wenn es mit dem Rechnungsdatum übereinstimmt: dann trägst du eben zweimal dasselbe Datum ein. Für laufende Leistungen (Wartung, Miete, Projektabrechnung) nimmst du stattdessen den Zeitraum BG-14 mit Start- und Enddatum. Belegschmied fragt das Leistungsdatum beim Erstellen der Rechnung ab und schreibt es als BT-72 in die XML.

Unabhängig vom Validator: §14 Abs. 4 UStG verlangt den Zeitpunkt der Lieferung oder sonstigen Leistung auf der Rechnung. Die Warnung weist dich also auf eine Angabe hin, die steuerlich sowieso fehlt.

XML-Beispiel: vorher und nachher

Der Lieferblock ist vorhanden, enthält aber kein Datum, und auch kein Abrechnungszeitraum ist gesetzt:

<!-- verletzt BR-DE-TMP-32: weder BT-72 noch BG-14 noch BG-26 vorhanden -->
<ram:ApplicableHeaderTradeDelivery>
  <ram:ShipToTradeParty><!-- … --></ram:ShipToTradeParty>
</ram:ApplicableHeaderTradeDelivery>

Korrigiert mit tatsächlichem Lieferdatum (BT-72):

<ram:ApplicableHeaderTradeDelivery>
  <ram:ShipToTradeParty><!-- … --></ram:ShipToTradeParty>
  <ram:ActualDeliverySupplyChainEvent>
    <ram:OccurrenceDateTime>
      <udt:DateTimeString format="102">20260715</udt:DateTimeString>
    </ram:OccurrenceDateTime>
  </ram:ActualDeliverySupplyChainEvent>
</ram:ApplicableHeaderTradeDelivery>

Rechnung selbst prüfen

Lade deine Datei hoch und sieh in Sekunden, welche Regeln sie besteht und welche nicht. Kostenlos, ohne Anmeldung, nichts wird gespeichert.

Regeln, die oft zusammen auftreten

← Alle Fehlermeldungen im Überblick