SchemaGuard by Ironbark Digital · EN 16931 / Peppol / XRechnung Reference
← All 294 EN 16931 / Peppol Rules & Live Validator
WARNING Official EN 16931 / Peppol / CIUS Rule BT/BG Fields: BT-120, BT-121

BR-AF-10 — E-Invoice Validation Rule & Fix

Fixture ID: regionalExemptionReason · XPath: /ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReason

1. Why This Rule Triggers (Diagnostic Message)

A VAT breakdown with the VAT category code (BT-118) L (Canary Islands general indirect tax (IGIC)) must not have a VAT exemption reason code (BT-121) or reason text (BT-120), but you supplied vatExemptionReasons.L = "Exento". Category L charges IGIC, which is a tax actually levied on the supply — an exemption reason would claim relief from the very tax the breakdown says you collected. BR-AF-10 is fatal at document level; this finding is a warning because the library drops the value rather than emitting it, so the generated XML still passes — but your intent was silently discarded, which you should know about.

2. How to Fix BR-AF-10

Remove the "L" entry from vatExemptionReasons. If you need to say something to the buyer about this line, use the invoice note (BT-22) or the line note (BT-127), which carry free text without making a VAT claim.

3. Valid Code / Payload Example

"vatExemptionReasons": { }, "lines": [{ "id": "1", "description": "Beratung", "quantity": 1, "unitCode": "C62", "unitPrice": 100, "vatCategory": "L", "vatRate": 7 }]
Test & Validate XML / JSON in Live SchemaGuard Validator →