Validation rules
BR-DEC-16 — EN 16931 rule
The paid amount (BT-113) uses more than 2 decimal places — EN 16931 allows at most 2.
- Rule
BR-DEC-16— 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
When invoice.paid_amount (BT-113) is set, the serializer writes cbc:PrepaidAmount and PayableAmount = BT-112 − BT-113.
How to fix it
Round cbc:PrepaidAmount to 2 decimals.
BR-DEC-16 auf Deutsch — was bedeutet der Fehler?
Der bereits gezahlte Betrag (BT-113) hat mehr als 2 Nachkommastellen. EN 16931 erlaubt höchstens 2 Dezimalstellen — der KoSIT-Validator lehnt die Rechnung ab.
So beheben Sie den Fehler
Runden Sie cbc:PrepaidAmount / invoice.paid_amount auf 2 Nachkommastellen. normbill schreibt PrepaidAmount und PayableAmount = BT-112 − BT-113, wenn paid_amount gesetzt ist.
Related rules
BR-DEC-15— The invoice total VAT amount in the accounting currency (BT-111, the second cac:TaxTotal/cbc:TaxAmount…BR-DEC-17— The rounding amount (BT-114) uses more than 2 decimal places — EN 16931 allows at most 2.BR-DEC-14— totals.gross (BT-112) has more than 2 decimal places — EN 16931 allows at most 2.BR-DEC-18— The amount due for payment (BT-115) uses more than 2 decimal places — EN 16931 allows at most 2.BR-DEC-13— totals.tax (BT-110) has more than 2 decimal places — EN 16931 allows at most 2.BR-DEC-19— A VAT category taxable amount (BT-116) uses more than 2 decimal places — EN 16931 allows at most 2.
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.