Shopify CSV 导入报错 “Validation failed: price can't be blank” 的解决方法
某个变体的 Price 单元格为空,Shopify 无法导入它。为这个变体填写价格(免费商品填 0.00),以 CSV UTF-8 格式保存后重新导入。
Shopify 显示的报错
Validation failed: price can't be blank
这个报错是什么意思
Shopify 中的每个变体都有价格。在商品 CSV 里,商品的第一行,以及每一行新增选项值的行,都会创建一个变体;只添加图片的行不会。Shopify 的列说明称,Price 留空时通常会按 0.00 处理,但在无法套用默认值时(例如变体的相关列只填了一部分),导入会以这个报错停止。无论哪种情况,价格留空都有风险:如果套用了默认值,这个变体就会以 0.00 的价格上架。
常见原因
- 在已有商品下新增了变体,但没有填写它的 Price。
- 本来只用于添加图片的行,同时填写了选项值或 SKU,Shopify 把它当成变体,因而要求填写价格。
- 文件来自其他平台,价格存放在别的列里,导致 Price 列为空。
解决方法
- 在报错信息中找到行号。第 1 行是表头。
- 在这一行的 Price 列(旧版文件为 Variant Price)填写价格,只写数字并用英文句点表示小数,例如 39.00;不要加货币符号或千位分隔符。
- 如果这一行只用来添加图片,清空它的选项值、SKU 等变体列,只保留 URL handle 和图片相关的列。
- 顺便检查同一商品的其他变体有没有空价格。
- 以 CSV UTF-8 格式保存,然后重新导入。
示例
URL handle,Title,Option1 name,Option1 value,Price linen-shirt,Linen shirt,Size,S,39.00 linen-shirt,,,M,
URL handle,Title,Option1 name,Option1 value,Price linen-shirt,Linen shirt,Size,S,39.00 linen-shirt,,,M,39.00
第二个变体(尺码 M)没有价格。即使价格和第一个变体相同,每个变体行也都要单独填写。
如何避免
- 导入前筛选 Price 列中的空单元格,重点检查填写了选项值或 SKU 的行。
- 用校验工具检查文件,它会列出每个价格为空的变体及其所在行。
常见问题
- 可以导入价格为 0 的商品吗?
- 可以。免费赠品等商品请明确填写 0.00。写出具体数值能表明价格是有意设置的,而不是漏填。
- Compare-at price 也必须填写吗?
- 不必。Compare-at price 是可选的,可以留空。如果填写,它应高于售价,折扣才会显示。
Skuvera 中的相关检查
查看 Shopify 官方说明其他导入报错
- Shopify CSV 导入报错 “Validation failed: options are not unique” 的解决方法
- Shopify CSV 导入报错 “Ignored line because handle already exists” 的解决方法
- Shopify CSV 导入报错 “Ignored line because it did not contain product data” 的解决方法
- Shopify 商品导入报错 “Invalid CSV header: missing headers” 的解决方法
- Shopify CSV 导入报错 “Network error: Unexpected token < in JSON at position 0” 的解决方法
- Shopify CSV 导入报错
更新于 2026年10月30日
Skuvera