What does BR-64 mean?
The rule checks the Item standard identifier (BT-157), such as a GTIN. If it is given in an invoice line, it must carry a Scheme identifier. The Scheme identifier comes from the ISO 6523 (ICD) code list and says which numbering system the identifier belongs to. Without it the item number cannot be read unambiguously.
Common causes of BR-64
- The element ram:GlobalID is present, but the attribute schemeID is missing.
- The schemeID was left empty (schemeID="").
- A GTIN appears without the ICD code "0160".
- The item number was wrongly put in ram:GlobalID instead of ram:SellerAssignedID.
How to fix BR-64
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-157 along this XPath:
//rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct/ram:GlobalID/@schemeID - Apply the fix. Add the attribute schemeID with an ISO 6523 code (ICD) to the element ram:SpecifiedTradeProduct/ram:GlobalID, e.g. schemeID="0160" for a GTIN.
- Validate again. Save the file and validate it again to check that BR-64 is no longer reported.
Add the attribute schemeID with an ISO 6523 code (ICD) to the element ram:SpecifiedTradeProduct/ram:GlobalID, e.g. schemeID="0160" for a GTIN.
//rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct/ram:GlobalID/@schemeIDBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<ram:SpecifiedTradeProduct>
<ram:GlobalID>4012345678901</ram:GlobalID>
<ram:Name>Beispielartikel</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0160">4012345678901</ram:GlobalID>
<ram:Name>Beispielartikel</ram:Name>
</ram:SpecifiedTradeProduct>
Frequent questions about BR-64
Which value must the schemeID have?
When does the rule not apply?
Where does my own item number belong?
Related error codes
Check BR-64 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.