# BR-CO-05

> Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.

Checked against Peppol BIS Billing 3.0 2026.5

Canonical: https://einvoicecheck.eu/rules/br-co-05

## Official rule text

Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.

## Why did my invoice fail BR-CO-05?

For a document-level allowance, the reason code (BT-98) and the free-text reason (BT-97) must describe the same type of allowance and not contradict each other. They are alternate expressions of the same justification, so a code of "discount" paired with text about "packaging" is invalid.

## Common causes

- Reason code hard-coded to one value while the text is generated from a different field.
- Copy-paste from another allowance leaving mismatched code and text.
- Using a numeric code whose meaning the author misunderstood.
- Localized reason text that no longer matches the selected code.

## How do I fix it?

```
Make code and text agree on the same allowance type: <cac:AllowanceCharge><cbc:ChargeIndicator>false</cbc:ChargeIndicator><cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode><cbc:AllowanceChargeReason>Discount</cbc:AllowanceChargeReason>...</cac:AllowanceCharge>
```
