Was bedeutet BR-30?
Wenn eine Rechnungsposition sowohl ein Startdatum des Leistungszeitraums (BT-134) als auch ein Enddatum (BT-135) angibt, muss das Enddatum gleich dem Startdatum oder spaeter sein. Die Regel greift nur, wenn beide Datumsangaben vorhanden sind. Fehlt eines der beiden, prueft BR-30 nichts. Ein Zeitraum, dessen Ende vor dem Anfang liegt, ist unmoeglich und wird abgewiesen.
Häufige Ursachen für BR-30
- Start- und Enddatum wurden vertauscht.
- Tippfehler im Tag, Monat oder Jahr einer der beiden Angaben.
- Falsches Datumsformat, sodass die Werte nicht als Datum vergleichbar sind.
- Ende auf den Vortag statt auf das Periodenende gesetzt.
So behebst du BR-30
- Fehlerhafte Stelle im XML finden. Öffne die XML der E-Rechnung und navigiere zum Feld BT-135 über den folgenden XPath:
//rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString - Korrektur einsetzen. Setze in ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString (format="102", JJJJMMTT) ein Datum, das gleich oder spaeter als das Startdatum in ram:StartDateTime ist. Pruefe, ob Start und Ende vertauscht wurden.
- Erneut validieren. Speichere die Datei und validiere sie erneut, um zu prüfen, dass BR-30 nicht mehr gemeldet wird.
Setze in ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString (format="102", JJJJMMTT) ein Datum, das gleich oder spaeter als das Startdatum in ram:StartDateTime ist. Pruefe, ob Start und Ende vertauscht wurden.
//rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeStringVorher / Nachher: das XML-Beispiel
So sieht die betroffene Stelle vor und nach der Korrektur aus (Cross-Industry-Invoice, ZUGFeRD/Factur-X).
<ram:SpecifiedLineTradeSettlement>
<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>
</ram:SpecifiedLineTradeSettlement>
<ram:SpecifiedLineTradeSettlement>
<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>
</ram:SpecifiedLineTradeSettlement>
Häufige Fragen zu BR-30
Darf das Enddatum gleich dem Startdatum sein?
Muss ich fuer jede Position einen Zeitraum angeben?
Welches Format brauchen die Datumsangaben?
Verwandte Fehlercodes
BR-30 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.