# BR-CO-12

Quoted from a public specification. This page is not a validator, and it is not tax, legal, or accounting advice.

- Country: EU
- Syntax: UBL
- Severity: fatal
- Statement language: en
- Last verified: 2026-10-18

## Official statement

> Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).

Source: https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/BR-CO-12/

Peppol BIS Billing 3.0, May 2026 release, EN 16931 model bound to UBL

Severity note: fatal, from the Flag column of the Peppol BIS Billing 3.0 UBL rules index retrieved 2026-10-18.

## Plain-language reading

The sum of charges on document level (BT-108) must equal the sum of the document-level charge amounts (BT-99). The statement uses U+03A3 and ends with a period. The published test rounds that sum to two decimals. It also passes when the charge total is absent and no document-level charge is present. That absent branch is not() and does not call exists. The charge-indicator comparison is ChargeIndicator=true() with no space before =.

## What to change

Set BT-108 to the sum of the document-level charge amounts (BT-99). Omit the charge total only when the invoice has no document-level charge.

## Illustration

Illustration of the condition in the official statement. Not an example published by the source.

**Fails the stated condition.** Document-level charge amounts are 10 and 5, and BT-108 is 10.

**Passes the stated condition.** Those same amounts, and BT-108 is 15.

## Published context and test

Copied from the source. Not reimplemented on this page.

```
cac:LegalMonetaryTotal
```

```
xs:decimal(cbc:ChargeTotalAmount) = (round(sum(../cac:AllowanceCharge[cbc:ChargeIndicator=true()]/xs:decimal(cbc:Amount)) * 10 * 10) div 100) or (not(cbc:ChargeTotalAmount) and not(../cac:AllowanceCharge[cbc:ChargeIndicator=true()]))
```

[All rule notes](https://einvoicegoblin.com/rules/index.md) · [JSON](https://einvoicegoblin.com/rules/BR-CO-12.json) · [HTML](https://einvoicegoblin.com/rules/BR-CO-12/) · [llms.txt](https://einvoicegoblin.com/llms.txt) · [Invoice page](https://einvoicegoblin.com/) · [Privacy](https://einvoicegoblin.com/privacy.html)
