Skip to main content

BR-CO-08 Line charge reason and code must agree

The invoice line charge reason code (BT-145) and the invoice line charge reason (BT-144) shall indicate the same type of charge reason.

Problem Description

The invoice line charge reason code (BT-145) and the invoice line charge reason (BT-144) shall indicate the same type of charge reason.

ERROR

XRechnung 3.0

Context and Significance

This EN16931 core rule enforces semantic agreement between coded and free-text charge reasons at line level, mirroring the document-level rule BR-CO-06.

Solution

Within the invoice line charge, make the free-text reason (BT-144) and the coded reason (BT-145) describe the same charge.

Quick actions

Valid Examples

Use these points as the practical checks for this section.

  • BT-145 = ABL (Packaging) with BT-144 = "Special packaging"

Invalid Examples

Use these points as the practical checks for this section.

  • BT-145 = ABL (Packaging) with BT-144 = "Loyalty discount"

Code Examples

Valid XML
<cac:InvoiceLine>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
    <cbc:AllowanceChargeReasonCode>ABL</cbc:AllowanceChargeReasonCode>
    <cbc:AllowanceChargeReason>Special packaging</cbc:AllowanceChargeReason>
    <cbc:Amount currencyID="EUR">3.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>
Invalid XML
<cac:InvoiceLine>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
    <cbc:AllowanceChargeReasonCode>ABL</cbc:AllowanceChargeReasonCode>
    <cbc:AllowanceChargeReason>Loyalty discount</cbc:AllowanceChargeReason>
    <cbc:Amount currencyID="EUR">3.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>

Affected Fields

Validation Tools