Validation rules
PEPPOL-EN16931-R054 — Peppol BIS rule
When a tax accounting currency is used, exactly one additional tax total without subtotals must carry it.
- Rule
PEPPOL-EN16931-R054— official EN 16931 / XRechnung rule- Severity
- error
- Detected by
- tier 3 — KoSIT validator (authoritative)
- Reachability
- Not expressible through the normbill invoice model — documented for completeness
The normbill invoice model has no VAT accounting currency (BT-6).
How to fix it
Add the second cac:TaxTotal with only the converted tax amount.
PEPPOL-EN16931-R054 auf Deutsch — was bedeutet der Fehler?
Bei einer Umsatzsteuer-Währung muss genau ein zusätzlicher TaxTotal ohne Aufschlüsselungen diese Währung tragen.
So beheben Sie den Fehler
Ergänzen Sie den zweiten cac:TaxTotal nur mit dem umgerechneten Steuerbetrag.
Related rules
PEPPOL-EN16931-R053— Exactly one tax total with tax subtotals must be provided.PEPPOL-EN16931-R055— The invoice total VAT amount and its accounting-currency counterpart must have the same sign.PEPPOL-EN16931-R061— A direct-debit payment (means code 49/59) must carry a mandate reference (BT-89).PEPPOL-EN16931-R046— The item net price must equal the gross price minus the price allowance when a gross price is provided.PEPPOL-EN16931-R044— A charge on price level is not allowed — only allowances (indicator 'false').PEPPOL-EN16931-R043— An allowance/charge indicator must be exactly 'true' or 'false'.
Official sources
- XRechnung specification (KoSIT / xeinkauf.de)
- KoSIT validator on GitHub and the XRechnung validator configuration
Every 422 from the API lists the rule id, the path in your request JSON, a plain-language message and a suggested fix — see the docs overview for the report format.
Or try it live: drop any XRechnung XML on the free validator — same KoSIT-backed report, no account.