Error code BR-CO-15 means: the total with VAT is not equal to the total without VAT plus the VAT amount.
What does BR-CO-15 mean?
The validator shows this message (as worded in the official rules):
[BR-CO-15]-Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).
The rule compares three totals at the bottom of the invoice. The total with VAT (BT-112, TaxInclusiveAmount) must exactly equal the total without VAT (BT-109, TaxExclusiveAmount) plus the total VAT amount (BT-110, TaxTotal/TaxAmount). There is no rounding tolerance: a difference of one cent is already an error.
Common causes
- Rounding differences: the software rounds VAT per line but adds up the totals differently.
- A document-level allowance or charge (for example a payment discount) is included in one total but not in the total without VAT.
- The VAT amount was edited manually after the total was calculated.
- For scanned or OCR-extracted invoices, an amount was read incorrectly.
How to fix it as the sender
- Recalculate the total with VAT as total without VAT plus total VAT, and only then round to two decimals.
- Check that document-level allowances and charges are included in both totals.
- Recreate the invoice in your software and validate it before sending.
Received an invoice with this error?
An invoice with this error is not compliant. Ask the supplier for a corrected invoice rather than booking the amount yourself.
Example in the XML
❌ Wrong
<cac:LegalMonetaryTotal>
<cbc:TaxExclusiveAmount currencyID="EUR">300.00</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">362.99</cbc:TaxInclusiveAmount>
</cac:LegalMonetaryTotal>
<!-- TaxTotal/TaxAmount = 63.00, so 300.00 + 63.00 = 363.00 -->
✅ Correct
<cac:LegalMonetaryTotal>
<cbc:TaxExclusiveAmount currencyID="EUR">300.00</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">363.00</cbc:TaxInclusiveAmount>
</cac:LegalMonetaryTotal>
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
BR-CO-15 often comes together with BR-CO-13 (total without VAT) and BR-CO-16 (amount due). Fix them together: one wrong amount usually triggers several messages.
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-CO-17: The VAT amount for a VAT rate does not equal the taxable amount × the rate.
- PEPPOL-EN16931-R120: The net amount of an invoice line does not equal quantity × unit price, plus charges and minus allowances on that line.
Frequently asked questions about BR-CO-15
Is one cent really an error?
Yes. BR-CO-15 allows no tolerance. The total with VAT must exactly equal the total without VAT plus VAT.
Where is the total with VAT in the XML?
In cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount. The total without VAT is in TaxExclusiveAmount, the VAT total in cac:TaxTotal/cbc:TaxAmount.