BR-E-10
This id stands for 2 different rules, one per rule set below: Factur-X numbers its rules in each profile separately.
Why it fails
- A VAT breakdown with category
E(exempt) has no exemption reason.
How to fix it
Add cbc:TaxExemptionReason (a text, such as the law the exemption rests on) or cbc:TaxExemptionReasonCode from the VATEX list to the breakdown (ram:ExemptionReason / ram:ExemptionReasonCode in CII).
What the rule checks
As the rule set's publisher wrote it. The rule runs on every element the context matches, and fails where the test is false; the validator reports the line of that element.
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Exempt from VAT" shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).
/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)
Checked with EN 16931 Invoice (UBL), EN 16931 Credit Note (UBL), Croatia eRačun Invoice (UBL), Croatia eRačun Credit Note (UBL)
A VAT Breakdown (BG-23) with VAT Category code (BT-118) "Exempt from VAT" shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).
//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode[. = 'E'][upper-case(../ram:TypeCode) = 'VAT']
(../ram:ExemptionReason) or (../ram:ExemptionReasonCode)
Checked with EN 16931 Invoice (CII)
A VAT Breakdown (BG-23) with VAT Category code (BT-118) "Exempt from VAT" shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).
//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode[. = 'E']
(../ram:ExemptionReason) or (../ram:ExemptionReasonCode)
Checked with France Factur-X BASIC WL, Factur-X / ZUGFeRD BASIC WL