einvoice / EN 16931 / XRechnung rule reference
BR-44
Each Invoice line charge (BG-28) shall have an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145).
Jeder Zuschlag auf Ebene der Rechnungsposition muss einen Grund für den Zuschlag auf Ebene der Rechnungsposition oder einen Code für den Grund des Nachlasses auf Ebene der Rechnungsposition enthalten.
Deutsche Fassung: Übersetzung der gleichen BT/BG-Semantik (translation — not the official assert).
- Requires
- Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
- Business terms
BG-28BT-144BT-145- Syntax
- Binds the UBL-2.1 Invoice / CreditNote syntax and the UN/CEFACT-CII syntax
- Location (UBL-2.1 path)
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]- Fix
- Add the required element at `//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]`: Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
- Fix (Deutsch)
- Ergänzen Sie das erforderliche Element bei `//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]`: Jeder Zuschlag auf Ebene der Rechnungsposition muss einen Grund für den Zuschlag auf Ebene der Rechnungsposition oder einen Code für den Grund des Nachlasses auf Ebene der Rechnungsposition enthalten.
- Severity
- fatal
- Provenance source
en16931-ubl- Provenance assert
Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
The Location above is a UBL-2.1 path, and no UN/CEFACT-CII path for this rule is published here; Fix and Fix (Deutsch), verbatim from remediation_catalog.json and not reworded here; the UN/CEFACT-CII binding of this rule is differentially proven against the official CEN EN 16931 1.3.16 Schematron.
Everything here is free and open source — pick up whatever helps, at your own pace:
- Licensing — Apache-2.0 for everyone, including closed-source embedding; an optional $29 / $290 commercial license adds support and rule-corpus update notices.
- German remediation (
--lang de) — the German fix for this rule is in the section above; the CLI surfaces it in place of the English message with--lang de. - Quickstart / free on-ramp — the README, a copy-paste CI-gate recipe, and a 5-minute worked walkthrough.