BR-42 Feld BT-139 EN-16931-Grundregeln (BR)

BR-42 beheben: Grund des Positions-Abschlags (BT-139/BT-140) fehlt

[BR-42]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance re

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

Was bedeutet BR-42?

Jeder Abschlag auf Positionsebene muss begruendet sein, als Freitext oder als Grundcode. So bleibt der Abzug nachvollziehbar.

Häufige Ursachen für BR-42

So behebst du BR-42

  1. Fehlerhafte Stelle im XML finden. Öffne die XML der E-Rechnung und navigiere zum Feld BT-139 über den folgenden XPath://ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:Reason
  2. Korrektur einsetzen. Jeder Abschlag auf Positionsebene (BG-27) braucht eine Begruendung: entweder den Freitext ram:Reason (BT-139) oder den Grundcode ram:ReasonCode (BT-140) nach UNTDID 5189. Ergaenze mindestens eines der beiden Elemente im ram:SpecifiedTradeAllowanceCharge der Position mit ChargeIndicator=false.
  3. Erneut validieren. Speichere die Datei und validiere sie erneut, um zu prüfen, dass BR-42 nicht mehr gemeldet wird.
Konkreter Korrekturvorschlag

Jeder Abschlag auf Positionsebene (BG-27) braucht eine Begruendung: entweder den Freitext ram:Reason (BT-139) oder den Grundcode ram:ReasonCode (BT-140) nach UNTDID 5189. Ergaenze mindestens eines der beiden Elemente im ram:SpecifiedTradeAllowanceCharge der Position mit ChargeIndicator=false.

XPath//ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:Reason

Vorher / Nachher: das XML-Beispiel

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

Fehlerhaft
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator><udt:Indicator>false</udt:Indicator></ram:ChargeIndicator>
  <ram:ActualAmount>2.50</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>
Korrekt
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator><udt:Indicator>false</udt:Indicator></ram:ChargeIndicator>
  <ram:ActualAmount>2.50</ram:ActualAmount>
  <ram:Reason>Mengenrabatt</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>

Häufige Fragen zu BR-42

Freitext oder Code fuer den Rabattgrund?
Eines reicht. ram:Reason (BT-139) als Klartext oder ram:ReasonCode (BT-140) aus der Liste UNTDID 5189, zum Beispiel '95' fuer Rabatt. Beide zusammen sind erlaubt.
Warum meldet der Pruefer BR-42, obwohl der Rabatt auf der Rechnung steht?
Der Pruefer liest nur das eingebettete XML. Wenn der Grund dort im ram:SpecifiedTradeAllowanceCharge fehlt, schlaegt die Regel an, egal was das PDF-Layout zeigt.

Verwandte Fehlercodes

BR-42 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