BR-CO – Conditions and calculations
BR-CO-04: invoice line without a VAT category code (BT-151)
ErrorEN 16931 business rule (CEN)
Official message
[BR-CO-04]-Each Invoice line (BG-25) shall be categorized with an Invoiced item VAT category code (BT-151).Source: CEN EN 16931, version 1.3.16
What the message means
At least one invoice line carries no VAT category. Every line must say how it is treated for VAT: standard rate, reduced rate, exempt, reverse charge and so on. Without that assignment the recipient cannot follow the tax and cannot check the invoice's VAT breakdown. The invoice is therefore rejected as faulty even when the total is right.
How to fix it
Give every line a ClassifiedTaxCategory block under Item with the category (for example S), the rate and the TaxScheme VAT. Exempt lines need a category too, such as E or Z.
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">2</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">200.00</cbc:LineExtensionAmount>
<cac:Item><cbc:Name>Consulting</cbc:Name></cac:Item>
</cac:InvoiceLine><cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">2</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">200.00</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>Consulting</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>19</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
</cac:InvoiceLine>Frequently asked
Which VAT category goes on an exempt line?
E for exempt supplies, Z for the zero rate, AE for reverse charge, K for intra-community supplies, G for exports. The rate is then 0 and the exemption reason belongs in the VAT breakdown.
Why does the validator report BR-CO-04 when the category is there?
The check only recognises categories with TaxScheme VAT. If another value stands there, or the TaxScheme block is missing, the line counts as having no category.
Also seen when …
- The item has no tax key in the ERP system, typically a newly created service.
- The line's tax block was written with a scheme other than VAT and is therefore not recognised.
- Exempt lines were exported without a category because no tax amount arises.
Fields concerned
- BG-25
- BT-151
Related rules
- BR-AE-05
- BR-AF-05
- BR-AG-05
Check your invoice
The EN 16931 validator reports this rule with the line number and location – right in your browser, without upload.
Technical details
- UBL · Context (XPath)
cac:InvoiceLine | cac:CreditNoteLine- UBL · Schematron test
(cac:Item/cac:ClassifiedTaxCategory[cac:TaxScheme/(normalize-space(upper-case(cbc:ID))='VAT')]/cbc:ID)- CII · Context (XPath)
//ram:IncludedSupplyChainTradeLineItem- CII · Schematron test
(ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax[upper-case(ram:TypeCode) = 'VAT']/ram:CategoryCode)
Explanation written on 13 September 2026