← All rule codes

BR-CO-16

Error (blocking) EN 16931 (UBL)EN 16931 (CII)

Official rule text

[BR-CO-16]-Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).

What it means

The amount due (BT-115) must equal total with VAT (BT-112) minus what was already paid (BT-113) plus the rounding amount (BT-114). Sign handling is the classic failure: BT-114 is added, not subtracted, and once you emit cbc:PrepaidAmount it must be reflected in cbc:PayableAmount - deposits and down payments are where this rule usually bites.

How to fix it

Set cbc:PayableAmount (BT-115) = TaxInclusiveAmount (BT-112) - PrepaidAmount (BT-113) + PayableRoundingAmount (BT-114) under cac:LegalMonetaryTotal; if BT-113/BT-114 are zero, either omit them or include them as 0 in the arithmetic.

Business terms involved: BT-115BT-112BT-113BT-114

🇫🇷 En français

Le net à payer (BT-115) doit être égal au total TTC (BT-112) moins le déjà payé (BT-113) plus l'arrondi (BT-114). Le signe est le piège classique : le BT-114 s'ajoute, il ne se soustrait pas, et dès que cbc:PrepaidAmount est émis, il doit se retrouver dans cbc:PayableAmount - acomptes et arrhes sont le terrain d'échec habituel de cette règle.

Correction : Posez cbc:PayableAmount (BT-115) = TaxInclusiveAmount (BT-112) - PrepaidAmount (BT-113) + PayableRoundingAmount (BT-114) sous cac:LegalMonetaryTotal ; si BT-113/BT-114 valent zéro, omettez-les ou intégrez-les à 0 dans le calcul.

Seeing BR-CO-16 in a rejection?

Run your file through the free validator to see every violation at once — or let NormDrift watch your reference invoices so the next ruleset release never surprises you.