Zum Inhalt springen

BR-CL-20: Grund-Code eines Zuschlags nicht aus UNCL 7161

Offizielle Meldung

[BR-CL-20] Coded charge reasons MUST belong to the UNCL 7161 code list

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

[BR-CL-20] Coded charge reasons MUST belong to the UNCL 7161 code list

EN 16931 (UBL) · Fehler · Sprache der Meldung: Englisch · Stand: xrechnung-3.0.2-validator-configuration-2026-08-31
Schweregrad
Fehler Die Rechnung gilt als ungültig und kann vom Empfänger abgelehnt werden.
Gilt für
EN 16931 (CII), EN 16931 (UBL)

Was bedeutet das?

Der Code für den Grund eines Zuschlags muss aus der Codeliste UNCL 7161 stammen, z. B. FC (Frachtkosten). Das betrifft Zuschläge auf Dokumentenebene (Document level charge reason code, BT-105) und auf Positionsebene (Invoice line charge reason code, BT-145). Der angegebene Wert ist dort nicht enthalten.
Geprüft werden nur Zuschläge (ChargeIndicator true). Für Abschläge gilt eine andere Liste (UNCL 5189, BR-CL-19).

Typische Ursachen

Ein Code für Abschläge aus UNCL 5189 (z. B. 95) wurde bei einem Zuschlag verwendet.
Ein Freitext („Versand“, „Porto“) statt des Codes.
Der ChargeIndicator ist falsch gesetzt: Ein Abschlag wurde als Zuschlag gekennzeichnet.

So beheben Sie den Fehler

Den Grund-Code mit einem Code aus UNCL 7161 angeben oder weglassen und den Grund als Text angeben (BT-104 bzw. BT-144).
Prüfen, ob ChargeIndicator zum Vorgang passt (true für Zuschlag, false für Abschlag).
CII: ram:SpecifiedTradeAllowanceCharge/ram:ReasonCode, UBL: cac:AllowanceCharge/cbc:AllowanceChargeReasonCode.
Die Rechnung erneut erzeugen und prüfen.

In E-Rechnungsfreund

Im Rechnungsformular in der Ansicht „Experte“ im Abschnitt „Zu-/Abschläge auf Dokumentenebene (BG-20/BG-21)“ bei „Typ“ „Zuschlag (BG-21)“ wählen und im Feld „Code“ einen Eintrag aus der Auswahlliste wählen oder „– –“ lassen und „Begründung“ ausfüllen. Für Positionen gilt das ebenso im Reiter „Zu-/Abschläge (BG-27/28)“ der Position.

Beispiel

Fehlerhaft

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>5.90</ram:ActualAmount>
  <ram:ReasonCode>95</ram:ReasonCode>
  ...
</ram:SpecifiedTradeAllowanceCharge>

Richtig

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>5.90</ram:ActualAmount>
  <ram:ReasonCode>FC</ram:ReasonCode>
  <ram:Reason>Frachtkosten</ram:Reason>
  ...
</ram:SpecifiedTradeAllowanceCharge>
Für Entwickler: Prüfausdruck je Syntax

EN 16931 (CII) (CII)

Kontext: ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator = true()]/ram:ReasonCode

((not(contains(normalize-space(.), ' ')) and contains(' AA AAA AAC AAD AAE AAF AAH AAI AAS AAT AAV AAY AAZ ABA ABB ABC ABD ABF ABK ABL ABN ABR ABS ABT ABU ACF ACG ACH ACI ACJ ACK ACL ACM ACS ADC ADE ADJ ADK ADL ADM ADN ADO ADP ADQ ADR ADT ADW ADY ADZ AEA AEB AEC AED AEF AEH AEI AEJ AEK AEL AEM AEN AEO AEP AES AET AEU AEV AEW AEX AEY AEZ AJ AU CA CAB CAD CAE CAF CAI CAJ CAK CAL CAM CAN CAO CAP CAQ CAR CAS CAT CAU CAV CAW CAX CAY CAZ CD CG CS CT DAB DAD DAC DAF DAG DAH DAI DAJ DAK DAL DAM DAN DAO DAP DAQ DL EG EP ER FAA FAB FAC FC FH FI GAA HAA HD HH IAA IAB ID IF IR IS KO L1 LA LAA LAB LF MAE MI ML NAA OA PA PAA PC PL PRV RAB RAC RAD RAF RE RF RH RV SA SAA SAD SAE SAI SG SH SM SU TAB TAC TT TV V1 V2 WH XAA YY ZZZ ', concat(' ', normalize-space(.), ' '))))

EN 16931 (UBL) (UBL)

Kontext: cac:AllowanceCharge[cbc:ChargeIndicator = true()]/cbc:AllowanceChargeReasonCode

((not(contains(normalize-space(.), ' ')) and contains(' AA AAA AAC AAD AAE AAF AAH AAI AAS AAT AAV AAY AAZ ABA ABB ABC ABD ABF ABK ABL ABN ABR ABS ABT ABU ACF ACG ACH ACI ACJ ACK ACL ACM ACS ADC ADE ADJ ADK ADL ADM ADN ADO ADP ADQ ADR ADT ADW ADY ADZ AEA AEB AEC AED AEF AEH AEI AEJ AEK AEL AEM AEN AEO AEP AES AET AEU AEV AEW AEX AEY AEZ AJ AU CA CAB CAD CAE CAF CAI CAJ CAK CAL CAM CAN CAO CAP CAQ CAR CAS CAT CAU CAV CAW CAX CAY CAZ CD CG CS CT DAB DAD DAC DAF DAG DAH DAI DAJ DAK DAL DAM DAN DAO DAP DAQ DL EG EP ER FAA FAB FAC FC FH FI GAA HAA HD HH IAA IAB ID IF IR IS KO L1 LA LAA LAB LF MAE MI ML NAA OA PA PAA PC PL PRV RAB RAC RAD RAF RE RF RH RV SA SAA SAD SAE SAI SG SH SM SU TAB TAC TT TV V1 V2 WH XAA YY ZZZ ', concat(' ', normalize-space(.), ' '))))

Verwandte Prüfregeln

  • BR-CL-01: Rechnungsartcode (BT-3) nicht aus UNTDID 1001
  • BR-CL-03: Währungsattribut currencyID nicht nach ISO 4217
  • BR-CL-04: Rechnungswährung (BT-5) nicht nach ISO 4217
  • BR-CL-05: Steuerwährung (BT-6) nicht nach ISO 4217
  • BR-CL-06: Code für das Steuerfälligkeitsdatum (BT-8) nicht zulässig
  • BR-CL-07: Schema der Objektkennung (BT-18-1, BT-128-1) nicht aus UNTDID 1153

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