GTIN 标识什么?Shopify 商品 Feed 的商品身份判断
GTIN 是 Global Trade Item Number,中文常译为全球贸易项目编号。它标识的是一个可以被定价、订购或开票的具体贸易项目,让不同商业系统有机会指向同一个商品。它不是商家自己编的 SKU,也不是一串只要校验位正确就可以放进商业 Feed 的数字。
对于 Shopify 团队,判断顺序应当是:先确认具体商品和变体,再确认真实分配来源,然后把同一条商品身份映射到 Shopify、Feed 和页面结构化数据。GTIN 工具可以检查格式和校验位,但不能证明号码属于眼前的商品,也不代表 Merchant Center、零售商或其他渠道一定接受。
一句话结论是:
GTIN 连接的是具体贸易项目的身份。格式通过、分配已验证、渠道已接受,是三个不同结论。
如果只想快速校准术语,可以先看 什么是 GTIN?。本文关注的是定义落到商品主数据、Shopify 变体和 Feed 后,团队该怎样做判断。
1. 商品数据里的“标识”是什么意思
“标识商品”不是给商品加一个方便搜索的标签,而是让参与交易、目录匹配和数据同步的系统知道一条记录指向哪个贸易项目。制造商、品牌方、供应商、零售商、Shopify 和销售渠道可能各自保存一份记录。只要这些记录对商品边界的理解不同,系统就可能把同一件商品拆成多个对象,也可能把不同商品错误合并。
GS1 对 GTIN 的定义围绕 trade item 展开。贸易项目可以是会被定价、订购或开票的产品或服务。对电商运营来说,最容易漏掉的部分是“具体销售单位”。一个父商品可以有多个颜色、尺码、容量或包装数量。它们出现在同一个 Shopify 页面上,不代表所有可销售单位都可以共用一个号码。
在编辑 Barcode 或 Feed 之前,先回答四个问题:
| 判断层 | 要问的问题 | 应留下的证据 |
|---|---|---|
| 贸易项目 | 这次卖的是哪一个商品、包装或组合? | 商品定义、包装内容、销售单位 |
| 具体变体 | 颜色、尺码、容量、数量或组合内容有没有改变销售单位? | Shopify variant、选项值、item ID |
| 标识来源 | 谁分配了这个号码,记录在哪里? | 品牌方、制造商、供应商或相关 GS1 记录 |
| 输出表面 | Shopify、Feed、页面和渠道怎样读取它? | 字段映射、转换规则、复核状态 |
如果第四层没有先规划,团队通常会从一个空输入框开始思考:“这里没有 Barcode,要找哪个号码填进去?”更安全的起点是:“这个具体商品和变体有没有真实分配的标识,证据在哪里?”
2. GTIN、条码、SKU、MPN 和 variant ID 各自解决什么问题
这些词经常同时出现在包装、商品表格和后台页面中,但责任不同。GTIN 是商品身份数据。UPC-A、EAN-13 和 ITF-14 是常见的条码表示方式,条码图形把数据编码成扫描器可以读取的形式。SKU 是商家自己的内部编码。MPN 是制造商的型号或零件编号。Shopify variant ID 是平台内部的技术身份。
同一份商品记录里有条码和内部货号,并不意味着两者可以互换。仓库可能用 SKU 管理拣货,扫描器可能读取 Barcode,销售渠道可能用 GTIN 辅助商品匹配。每个字段都有自己的使用者。
| 值 | 它回答的问题 | 通常由谁负责 | 它不能证明什么 |
|---|---|---|---|
| GTIN | 跨商业系统怎样指向具体贸易项目 | 品牌方、制造商或商品标识责任方 | 数字结构正确不等于归属正确 |
| UPC 或 EAN | 怎样用常见长度和条码形式表示相应 GTIN | 已分配标识的责任方 | 不是第二套内部 SKU |
| Barcode | 扫描器怎样读取编码后的数据 | 使用和印刷商品的一方需按用途验证 | 印出图形不会产生商业分配 |
| SKU | 店内库存、履约、客服和报表怎样定位商品 | 商家自己 | 唯一 SKU 不是 GTIN |
| MPN | 怎样按制造商型号匹配商品或零件 | 制造商 | 商家 SKU 不能自动变成 MPN |
| Shopify variant ID | Shopify 和集成怎样定位变体 | Shopify | 不是全球贸易项目编号 |
如果团队还在讨论“GTIN 是不是就是条码”,先不要批量编辑。可以阅读当前的 GTIN、UPC、EAN 在 Shopify 里的区别作为术语参考,然后回到具体商品、具体变体和真实来源。
3. 格式有效只解决了数字结构
GTIN 可以进行机械检查,例如检查长度、是否由数字组成,以及校验位是否符合计算规则。校验位通过,说明这串数字没有被该项算术检查拒绝。这种检查适合开发输入控件、测试 CSV 导出、验证扫描流程,以及在 Feed QA 里筛掉一部分录入错误。
格式检查无法回答以下问题:
- 号码是不是由相关的商品标识机构、制造商、品牌方或可核验供应链来源分配。
- 号码是不是属于当前商品,而不是另一个颜色、容量、型号或公司的商品。
- 号码描述的是哪一层销售单位,例如单件消费品、箱装贸易项目或其他包装。
- Merchant Center 或其他销售渠道会不会接受这个号码,以及它与 brand、MPN、condition、bundle 和落地页事实是否相符。
- Shopify 页面、Product 结构化数据和 Feed 是否都描述同一个 Offer。
因此,商品身份至少要分成两个状态。第一是格式状态,记录数字结构是否通过。第二是分配状态,记录证据是否能把号码连接到具体商品或变体。发布后还可能有第三个状态,也就是某个明确渠道是否处理了当前版本。渠道处理状态不能反过来证明号码的所有权。
用 GTIN 工具检查真实来源提供的号码,可以先筛掉长度或校验位问题。得到通过结果后,还要回看包装、制造商记录、供应商文件或其他可核验的商品主数据。工具生成的测试值适合开发和 Feed QA,不适合放进正式商业商品 Feed。
图里的顺序很重要:来源证据先于 Shopify 字段,Shopify 字段先于渠道输出。它不是一条“输入任何数字就能生成商品身份”的流水线。
4. 先定义销售单位,再判断 GTIN 属于哪一层
父产品、可销售变体和包装层级经常被放在同一张表里。真正需要判断的是消费者或下游交易伙伴收到的那个贸易项目。
4.1 写清楚当前 Offer
商品名称只是起点。还要记录颜色、尺码、容量、套装数量、包装内容、定制状态和用户下单后收到的东西。两件装可能不是单件消费品的同一个销售单位。制造商创建的组合包可能有独立的分配关系。商家自己组合的 Offer 则要按当前渠道对该组合的规则处理。
不要从一个页面路径推导出一个号码。一个页面可以展示多个变体,页面本身不是 GTIN 的分配记录。
4.2 找到来源和责任人
经销商品的证据可能来自制造商、授权供应商、包装、经过核验的目录或其他商品主数据。自有品牌需要保留品牌方的分配记录。供应商文件有 Barcode 一列,只能说明文件提供了一个值,不能自动说明每一行都已经核实。
至少记录文件由谁生成、涵盖哪个版本、适用哪个变体、导出日期和复核人。来源说不清楚时,把值标成未验证,不要用相邻商品的号码补齐。
4.3 把号码绑定到具体变体
不要只在父产品层写“有 GTIN”。在变体记录中保存 Shopify variant ID、选项值、SKU、Barcode、brand、MPN、来源文件和来源日期。一个值如果无法连接到一行具体可销售变体,就不应直接进入批量发布。
4.4 最后才选择输出字段
身份确认以后,才把它映射到 Shopify Barcode、Feed 的 gtin、页面 Product 结构化数据和其他渠道字段。字段名称可以不同,商品身份不能因为复制字段而改变。
5. Shopify 的重点是变体层责任
Shopify 的 SKU 和 Barcode 都在变体层。SKU 通常服务店内运营,Barcode 可能会被扫描器、应用或渠道集成读取。把 SKU 复制到 Barcode,能让两个输入框都出现字符,却没有提供真实的商品标识。
批量导入之前,建议建立一张变体身份表:
| 记录列 | 用途 | 不确定时怎么处理 |
|---|---|---|
| 商品 handle | 定位父产品 | 确认它属于当前目录 |
| Shopify variant ID | 定位具体变体 | 不用父产品 ID 代替 |
| 颜色、尺码、容量等选项 | 说明销售单位 | 与实际 Offer 比较 |
| SKU | 店内运营身份 | 由商家负责,不能当 GTIN |
| Barcode 或 GTIN | 外部商品标识候选 | 连接来源和具体变体 |
| brand 和 MPN | 其他商品身份证据 | 按制造商或品牌资料填写 |
| 来源文件、版本和日期 | 追溯号码来路 | 缺失时标为未验证 |
| 复核状态 | 区分格式、分配和渠道 | 不把格式通过写成批准 |
例如,一个服装商品有三种尺码和四种颜色,身份表应能看见十二个可销售变体,而不是只显示一个父标题。十二不是 GTIN 分配公式,它只是一个很实用的提醒:父商品级检查可能跳过了变体身份。
传输时把标识值当作文本保存。表格工具可能去掉前导零、转成科学计数法、四舍五入,或者把文本再转换成数字。校验位可以发现部分录入错误,不能恢复丢失的数字,也不能证明归属。
如果在迁移、ERP、PIM 或仓库集成中交换字段,先写清楚 SKU、GTIN、MPN、variant ID 和 inventory 分别由哪个系统负责。技术上的导入成功,不等于字段映射正确。
6. Feed 和页面结构化数据不是同一个输出
商品 Feed 是销售渠道目录的输入。Product structured data 是页面给搜索系统读取的商品事实。Shopify 是店铺商品和变体数据的来源之一。三者可以共享商品身份,但不应互相替代。
Google Merchant Center 的文档分别说明 GTIN 属性、唯一商品标识和 identifier_exists。提交时还要看具体商品类型、当前字段规范和账户诊断。商品没有 GTIN,不代表可以把 SKU 放进 gtin。商品有真实 GTIN,也不代表 brand、MPN、变体、价格、库存或落地页事实可以不管。
页面结构化数据也有边界。Google Search Central 的 Product 结构化数据说明用于解释页面如何表达商品信息。它不能替代 Merchant Center Feed,也不能在源数据没有号码时凭空创造号码。只有当值属于页面当前描述的商品或变体时,才应使用 gtin8、gtin12、gtin13 或 gtin14 等对应属性。
需要快速比较页面标记和 Feed 的职责时,可以看 Product Schema 和商品 Feed 的区别。如果 Shopify、页面和 Feed 不一致,先找商品事实负责人,再决定应该修源数据、映射、模板还是渠道提交。
7. 一个小电商例子:一个父商品不代表一个 GTIN
假设一家小型服装店在 Shopify 上销售一件针织衫。商品页有米色和橄榄色两个颜色,每个颜色有 S、M、L 三个尺码。供应商文件有六行变体记录,其中一行 Barcode 为空,另一行的号码与包装照片不一致。
团队可以按以下顺序处理:
- 先锁定六个 Shopify variant ID 和对应颜色尺码,不用父商品标题代替变体身份。
- 把供应商文件、包装照片和当前 Shopify 导出放进同一条审计记录。
- 对五个已有值做长度和校验位检查,把空值留下来调查,不复制相邻变体的号码。
- 对照制造商或供应商分配证据,确认每个号码对应正确的颜色和尺码。
- 对不一致的那一行暂停 Feed 标识字段的发布,向来源负责人确认,不让工具生成新号码。
- 来源修正后,再比较 Shopify 变体、Feed 行、页面默认选项和 Product 结构化数据。
这个例子没有给出任何商业 GTIN,也没有声称渠道会接受修正后的记录。它只说明三种证据的顺序:格式检查减少输入错误,来源检查处理商品归属,渠道 readback 才能回答一个明确平台是否处理了当前提交。
如果团队直接用工具生成一个值填入空行,数字可能看起来完整,但六个变体仍然缺少真实的分配关系。填满表格不是身份审计的完成条件。
8. 商品没有 GTIN、白牌和组合包要单独判断
部分商品确实没有适用的唯一商品标识。定制品、手工商品、部分自有品牌商品或其他特殊 Offer,可能需要销售渠道提供的无标识路径。Google 的 identifier_exists 文档说明了这类声明的用途。只有在商品确实没有相关标识时,才按当前规则声明不存在。它不是一个用来隐藏“暂时没有找到”的开关。
自有品牌也不能靠猜。品牌已经完成商业分配时,保留分配记录并把号码绑定到具体 Offer。尚未完成分配时,按当前渠道对 brand、MPN 和无标识商品的要求处理。某个平台的处理方式不能被扩展成所有平台都会接受的保证。
组合包和箱级商品也要先确定销售单位。单件消费品、箱装贸易项目和商家自行组合的 Offer 可能有不同的身份关系。不要把箱级代码挂到单件商品,也不要从一个组件的号码推导出组合包一定可以使用它。
这些判断比“先填上再说”慢,但可以阻止错误号码从商品源扩散到页面、Feed、广告目录和仓库。空值可以继续调查,错误值会让多个系统同时指向错误商品。
9. 用一条决策记录保留商品身份
每次重要的标识变更都应该有一条以后能重看的记录。建议包含:
- 具体商品、变体、包装或 Offer。
- Shopify product handle 和 variant ID。
- 字段名称、旧值和新值。
- GTIN 来源、文件版本和日期。
- brand、MPN、SKU、页面和 Feed 记录。
- 做过的长度和校验位检查。
- 复核人、字段负责人、受影响渠道和复查时间。
- 当前状态:格式有效、分配已验证、渠道已接受,或仍待调查。
三个状态要分开写。格式有效只描述数字结构。分配已验证描述证据是否把号码连到具体商品。渠道已接受描述某个命名平台是否处理了某个版本,最好同时保存提交时间和 readback。不要把“格式检查通过”写成“平台批准”,也不要把一次平台成功处理写成“号码所有权已证明”。
小店用表格即可,大目录可以把同样的列放进 PIM 或数据质量流程。工具复杂度不是重点,责任关系才是重点:一个变体一行,一个来源,一个负责人,一个带日期的判断,最后保留输出端复核。
10. 发布前检查清单
这是商品身份和 GTIN 的检查清单,不是 Merchant Center 批准清单,也不替代当前平台规范。
- [ ] 写清楚本次销售的具体贸易项目和包装层级。
- [ ] 判断颜色、尺码、容量、组合内容或包装数量是否形成不同变体。
- [ ] 找到 GTIN 的真实来源和负责复核的人。
- [ ] 把号码绑定到具体 Shopify variant,而不是只绑定父产品。
- [ ] 把 SKU 留在内部字段,不用 SKU 填 Barcode 或 gtin。
- [ ] 用文本保存数字,保护前导零和完整长度。
- [ ] 用 GTIN 工具检查格式和校验位,并单独记录检查结果。
- [ ] 对照包装、制造商、品牌或可验证供应商证据。
- [ ] 在适用时检查 brand、MPN、condition、bundle 和 identifier_exists。
- [ ] 比较 Shopify、Feed、页面可见事实和 Product 结构化数据。
- [ ] 保存提交版本、复核人、渠道名称和后续 readback。
- [ ] 对无法证明归属的号码保持暂停,不用测试值填空。
清单完成不等于 Merchant Center 资格已经获得,也不等于任何渠道一定会收录商品。它只说明团队有一条可追溯的判断路径。
常见问题
GTIN 标识的是商品、商家还是 SKU?
GTIN 标识具体贸易项目,让不同商业系统有机会把记录匹配到同一个商品。SKU 是商家的内部编码,商家可以自己设计和改变。SKU 唯一,并不会因此变成 GTIN。
GTIN 格式和校验位通过,就能证明商品身份吗?
不能。它只说明数字结构通过了算术检查。还需要品牌方、制造商、供应商、包装或其他可核验商品主数据,把号码连接到具体商品和变体。渠道是否接受是另一个状态。
没有 GTIN 的商品应该怎么办?
先确认商品确实没有相关唯一标识,再按当前销售渠道的无标识规则处理。在适用时提供真实 brand 和 MPN,不能为了清除警告而猜一个 GTIN。
同一个 GTIN 可以复制到所有 Shopify 变体吗?
不能自动复制。应根据分配证据判断号码是否对应每个具体可销售变体。不同颜色、尺码、容量或包装可能是不同贸易项目。
参考资料
- GS1: Global Trade Item Number,用于 GTIN、trade item 和唯一识别的定义。
- GS1 support: What is a product identifier?,用于 product identifier 术语背景。
- GS1 Canada: Global Trade Item Numbers,用于公司前缀、item reference、校验位、GTIN 形式和包装层级背景。
- Google Merchant Center: Find a GTIN,用于 Merchant Center 商品数据处理和查找真实 GTIN 的操作入口。
- Shopify Help Center: Product details page,用于 Shopify 商品和变体字段背景。
- Shopify Help Center: Using SKUs to manage inventory,用于 SKU 的内部库存责任边界。
- Google Merchant Center: GTIN attribute,用于 Feed 的 GTIN 属性入口。
- Google Merchant Center: Unique product identifiers,用于唯一商品标识和无标识商品的规则入口。
- Google Merchant Center: identifier_exists,用于无唯一标识声明的入口。
- Google Search Central: Product structured data,用于页面 Product 结构化数据与 Feed 的职责边界。
Ecomwith 的 GTIN 工具只负责格式、校验位、开发和 Feed QA。商业分配、商品归属、渠道处理和公开发布,需要各自的证据和 readback。
