PEPPOL-EN16931-P0111: Tax Category E MUST be used when exemption reason code is VATEX-EU-J
Peppol BIS Billing 3.0.21 · UBL
Original rule text
[PEPPOL-EN16931-P0111]-Tax Category E MUST be used when exemption reason code is VATEX-EU-J
normalize-space(cbc:ID)='E'PEPPOL-EN16931-P0111 is a fatal rule in the format layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.
What this rule requires
In UBL, any cac:TaxCategory whose cbc:TaxExemptionReasonCode is VATEX-EU-J must have a cbc:ID whose normalized value is exactly E. The test applies to the cac:TaxCategory element and checks normalize-space(cbc:ID)='E'. An invoice fails this fatal rule when that cbc:ID is missing, empty, or has a value other than E.
How to fix
Find the cac:TaxCategory element that contains cbc:TaxExemptionReasonCode with value VATEX-EU-J, and set its child cbc:ID to E. If the invoice is generated by a system, ensure the tax category code for this exemption reason is mapped to E.
Guidance on this rule. The original text above is authoritative.
Where to go next
PEPPOL-EN16931-P0111 changed in 1 published Peppol BIS Billing UBL release comparison:
- PEPPOL-EN16931-P0111 in 3.0.2 → 3.0.10: New rule
Validate an invoice against these rules · All release changes