Skip to content

Fatal

BR-FR-15_BT-95_BT-102-1: Use an allowed VAT category for discounts and charges

In short

Fatal: fails the selected checks.

BR-FR-15_BT-95_BT-102-1 means a VAT category supplied inside a UBL discount or charge is not allowed by this French rule. Replace it with S, E, AE, K, G, O or Z only where that code matches the actual VAT treatment.

On this page

What it means

For UBL invoices and credit notes, this rule checks cac:AllowanceCharge/cac:TaxCategory wherever that context occurs. A selected category code must be S, E, AE, K, G, O or Z; if no category code is selected, this test passes. At whole-invoice level, the discount category is BT-95 and the charge category is BT-102. The XPath does not restrict the check to whole-invoice entries.

Why it matters

The category communicates the VAT treatment of the discount or charge. This rule checks whether a supplied code belongs to the allowed list, not whether the tax treatment itself is correct.

How to fix it

Find the affected cac:AllowanceCharge/cac:TaxCategory in the UBL file and check the discount or charge it belongs to. Correct the category to an allowed code matching its actual VAT treatment. Do not remove a required category just because this test permits an absent code. Generate the file again and recheck it.

Once the file is corrected, check it again for free: Check an e-invoice

The rule as published

Code de catégorie de TVA invalide. Valeur actuelle : " … ". Veuillez utiliser un code valide : S, E, AE, K, G, O, Z.

Where this rule applies

Rule set Version
France CTC (UBL invoice) 1.4.0-04
France CTC (UBL credit note) 1.4.0-04
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether BR-FR-15_BT-95_BT-102-1 still fails, and which other rules do.

Updated 6 November 2026