What does BR-54 mean?
The rule checks every item attribute (BG-32) of an invoice line. In CII an attribute sits in the element ram:ApplicableProductCharacteristic. Each attribute must carry a name (BT-160, ram:Description) and a value (BT-161, ram:Value). An attribute such as "Colour: Black" is only complete when both parts are there. If one is missing, the recipient cannot process the attribute.
Common causes of BR-54
- ram:Value is missing, only the attribute name (ram:Description) is set.
- ram:Description is missing, there is only a value without a label.
- The element ram:ApplicableProductCharacteristic was created empty.
- Name and value were written into a single field by mistake.
How to fix BR-54
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-160 along this XPath:
//rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct/ram:ApplicableProductCharacteristic - Apply the fix. Add both children to the element ram:ApplicableProductCharacteristic: ram:Description with the attribute name (e.g. "Colour") and ram:Value with the value (e.g. "Black"). Both are free text.
- Validate again. Save the file and validate it again to check that BR-54 is no longer reported.
Add both children to the element ram:ApplicableProductCharacteristic: ram:Description with the attribute name (e.g. "Colour") and ram:Value with the value (e.g. "Black"). Both are free text.
//rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct/ram:ApplicableProductCharacteristicBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<ram:SpecifiedTradeProduct>
<ram:Name>Bürostuhl Modell B1</ram:Name>
<ram:ApplicableProductCharacteristic>
<ram:Description>Farbe</ram:Description>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedTradeProduct>
<ram:Name>Bürostuhl Modell B1</ram:Name>
<ram:ApplicableProductCharacteristic>
<ram:Description>Farbe</ram:Description>
<ram:Value>Schwarz</ram:Value>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
Frequent questions about BR-54
What is the difference between BT-160 and BT-161?
Can I give several attributes per line?
Are item attributes mandatory?
Related error codes
Check BR-54 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.