# BR-CO-18 At least one VAT breakdown is required

An invoice shall have at least one VAT breakdown group (BG-23) summarising the amounts for each VAT category.

## Problem Description

> **ERROR**: EN 16931 calculation and consistency rule (BR-CO)

## Context and Significance

This EN 16931 rule guarantees that a VAT breakdown exists, so that the validator (BR-CO-14) and the buyer can reconcile the invoice total VAT amount with the category amounts. A breakdown is required even when no VAT is charged: exempt, reverse-charge, export or out-of-scope invoices need a breakdown with category E, AE, G or O and a VAT amount of 0.00. The error often occurs on such invoices, or when an export writes only the VAT total without subtotals.

## Solution

Add at least one VAT breakdown (BG-23) with the taxable amount (BT-116), VAT amount (BT-117) and VAT category code (BT-118). UBL: cac:TaxTotal/cac:TaxSubtotal; CII: ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax.

- [Validate XML](/en/xrechnung-validator?source=resource&rule=BR-CO-18)
- [Convert invoice](/en/pdf-to-xrechnung?source=resource&rule=BR-CO-18)

## Valid Examples

- One BG-23 group: category S, 19 % rate, taxable 100.00, VAT 19.00

## Invalid Examples

- Invoice with a total VAT amount but no BG-23 VAT breakdown at all
- Exempt invoice (category E) without any VAT breakdown because no VAT is due

## Code Examples

### Valid XML
```
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
  <cac:TaxSubtotal>
    <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
    <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
    <cac:TaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>19</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:TaxCategory>
  </cac:TaxSubtotal>
</cac:TaxTotal>
```

### Invalid XML
```
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
</cac:TaxTotal>
```

## Affected Fields

- [BG-23 VAT breakdown](/resources/xrechnung/bt-116-vat-category-taxable-amount)

## Related Rules

- [BR-CO-14](/resources/kosit-validator-errors/br-co-14-invoice-total-vat-must-equal-sum-of-vat-categories)

## Validation Tools

- [Official KoSIT Validator](https://github.com/itplr-kosit/validator): Run the official KoSIT validator with the XRechnung configuration to check EN 16931 and XRechnung rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Find validation errors during conversion and review each correction.

## Related Resources

- [Official Specification](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [All validation errors](/resources/kosit-validator-errors): Overview of the EN 16931, XRechnung and Peppol validation rules explained here.
