What does BR-CO-8 mean?
The reason text and the reason code of a charge on line level must name the same type. Otherwise the entry is ambiguous.
Common causes of BR-CO-8
- The reason code (BT-145) means a different type of charge than the reason text (BT-144).
- Free text from a template does not fit the code you picked.
- Charge codes (UNTDID 7161) were mixed up with allowance codes (UNTDID 5189).
How to fix BR-CO-8
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-145 along this XPath:
//ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge - Apply the fix. The reason code (BT-145) and the reason text (BT-144) of an invoice line charge must name the same type of charge. In the line's 'ram:SpecifiedTradeAllowanceCharge' (ChargeIndicator=true), make sure that 'ram:ReasonCode' (BT-145, UNTDID 7161) and 'ram:Reason' (BT-144) match in meaning.
- Validate again. Save the file and validate it again to check that BR-CO-8 is no longer reported.
The reason code (BT-145) and the reason text (BT-144) of an invoice line charge must name the same type of charge. In the line's 'ram:SpecifiedTradeAllowanceCharge' (ChargeIndicator=true), make sure that 'ram:ReasonCode' (BT-145, UNTDID 7161) and 'ram:Reason' (BT-144) match in meaning.
//ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceChargeBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<ram:SpecifiedTradeAllowanceCharge>
<ram:ChargeIndicator><udt:Indicator>true</udt:Indicator></ram:ChargeIndicator>
<ram:ReasonCode>PC</ram:ReasonCode>
<ram:Reason>Frachtkosten</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedTradeAllowanceCharge>
<ram:ChargeIndicator><udt:Indicator>true</udt:Indicator></ram:ChargeIndicator>
<ram:ReasonCode>PC</ram:ReasonCode>
<ram:Reason>Verpackung</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>
Frequent questions about BR-CO-8
Which code list applies to BT-145?
How does this relate to BR-CO-24?
Related error codes
Check BR-CO-8 automatically
Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – upload the PDF or the XML and you get every error with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.