BR-38 Feld BT-104 EN-16931-Grundregeln (BR)

BR-38 beheben: Grund des Zuschlags (BT-104/BT-105) fehlt

[BR-38]-Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason

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

Was bedeutet BR-38?

Jeder Zuschlag auf Belegebene muss begruendet sein, als Freitext oder als Grundcode. So bleibt der Aufschlag nachvollziehbar.

Häufige Ursachen für BR-38

So behebst du BR-38

  1. Fehlerhafte Stelle im XML finden. Öffne die XML der E-Rechnung und navigiere zum Feld BT-104 über den folgenden XPath://ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:Reason
  2. Korrektur einsetzen. Jeder Zuschlag auf Dokumentebene (BG-21) braucht eine Begruendung: entweder den Freitext ram:Reason (BT-104) oder den Grundcode ram:ReasonCode (BT-105) nach UNTDID 7161. Ergaenze mindestens eines der beiden Elemente im betroffenen ram:SpecifiedTradeAllowanceCharge mit ChargeIndicator=true.
  3. Erneut validieren. Speichere die Datei und validiere sie erneut, um zu prüfen, dass BR-38 nicht mehr gemeldet wird.
Konkreter Korrekturvorschlag

Jeder Zuschlag auf Dokumentebene (BG-21) braucht eine Begruendung: entweder den Freitext ram:Reason (BT-104) oder den Grundcode ram:ReasonCode (BT-105) nach UNTDID 7161. Ergaenze mindestens eines der beiden Elemente im betroffenen ram:SpecifiedTradeAllowanceCharge mit ChargeIndicator=true.

XPath//ram:ApplicableHeaderTradeSettlement/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>true</udt:Indicator></ram:ChargeIndicator>
  <ram:ActualAmount>15.00</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>
Korrekt
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator><udt:Indicator>true</udt:Indicator></ram:ChargeIndicator>
  <ram:ActualAmount>15.00</ram:ActualAmount>
  <ram:Reason>Versandpauschale</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>

Häufige Fragen zu BR-38

Reicht der Freitext, oder brauche ich den Code?
Eines von beiden genuegt. Du kannst ram:Reason (BT-104) als Klartext angeben oder ram:ReasonCode (BT-105) aus der Liste UNTDID 7161. Beide zusammen sind erlaubt, aber nicht Pflicht.
Wo finde ich passende Grundcodes fuer BT-105?
In der Codeliste UNTDID 7161, zum Beispiel 'FC' fuer Frachtkosten oder 'ABK' fuer sonstige Zuschlaege. Wenn kein Code passt, nimm einfach den Freitext BT-104.

Verwandte Fehlercodes

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