What it means
The rule checks every cac:Price/cac:AllowanceCharge on invoice and credit note lines for cbc:AllowanceChargeReasonCode. The price discount amount (BT-147) and price before the discount (BT-148) are separate fields. A discount directly under the line is outside this check and can have a reason code (BT-140) or reason text (BT-139).
Why it matters
EN 16931 does not define a reason code within a price discount; line-level discount reasons have separate fields.
How to fix it
Remove cbc:AllowanceChargeReasonCode from cac:AllowanceCharge inside cac:Price in each affected cac:InvoiceLine or cac:CreditNoteLine. If you need to explain the existing price discount, use the line note (BT-127). Do not add the same discount again at line level just to record its reason. Export the corrected file and recheck it.
Once the file is corrected, check it again for free: Validate an invoice against EN 16931
Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice
The rule as published
A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge AllowanceChargeReasonCode Where this rule applies
| Rule set | Version |
|---|---|
| EN 16931 (UBL) | 1.3.17 |
| EN 16931 (UBL credit note) | 1.3.17 |
| XRechnung 3.0 (UBL) | 3.0.2 |
| XRechnung 3.0 (UBL credit note) | 3.0.2 |
| Peppol BIS Billing 3.0 (invoice) | 2026.5 |
| Peppol BIS Billing 3.0 (credit note) | 2026.5 |
| SI-UBL 2.0 / NLCIUS (invoice) | 2.0.3.13 |
| SI-UBL 2.0 / NLCIUS (credit note) | 2.0.3.13 |
| France CTC (UBL invoice) | 1.4.0-04 |
| France CTC (UBL credit note) | 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 UBL-CR-633 still fails, and which other rules do.
Related rules
- UBL-CR-634 Discount reason text does not belong inside the line price
- UBL-CR-635 A discount multiplier does not belong inside the line price
- UBL-CR-636 A prepaid flag does not belong inside the line price
- UBL-CR-637 A discount sequence number does not belong inside the line price
- UBL-CR-638 A discount accounting code does not belong inside the line price
- UBL-CR-639 An accounting reference does not belong inside the line price discount