# 订单同步流程
本文档介绍了通过API将订单同步到CJ平台的三种主要流程:
# 1. 平台物流模式订单同步流程
适用于希望由CJ仓库统一操作发货、自己负责上传物流面单的商户。需要指定 shopLogisticsType=1 或 3,以及仓库 storageId;选择该模式后,仓库会在收到你上传的面单后才开始作业。
Tip:
- 添加参数: shopLogisticsType 和 storageId
- 需要指定物流类型和存储ID(存储ID一旦指定,就不能更改)
添加订单到购物车
文档: 添加订单到购物车
提示: 批量添加订单到购物车,支持添加订单。
购物车订单确认
文档: 购物车订单确认
创建母单并获取支付ID
文档: 创建母单并获取支付ID
支付.
文档: 支付
提示: 你还可以进入MyCJ的网页批量支付
上传面单与发货信息.
文档: 上传面单与发货信息
提示: 付款完成后才能执行
更新面单与发货信息
Docs:更新面单与发货信息
提示: 只有订单状态为UNSHIPPED时才能执行
# 1.1 时序图
sequenceDiagram
participant 商户 as 商户系统(调用方)
participant CJ as CJ开放平台
商户->>CJ: 按商品查询库存(GET /product/stock/getInventoryByPid)
CJ-->>商户: 库存信息
商户->>CJ: 查询仓库信息(GET /warehouse/detail)
CJ-->>商户: 仓库信息
商户->>CJ: 创建订单(POST /order/createOrderV2 或 /order/createOrderV3<br/>shopLogisticsType=1或3,storageId=指定仓库ID)
CJ-->>商户: 返回订单号及订单状态
商户->>CJ: 添加订单到购物车(POST /order/addCart)
CJ-->>商户: 加购结果
商户->>CJ: 购物车订单确认(POST /order/addCartConfirm)
CJ-->>商户: 确认结果
商户->>CJ: 创建母单并获取支付ID(POST /order/saveGenerateParentOrder)
CJ-->>商户: 母订单号、应付金额、支付ID
商户->>CJ: 支付(POST /pay/payBalanceV2)或在MyCJ网页批量支付
CJ-->>商户: 支付结果
Note over 商户,CJ: 仓库会在收到面单后才开始作业,请在支付完成后及时上传
商户->>CJ: 上传面单与发货信息(POST /order/uploadWaybillInfo)
CJ-->>商户: 上传结果
opt 订单状态为"待发货"(UNSHIPPED)
商户->>CJ: 更新面单与发货信息(POST /order/updateWaybillInfo)
CJ-->>商户: 更新结果
end
# 2. 订单同步到CJ及使用CJ物流的流程
适用于希望直接使用CJ自有物流渠道发货、无需自行上传面单的商户。需要将 shopLogisticsType 设为 2,storageId 留空,并指定物流方式 logisticName;支付完成后由CJ安排发货。
Tip:
- shopLogisticsType传值为2、 storageId传值为空
- 需要指定物流,参数:logisticName
添加订单到购物车
文档: 添加订单到购物车
提示: 批量添加订单到购物车,支持添加订单。
购物车订单确认
文档: 购物车订单确认
创建母单并获取支付ID
文档: 创建母单并获取支付ID
支付.
文档: 支付
提示: 你还可以进入MyCJ的网页批量支付
# 2.1 时序图
sequenceDiagram
participant 商户 as 商户系统(调用方)
participant CJ as CJ开放平台
商户->>CJ: 创建订单(POST /order/createOrderV2 或 /order/createOrderV3<br/>shopLogisticsType=2,storageId留空,指定logisticName)
CJ-->>商户: 返回订单号及订单状态
商户->>CJ: 添加订单到购物车(POST /order/addCart)
CJ-->>商户: 加购结果
商户->>CJ: 购物车订单确认(POST /order/addCartConfirm)
CJ-->>商户: 确认结果
商户->>CJ: 创建母单并获取支付ID(POST /order/saveGenerateParentOrder)
CJ-->>商户: 母订单号、应付金额、支付ID
商户->>CJ: 支付(POST /pay/payBalanceV2)或在MyCJ网页批量支付
CJ-->>商户: 支付结果
Note over CJ: 等待CJ处理订单发货
商户->>CJ: 查询订单详情(GET /order/getOrderDetail)
CJ-->>商户: 订单详情
商户->>CJ: 查询物流轨迹(GET /logistic/trackInfo)
CJ-->>商户: 物流轨迹
# 3. 店铺订单流程
# 3.1 概述与适用场景
CJ 开放平台创建订单 V3 接口支持两种商品识别方式,通过参数 orderFlow 区分:
| orderFlow | 名称 | 适用场景 |
|---|---|---|
| 1(默认) | CJ商品订单流程 | 下单时必须提供 CJ 变体 ID(vid)或 CJ SKU,商品信息完全来自 CJ 商品库 |
| 2 | 店铺订单流程 | 下单时可以直接传入你自己店铺系统里的商品/变体标识(店铺 SKU、店铺商品 ID),不要求提前知道对应的 CJ 变体 ID |
如果你的店铺商品尚未与 CJ 商品建立关联关系,店铺订单流程可以显著简化对接:无需在下单前先完成关联,本次下单仍可正常提交;但下单后仍需前往 My CJ - Unconnected (opens new window) 页面手动完成该商品的关联。
订单创建后,根据商品是否已关联CJ商品,会展示在不同位置:
- 商品已关联CJ商品:订单展示在 Imported → Orders (opens new window) 中,可正常处理;
- 商品未关联CJ商品:订单展示在 Imported → Invalid Orders (opens new window) 中,需要你先到 My CJ - Unconnected (opens new window) 完成关联后,订单才能正常处理。
# 3.2 如何使用店铺商品模式
- 创建店铺订单时必须使用 创建订单 V3 接口(不要使用 V2),并设置
orderFlow=2; - 商品信息通过
products数组传入,需要同时提供:products.vid:你的店铺商品/变体标识products.storeProductId:店铺商品 IDproducts.storeProductImg:店铺商品图片
- 若该商品此前尚未与 CJ 商品建立关联,前往 My CJ - Unconnected (opens new window) 页面,找到该未关联的商品,完成关联;也可以提前通过接口完成商品保存与关联,见 3.7 节。
若你的账号已由 CJ 为其整体开通"店铺订单模式",则即使不传
orderFlow,也会按店铺订单流程处理。具体账号是否已开通,请联系 CJ 业务对接人确认。
# 3.3 接口参数说明
摘自 创建订单 V3(POST) 的关键参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
orderFlow | int | 否,默认 1 | 订单流程类型。1=CJ商品订单流程(使用 CJ 变体创建订单,默认);2=店铺订单流程(支持使用店铺 SKU 创建订单) |
products[].vid | string | 否(店铺商品模式下需传值) | CJ商品订单流程下为 CJ 变体 ID;店铺商品模式下传你的店铺商品/变体标识。vid/sku 不能同时为空 |
products[].sku | string | 否 | CJ 变体 SKU;缺少 vid 时用 sku 反查变体(店铺商品模式下一般不使用该字段) |
products[].storeProductId | String | 否(店铺商品模式下需传值) | 你店铺侧的商品 ID,会保存到店铺商品记录中 |
products[].storeProductImg | String | 否(店铺商品模式下需传值) | 你店铺侧的商品图片,会保存到店铺商品记录中 |
# 3.4 完整业务流程
店铺订单流程只影响第 1 步"创建订单"中商品的识别方式,其余步骤与第 1、2 节完全一致:
创建订单.
文档: 创建订单 V3
Tip:
- 必须使用创建订单V3接口,暂不支持V2
- 设置 orderFlow 传值为2
- products中需要同时传入:vid(你的店铺商品/变体标识)、storeProductId(店铺商品ID)、storeProductImg(店铺商品图片)
- 若该商品已与CJ商品关联,订单创建后展示在 Imported → Orders (opens new window) 中,可正常处理
- 若该商品尚未与CJ商品建立关联,系统会自动创建一条店铺商品记录,本次下单仍可正常完成,但不会自动建立CJ商品关联;订单创建后展示在 Imported → Invalid Orders (opens new window) 中,需前往 My CJ - Unconnected (opens new window) 页面完成关联后订单才能正常处理
- 若你的账号已由CJ为其整体开通"店铺订单模式",即使不传orderFlow,也会按店铺订单流程处理,具体请联系CJ业务对接人确认
- 添加购物车、购物车确认、创建母单并获取支付ID、支付、上传/更新面单信息、查询订单详情与物流轨迹等后续步骤,请根据你选择的物流方式(shopLogisticsType),参照上文"1. 平台物流模式订单同步流程"或"2. 订单同步到CJ及使用CJ物流的流程"执行。
# 3.5 与CJ商品订单流程对比
| 维度 | 店铺订单流程(orderFlow=2) | CJ商品订单流程(orderFlow=1,默认) |
|---|---|---|
| 下单所需商品信息 | 你自己店铺的商品/变体标识(店铺 SKU、店铺商品 ID),无需提前知道 CJ 变体 ID | 必须提供 CJ 变体 ID(vid)或 CJ SKU |
| 未关联 CJ 商品时的处理 | 系统自动创建店铺商品记录,本次下单可以正常继续,但不会自动建立 CJ 商品关联,订单展示在 Imported → Invalid Orders (opens new window) 中 | 商品必须已经是有效的 CJ 变体,否则无法下单 |
| 后续维护 | 需自行前往 My CJ - Unconnected (opens new window) 页面,找到该未关联商品并手动完成关联 | 无需额外维护,本身即为 CJ 商品 |
| 适用商户 | 希望直接用自己店铺商品体系对接、简化前期商品关联工作的商户 | 已完整维护 CJ 商品/变体映射关系的商户 |
# 3.6 时序图
sequenceDiagram
participant 商户 as 商户系统(调用方)
participant CJ as CJ开放平台
商户->>CJ: 创建订单V3(POST /order/createOrderV3,orderFlow=2<br/>products.vid + storeProductId + storeProductImg)
alt 店铺商品已关联CJ商品
CJ-->>CJ: 直接匹配对应CJ商品下单
CJ-->>商户: 订单展示在 Imported → Orders
else 店铺商品尚未关联CJ商品
CJ-->>CJ: 自动创建店铺商品记录(不会自动建立CJ商品关联),本次下单仍可正常完成
CJ-->>商户: 订单展示在 Imported → Invalid Orders
Note over 商户,CJ: 商户需自行前往 My CJ → Unconnected 页面<br/>找到该商品并手动完成关联(接口不会主动提示)
end
CJ-->>商户: 返回订单号及订单状态
商户->>CJ: 添加购物车(POST /order/addCart)
CJ-->>商户: 加购结果
商户->>CJ: 购物车确认(POST /order/addCartConfirm)
CJ-->>商户: 确认结果
商户->>CJ: 保存提交母单(POST /order/saveGenerateParentOrder)
CJ-->>商户: 母订单号、应付金额、支付ID
商户->>CJ: 余额支付(POST /pay/payBalanceV2)或跳转CJ支付页完成支付
CJ-->>商户: 支付结果
opt 平台物流模式(shopLogisticsType=1或3)
商户->>CJ: 上传面单信息(POST /order/uploadWaybillInfo)/ 更新面单信息(POST /order/updateWaybillInfo)
CJ-->>商户: 面单处理结果
end
商户->>CJ: 订单查询(GET /order/getOrderDetail)
CJ-->>商户: 订单详情
商户->>CJ: 查询物流信息(GET /logistic/trackInfo)
CJ-->>商户: 物流轨迹
以上接口路径均省略了统一前缀
https://developers.cjdropshipping.com/api2.0/{version}/shopping或.../logistic,具体版本号{version}及完整 URL 以对应接口文档为准。
# 3.7 提前维护店铺商品与关联关系(可选)
如果你希望在下单前就把店铺商品同步到CJ、并提前建立好与CJ商品的关联关系(避免订单创建后落入 Imported → Invalid Orders (opens new window),需要事后再去 Unconnected 页面处理),可以调用以下接口,效果与登录 My CJ 手动操作等价:
保存店铺商品
文档:保存商品(POST)
提示:把店铺商品信息提前保存到CJ系统。
批量保存店铺变体
文档:批量保存变体(POST)
提示:把店铺商品的变体信息批量保存到CJ系统。
创建商品关联关系
文档:创建商品关联(POST)
提示:将店铺商品(及其变体)与CJ商品(及其变体)建立关联关系,效果与登录 My CJ - Unconnected (opens new window) 页面手动关联等价。
解除商品关联关系
提示:按店铺商品Id(可选变体Id)解除已建立的关联关系。