What it means
A Peppol UBL invoice must have exactly one cac:TaxTotal that contains the VAT breakdown (cac:TaxSubtotal elements), in the invoice currency. All VAT rates go in that one tax total, each as its own subtotal.
Why it matters
Peppol BIS Billing 3.0 adds this rule to EN 16931 so that every access point and receiver can process the invoice the same way. The sending or receiving access point rejects an invoice that fails it, so it never reaches the buyer.
How to fix it
This is a structural error in the file. If you build the XML yourself, put every cac:TaxSubtotal inside a single cac:TaxTotal; a second cac:TaxTotal is only allowed for the VAT in accounting currency, and it has no subtotals. If your invoicing software produced it, report it to your software provider.
The rule as published
Only one tax total with tax subtotals MUST be provided. Where XRechnung 3.0 (CII) run it, the rule reads:
No more than one tax total amount must be provided where currency id equals document currency code. Where this rule applies
| Rule set | Version |
|---|---|
| XRechnung 3.0 (UBL) | 3.0.2 |
| XRechnung 3.0 (UBL credit note) | 3.0.2 |
| XRechnung 3.0 (CII) | 3.0.2 |
| Peppol BIS Billing 3.0 (invoice) | 2026.5 |
| Peppol BIS Billing 3.0 (credit note) | 2026.5 |
Check your file
Drop your e-invoice to see whether PEPPOL-EN16931-R053 still fails, and which other rules do.
Related rules
- PEPPOL-EN16931-R054 One tax total in accounting currency when a tax currency is given
- PEPPOL-EN16931-R055 Both VAT totals must have the same sign
- PEPPOL-EN16931-R061 A direct debit needs a mandate reference
- PEPPOL-EN16931-R080 At most one project reference on the invoice
- PEPPOL-EN16931-R100 At most one invoiced object per line
- PEPPOL-EN16931-R101 Line document references may only be invoiced objects