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

Offizieller Regeltext

Jeder Abschlag auf Positionsebene (BG-27) muss einen Grund tragen — im Klartext (BT-139), als Code (BT-140) oder beides. Ein Betrag ohne Begründung ist für den Empfänger nicht prüfbar.

Schweregrad
Fehler
Gilt für
CII, UBL
Regelwerk
v2026-08-31
Geprüft am

Geschrieben und gegen das offizielle KoSIT-Regelwerk geprüft von Dmytro Yalanskyi, NormAPI.

Warum tritt BR-42 auf?

Diese Regel und BR-CO-23 sind dieselbe Prüfung, in der Norm zweimal formuliert. Sie melden sich immer gemeinsam: ein fehlender Grund erzeugt zwei Fehlercodes, nicht zwei Fehler.

Was der Validator prüft

Der Ausdruck, den das offizielle KoSIT-Regelwerk auswertet — nicht paraphrasiert, sondern aus der ausgelieferten Schematron-Datei gelesen. UBL und CII adressieren verschiedene Dokumentbäume, deshalb steht dieselbe Regel je Syntax anders da.

UBL
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
CII
(../ram:Reason) or (../ram:ReasonCode)

Quelle: Regelwerk v2026-08-31

Wie behebt man BR-42?

Setzen Sie cbc:AllowanceChargeReason oder cbc:AllowanceChargeReasonCode im cac:AllowanceCharge (UBL) beziehungsweise ram:Reason oder ram:ReasonCode (CII). Damit verschwindet auch BR-CO-23. Wählen Sie den Code, gilt zusätzlich BR-CL-19: dafür sind nur 19 Werte aus UNCL 5189 zulässig. Der Klartext ist an keine Liste gebunden — im Zweifel schreiben Sie ihn. Zur Übereinstimmung von Code und Text siehe BR-CO-07 — eine Regel, die der Prüfer nie meldet.

Im XML

Ausschnitt in UBL. Der CII-Pfad steht oben im Text — dieselbe Änderung, andere Elementnamen.

Fehlerhaft
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:Amount currencyID="EUR">50.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>
Korrigiert
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:AllowanceChargeReason>Mengenrabatt</cbc:AllowanceChargeReason>
    <cbc:Amount currencyID="EUR">50.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>

Verwandte Regeln

NormAPI liefert technische Validierung, keine Steuer- oder Rechtsberatung.