What it means
Under ram:ApplicableHeaderTradeSettlement, this rule selects ram:SpecifiedTradeAllowanceCharge entries whose ram:ChargeIndicator/udt:Indicator text equals false. It requires exactly one ram:CategoryCode in each existing ram:CategoryTradeTax. It does not require a tax block to exist or check the category value. An empty element still counts. The rule applies to Basic WL, Basic, EN 16931 and Extended.
Why it matters
The VAT category identifies the discount's VAT treatment and its corresponding category in the VAT breakdown.
How to fix it
Confirm the VAT treatment of the discount rather than choosing a default category. Add a missing ram:CategoryCode or remove duplicate elements within the affected ram:CategoryTradeTax. Use S only if standard-rate VAT applies. Export the corrected invoice and check it again.
Once the file is corrected, check it again for free: Validate a ZUGFeRD invoice
Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice Beta
The rule as published
Element 'ram:CategoryCode' must occur exactly 1 times. Where this rule applies
| Rule set | Version |
|---|---|
| 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 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000474 still fails, and which other rules do.
Related rules
- FX-SCH-A-000475 Use an allowed VAT category for the discount
- FX-SCH-A-000476 Use an allowed tax type code for the discount
- FX-SCH-A-000477 Keep one charge indicator on an invoice-level charge
- FX-SCH-A-000478 Each whole-invoice charge needs one amount
- FX-SCH-A-000479 Each whole-invoice charge needs one VAT details block
- FX-SCH-A-000480 Each charge tax block needs one tax type code