条形码校验位计算器与验证工具(UPC/EAN/GTIN)
免费在线工具,可验证并计算 UPC-A、EAN-8、EAN-13、GTIN-14 条形码的校验位。输入完整数字即可验证,或输入不含校验位的数字来自动计算并补全正确的校验位。全部计算均在浏览器本地完成。
什么是条形码校验位验证工具?
这款免费在线工具可以验证或计算 UPC-A、EAN-8、EAN-13、GTIN-14 四种条形码标准共用的校验位——也就是末尾那一位用于核验的数字。它使用 GS1 定义的加权 mod-10 算法,在浏览器中即时确认数字是否有效。
在"验证"模式下,输入包含校验位的完整数字即可查看是否一致;在"计算"模式下,只需输入不含校验位的数字,系统会自动补上正确的校验位。无论是核对新分配的产品编码,还是排查条形码无法扫描的原因,都很实用。
使用方法
- 选择模式 根据你的数字是否已包含校验位,在"验证"和"计算"之间切换。
- 输入条形码数字 可以直接粘贴带有空格或短横线的数字。
- 查看结果 验证模式会显示是否一致以及识别出的格式;计算模式会显示补全后的完整数字。
- 尝试其他数字 使用清除按钮重置输入,即可核对下一个数字。
用好本工具的小技巧
- 可以直接粘贴带有空格或短横线的数字,计算前会自动去除这些符号。
- 在为新产品编码打印前先用"计算"模式确认一下:输入不含校验位的数字,系统会自动补上正确的校验位。
- UPC-A(12位)在数字前补一个0后,就与 EAN-13(13位)使用完全相同的算法,因此两种格式可以用同一套加权计算来验证。
- GTIN-14 是在 EAN-13 前面再加一位表示包装层级的"标识数字",常用于物流中标识箱、托盘等单位。
- 如果条码扫描枪读取印刷标签失败,可以先在这里核对校验位,帮助判断问题出在印刷缺陷还是数据输入错误。
应用场景
核对新分配的产品编码
基于 GS1 公司前缀创建新的产品编码时,确认校验位是否计算正确。
排查条形码无法扫描的原因
如果印刷的条形码扫描失败,先核对校验位可以帮助区分是印刷缺陷还是数据错误。
作为软件开发中验证逻辑的参考
在库存或收银系统中实现条形码验证逻辑(GS1 的 mod-10 校验位算法)时,可作为参考。
核对进口商品上的条形码
确认进口商品上印刷的 EAN-13 或 GTIN-14 数字是否符合正确的格式。
术语解释
- UPC-A
- 通用产品代码——主要在美国和加拿大使用的12位条形码标准。
- EAN-13
- 国际商品编码——国际通用的13位条形码标准,也涵盖日本的 JAN 码。
- EAN-8
- 用于小型商品的缩短版8位条形码标准。
- GTIN-14
- 全球贸易项目代码——在 EAN-13 前加一位标识数字形成的14位代码,用于标识箱、托盘等单位。
- 校验位
- 条形码末尾用于核验的单个数字,通过 GS1 的加权 mod-10 公式计算得出,用来捕捉输入错误。
- GS1
- 负责维护国际条形码和产品标识标准的非营利组织,前身为 UCC/EAN。
常见问题
闲话 ― 一个数字如何抓住打字错误
很多人都见过收银员在扫描枪读取失败后,手动输入商品编码的场景。你可能以为一个数字打错就会变成完全不同的商品,但实际上大多数这类错误都能被自动识别出来。实现这一点的关键,就是每个条形码末尾那个被称为"校验位"的数字。
这套机制可以追溯到20世纪70年代初,当时美国的食品杂货和消费品行业正在开发通用产品代码(UPC)。那时收银员仍然需要手动输入价格,输入错误是账单出错和库存混乱的主要原因之一。GS1(当时称为 UCC)采用的加权 mod-10 计算方法只需要反复的加法运算即可实现,因此在当年有限的算力条件下也能顺畅运行,同时还能捕捉到人们实际最常犯的错误,比如相邻两位数字颠倒,或者单个数字输错。
值得一提的是,同一套计算方法被应用在四种位数完全不同的条形码标准上:UPC-A(12位)、EAN-8(8位)、EAN-13(13位)和 GTIN-14(14位)。因为这条规则——从最右边的数字开始交替以3和1加权,再把总和调整到最接近的10的倍数——无论位数多少都同样适用,所以 GS1 每次推出新标准时都不必重新设计一套验证算法。想到全世界的收银系统都依赖这一个简单公式,这种设计确实透着一份低调的巧妙。