Skip to main content

BR-CO-12 Sum of document charges must match total

Sum of charges on document level (BT-108) shall equal the sum of all document level charge amounts (BT-99): BT-108 = Σ BT-99.

Problem Description

ERROR

EN 16931 calculation and consistency rule (BR-CO)

Context and Significance

This EN 16931 calculation rule feeds the totals chain: BT-108 is part of the invoice total without VAT (BR-CO-13). The validator compares BT-108 exactly with the sum of the document level charges. The error typically occurs when shipping costs are added to the document without updating BT-108, when BT-108 is filled although there is no document level charge, or when invoice line charges (BG-28) are counted in BT-108 although they are already included in the line net amounts.

Solution

Recompute BT-108 as the exact sum of all document level charge amounts (BT-99) and write it into cbc:ChargeTotalAmount (UBL) or ram:ChargeTotalAmount (CII). If there is no document level charge, omit BT-108 or set it to 0.00.

Quick actions

Valid Examples

  • BT-99 = 20.00 and BT-99 = 10.00, BT-108 = 30.00
  • No document level charge and BT-108 absent

Invalid Examples

  • BT-99 = 20.00 and BT-99 = 10.00, but BT-108 = 25.00
  • BT-108 = 3.00 although the only charge of 3.00 is an invoice line charge (BG-28)

Code Examples

Valid XML
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Freight charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">20.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>ABL</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Additional packaging</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">10.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
<cac:LegalMonetaryTotal>
  <cbc:ChargeTotalAmount currencyID="EUR">30.00</cbc:ChargeTotalAmount>
</cac:LegalMonetaryTotal>
Invalid XML
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Freight charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">20.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>ABL</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Additional packaging</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">10.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
<cac:LegalMonetaryTotal>
  <cbc:ChargeTotalAmount currencyID="EUR">25.00</cbc:ChargeTotalAmount>
</cac:LegalMonetaryTotal>

Affected Fields

Validation Tools