国家代码检查器
UK 并不是合法的国家代码。人们潜意识里总觉得它是 —— 它既是顶级域名,也是人尽皆知的习惯写法 —— 但 ISO 3166-1 明确分配的标准代码是 GB,注册表中根本没有 UK。这一字之差,是电商数据源中“国家”一栏被平台拒收最频繁的原因。
🔒 你的数据不会离开浏览器。
五类看似都是国家代码的截然不同情形
一个只回复“有效”或“无效”的工具,把五种本质不同的业务状况粗暴压成了两类,而它们所需的后续处理完全不同:
- 正式分配代码 —— 共 247 个通常意义上的国家与属地代码。这正是各大平台数据源所要求的标准格式。
- 特殊用途代码 ——
EU代表欧洲联盟,UN代表联合国,EZ代表欧元区。它们确实登记在册,但并非具体国家;期待填入国家字段的系统会断然拒收。 - 私有保留代码 —— 例如
AA与ZZ,其含义完全取决于特定系统的内部约定。在导出数据中看到它们,通常意味着系统内部占位符意外泄漏到了外部文件中。 - 已废止代码 —— 共有 11 个。部分代码明确指明了后继继承者(例如
BU→MM);而有些代码因所属领地解体为多个实体,根本无法指定单一替代码。 - 根本不是代码 —— 比如
UK。官方标准库中根本不存在该条目。
为什么本工具在给出修正建议时极其克制
在用户意图毋庸置疑的前提下 —— 比如输入了三位字母代码、数字代码、国家英文全名,或是像把 GB 误写为 UK 这类典型习惯 —— 本工具会明确推荐正确代码并阐述缘由。然而,若某个历史实体解体为多个国家,本工具坚决不给出任何主观猜测,因为最终该归属哪国取决于具体的街道地址。给出错误的建议比不给建议更具危害:人们往往会直接采纳而放弃进一步查证。
数据表格的权威出处
本工具的代码并非凭记忆手工录入。它们生成自 IANA 语言子标签注册表(其区域子标签即为 ISO 3166-1 alpha-2,并完整记录废止日期与替代关系),并与 UN M49 统计代码库联立获取三位字母及数字代码。每一条当前有效代码随后均对照 Node 运行时内置的 ICU 国际化数据逐一交叉核对。生成脚本与数据一同置于代码库中,确保数据随时可由机器重新复现与验证,绝非虚言。
由此带来一项值得坦诚说明的细节:TW 是各大电商平台通用的合法 ISO 代码,但由于 UN M49 统计名录中未收录该条目,因此本表中其三位字母与数字字段保持留空,而非主观臆测补全。
本工具执行的全部检查(共 9 条规则)
CC-U01 未在注册表中收录的代码
输入的取值根本未在注册表中登记。最著名的例子是 UK:直觉上它像是英国理所应当的代码,但 ISO 3166-1 分配的标准代码是 GB,注册表中完全没有 UK。在数据源中使用该代码会导致拒收或投放定向错误。
修复: 使用正式分配的标准代码。当意图可识别时,本工具会提供建议。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-D01 已废止但有明确替代者的代码
该代码已被撤回废止,且官方注册表明确指明了其后继继承代码。陈旧的系统导出数据和历史地址库往往在调整多年后仍残留这些代码。
修复: 替换为注册表指明的继承代码。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-D02 已废止且无单一继承者的代码
所属领地已被拆分或解体,因此没有单一代码能够全盘替代 —— 例如荷属安的列斯群岛解体为多个独立实体,塞尔维亚和黑山分裂为两个国家。具体适用哪一个后继代码取决于实际街道地址,任何工具都无法单纯依据历史代码作出决定。
修复: 核对具体收货地址,选取所属的具体后继国家或地区。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-S01 特殊用途代码,并非具体国家
该代码登记在册,但标识的并非普通国家 —— EU 代表欧盟,UN 代表联合国,EZ 代表欧元区;此外 AC 或 IC 等代码覆盖特别保留区而非正式分配领地。期待输入具体国家的数据源会拒收这些代码。
修复: 使用收货地址所在具体国家的代码。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-P01 私有保留代码
AA 与 ZZ 是专门划出的私有区段 —— 其具体含义完全由特定系统自行约定。在导出数据中出现此类代码,通常意味着内部占位符或哨兵值泄漏到了文件中。
修复: 排查占位符来源并替换为真实国家代码。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-F01 代码形态与当前栏位要求不符
输入是能够明确识别的国家标识符,但形态不符 —— 比如在要求填入两位字母(alpha-2)的栏位中,输入了三位字母(alpha-3)、数字代码或国家全称。
修复: 转换为标准两位字母形式;本工具已展示对应转换结果。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-T01 由 ISO 分配但 UN M49 名录未收录
TW 属于合法有效的 ISO 3166-1 代码,各大主流电商平台均在日常使用;但本表提取三位字母和数字代码所依托的联合国 UN M49 统计名录未收录该条目。本工具恪守诚实原则将其留空,绝不凭空臆造。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-A01 合法的国家/地区代码
该代码为已正式分配的 ISO 3166-1 alpha-2 国家或地区代码。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
CC-E01 根本不是国家代码
输入的内容与本表收录的任何国家代码、三位字母代码、数字代码或国家名称均无任何相似之处。
来源: 由 IANA 语言子标签注册表(其中的地区子标签就是 ISO 3166-1 两字母代码,并带有废止与替代数据)与联合国 M49 列表(提供三字母代码与数字代码)合并而成。两者都由 scripts/build-country-data.mjs 抓取,所以这张表可以重新生成、重新核验,而不必凭信任使用。
收录 261 个现行有效代码与 11 个已废止代码。本工具校验的是代码本身而非地址有效性 —— 无法代替你判断该国家是否符合特定买家的实际发货地址。
关于这些规则。 每一条都有编号、严重级别和通俗解释。每个来源链接都已登记在案,并对线上页面实际复验过,而不是凭印象写上去的. 规则如何编写、测试与保持更新 →