BR-29 Feld BT-74 EN-16931-Grundregeln (BR)

BR-29 beheben: Ende des Abrechnungszeitraums liegt vor dem Beginn

[BR-29] If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73)

BR-29 in deiner eigenen Rechnung? Lade die Datei hoch und finde alle Fehler in Sekunden.

Was bedeutet BR-29?

Traegt die Rechnung sowohl ein Startdatum (BT-73) als auch ein Enddatum (BT-74) des Abrechnungszeitraums, muss das Ende gleich oder spaeter als der Beginn sein. Beide Daten stehen in ram:BillingSpecifiedPeriod als udt:DateTimeString im Format 102 (JJJJMMTT). Die Regel greift nur, wenn beide Daten gesetzt sind.

Häufige Ursachen für BR-29

So behebst du BR-29

  1. Fehlerhafte Stelle im XML finden. Öffne die XML der E-Rechnung und navigiere zum Feld BT-74 über den folgenden XPath://rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString
  2. Korrektur einsetzen. Korrigiere in ram:BillingSpecifiedPeriod das ram:EndDateTime (BT-74), sodass es gleich oder spaeter als ram:StartDateTime (BT-73) ist. Beide Werte im Format 102 (JJJJMMTT), zum Beispiel 20260430.
  3. Erneut validieren. Speichere die Datei und validiere sie erneut, um zu prüfen, dass BR-29 nicht mehr gemeldet wird.
Konkreter Korrekturvorschlag

Korrigiere in ram:BillingSpecifiedPeriod das ram:EndDateTime (BT-74), sodass es gleich oder spaeter als ram:StartDateTime (BT-73) ist. Beide Werte im Format 102 (JJJJMMTT), zum Beispiel <udt:DateTimeString format="102">20260430</udt:DateTimeString>.

XPath//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString

Vorher / Nachher: das XML-Beispiel

So sieht die betroffene Stelle vor und nach der Korrektur aus (Cross-Industry-Invoice, ZUGFeRD/Factur-X).

Fehlerhaft
<ram:BillingSpecifiedPeriod>
  <ram:StartDateTime>
    <udt:DateTimeString format="102">20260401</udt:DateTimeString>
  </ram:StartDateTime>
  <ram:EndDateTime>
    <udt:DateTimeString format="102">20260331</udt:DateTimeString>
  </ram:EndDateTime>
</ram:BillingSpecifiedPeriod>
Korrekt
<ram:BillingSpecifiedPeriod>
  <ram:StartDateTime>
    <udt:DateTimeString format="102">20260401</udt:DateTimeString>
  </ram:StartDateTime>
  <ram:EndDateTime>
    <udt:DateTimeString format="102">20260430</udt:DateTimeString>
  </ram:EndDateTime>
</ram:BillingSpecifiedPeriod>

Häufige Fragen zu BR-29

Darf das Ende gleich dem Beginn sein?
Ja. Ein Zeitraum von einem einzigen Tag ist erlaubt, Start- und Enddatum duerfen gleich sein. Nur ein Ende vor dem Beginn ist ungueltig.
In welchem Format stehen die Daten?
Als udt:DateTimeString mit format='102', also JJJJMMTT ohne Trennzeichen, zum Beispiel 20260430.
Was, wenn ich nur ein Datum habe?
Dann greift die Regel nicht. Sie prueft nur den Fall, dass Start (BT-73) und Ende (BT-74) beide gesetzt sind.

Verwandte Fehlercodes

BR-29 automatisch prüfen

Statt das XML manuell zu durchsuchen, kannst du deine ZUGFeRD- oder XRechnung-Datei online validieren – lade die PDF oder XML hoch und du bekommst jeden Fehler mit Regel-ID, betroffenem Feld, Korrekturvorschlag und XPath, als lesbaren Report oder strukturiertes JSON über die API.

Jeden Fehler automatisch finden statt manuell suchen

Lade deine ZUGFeRD- oder XRechnung-Datei hoch – du bekommst jeden Verstoß mit Regel-ID, Feld, Korrekturvorschlag und XPath zurück.

Kostenlos online validieren
Rechnung prüfen