How to fix the 10 most common e-invoice validation errors

BR-CO-15, BR-CO-17, BR-S-08, PEPPOL-R003 and more: what the most frequent EN 16931 and Peppol errors mean and how to fix them in your ERP.

8 min read · Updated 28 Oct 2026

Most rejected e-invoices fail for a handful of reasons. Here they are, with the fix.

1. BR-CO-17 — VAT amount does not match the rate

The VAT per category must equal taxable amount × rate ÷ 100, rounded to two decimals. ERPs that round VAT per line and then add up often end up a few cents off. Calculate VAT per rate group on the summed taxable amount and round once.

2. BR-CO-15 — total with VAT is wrong

TaxInclusiveAmount must equal TaxExclusiveAmount plus the VAT total. This usually breaks when a rounding difference is absorbed in one total but not the other. Use PayableRoundingAmount for cash rounding instead.

3. BR-S-08 — taxable amount per rate is wrong

Each VAT breakdown's taxable amount must be the sum of the lines with that category and rate, minus document allowances and plus charges with the same category. Make sure document-level discounts carry a VAT category and rate.

4. BR-CO-10 — sum of lines is wrong

LineExtensionAmount at document level must exactly equal the sum of line amounts. Round each line first, then add.

5. PEPPOL-EN16931-R003 — buyer reference missing

Peppol requires either a buyer reference (BT-10) or an order reference (BT-13). Ask your customer for their reference — public authorities use it for routing.

6. PEPPOL-EN16931-R010 / R020 — endpoint missing

Both parties need an EndpointID with a schemeID. Without it, the access point cannot route the document.

7. BR-CO-09 — VAT number without country prefix

Write VAT numbers with their ISO prefix and without spaces: DE123456789, not 123 456 789. Greece uses EL.

8. BR-CL-14 — invalid country code

The United Kingdom is GB, not UK. Country codes are two uppercase letters from ISO 3166-1.

9. BR-E-10 / BR-AE-10 — missing exemption reason

Exempt, reverse-charge, intra-community and out-of-scope breakdowns need an exemption reason code (VATEX-EU-…) or text. For reverse charge use VATEX-EU-AE.

10. BR-DEC — too many decimals

All amounts are limited to two decimals. Unit prices may have more; line totals and document totals may not.

Fix at the source

Patching XML by hand fixes one invoice. Fixing the calculation in your ERP template fixes all of them — validate a few test invoices after each change.

This guide summarises public specifications and official guidance. It is not legal or tax advice — check with your adviser for your situation.