What it means
In the Basic WL profiles of Factur-X and ZUGFeRD, this rule checks a non-empty ram:CategoryCode in a discount's ram:CategoryTradeTax against the profile's VAT-category list. It applies to header settlement entries whose charge indicator text equals false. Examples include S for standard rate, Z for zero-rated supplies, E for exempt from VAT, AE for reverse charge, K for intra-community supply and G for exports outside the EU. An empty code value passes this test; FX-SCH-A-000474 checks element count, not empty text.
Why it matters
The code identifies the discount's VAT treatment. Membership of the allowed list does not establish that you have selected the right treatment.
How to fix it
Confirm which VAT treatment applies to the discount and use its code from the Basic WL list. Correct ram:CategoryCode inside the discount's ram:CategoryTradeTax under ram:ApplicableHeaderTradeSettlement. Do not substitute a different tax treatment merely to use a listed code. Export and recheck the invoice.
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
Value of 'ram:CategoryCode' is not allowed. Where this rule applies
| Rule set | Version |
|---|---|
| Factur-X 1.09 BASIC WL | 1.0.9-2 |
| ZUGFeRD 2.5 BASIC WL | 2.5.2 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000475 still fails, and which other rules do.
Related rules
- 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
- FX-SCH-A-000481 Each whole-invoice charge needs one VAT category