已经决定从 Ecwid 迁到 Shopify 的商家,先把一个小样本目录转换并导入为草稿,再逐项核对变体、库存、客户和订单缺口。Ecwid 的 CSV 不是 Shopify 的商品 CSV,后台提示“导入完成”也不代表历史订单、客户密码或支付设置已经迁移。本文解决从源文件到试导入记录的任务;完整切换阶段可继续使用迁移切换与回滚验收。资料核验日期:2026 年 10 月 4 日。
先保留源快照,分清当前与旧版导出
- 在 Ecwid 的 Catalog → Data Import & Export → Export data 区域点击 Export Catalog,保存原文件。该页还提供 Export All Customers 与 Export All Orders,分别保存,不要把三个文件合成一份商品 CSV。当前目录导出要求 Venture、Business 或 Unlimited;小样本可在 Catalog → Products 筛选并勾选后导出。依据当前目录导出说明。
- 记录导出时间、分隔符、商店币种和重量单位。在 Settings → General → Regional Settings 读取币种与重量设置;这些上下文不能靠商品行的数值猜出。参见Ecwid 区域设置。
- 检查是否有
type列。当前格式区分product、product_option、product_variation、category等记录;不能把每一行都当独立商品。商品内部 ID 或唯一的基础 SKU 用于关联记录。依据Ecwid CSV 类型与标识规则。 - 如果拿到的是旧版产品 CSV,先判断变体是否缺失。官方说明旧版导出不包含 variations;2023 年 5 月 24 日之后注册的商店默认使用新格式,较早商店可查 Settings → What’s New 或联系支持切换。不要把旧文件“每个商品一行”误当作已经导出完整规格。参见旧版产品导出的边界。
选择能够暴露差异的小样本:一个普通商品、一个有真实变体的商品、一个停用商品,以及有图片或库存特殊情况的商品。数量由实际目录决定。把原文件留存,只在副本上转换;如果目标 Shopify 已有商品,也先保存目标商品的备份。
用关联表转换商品,避免把父 SKU 当变体 SKU
下载 Shopify 当前商品 CSV 示例并清空示例商品。本文按当前文档的 URL handle、Description、Price 等表头说明;平台仍兼容部分旧表头,但转换时以本次下载的模板为准。另建本地关联表,保存“Ecwid 内部 ID → Shopify URL handle → 变体 SKU”,不把这张工作表的额外列直接塞进上传文件。
| Ecwid 源字段或记录 | Shopify 目标 | 转换动作 |
|---|---|---|
| product_name、product_description | Title、Description | 保留实际商品含义,检查描述中的旧链接;同一商品的后续变体行不重复填写商品描述 |
| product_internal_id;父行 product_sku | 本地关联表;URL handle | 为商品分配唯一、稳定的 handle,仅用字母、数字和连字符,不含空格;用内部 ID 关联选项与变体,重复或空基础 SKU 时不要仅按 SKU 合并 |
| product_variation_sku;product_variation_option_{Option name} | SKU;Option1 name / Option1 value 等 | 变体行使用自己的 SKU 和选项值;product_option 是选项定义,不能直接当库存变体。文字输入、文件上传等选项单列处理方案 |
| product_price,含变体的实际价格 | Price | 按记录检查基础价与变体价,转换为不带货币符号的数字;变体价为空先回查有效价格,Shopify 空价默认 0,不能直接留空;区域小数与文件分隔符分别处理,并核对目标币种 |
| product_media_main_image_url;图库与变体图片 | Product image URL;Variant image URL | 按当前模板建立图片行或变体图片关系,逐个验证图片 URL 可公开访问;不能把图库 URL 列原样作为一个图片字段 |
| product_is_available | Status;Published on online store | 试导入统一用 draft 和 false;另保留原停用状态,之后决定正式发布范围,不把源 false 转成 active |
| category 等分类记录 | 后续商品组织方案 | 保留分类与商品关联;Ecwid 分类名不能直接当 Shopify 标准 Product category 分类值 |
源字段含义和变体关联见 Ecwid 当前 CSV 列定义;目标字段、变体续行、图片与发布状态见 Shopify 商品 CSV 规则。源选项不一定对应 Shopify 可销售变体,先列出不能直接转换的记录,不能在转换中默默丢弃。
例如,假设源商品有 Blue、White 两个 Color 变体,各自 SKU 为 MUG-B、MUG-W,价格为 120、125;以下只是演示同一 handle 的两行结构,未执行导入,也不是完整可售文件。实际文件还需补齐并核对描述、图片、库存、重量和所需字段。商品 CSV 的选项列有依赖关系,更新已有商品时遗漏选项可能影响现有变体,不能照这个简化例子覆盖线上商品。
URL handle,Title,Option1 name,Option1 value,SKU,Price,Status,Published on online store,Requires shipping
pilot-mug,演练杯,Color,Blue,MUG-B,120,draft,false,true
pilot-mug,,Color,White,MUG-W,125,draft,false,true
库存和重量另做核对,不能只比较商品总数
对每个变体核对是否跟踪库存、可用数量、缺货是否继续销售及是否需要配送。Ecwid 的 product_is_inventory_tracked、product_quantity、product_is_shipping_required 等字段需要转成目标规则;不是看到 quantity 就一律建立可售库存。源字段参见Ecwid 列定义。
Shopify 商品 CSV 的 Inventory quantity 只适用于单地点商店。对于已确认需要跟踪库存、禁止缺货销售且由商家自行履约的样本,填 Inventory tracker=shopify、Continue selling when out of stock=deny、Fulfillment service=manual,再填已核对的整数数量;需要继续缺货销售才用 continue。不跟踪库存的样本将 tracker 留空,不把未知数量补成可售库存。Requires shipping 按实际是否需要配送填 true/false。依据Shopify 库存、缺货与履约字段规则。
重量字段 Weight value (grams) 使用整数克数,显示单位另列。假设源重量为 0.4 且源设置为 kg,转换结果才是 400 克;没有单位就先列为未解决,不能把 0.4 当克数。依据Shopify 重量字段规则。
多地点数量使用独立库存 CSV:先在 Products → Inventory → Export 选择地点和导出范围,得到目标地点的实际模板,再按变体与地点填写。建议保留 All states 导出的 On hand (current),只在 On hand (new) 填需要更新的数量;数量变化导致校验失败时,读取邮件中的失败行并重新取得当前数据,不清空校验列来强行覆盖。随后从 Inventory → Import → Add file → Upload file 查看摘要并开始导入。依据Shopify 库存 CSV 与并发校验。
先导入为草稿,再逐商品验收
- 用唯一的试验 handle 构建小文件,填写
Status=draft、Published on online store=false,确保没有示例商品残留。保存 UTF-8 文件,先检查表头、分隔符与行关联。 - 在 Shopify 进入 Products → Import → Add file,选择文件。首轮不勾选 Overwrite products with matching handles,并取消 Publish new products to all sales channels。后者不是 draft 状态的替代,两处都要核对。
- 点击 Upload and continue,检查预览的商品、变体和字段,符合本次范围后点击 Import products。开始后不能取消,且没有导入历史列表;保留本次文件、提交时间与结果邮件。商品文件上限为 15 MB,超限先按完整商品及其关联行拆分。上述入口与边界依据Shopify 商品导入说明。
- 在后台按 handle 打开每个样本,逐项比较标题、描述、变体组合和 SKU、每个变体价格、图片、库存跟踪、地点数量、重量、配送标记以及草稿状态。样本表要记录源值、目标值、结果和处理人;商品总数相等不能替代这些核对。
| 失败表现 | 修正方向 | 重新验收要求 |
|---|---|---|
| 表头报错、乱码或价格分列 | 对照本次下载模板的大小写;检查 UTF-8、分隔符、区域小数及 CSV 引号 | 修复副本后重做预览,字段不再错位;保留错误邮件和修正记录 |
| 少了变体或 SKU 重复 | 回查 type、父内部 ID、变体 SKU 和选项关联,检查是否误用旧版导出 | 每个源变体在目标都有正确组合;未解决记录不进入正式批次 |
| 图片缺失或顺序错误 | 检查公开 URL、图片行和变体图片关系,移除临时鉴权链接 | 目标后台实际图片及关联正确,不能只检查 CSV 单元格不为空 |
| 库存地点或重量不符 | 回查源单位、跟踪规则与目标地点;多地点转用库存 CSV | 逐变体、逐地点对上记录,并通过数量校验 |
如果需要修正已经导入的同 handle 商品,先备份目标并只处理已确认的行与列。官方说明覆盖时,文件包含的空白字段会清空相应值,未包含的列通常保留;选项变动还可能重建变体 ID。依据Shopify 覆盖与字段依赖规则。首轮新建样本通过,并不自动授权下一轮覆盖全部商品。
客户资料单独转换,姓名和同意状态不能猜
Ecwid 当前客户导出使用 customer_primary_email、customer_full_name、customer_primary_phone_number 等列;完整姓名不是已拆好的姓、名。customer_first_name、customer_last_name 在该格式中是导入字段,不能假定导出文件已有它们。依据Ecwid 客户列说明。
- 用 Shopify 当前客户模板,将邮箱映射到
Email,电话映射到Phone;姓名经人工或已验证的规则拆分后,分别填写First Name、Last Name,尤其不要按一个空格机械拆中文姓名。 - 检查重复邮箱、重复电话与多地址记录,先列出冲突再导入。目标模板的默认地址不能无条件容纳源客户的所有地址。
- 源
customer_is_accepted_marketing_communication的邮件同意状态经核对后映射为Accepts Email Marketing的 yes/no;未知状态列为待核实并不填 yes。邮件同意不是短信同意,缺乏相应证据时不把Accepts SMS Marketing填成 yes。
在 Shopify Customers → Import → Add file 上传小样本,首轮不启用按邮箱或电话覆盖已有客户,再点击 Import customers。重复邮箱或电话可能导致记录跳过,不能用文件行数声称全部成功。客户密码、订单历史、Total Spent 和 Total Orders 不能通过这个客户 CSV 导入,另列账户访问和历史关联任务。依据Shopify 客户导入规则。
订单留出独立验收路径,文件存档不等于迁入
Ecwid 订单导出可在 My Sales → Orders 筛选并勾选后,从页底 Export Orders → Export Selected 选择列和分隔符,下载 CSV;也可导出全部。先区分已履约历史订单和仍需发货、退款或客服处理的订单,保留源订单号与处理责任。依据Ecwid 订单导出说明。
Shopify 官方迁移说明将已履约历史订单列为迁移应用或 Order API、Transaction API 路径,不是商品 CSV 或客户 CSV 的功能;应先导商品、再导客户、再处理历史订单,便于关联。本文没有核实任何应用的 Ecwid 直连能力,不能承诺原文件一键导入。选定具体工具后,先用一笔脱敏历史订单核对源编号、商品 SKU、币种、金额组成、支付和履约状态、退款及客户关联。缺少的字段登记为缺口,不按“订单总数相等”放行。依据Shopify 迁移数据类型与导入顺序。
对仍在处理的 Ecwid 订单,先保留原平台处理入口和明确责任人,完成后再决定是否关闭旧系统。税务、运费、支付提供方与域名属于另行配置和交易验收范围,不因目录导入成功就判为完成。本次交付应是原始快照、转换关联表、目标草稿样本、逐字段验收表,以及尚未解决的客户、订单和设置清单。
FAQ
手里只有旧版 Ecwid 产品 CSV,可以直接开始迁移吗?
可以用它清点基础商品,但不能据此宣称规格完整。旧版导出不包含 variations;先取得当前格式或补齐经核对的变体记录,再建立内部 ID、handle 和变体 SKU 的关联,试导入后逐规格验收。
客户导入成功,为什么历史订单和消费金额没有一起出现?
Shopify 客户 CSV 不导入订单历史,也不导入 Total Spent、Total Orders。已履约历史订单要走另行选择并验证的迁移应用或 API 路径,并检查商品、客户关联;Ecwid 订单 CSV 仅保存下来还不等于进入 Shopify。
WESWOO - 跨境独立站开发专家
助力中国品牌出海,我们为您提供专业的独立站搭建和Shopify Plus集成技术服务。精准的跨境电商解决方案,助力品牌在全球市场成功落地,轻松跨越国界。
- shopify独立站品牌化
- 海外UI视觉设计
- SNS多渠道品牌营销