What does BR-20 mean?
The Seller tax representative postal address (BG-12) must carry a Tax representative country code (BT-69) if the invoice names a Seller tax representative party (BG-11). The country code sits as ram:CountryID in the address and follows the two-letter format under ISO 3166-1. The rule applies only if a tax representative is stated.
Common causes of BR-20
- The element ram:CountryID is missing from the ram:PostalTradeAddress of the tax representative.
- The country name was entered as plain text instead of the country code.
- The code has the wrong format, for example three letters or lower case.
How to fix BR-20
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-69 along this XPath:
//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTaxRepresentativeTradeParty/ram:PostalTradeAddress/ram:CountryID - Apply the fix. Add the element ram:CountryID with the ISO 3166-1 code of two capital letters in the ram:PostalTradeAddress of the tax representative, for example DE.
- Validate again. Save the file and validate it again to check that BR-20 is no longer reported.
Add the element ram:CountryID with the ISO 3166-1 code of two capital letters in the ram:PostalTradeAddress of the tax representative, for example <ram:CountryID>DE</ram:CountryID>.
//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTaxRepresentativeTradeParty/ram:PostalTradeAddress/ram:CountryIDBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<ram:SellerTaxRepresentativeTradeParty>
<ram:Name>Steuerkanzlei Weber und Partner</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>10115</ram:PostcodeCode>
<ram:CityName>Berlin</ram:CityName>
</ram:PostalTradeAddress>
</ram:SellerTaxRepresentativeTradeParty>
<ram:SellerTaxRepresentativeTradeParty>
<ram:Name>Steuerkanzlei Weber und Partner</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>10115</ram:PostcodeCode>
<ram:CityName>Berlin</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:SellerTaxRepresentativeTradeParty>
Frequent questions about BR-20
What format does the country code have?
May I write out the country name?
Where exactly does the code sit?
Related error codes
Check BR-20 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.