BR-CL-15: Item country of origin (BT-159) not according to ISO 3166-1
Official message
[BR-CL-15] Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-15] Country codes in an invoice MUST be coded using ISO code list 3166-1
- Severity
- Error The invoice is invalid and may be rejected by the recipient.
- Applies to
- EN 16931 (CII), EN 16931 (UBL)
What does this mean?
Country codes in an invoice must be coded as two-letter code according to ISO 3166-1 (alpha-2). This rule checks the item country of origin (BT-159). The value given is not in that list.
CII: ram:OriginTradeCountry/ram:ID is checked. UBL: cac:OriginCountry/cbc:IdentificationCode is checked.
Typical causes
A country name ("China") or a three-letter code (CHN) instead of the two-letter code.
Lower case or spaces.
A code that is not in ISO 3166-1, e.g. EU.
How to fix the error
State the country of origin with the two-letter code according to ISO 3166-1 alpha-2 or omit BT-159 if it is not known (the field is optional).
CII: ram:SpecifiedTradeProduct/ram:OriginTradeCountry/ram:ID, UBL: cac:Item/cac:OriginCountry/cbc:IdentificationCode.
Generate and validate the invoice again.
In E-Rechnungsfreund
In the invoice form, "Experte" view, section "Rechnungspositionen (BG-25)" (invoice lines), select a country from the list in the field "Herkunftsland (BT-159)" (country of origin) of the line or leave "– kein –" (none).
Example
Wrong
<ram:OriginTradeCountry>
<ram:ID>CHN</ram:ID>
</ram:OriginTradeCountry>
Correct
<ram:OriginTradeCountry>
<ram:ID>CN</ram:ID>
</ram:OriginTradeCountry>
For developers: test expression per syntax
EN 16931 (CII) (CII)
Context: ram:OriginTradeCountry/ram:ID
((not(contains(normalize-space(.), ' ')) and contains(' 1A AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS XI YE YT ZA ZM ZW ', concat(' ', normalize-space(.), ' '))))
EN 16931 (UBL) (UBL)
Context: cac:OriginCountry/cbc:IdentificationCode
((not(contains(normalize-space(.), ' ')) and contains(' 1A AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BL BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR SS ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS XI YE YT ZA ZM ZW ', concat(' ', normalize-space(.), ' '))))
Related validation rules
- BR-CL-01: Invoice type code (BT-3) not from UNTDID 1001
- BR-CL-03: Currency attribute currencyID not according to ISO 4217
- BR-CL-04: Invoice currency code (BT-5) not according to ISO 4217
- BR-CL-05: VAT accounting currency code (BT-6) not according to ISO 4217
- BR-CL-06: Value added tax point date code (BT-8) not permitted
- BR-CL-07: Object identifier scheme (BT-18-1, BT-128-1) not from UNTDID 1153
Last updated:
Explanation of the validation rule, not legal or tax advice.