EN
Shopify 知识库 · 概念

商品导入导出:CSV、批量编辑与数据校验

说明 Shopify 商品 CSV 的导入与导出流程、列与变体的表达方式、handle 与 SKU 的作用、批量编辑器与 metafield 批量编辑、库存 CSV 与多地点,以及常见导入错误和无法撤销时的备份策略。

商品 CSV 用一张表批量创建或更新商品、变体与图片链接,批量编辑器则在后台表格里直接改已有商品的属性。两者解决的是「一次处理很多商品」;它们不负责判断数据本身对不对,也不提供撤销。官方说明 Shopify 用 CSV 文件完成这类批量任务。导入导出总览。

本库哪些内容依赖它

  • 商品与变体:商品、选项、变体的概念;CSV 里的行结构以本文为准;
  • SKU 术语:SKU 的编码边界;本文只写它在 CSV 与批量编辑里的位置;
  • 自定义数据:metafield 的定义与读取;本文只写批量编辑与 CSV 列的入口;
  • 库存与地点:多地点库存的对象关系;本文只写库存 CSV;
  • 集合与发布:导入时的发布渠道选项与集合列;
  • 商品捆绑与组合:官方写明捆绑不支持导入、导出与批量编辑。

本文是该平台机制的权威来源,其他文章只写各自页面语境下的用法。

核心对象与概念

对象含义备注
商品 CSV首行为列头、逗号分隔、UTF-8 编码的商品表官方要求 LF 换行,列头大小写敏感
URL handle每个商品的唯一标识,也用于商品页 URL只含字母、数字与连字符,不含空格;未填时由 Title 生成
变体行同一 handle 下的后续行,只放变体数据与额外图片一个商品最多 3 个选项
Overwrite products with matching handles导入时的覆盖选项按 handle 匹配已有商品
批量编辑器(bulk editor)后台表格,行是商品或变体,列是属性可加减列,保存后统一提交
库存 CSV按变体与地点设置库存的独立文件与商品 CSV 分开

商品 CSV:导入

官方的导入步骤:在 Products 点 Import 选文件,配置选项(可取消 Publish new products to all sales channels 而只发布到在线商店,以及覆盖选项),点 Upload and continue,核对后确认 Import products;文件上传后会向操作者账号邮箱发确认邮件。文件不得超过 15 MB,上传失败或超时时官方建议拆分文件。导入商品。

列的规则见列说明页。以下只写规则,不复制整份列表:

  • 必填:新建商品只要求 Title;带变体或更新已有商品时,URL handle 与 Title 都要提供。
  • 列头:列说明页列出的名称含 Title、URL handle、Description、Vendor、Product category、Type、Tags、Published on online store、Status、SKU、Barcodes、Option1 name、Option1 value、Price、Compare-at price、Inventory tracker、Inventory quantity、Weight value (grams)、Product image URL、Image position、SEO title 等。官方称旧模板的列名仍向后兼容,排错页里也还能看到 Variant Inventory Tracker 一类旧式写法。
  • Collection 列:官方称这是唯一可以额外加进 CSV 而不破坏格式的列,其他列不能新增。
  • Published on online store:true 为默认,商品在在线商店可见并可售;false 则不可见。Status 取值 active(默认)、draft、archived。
  • Inventory quantity:官方写明只适用于单地点店铺,多地点用库存 CSV。
  • 图片:需公开可访问的 HTTPS 地址,每个商品最多 250 张,一行一张;文件名不得带 _thumb、_small、_medium 后缀;指向 Files 区的链接会被重新下载并产生重复图片。
  • 不能删除:CSV 不能批量删除商品。

变体与选项在 CSV 里怎样表达

有变体的商品占多行:第一行放商品信息与首张图,后续行只放 URL handle、该变体的数据与额外图片链接,Title、Description、Vendor、Tags 在变体行留空。

三条易出事故的规则,逐条见列说明页:

  1. 更新 SKU、Weight value (grams) 这类依赖变体的列时,必须同时带上 Option1 name 与 Option1 value;官方称缺少依赖列会导致导入报错,或使已有数据被删除。
  2. 不带 Option1 name 与 Option1 value 时,会创建一个新的默认变体并删除现有变体。
  3. 改动 Option1 value、Option2 value、Option3 value 会删除现有变体 ID 并创建新 ID,可能破坏依赖变体 ID 的第三方集成。

SKU 与 handle 的分工:handle 决定「导入时匹配到哪个商品」,SKU 是变体层的属性,不参与商品匹配。SKU 的命名边界见术语,商品与变体的关系见商品与变体。

商品 CSV:导出

在 Products 点 Export。选择范围有四种:Current page、All products、Selected products、Products matching search and filters;格式两种:适用于 Excel、Numbers 等表格程序的 CSV,或纯 CSV。官方写明:导出文件含商品、变体与 URL;SEO Title 与 SEO Description 只在手动自定义过时才有值;商品图片不包含在 CSV 内;第三方履约的变体在 Fulfillment service 列显示为 manual。所有商品的变体数均少于 100 时直接下载,否则或导出全部商品时通过邮件发送。导出商品。

批量编辑器与 metafield 批量

从 Products、Collections、Inventory 或 Customers 勾选条目后点 Bulk edit,用 Columns 增减要显示的属性,改完点 Save,有错误则修正后再保存。官方说明同时改的信息越多耗时越长,条目上限未写明;页面也没有撤销说明。多变体商品的库存只能从 Inventory 区批量改。Bulk editing。

metafield 可在批量编辑器里对商品、变体、集合与客户批量编辑:勾选商品后 Edit products > Columns,在 Metafields 分区选列后直接改值。变体 metafield 要用变体批量编辑器再加 metafield 列。官方提醒用 Microsoft Edge 时可能因 URL 过长出错。批量编辑 metafield。metafield 的定义与类型见自定义数据。CSV 列头里的 metafield 形如 Fabric (product.metafields.shopify.fabric),列说明页同时写明变体 metafield 需用批量编辑器(摘要读取)。

库存批量编辑设置的是绝对数量,官方称它不产生库存移动的审计记录;若打开编辑器后库存已变,保存时会出现库存不匹配对话框,可选保存建议值、保存原值或放弃更改。库存批量编辑。

库存 CSV 与多地点

在 Products > Inventory 导出或导入。多地点规则:每个变体要为每个需要更新的地点各写一行,地点名区分大小写且须与后台完全一致;对导出时未激活的地点导入库存不会激活它。文件同样不得超过 15 MB。核心列是 On hand (current)(导出时的数量)与 On hand (new)(要设置的新数量)。选择 All states 格式时,Shopify 会把当前库存与 On hand (current) 比对,导出后库存有变的行不会导入并发邮件说明;官方也写明可清空 On hand (current) 列以跳过这层校验。库存 CSV。对象关系见库存与地点。

限制、数值与易错点

核验于 2026-09-29,来源标在句末。

  1. 文件大小:商品 CSV 与库存 CSV 各不得超过 15 MB。(导入页、库存 CSV 页)
  2. 不能取消、无历史:官方写明 CSV 商品导入开始后不能取消,也不能查看过往导入的历史;可在店铺 activity log 查看最近的改动;导入前应备份商品数据。(导入页)
  3. 回滚:**未见官方回滚机制。**已读页面没有撤销已完成导入的说明,批量编辑页与商品详情页同样没有。因此「导入前先导出一份」是官方要求的备份动作,恢复只能靠重新导入备份文件,且受上面变体 ID 规则影响,本文未实测恢复的完整程度。
  4. 表格软件:官方警告,经 Excel 或 Numbers 排序后的 CSV 可能使商品与图片链接错位并丢失图片;Excel 会产生弯引号导致「Missing or stray quote」一类错误,需改成直引号。(导入页、常见问题页)
  5. 常见错误(常见问题页所列,措辞原样):Ignored line #-## because handle ... already exists;Ignored line #-## because it did not contain product data;Illegal quoting on line;Fulfillment service can't be blank(填服务名或 manual);Inventory policy is not included in the list(取 deny 或 continue);Validation failed: options are not unique;Validation failed: price can't be blank;The uploaded image exceeds the 20 megapixel limit(最大 5000x5000 像素);Value must be a valid product reference(先导入被引用的商品)。
  6. 每日变体上限:常见问题页写有错误 Daily variant creation limit reached, try again,并称有 500,000 个及以上变体的店铺,24 小时内通过 CSV 最多创建 10,000 个新变体(摘要读取,使用前重读该页)。
  7. 未写明:商品 CSV 的行数上限、批量编辑器的条目上限、单商品变体数上限,本次读到的导入导出页均未给出,不得据此断言「无上限」。

验证一次

  1. 导出一次 All products 作为备份,记录商品数、变体数与导出时间;
  2. 用测试店铺或少量商品,修改一个价格与一个 Tags 值,取消覆盖选项与勾选覆盖各导一次,对照后台看差异;
  3. 故意省略 Option1 name 与 Option1 value,仅在测试商品上观察变体是否被重置,并记录变体 ID 是否变化;
  4. 用 Excel 打开再保存一次,检查图片列、引号与编码有没有被改动;
  5. 多地点店铺导出库存 CSV,改一个地点的 On hand (new),导入并检查 activity log 与库存历史;
  6. 在批量编辑器改一个 metafield 列,保存后到商品页或 Liquid 输出确认值。

待继续完善

  • 商品 CSV 与批量编辑器的行数、条目数与单商品变体数上限;
  • 覆盖选项对 metafield、集合、市场价格列的完整行为;
  • 导入失败后的部分成功状态与 activity log 的具体呈现;
  • 各错误提示在真实店铺的复现与截图,本文没有实测。