Validation rules

BR-CO-12 — EN 16931 rule

The sum of document-level charges (BT-108) does not equal the sum of the individual charge amounts (BT-99).

Rule
BR-CO-12 — official EN 16931 / XRechnung rule
Severity
error
Business term
BT-108 — Sum of charges on document level
Field in your JSON
invoice.charges
Detected by
tier 3 — KoSIT validator (authoritative)
Reachability
Only reachable when validating your own XML — normbill-generated documents cannot trigger it

normbill computes BT-108 from the charges it serializes, so generated documents always balance.

How to fix it

Recompute cbc:ChargeTotalAmount as the sum of all document-level charge cbc:Amount values.

BR-CO-12 auf Deutsch — was bedeutet der Fehler?

Die Summe der Zuschläge auf Dokumentebene (BT-108) entspricht nicht der Summe der einzelnen Zuschlagsbeträge (BT-99).

So beheben Sie den Fehler

Berechnen Sie cbc:ChargeTotalAmount als Summe aller Zuschlag-cbc:Amount-Werte neu.

Related rules

  • BR-DEC-11 — The sum of document-level charges (BT-108) uses more than 2 decimal places — EN 16931 allows at most 2.
  • BR-CO-13 — Supplied totals.net does not equal the sum of line nets minus document allowances plus document charges.
  • BR-CO-11 — The sum of document-level allowances (BT-107) does not equal the sum of the individual allowance amounts…
  • BR-CO-10 — The sum of line net amounts (BT-106) does not match the invoice lines.
  • BR-CO-14 — Supplied totals.tax does not match the computed VAT breakdown.
  • BR-CO-15 — Supplied totals.gross does not equal net + tax.

Official sources

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.

Spotted something?

Bug, missing feature, wrong validation result — tell us. The page you're on is attached automatically; email optional.