Skip to main content

BR-CO-10 Sum of invoice line net amounts (BT-106) must equal the sum of all line net amounts (BT-131)

The document-level Sum of invoice line net amounts (BT-106) must equal the arithmetic sum of every Invoice line net amount (BT-131).

Problem Description

ERROR

EN 16931 calculation and consistency rule (BR-CO)

Interactive pipeline

Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.

Try:

BR-CO-10 EN 16931 calculation rule

Reported in stage 2: EN 16931 rules.

Level error: the report recommends rejecting the invoice.

Stage 2 · What it checks

  • The core business terms are present (BR-01 to BR-65).
  • Totals add up and related fields agree (BR-CO); codes and decimals are valid (BR-CL, BR-DEC).
  • Each VAT category is consistent: S, Z, E, AE, K, G, O, L, M (BR-S, BR-Z, BR-AE, BR-IC …).

Example codes

Typical fix

Recalculate totals and VAT from the line data, and correct the VAT category in the source data.

A validator checks an e-invoice in stages. First the file must be well-formed XML that matches the UBL or CII schema (XSD). Then the EN 16931 business rules run: BR core rules, BR-CO calculations, BR-CL code lists, BR-DEC decimals and VAT-category rules such as BR-S. Next come the national or network rules that BT-24 selects: BR-DE for XRechnung, PEPPOL-EN16931 for Peppol BIS Billing. The report lists every failed rule: one error means reject, warnings alone still mean accept. BR-CO-10: EN 16931 calculation rule, reported in the stage “EN 16931 rules”. Rule sets: KoSIT validator 1.6.3 with the XRechnung configuration of 31 Aug 2026 (EN 16931 artefacts 1.3.16), Peppol BIS Billing 3.0.21.

Context and Significance

The validator adds up all BT-131 values and compares the result with BT-106 exactly, without tolerance. A difference usually comes from rounding: the ERP calculates the total from unrounded quantity × price values, while each line amount in the XML is rounded to two decimals. Another cause is a line that was deleted or added after the totals were calculated.

Solution

Round each invoice line net amount (BT-131) to two decimals first, then write their exact sum into BT-106 in the totals block (UBL: cac:LegalMonetaryTotal/cbc:LineExtensionAmount; CII: ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:LineTotalAmount).

Quick actions

Valid Examples

  • Lines 100.00 + 50.00 + 25.00 yield BT-106 = 175.00
  • Single line of 99.99 yields BT-106 = 99.99

Invalid Examples

  • Three lines of 10.005 are each rounded to 10.01 (sum 30.03), but BT-106 = 30.02 was calculated from the unrounded sum 30.015
  • BT-106 left at 0.00 while lines exist

Affected Fields

Validation Tools