Reference
Markdown exportBR-CL-20 Coded charge reason must come from UNCL7161
When a charge reason is coded (BT-105 at document level, BT-145 at line level), the code must belong to the UNCL7161 code list.
Problem Description
ERROR
EN 16931 code-list rule (BR-CL)
Context and Significance
Charges use UNCL7161, a list of mostly letter codes, while allowances use the numeric UNCL5189 codes (BR-CL-19). The rule fails when an allowance code such as 95 is sent on a charge, when a discount is marked as a charge (ChargeIndicator true), or when a text such as "FREIGHT" sits in the code field. Example: shipping costs added at document level use code FC with the reason "Freight".
Solution
Set the charge reason code to a UNCL7161 value, e.g. FC (freight service), PC (packing), ABL (additional packaging) or SAA (shipping and handling); give any other reason as free text (BT-104 or BT-144). In UBL, the code is cbc:AllowanceChargeReasonCode in a cac:AllowanceCharge with cbc:ChargeIndicator true; in CII, ram:ReasonCode in a ram:SpecifiedTradeAllowanceCharge.
Quick actions
Valid Examples
- BT-105 = FC β freight service
- BT-145 = ABL β additional packaging at line level
Invalid Examples
- BT-105 = 95 β allowance code (UNCL5189) on a charge
- BT-105 = FREIGHT β free text instead of a code
Code Examples
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
</cac:AllowanceCharge><cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
</cac:AllowanceCharge>