What it means
A discount on the whole invoice (BG-20) has neither a reason in words (BT-97) nor a reason code (BT-98).
Why it matters
The recipient needs to know why the price was reduced before booking it, for example as an early payment discount or a volume rebate.
How to fix it
Add a short reason such as "Volume discount", a reason code from the UNTDID 5189 list (95 means discount), or both.
The rule as published
Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both. Business terms: BG-20, BT-97, BT-98
Where this rule applies
| Rule set | Version |
|---|---|
| EN 16931 (UBL) | 1.3.17 |
| EN 16931 (UBL credit note) | 1.3.17 |
| EN 16931 (CII) | 1.3.17 |
| XRechnung 3.0 (UBL) | 3.0.2 |
| XRechnung 3.0 (UBL credit note) | 3.0.2 |
| XRechnung 3.0 (CII) | 3.0.2 |
| Peppol BIS Billing 3.0 (invoice) | 2026.5 |
| Peppol BIS Billing 3.0 (credit note) | 2026.5 |
| Factur-X 1.09 BASIC WL | 1.0.9-2 |
| Factur-X 1.09 BASIC | 1.0.9-2 |
| Factur-X 1.09 EN 16931 | 1.0.9-2 |
| Factur-X 1.09 EXTENDED | 1.0.9-2 |
| ZUGFeRD 2.5 BASIC WL | 2.5.2 |
| ZUGFeRD 2.5 BASIC | 2.5.2 |
| ZUGFeRD 2.5 EN 16931 | 2.5.2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
| SI-UBL 2.0 / NLCIUS (invoice) | 2.0.3.13 |
| SI-UBL 2.0 / NLCIUS (credit note) | 2.0.3.13 |
| NLCIUS (CII) | 1.0.3.13 |
| France CTC (UBL invoice) | 1.4.0-04 |
| France CTC (UBL credit note) | 1.4.0-04 |
| France CTC (CII) | 1.4.0-04 |
| CIUS-RO UBL Invoice 1.0.9 | 1.0.9 |
| CIUS-RO UBL Credit Note 1.0.9 | 1.0.9 |
Check your file
Drop your e-invoice to see whether BR-CO-21 still fails, and which other rules do.
Related rules
- BR-33 Reason for a discount on the whole invoice is required
- BR-CO-05 Allowance reason code and text must match
- BR-31 Amount of a discount on the whole invoice is required
- BR-32 VAT category of the discount is required
- BR-AE-01 Reverse-charge items need a matching VAT breakdown entry
- BR-AE-03 Reverse-charge invoice discounts need both VAT numbers