# 代发管理
# 开发前准备
- 功能了解:开发前建议先阅读运营文档了解代发管理的完整业务流程。详见成长中心:微信小店「代发管理」使用指南
- 权限与凭证:商家自研可直接调用,使用小店 access_token;第三方服务商需获得商家对
权限集 ID:131的授权,使用 authorizer_access_token - 消息推送配置:本模块无独立事件通知。代发相关状态变更通过订单管理模块的 [事件] 订单其他信息更新 / channels_ec_order_ext_info_update 推送(type=14 表示分配代发,type=15 表示取消代发),如需监听代发状态变化,需配置订单管理的消息推送回调 URL。详见 消息通知(回调)说明
- 前置条件:商家需在 微信小店管理后台 开通代发管理功能后,方可调用本模块接口(否则返回错误码 9700232)
# 核心概念
代发管理是帮助微信小店商家关联供货商、分配代发订单的工具。涉及两个核心角色:
- 商家:开设及经营微信小店的主体,负责商品上架、接单和售后
- 供货商:无需开店,面向合作商家提供代发货服务(备货、打单、发货)
# 三种分配方式
| 分配方式 | 说明 | 生效范围 |
|---|---|---|
| 全店订单手动分配 | 系统默认模式,商家需手动为每笔订单指定代发供货商 | 新增订单 |
| 全店订单自动分配 | 设置一个供货商作为全店默认代发方,所有新订单自动分配 | 新增订单 |
| 按商品自动分配 | 为每个商品绑定固定供货商,该商品新订单自动分配给对应供货商 | 新增订单 |
分配方式的设置仅对新增订单生效,不影响存量订单。「全店订单自动分配」与「按商品自动分配」两种自动模式配置互斥,无法同时生效。
# 接入流程
# 阶段一:关联供货商
商家需先与供货商建立关联关系,才能进行订单分配。
流程说明:
- 商家通过 [API] 申请关联供货商 / invite_supplier 向供货商发起关联申请,需传入供货商的
supplier_appid - 供货商在供货商管理后台确认关联申请
- 商家通过 [API] 获取供货商列表 / get_supplier_list 查看关联状态(
bind_audit_status字段)
# 阶段二:配置分配方式
关联成功后,商家可根据需求配置订单分配方式。开通代发管理后默认为「全店订单手动分配」,切换后仅对新增订单生效。
「全店订单自动分配」与「按商品自动分配」配置互斥,无法同时生效;切换为任一自动分配模式时,另一种自动分配会被覆盖。如需取消自动分配,可切回手动分配模式。
通过 [API] 获取分配方式 / get_distribution 查询当前生效的分配模式,根据业务需求调用对应接口切换:
- 全店订单手动分配(默认):调用 [API] 设置全店订单手动分配 / set_manually_distribution,商家需逐笔为订单指定供货商
- 全店订单自动分配:调用 [API] 设置全店订单自动分配 / set_all_distribution,所有新订单自动分配给指定的单一供货商
- 按商品自动分配:调用 [API] 设置按商品自动分配 / set_product_distribution,不同商品可绑定不同供货商,新订单按商品自动分配
按商品分配模式下,可通过以下接口管理分配关系:
- [API] 获取商品对应的自动分配供货商 / get_product_default_distribution:查询某个商品当前绑定的供货商
- [API] 获取按商品自动分配的商品列表 / get_product_list:批量查询已配置自动分配的商品及其供货商
# 阶段三:代发单管理
订单分配给供货商后生成代发单,供货商基于代发单进行发货。
流程说明:
订单分配有三种方式:
手动分配:商家通过 [API] 获取订单列表 / getorderlist 拉取待发货订单,选择需要代发的订单,通过 [API] 分配订单代发 / dropship_assign 将订单分配给指定供货商,支持按商品粒度拆分分配
全店自动分配:配置后系统自动将所有新订单分配给指定的单一供货商,无需调用
dropship_assign接口按商品自动分配:配置后系统根据商品绑定的供货商自动分配新订单,无需调用
dropship_assign接口
代发单生成与管理:
无论采用何种分配方式,代发单生成后都可通过以下接口进行管理:
- [API] 拉取代发单列表 / dropship_list:按条件批量拉取代发单
- [API] 搜索代发单 / dropship_search:多维度搜索代发单
- [API] 查询代发单详情 / dropship_get:查看单个代发单的状态和发货信息
- [API] 取消分配代发单 / dropship_cancel:未发货前取消分配
状态变更通知:
代发单分配和取消操作完成后,商家会通过 [事件] 订单其他信息更新 / channels_ec_order_ext_info_update 事件感知状态变化:
type=14:分配代发成功type=15:取消代发成功
需配置订单管理的消息推送回调 URL 方可接收此事件。详见 消息通知(回调)说明
# 代发单状态流转
# 接口全览
# API 接口
# 关联供货商
| 中文名 / 英文名 | 请求方式 | 功能说明 |
|---|---|---|
| 获取供货商列表 / get_supplier_list | POST /channels/ec/supplier/relation/get_supplier_list | 获取已关联的供货商列表 |
| 申请关联供货商 / invite_supplier | POST /channels/ec/supplier/relation/invite_supplier | 商家申请与供货商建立关联 |
# 自动分配设置
| 中文名 / 英文名 | 请求方式 | 功能说明 |
|---|---|---|
| 获取分配方式 / get_distribution | POST /channels/ec/supplier/relation/get_distribute | 获取当前订单分配方式 |
| 设置全店订单手动分配 / set_manually_distribution | POST /channels/ec/supplier/relation/set_manually_distribute | 设置全店订单手动分配 |
| 设置全店订单自动分配 / set_all_distribution | POST /channels/ec/supplier/relation/set_all_distribution | 全店新订单自动分配给单一供货商 |
| 设置按商品自动分配 / set_product_distribution | POST /channels/ec/supplier/relation/set_product_distribute | 按商品维度设置自动分配供货商 |
| 获取商品对应的自动分配供货商 / get_product_default_distribution | POST /channels/ec/supplier/relation/get_product_default_distribute | 查询商品对应的自动分配供货商 |
| 获取按商品自动分配的商品列表 / get_product_list | POST /channels/ec/supplier/relation/get_product_list | 获取已配置自动分配的商品列表 |
# 代发单管理
| 中文名 / 英文名 | 请求方式 | 功能说明 |
|---|---|---|
| 分配订单代发 / dropship_assign | POST /channels/ec/order/dropship/assign | 分配订单给供货商代发 |
| 取消分配代发单 / dropship_cancel | POST /channels/ec/order/dropship/cancel | 取消已分配的代发单 |
| 查询代发单详情 / dropship_get | POST /channels/ec/order/dropship/get | 查询代发单详细信息 |
| 拉取代发单列表 / dropship_list | POST /channels/ec/order/dropship/list | 按条件拉取代发单列表 |
| 搜索代发单 / dropship_search | POST /channels/ec/order/dropship/search | 多维度搜索代发单 |
# 事件通知(关联)
本模块无独立事件通知。代发相关状态变更通过订单管理模块事件推送:
| 中文名 / 英文名 | 事件标识 | 功能说明 |
|---|---|---|
| 订单其他信息更新 / channels_ec_order_ext_info_update | Event: channels_ec_order_ext_info_update | type=14 分配代发 / type=15 取消代发 |
# 常见问题 FAQ
Q:商家可以同时关联多个供货商吗? A:可以。商家可通过 [API] 申请关联供货商 / invite_supplier 与多个供货商建立关联,在按商品自动分配模式下可为不同商品指定不同供货商。
Q:一笔订单包含多个商品时,可以分配给不同供货商吗?
A:可以。[API] 分配订单代发 / dropship_assign 支持通过 dropship_product_list 参数按商品粒度指定分配,同一订单的不同商品可分配给不同供货商。
Q:自动分配模式下,能按 SKU 维度分配吗? A:不能。自动分配仅支持按商品 ID(SPU)维度设置,不支持按 SKU 维度。手动分配时可以按 SKU 粒度操作。
Q:设置新的分配方式后,存量订单会受影响吗? A:不会。分配方式的变更仅对新增订单生效,已存在的存量订单维持原有分配方式不变。
Q:已分配的商品发生售后,代发单如何处理? A:供货商发货前,商品发生售后退款时对应商品自动取消代发,若代发单下全部商品都已取消则代发单状态变为「已取消」;供货商发货后,需商家主动联系供货商沟通处理。
Q:「按商品自动分配」和「全店订单自动分配」可以同时设置吗? A:不能。两种自动分配方式配置互斥,无法同时生效。切换时,新的设置仅对新增订单生效。