Faktura

PEPPOL-EN16931-P0104

fatalPeppol BIS Billing 3.0profileUBL

Tax Category G MUST be used when exemption reason code is VATEX-EU-G

Why it fails

The VAT exemption reason code VATEX-EU-G is used with a VAT category code other than G. The exemption reason and the category have to describe the same thing.

How to fix it

Either set the VAT category code (BT-118) to G, or choose the exemption reason code that matches the category you actually mean. The VATEX list pairs one-to-one with the categories: VATEX-EU-AE with AE (reverse charge), VATEX-EU-IC with K (intra-community), VATEX-EU-G with G (export), VATEX-EU-O with O (outside scope); the article-based codes (D, F, I, J, 132, 143, 151) all go with E (exempt).

What the validator checks

UBL — context cac:TaxCategory[upper-case(cbc:TaxExemptionReasonCode)='VATEX-EU-G']

normalize-space(cbc:ID)='G'

Related rules

Part of PEPPOL-EN16931 — Peppol BIS Billing 3.0.

Validate an invoice against this rule →

This is a Peppol BIS Billing 3.0 rule: an invoice can be perfectly valid EN 16931 and still be rejected by it.