Error code BR-CO-18 means: the invoice does not contain any VAT breakdown.
What does BR-CO-18 mean?
The validator shows this message (as worded in the official rules):
[BR-CO-18]-An Invoice shall at least have one VAT breakdown group (BG-23).
Every e-invoice under EN 16931 contains at least one VAT breakdown (BG-23, in UBL cac:TaxSubtotal). That also applies when no VAT is due. For an exemption, reverse charge or the zero rate, there is a breakdown with VAT amount 0.00, the right category and, where needed, a reason. In our test, an invoice without a breakdown also triggered BR-S-01, PEPPOL-EN16931-R053 and PEPPOL-EN16931-R054. They disappear together with BR-CO-18.
Common causes
- The software omits the breakdown because no VAT is due, for example for an exemption or the small business scheme.
- A custom XML export only writes the total VAT amount.
- The VAT data is only on line level and is not summarised.
How to fix it as the sender
- In
cac:TaxTotal, add onecac:TaxSubtotalper VAT category and rate, with the taxable amount and the VAT amount. - If no VAT is due, use 0.00 as VAT amount, the right category (E, AE, Z, K, G or O) and an exemption reason where required.
- Validate again. Then also check the amounts with BR-S-08 and BR-CO-17.
Received an invoice with this error?
An invoice with this error is not compliant. Ask the supplier for a corrected invoice and do not change the XML yourself.
Example in the XML
❌ Wrong
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">63.00</cbc:TaxAmount>
<!-- no TaxSubtotal -->
</cac:TaxTotal>
✅ Correct
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">63.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">300.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">63.00</cbc:TaxAmount>
<cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>21</cbc:Percent>...</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
Both snippets come from a complete test invoice that we checked with our validator: the wrong version gives exactly this message, the correct version no errors at all.
Good to know
For small businesses under the VAT exemption scheme, you use category E with an exemption reason. See also our explanation of BR-E-10.
Check your invoice
Drop your XML into the free validator. You see right away whether this error still occurs, with a link to the explanation for every message.
Official rule
The full rule with its technical test (Schematron) is in the official Peppol documentation:
Related error codes
- BR-S-08: The taxable amount in the VAT breakdown does not equal the sum of the lines at that rate.
- PEPPOL-EN16931-R053: The invoice contains more than one tax total (TaxTotal) with subtotals.
Frequently asked questions about BR-CO-18
Does an invoice without VAT still need a VAT breakdown?
Yes. The breakdown then states the category, the taxable amount and a VAT amount of 0.00.
Why does the same invoice also give BR-S-01?
BR-S-01 requires a breakdown in category S as soon as a line has the standard rate. Without a breakdown, that rule fails as well.