指南

如何在 Shopify 中批量上传产品

Shopify 可以通过 CSV 文件一次创建或更新多个产品。这里介绍导入的工作方式、容易出问题的地方,以及当您的产品数据源于供应商 PDF 时该怎么办。

Shopify 的产品 CSV 导入是批量添加目录的标准方式。您按照 Shopify 的格式准备电子表格,在后台上传,Shopify 就会创建产品、变体和图片。

与任何导入一样,成败取决于您放入的数据。本指南涵盖 CSV 流程、替代方案,以及能让您免于事后清理数百个产品的前期准备。

方案 1:在 Shopify 后台导入产品 CSV

在 Shopify 后台,前往“Products”并选择“Import”。上传符合 Shopify 产品格式的 CSV,决定是否覆盖具有相同 Handle 的产品,预览后确认。Shopify 会在后台处理该文件,完成后通知您。

  • 从 Shopify 的示例产品 CSV 模板开始,或导出一个现有产品以查看确切的列。
  • URL handle 列(旧版模板中为 Handle)用于标识一个产品;共享同一个 handle 的行是同一产品的变体或额外图片。
  • 常用列包括 Title、Description(Body (HTML))、Vendor、Product category、Type、Tags、Status、Option1 name / Option1 value、SKU(Variant SKU)、Price、Barcodes(Variant Barcode)和 Product image URL(Image Src)。
  • 图片在导入时从公开 URL 获取。
  • 请将文件保存为 UTF-8 CSV,以保证特殊字符完好无损。

正确处理变体

变体是大多数人首次导入时容易出错的地方。每个产品最多可有三个选项(例如尺寸、颜色、材料)。产品的第一行包含产品级字段和选项名称;之后每一个具有相同 Handle 的行添加一个变体,包含其选项值、SKU、价格和库存。

各行的选项名称应保持一致,并且每个变体的选项值组合必须唯一,使每一行恰好对应一个变体。如果某一行有变体列,但没有 Option1 name 和 Option1 value,Shopify 会创建一个默认变体并删除现有变体。

方案 2:批量导入应用

Shopify App Store 中的导入应用扩展了原生 CSV 功能:支持 Excel 和 Google 表格、元字段、从供应商数据源定时导入,以及从其他平台迁移。当您需要反复导入,或需要标准 CSV 未涵盖的字段时,值得考虑这类应用。

方案 3:Shopify Admin API

应用和自定义集成可以通过 Shopify 的 Admin API 而不是 CSV 文件来创建产品。这样可以完全避免电子表格的往返处理,许多目录和商品列表工具正是以这种方式在 Shopify 中创建产品的。

Doc2Shelf 走的就是这条路径:您通过 OAuth 连接店铺,经审核的商品列表会作为草稿产品创建,并附带图片、价格和类目。

为 Shopify 准备产品数据

在任何批量上传之前,请检查:

  • 每个产品都有唯一的 Handle,每个变体都有唯一的 SKU。
  • 标题遵循统一的模式(例如品牌 + 产品 + 关键属性)。
  • 描述是您自己撰写的文案,而不是粘贴的供应商文字,并使用简单的 HTML。
  • 规格参数的单位和名称保持一致,以便将其转化为选项、标签或元字段。
  • 产品先以未发布状态导入,以便在上线之前审核一部分样品。

当产品数据来自供应商 PDF 时

CSV 导入的前提是您已经拥有干净、结构化的数据。当供应商以 PDF 形式发送规格表和目录时,必须有人先提取标题、规格和标识码,并撰写描述——这通常是整个工作中最慢的环节。

Doc2Shelf 取代了这一步:它读取供应商 PDF,提取产品数据并附上置信度信息供审核,起草 Shopify 商品列表文案,并在您已连接的店铺中以草稿形式创建经审核的产品,无需 CSV。

Shopify 产品 CSV 列:当前名称与旧版对应名称

Shopify 重命名了若干产品 CSV 列。其当前的 CSV 参考文档使用 URL handle、Description、SKU 和 Barcodes 等标签,而许多模板和教程仍显示 Handle、Body (HTML)、Variant SKU 和 Image Src。Shopify 表示其保持对旧列名的向后兼容,因此旧文件仍可导入——但新导出的文件使用当前标签,而混用两种风格的文件很难检查。

该表涵盖大多数批量上传所需的列。从 Barcode 重命名为 Barcodes 在 Shopify 文档中有明确说明;其他旧标签是根据各字段所含内容对应的,因此请对照您自己店铺的导出文件进行确认。表头区分大小写。

Shopify 产品 CSV 核心列
当前列名内容示例旧版标签或备注
Title产品名称Stainless steel kettle 1.7 L创建产品时必填。
URL handle产品 URL 中使用的唯一产品标识符steel-kettle旧版模板中称为 Handle。共享同一个 handle 的行属于同一个产品。
Description产品描述Cordless kettle with…旧版模板中称为 Body (HTML)。
Vendor品牌或制造商Acme—
Product categoryStandard Product Taxonomy 类目hg-15-1-2完整的层级路径或类目 ID,不要两者都填。
Type您自己的产品类型Electric kettle自由格式,与类目不同。
Tags以逗号分隔的标签cordless, kitchen每个产品最多 250 个标签。
Status产品状态draft以草稿形式导入,审核后再激活。
SKU变体 SKUKTL-SLV旧版模板中称为 Variant SKU。
Barcodes变体的条形码gtin:4006381333931原名 Barcode(更早为 Variant Barcode)。多个条形码用分号分隔;类型前缀可选。
Option1 name / Option1 value第一个选项及该变体的值Color / SilverOption2 和 Option3 的模式相同。
Option1 LinkedTo从选项到类目元字段的链接product.metafields.shopify.[attribute]可选;参见下文的分类体系一节。
Price / Compare-at price售价和对比价49.90 / 59.90Price / [Market] 列保存特定市场的价格。
Inventory quantity现有库存25与 Inventory tracker 列配合使用。
Weight value (grams)以克为单位的变体重量1200旧版模板中称为 Variant Grams。Weight unit for display 设置购物者看到的单位。
Product image URL产品图片的公开 URLhttps://cdn.example.com/kettle.jpg旧版模板中称为 Image Src。
Image position / Image alt text图库顺序和替代文字1 / Steel kettle, front view替代文字最多 512 个字符。
Variant image URL选中该变体时显示的图片https://cdn.example.com/kettle-black.jpg—
SEO title / SEO description搜索结果中的标题和元描述—分别最多 70 和 320 个字符。
元字段列产品元字段的值Material (product.metafields.custom.material)表头格式:Name (product.metafields.namespace.key)。

变体和选项:限制与陷阱

一个 Shopify 产品最多可有三个选项——例如 Size、Color 和 Material——以及最多 2,048 个变体。在 Shopify 于 2025 年 10 月提高该限制之前,变体上限为 100,因此更早编写的模板和指南仍引用旧的数字。一些主题、应用和销售渠道是围绕旧限制构建的,所以在导入拥有数百个变体的产品之前,请先检查您的环境是否支持。

产品的第一行包含产品级字段和选项名称。使用同一个 URL handle 的后续每一行会增加一个变体,包含其选项值、SKU、价格、重量和库存,并将产品级字段留空。

有两种行为会在更新导入时让人措手不及。如果某一行包含 SKU 或重量等变体列,却省略了 Option1 name 和 Option1 value,Shopify 会创建一个默认变体并删除现有变体。而且,更改选项值——例如把“Grey”改为“Gray”——会删除原有变体 ID 并创建新的 ID,这可能破坏引用这些 ID 的应用和数据源。

示例:一个包含两个变体的产品
行URL handleTitleOption1 nameOption1 valueSKU
第一行steel-kettleSteel kettleColorSilverKTL-SLV
下一行steel-kettle(空)(空)BlackKTL-BLK

Shopify CSV 中的产品图片

Shopify 在导入期间从 Product image URL 列下载图片,因此每个 URL 都必须可公开访问,并直接指向图片文件。图片丢失的常见原因包括:链接需要登录、打开的是预览页面,或在导入运行之前已过期。

一个产品最多可包含 250 张图片或其他媒体。将第一张图片放在产品的第一行;每增加一张图片,就另起一行,填写相同的 URL handle、图片 URL、Image position 和 Image alt text。若要在购物者选择某个变体时显示特定图片,请把其 URL 填入该变体所在行的 Variant image URL。

替代文字最多可达 512 个字符,Shopify 建议不超过 125 个。请描述图片所显示的内容——例如“不锈钢水壶,带水位计的正面视图”——而不是重复产品标题。

Product category、元字段与 Standard Product Taxonomy

Product category 列从 Shopify 的 Standard Product Taxonomy 中分配一个类目,按产品的主要功能选择。可以输入完整的层级路径,如 Home & Garden > Linens & Bedding > Bedding > Bed Sheets,也可以输入类目 ID,如 hg-15-1-2——不要两者都填。没有类目的产品会被视为未分类。

设置类目后会解锁其类目元字段,分类体系将其称为产品属性。例如,Shopify 的 Shirts 类目有九个,包括 size、neckline、fabric 和 color,其中颜色值可以显示为色板。Option1 LinkedTo 列将变体选项与这些类目元字段之一关联起来。

类目的作用不止于导航:Shopify Tax 用它来设定税率。相比之下,Type 是由您自己定义的自由格式标签,适用于您自己的筛选器和报表。

自定义产品元字段通过表头为 Name (product.metafields.namespace.key) 的列导入,例如 Material (product.metafields.custom.material)。产品 CSV 不支持变体元字段,因此请在后台、通过应用或通过 API 设置这些元字段。

Shopify CSV 限制与 SEO 字段长度

这些是 Shopify 文档记载的产品 CSV 导入和产品记录的限制。旧指南中的数字——尤其是 100 个变体的限制——已经过时。

SEO title 和 SEO description 列分别填充搜索结果中使用的标题和元描述。请针对每个产品单独撰写,而不是在整个目录中套用同一种模式:以产品名称和购物者搜索的属性(如尺寸、材质或型号)开头。

项目限制应对方法
CSV 文件大小15 MB拆分大型目录;同一产品的所有行放在同一个文件中。
每个产品的选项数3将其他差异建模为单独的产品或元字段。
每个产品的变体数2,048检查您的主题和应用是否能处理大量变体。
每个产品的图片和媒体数250图库只保留有助于购物者做决定的图片。
每个产品的标签数250使用标签进行筛选和自动化。
每个产品或变体的条形码数20在知道类型的情况下,添加 gtin: 之类的类型前缀。
SEO 标题70 个字符以产品名称和关键属性开头。
SEO 描述320 个字符概括产品,关键细节放在前面。
图片替代文字512 个字符(建议不超过 125 个)描述图片所显示的内容。

覆盖还是创建:更新的行为方式

创建产品时,CSV 只需要 Title;添加变体还需要 URL handle。更新现有产品时,Shopify 需要 URL handle 和 Title,并且您在开始导入时选择是否覆盖 handle 相同的产品。

请将覆盖视为对您包含的每一列都具有最终效力。最安全的做法是导出、编辑、重新导入:导出您想要更改的产品,仅编辑需要更改的单元格,保持选项列不变,并在开启覆盖的情况下导入编辑后的文件。从零开始构建的稀疏文件很容易触发上文所述的变体删除行为。

确认之前先阅读导入预览,并先对少量产品运行大规模更新。您在编辑之前做的导出,是出现问题时的退路。

导入前检查清单与故障排除

大规模导入前请逐一完成以下步骤;之后的表格涵盖最常出现的问题。

  1. 从您的店铺导出一个产品并沿用其表头行,使列名完全一致。
  2. 为每个产品指定唯一的 URL handle,为每个变体指定唯一的 SKU。
  3. 检查选项名称和值的拼写是否一致,并确认每个变体行都有其选项值。
  4. 用从分类体系中复制的层级路径或 ID 填写 Product category。
  5. 在隐私浏览窗口中打开部分图片 URL,确认无需登录即可加载。
  6. 首次运行时将 Status 设置为 draft。
  7. 保存为 UTF-8 CSV,并确认文件小于 15 MB。
  8. 先导入五到十个产品,在后台和店面中检查,然后再导入其余产品。
Shopify CSV 导入问题:原因与解决办法
问题可能的原因解决办法
文件被拒绝大于 15 MB,或未保存为 UTF-8 CSV按产品拆分文件并重新保存为 UTF-8 CSV
列被忽略表头拼写错误或大小写不同从新的导出文件中复制表头
更新后变体消失发送了变体列,但没有 Option1 name 和 value包含选项列后重新导入
应用丢失了变体某个选项值被重命名,产生了新的变体 ID有意识地重命名选项值,并重新连接受影响的应用
产品被错误拆分或合并同一产品各行的 URL handle 不一致每个产品使用一个完全相同的 handle
图片缺失URL 不公开、不是直接的文件链接,或已过期将图片托管在稳定的公开 URL 上
类目未设置层级路径输入错误,或同时提供了层级路径和 ID只使用其中一种,并从分类体系中复制
条形码不被接受长度与所述类型不符GTIN:8、12、13 或 14 位;UPC:8 或 12 位;EAN:8 或 13 位
元字段值缺失表头格式错误,或使用了变体元字段使用 Name (product.metafields.namespace.key);在其他位置设置变体元字段

常见问题解答

如何免费在 Shopify 批量上传产品?
使用“Products → Import”下的内置 CSV 导入功能。每个 Shopify 套餐都包含该功能,可通过 Shopify 格式的 CSV 文件处理产品、变体和图片。
可以从 Excel 向 Shopify 上传产品吗?
原生导入器需要 CSV,因此请将 Excel 表格另存为使用 Shopify 列名的 UTF-8 CSV。部分导入应用可以直接读取 Excel 文件。
CSV 导入会覆盖我现有的产品吗?
只有当您选择覆盖具有相同 Handle 的产品这一选项时,现有产品才会被更新。确认之前请查看导入预览,并先用一个小文件测试。
为什么我的图片没有导入?
图片 URL 必须是可公开访问、直接指向图片文件的链接。需要登录、重定向到网页或来自临时文件分享的链接通常会失败。
Shopify 产品 CSV 中哪些列是必填的?
创建产品只需要 Title,添加变体时还需要 URL handle。要更新现有产品,请同时包含 URL handle 和 Title。其他一切均为可选,不过一个可用的商品列表通常还需要价格、SKU、类目、描述和图片。
一个 Shopify 产品可以有多少个变体?
最多 2,048 个变体,最多三个选项。Shopify 于 2025年10月将上限从 100 个提高,因此仍引用 100 个的旧模板和旧指南已经过时。
可以通过 Shopify CSV 导入元字段吗?
产品元字段可以:添加一列,列标题为 Name (product.metafields.namespace.key)。变体元字段不支持通过产品 CSV 导入,需要在后台、通过应用或 API 设置。
Shopify 产品 CSV 的最大文件大小是多少?
产品 CSV 不能超过 15 MB。较大的目录请拆分成多个文件,并将同一产品的所有行放在同一个文件中。

更多指南

将供应商 PDF 转化为经过审核的产品数据

Doc2Shelf 从供应商文档中提取产品数据,并起草商品列表和合规文档,供您审核。

创建您的免费账户