BR-CO-22
EN 16931-1 layer: en16931
Checked against Peppol BIS Billing 3.0 2026.5
What does BR-CO-22 mean? Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.
Why did my invoice fail BR-CO-22?
Each document-level charge (BG-21) must contain a charge reason as free text (BT-104) or a coded reason (BT-105), or both. Every surcharge added to the invoice total must be explained so the buyer knows what the extra amount is for.
Official rule text
Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.
Common causes
- Document-level cac:AllowanceCharge (ChargeIndicator=true) with an amount but no AllowanceChargeReason and no AllowanceChargeReasonCode.
- Charge reason held only in an internal description not mapped to UBL.
- Reason code element present but empty.
- Freight/handling charge generated with amount only.
How do I fix it?
Add a reason to the charge, e.g. <cac:AllowanceCharge><cbc:ChargeIndicator>true</cbc:ChargeIndicator><cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode><cbc:AllowanceChargeReason>Freight</cbc:AllowanceChargeReason>...</cac:AllowanceCharge>.
Related rules
BR-CO-03 · BR-CO-04 · BR-CO-05 · BR-CO-06 · BR-CO-07 · BR-CO-08 · BR-CO-09 · BR-CO-10
Check your invoice against this rule
Paste it into the live demo, or call POST /v1/validate. See the quickstart.