Skip to main content

BR-CL-19 Coded allowance reason must come from UNCL5189

When an allowance reason is coded (BT-98 at document level, BT-140 at line level), the code must belong to the UNCL5189 subset used by EN 16931.

Problem Description

ERROR

EN 16931 code-list rule (BR-CL)

Context and Significance

Allowances use their own numeric code list (UNCL5189), separate from the list for charges (UNCL7161, BR-CL-20); EN 16931 allows 19 of these codes. The rule fails when a charge code such as FC is copied to an allowance, when a text such as "DISC" sits in the code field, or when the charge indicator is wrong, so that a charge is checked against the allowance list. Example: a volume discount uses code 95 with the reason "Volume discount".

Solution

Set the allowance reason code to an allowed UNCL5189 value, e.g. 95 (discount), 100 (special rebate) or 105 (yearly turnover); give any other reason as free text (BT-97 or BT-139). In UBL, the code is cbc:AllowanceChargeReasonCode in a cac:AllowanceCharge with cbc:ChargeIndicator false; in CII, ram:ReasonCode in a ram:SpecifiedTradeAllowanceCharge.

Quick actions

Valid Examples

  • BT-98 = 95 β€” discount
  • BT-140 = 100 β€” special rebate at line level

Invalid Examples

  • BT-98 = FC β€” charge code (UNCL7161) on an allowance
  • BT-98 = DISC β€” free text instead of a code

Code Examples

Valid XML
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
</cac:AllowanceCharge>
Invalid XML
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
</cac:AllowanceCharge>

Affected Fields

Validation Tools