einvoicecheck

Rules / BR-CO-23 · Markdown

BR-CO-23

EN 16931-1 layer: en16931

Checked against Peppol BIS Billing 3.0 2026.5

What does BR-CO-23 mean? Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both.

Why did my invoice fail BR-CO-23?

Each invoice line allowance (BG-27) must contain an allowance reason as free text (BT-139) or a coded reason (BT-140), or both. This documents why a discount was applied to a specific line so it can be understood and audited.

Official rule text

Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both.

Common causes

How do I fix it?

On the line allowance add a reason, e.g. <cac:AllowanceCharge><cbc:ChargeIndicator>false</cbc:ChargeIndicator><cbc:AllowanceChargeReason>Volume discount</cbc:AllowanceChargeReason>...</cac:AllowanceCharge>.

Related rules

BR-CO-03 · BR-CO-04 · BR-CO-05 · BR-CO-06 · BR-CO-07 · BR-CO-08 · BR-CO-09 · BR-CO-10

Check your invoice against this rule

Paste it into the live demo, or call POST /v1/validate. See the quickstart.