用途:面向需要将电商数据从旧平台迁移到 Shopify 的场景,提供从评估、迁移到验证的分步流程,并支持渐进式平台切换(strangler fig 模式)。
主要能力:
- 迁移范围评估:针对商品与变体(productSet 变更,幂等,按 handle 创建或更新)、商品图片(productCreateMedia)、客户(CSV 导入或 customerCreate)、历史订单(draftOrderCreate + draftOrderComplete)、库存(inventorySetQuantities)、集合(collectionCreate)、URL 重定向(urlRedirectCreate)、元字段(包含在商品/客户变更中)分别给出导入方式与复杂度。
- 批量商品导入:使用 productSet 一次性处理变体、元字段与商品属性。
- 大批量导入:结合分阶段上传(staged uploads)与 bulk mutation,规避速率限制。
- 库存与重定向:商品创建后设置各库位库存量,并创建 URL 重定向以保留旧平台 SEO。
- 迁移后验证:自动比对源数据与 Shopify 的商品、客户等数量。
使用方式:需准备源平台导出数据(CSV、JSON 或 API 访问),并配置具备 write_products、write_customers、write_orders、write_inventory 权限的 Shopify 店铺。按步骤依次执行评估、商品导入、大批量操作、库存与重定向设置、验证。示例查询商品数量(保持原样): curl -sf -H "X-Shopify-Access-Token: $TOKEN" -H "Content-Type: application/json" -d '{"query": "{ productsCount { count } }"}' "https://$STORE/admin/api/${SHOPIFY_API_VERSION:-2025-04}/graphql.json" | jq '.data.productsCount.count'
常见错误处理:handle 重复报 TAKEN 可用 productSet 做 upsert;顺序调用过多触发限流应改用批量操作或加延迟;图片 URL 不可公开访问需用分阶段上传;库存不更新需先查询变体的 inventoryItem.id。
适用场景:平台重建、商品与客户数据迁移、SEO 重定向保留、渐进式切换。
限制:资料未提供具体定价、平台兼容性完整列表、迁移耗时或性能指标,相关细节暂未提供,实施前需自行验证权限与数据格式。