# BR-CO-16 Amount due for payment must equal total with VAT minus paid plus rounding

Amount due for payment (BT-115) must equal Invoice total amount with VAT (BT-112) minus Paid amount (BT-113) plus Rounding amount (BT-114).

## Problem Description

> **ERROR**: EN 16931 calculation and consistency rule (BR-CO)

> **Where BR-CO-16 is checked**
>
> 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-16: EN 16931 calculation rule, reported in the stage “EN 16931 rules”.

## Context and Significance

The validator checks this equation exactly, without tolerance. Failures usually come from prepayments or rounding: the ERP deducts an advance payment from the amount due but does not export it as BT-113, or it rounds the amount due without stating the difference in BT-114.

## Solution

Recompute BT-115 = BT-112 − BT-113 + BT-114, treating BT-113 and BT-114 as zero when absent. UBL: cbc:PayableAmount, cbc:PrepaidAmount, cbc:PayableRoundingAmount; CII: ram:DuePayableAmount, ram:TotalPrepaidAmount, ram:RoundingAmount.

- [Validate XML](/en/xrechnung-validator?source=resource&rule=BR-CO-16)
- [Convert invoice](/en/pdf-to-xrechnung?source=resource&rule=BR-CO-16)

## Valid Examples

- BT-112 = 119.00, BT-113 = 50.00, BT-114 = 0.00 → BT-115 = 69.00
- BT-112 = 99.98, BT-113 absent, BT-114 = 0.02 → BT-115 = 100.00

## Invalid Examples

- BT-115 = BT-112 even though BT-113 = 50.00 prepaid
- BT-115 ignores BT-114 rounding adjustment of 0.02

## Affected Fields

- [BT-115 Amount due for payment](/resources/xrechnung/bt-115-amount-due-for-payment)
- [BT-112 Invoice total amount with VAT](/resources/xrechnung/bt-112-invoice-total-amount-with-vat)
- [BT-113 Paid amount](/resources/xrechnung/bt-113-paid-amount)
- [BT-114 Rounding amount](/resources/xrechnung/bt-114-rounding-amount)

## Related Rules

- [BR-CO-15](/resources/kosit-validator-errors/br-co-15-invoice-total-with-vat-must-match)
- [BR-CO-25](/resources/kosit-validator-errors/br-co-25-positive-amount-due-needs-payment-due-date-or-terms)

## Validation Tools

- [Official KoSIT Validator](https://github.com/itplr-kosit/validator): Run the official KoSIT validator with the XRechnung configuration to check EN 16931 and XRechnung rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Find validation errors during conversion and review each correction.

## Related Resources

- [Official Specification](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [All validation errors](/resources/kosit-validator-errors): Overview of the EN 16931, XRechnung and Peppol validation rules explained here.
