Zum Inhalt springen

BR-42: Grund des Abschlags auf Positionsebene (BT-139/BT-140) fehlt

Offizielle Meldung

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

EN 16931 (CII) · Fehler · Sprache der Meldung: Englisch · Stand: xrechnung-3.0.2-validator-configuration-2026-08-31

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

EN 16931 (UBL) · Fehler · Sprache der Meldung: Englisch · Stand: xrechnung-3.0.2-validator-configuration-2026-08-31

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

Factur-X / ZUGFeRD EN 16931 · Fehler · Sprache der Meldung: Englisch · Stand: Factur-X 1.08 / ZUGFeRD 2.4
Schweregrad
Fehler Die Rechnung gilt als ungültig und kann vom Empfänger abgelehnt werden.
Gilt für
EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
Betroffene Felder
BG-27, BT-139, BT-140

Was bedeutet das?

Jeder Abschlag auf Ebene einer Rechnungsposition (BG-27) muss einen Grund haben: als Text (Invoice line allowance reason, BT-139) oder als Code (Invoice line allowance reason code, BT-140). Bei mindestens einem Positionsabschlag fehlen beide.

Typische Ursachen

Der Positionsrabatt wurde nur mit Betrag ausgegeben.
Der Grund steht nur in der Artikelbeschreibung oder einer Positionsnotiz.

So beheben Sie den Fehler

Für jeden Positionsabschlag einen Grund als Text angeben, z. B. „Mengenrabatt“, und/oder einen Code aus der Liste UNTDID 5189, z. B. 95 (Rabatt). Werden beide angegeben, müssen sie dasselbe bedeuten.
CII: ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:Reason bzw. ram:ReasonCode, UBL: cac:InvoiceLine/cac:AllowanceCharge/cbc:AllowanceChargeReason bzw. cbc:AllowanceChargeReasonCode.
Die Rechnung erneut erzeugen und prüfen.

In E-Rechnungsfreund

Im Rechnungsformular (Ansicht „Experte“) im Abschnitt „Rechnungspositionen (BG-25)“ bei der Position im Reiter „Zu-/Abschläge (BG-27/28)“ bei jedem Eintrag „Abschlag (BG-27)“ das Feld „Begründung (BT-139/144)“ ausfüllen und/oder in der Code-Auswahl daneben einen Grund wählen.

Beispiel

Fehlerhaft

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>20.00</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>

Richtig

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>20.00</ram:ActualAmount>
  <ram:ReasonCode>95</ram:ReasonCode>
  <ram:Reason>Mengenrabatt</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>
Für Entwickler: Prüfausdruck je Syntax

EN 16931 (CII) (CII)

Kontext: //ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:ChargeIndicator[udt:Indicator = 'false']

(../ram:Reason) or (../ram:ReasonCode)

EN 16931 (UBL) (UBL)

Kontext: //cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]

exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)

Factur-X / ZUGFeRD EN 16931 (CII)

Technische ID in der Quelle: FX-SCH-A-000214

Kontext: //ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:ChargeIndicator[udt:Indicator = 'false']

(../ram:Reason) or (../ram:ReasonCode)

Verwandte Prüfregeln

  • BR-01: Spezifikationskennung (BT-24) fehlt
  • BR-02: Rechnungsnummer (BT-1) fehlt
  • BR-03: Rechnungsdatum (BT-2) fehlt
  • BR-04: Rechnungsart-Code (BT-3) fehlt
  • BR-05: Rechnungswährung (BT-5) fehlt
  • BR-06: Name des Verkäufers (BT-27) fehlt

Zuletzt aktualisiert:
Erläuterung der Prüfregel, keine Rechts- oder Steuerberatung.