What it means
For a whole-invoice charge (BG-21), this rule checks non-empty ram:CategoryTradeTax/ram:ExemptionReasonCode values against the profile's exemption reason code list. It applies where ram:ChargeIndicator/udt:Indicator is true. This test allows an empty value but does not establish whether other rules require a reason.
Why it matters
The exemption reason code identifies why VAT is not charged. It is separate from the VAT category and any explanation written as text.
How to fix it
Correct ram:ExemptionReasonCode inside ram:CategoryTradeTax of the header-level ram:SpecifiedTradeAllowanceCharge whose ram:ChargeIndicator/udt:Indicator is true. Use a permitted code matching the actual reason. Put any written explanation in ram:ExemptionReason. Check the other applicable requirements before omitting a reason code, then export and recheck your file.
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:ExemptionReasonCode' is not allowed. Where this rule applies
| Rule set | Version |
|---|---|
| Factur-X 1.09 EXTENDED | 1.0.9-2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000976 still fails, and which other rules do.
Related rules
- FX-SCH-A-000977 Permitted tax type code for an invoice charge
- FX-SCH-A-000978 Charge reason code without listID
- FX-SCH-A-000979 Format attribute for an early payment discount date
- FX-SCH-A-000980 Permitted format code for an early payment discount date
- FX-SCH-A-000981 Format attribute for a late payment penalty date
- FX-SCH-A-000982 Permitted format code for a late payment penalty date