Error codes

BR-CL-14: country code is not in ISO 3166-1

Severity: fatal · Syntax: CII, UBL

Official message

Country codes in an invoice MUST be coded using ISO code list 3166-1

What this means

BR-CL-14 requires country code to be taken from ISO 3166-1. Official text: Country codes in an invoice MUST be coded using ISO code list 3166-1

Typical cause

The value sent is not in ISO 3166-1, or a free-text label was sent instead of a code.

How to fix it

Replace the value with a code from ISO 3166-1. The sample DE shows the shape of the value, not every allowed code.

UBL

<cbc:IdentificationCode>DE</cbc:IdentificationCode>

CII

<ram:CountryID>DE</ram:CountryID>

Business term

—

Related rules

Context and assertion

UBL cac:Country/cbc:IdentificationCode

CII ram:CountryID

UBL

((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(.), ' '))))

CII

((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(.), ' '))))

Check a file now, free of charge

curl -F "file=@rechnung.xml" https://checkxrechnung.com/v1/validate

Questions

What does BR-CL-14 actually check?

BR-CL-14 requires country code to be taken from ISO 3166-1. Official text: Country codes in an invoice MUST be coded using ISO code list 3166-1

How do I fix BR-CL-14?

Replace the value with a code from ISO 3166-1. The sample DE shows the shape of the value, not every allowed code.

If BR-CL-14 passes, is the invoice legally compliant?

No. This page helps you read this one Schematron assertion. A pass is not a statement about tax law, portal acceptance, or bank overlays.