BR-CL-14: Country codes must be ISO 3166-1 alpha-2 codes
Checks every cac:Country/cbc:IdentificationCode in the document (seller, buyer or any other address) against the two-character country list in the rule, which is ISO 3166-1 alpha-2 plus 1A and XI and includes SA.
How to fix it
Use a two-letter code from the list, without spaces, e.g. <cac:Country><cbc:IdentificationCode>SA</cbc:IdentificationCode></cac:Country>.
ZATCA's official text
[BR-CL-14]-Country codes in an invoice MUST be coded using ISO code list 3166-1
Source: ZATCA SDK 3.4.8 · EN 16931 (CEN) rules
Fails when (the condition ZATCA's SDK runs)
not(((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 rules
- BR-CL-03 · Amount currencyID must be an ISO 4217 alpha-3 code
- BR-CL-04 · Invoice currency code must be an ISO 4217 alpha-3 code
- BR-CL-05 · Tax currency code must be an ISO 4217 alpha-3 code
- BR-CL-16 · Payment means code must be from the UNCL4461 list
- BR-CL-18 · Tax category codes must come from the UNCL5305 code list
- BR-CL-KSA-14 · The QR code value must be 1 to 1000 characters long
Validate your invoice against ZATCA's rules
Paste the XML and see every error and warning. It runs in your browser; the invoice goes nowhere.
Validate an invoice or try Matheel