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.

Software-Tipp

Rechnung selbst gebaut?

Wer das XML aus dem eigenen System oder von Hand zusammensetzt, muss Regeln wie diese kennen. Diese Programme erzeugen ZUGFeRD und XRechnung und füllen die Pflichtfelder von sich aus.

Lexware Office Weit verbreiteter Allrounder (früher lexoffice) für Einsteiger und kleine Unternehmen. Ansehen *
sevDesk Rechnung und Buchhaltung in einem, beliebt bei Selbstständigen und kleinen Firmen. Ansehen *
BuchhaltungsButler Starke Beleg-Automatik, wenn viel hereinkommt. Wir nutzen es selbst. Ansehen *

* Werbelinks. Wir bekommen eine Provision, für dich bleibt der Preis gleich. Fünf Programme im Vergleich

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