Skip to content

Fatal

PEPPOL-EN16931-R054: One tax total in accounting currency when a tax currency is given

In short

Fatal: fails the selected checks.

PEPPOL-EN16931-R054 means the invoice gives a VAT accounting currency but does not have exactly one cac:TaxTotal without subtotals. If the VAT is reported in the invoice currency, remove the VAT accounting currency.

On this page

What it means

When a Peppol UBL invoice gives a VAT accounting currency (BT-6), it must contain exactly one extra cac:TaxTotal without subtotals, holding only the total VAT in that currency (BT-111).

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

If the VAT is reported in the invoice currency, remove the VAT accounting currency. Otherwise add one cac:TaxTotal containing only cbc:TaxAmount with the converted VAT, in the accounting currency, and no cac:TaxSubtotal. If your invoicing software produced the file, report it to your software provider.

The rule as published

Only one tax total without tax subtotals MUST be provided when tax currency code is provided.

Where XRechnung 3.0 (CII) run it, the rule reads:

Only one tax total amount must be provided where currency id equals tax currency code, if tax currency code (BT-6) is provided.

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
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether PEPPOL-EN16931-R054 still fails, and which other rules do.

Updated 6 November 2026