# 商品管理
# 开发前准备
- 权限与凭证:商家自研可直接调用,使用小店 access_token;第三方服务商需获得商家对
权限集 ID:129的授权,使用 authorizer_access_token - 消息推送配置:需配置消息推送回调 URL(配置一次即可接收所有事件回调)。商品管理涉及的事件:[事件] 商品审核 / product_spu_audit、[事件] 商品上下架 / product_spu_listing、[事件] 商品更新 / product_spu_update。详见 消息通知(回调)说明
# 商品数据模型
商品存在草稿数据和线上数据两份数据,理解这个模型是使用商品管理接口的前提。
# 两份数据的关系
调用 [API] 添加商品 / addproduct 和 [API] 更新商品 / updateproduct 修改的都是草稿数据,只有审核通过并上架后,草稿数据才会覆盖线上数据正式生效。
# 两份数据对比
| 对比项 | 草稿数据(edit_product) | 线上数据(product) |
|---|---|---|
| 含义 | 商家正在编辑、尚未生效的数据 | 当前在店铺中实际生效、用户可见的数据 |
| 写入时机 | 调用 addproduct / updateproduct 时写入 | ① 审核通过 + 上架后,草稿覆盖线上;② 调用 updateproductauditfree 直接写入 |
| 状态字段 | edit_status(编辑状态) | status(商品线上状态) |
| 存在条件 | 商品有未发布的编辑内容 | 商品曾经上架过 |
# 草稿状态(edit_status)
| 值 | 状态 | 说明 |
|---|---|---|
| 0 | 初始值 | 刚创建 |
| 1 | 编辑中 | 商家正在修改 |
| 2 | 审核中 | 已提交等待审核 |
| 3 | 审核失败 | 需修改后重新提交 |
| 4 | 审核成功 | 可上架 |
| 7 | 上传中 | 商品异步提交中,此时调用上架接口会返回错误码 10020067 |
| 8 | 上传失败 | 请重新提交 |
# 线上状态(status)
| 值 | 状态 | 说明 |
|---|---|---|
| 5 | 上架 | 正常售卖中 |
| 11 | 自主下架 | 商家主动下架 |
| 12 | 售罄下架 | 库存售罄自动下架 |
| 13 | 违规下架 | 平台风控/违规下架 |
| 14 | 保证金不足下架 | 店铺保证金不足导致下架 |
| 15 | 品牌过期下架 | 品牌资质过期导致下架 |
| 20 | 封禁 | 严重违规被封禁 |
# 查询数据时如何区分
通过 [API] 获取商品 / getproduct 的 data_type 参数控制:
| data_type | 返回内容 | 使用场景 |
|---|---|---|
| 1(默认) | 仅返回 product(线上数据) | 查看当前在售信息 |
| 2 | 仅返回 edit_product(草稿数据) | 查看编辑进度和审核状态 |
| 3 | 同时返回 product + edit_product | 对比线上版本和草稿版本 |
从未上架过的商品没有线上数据,data_type=1 或 3 时不会返回 product 字段。
# 接入流程
# 阶段一:商品发品流程
发品流程分为前置准备、数据组装、提交审核上架三个环节。
# 1-1 前置准备:资质配置、校验与获取发布规则
发品前需完成运费模板、退货地址、品牌资质、类目权限的申请,然后进行发品前校验并获取发布规则。
以上接口分属类目管理、物流发货、品牌资质等模块,产出的 ID 将在 [API] 添加商品 / addproduct 中使用:
template_id→express_info参数address_id→after_sale_info参数brand_id→brand_id参数cat_id→cats参数
[API] 发品前校验 / categoryprecheck 用于校验店铺和类目权限;校验通过后,调用 [API] 获取类目下商品发布规则 / getcategoryproductrule 获取类目的发布规则(product_attr_list、sale_attr_list、product_qua_list、size_chart、floor_price 等),用于动态构建商品发布表单。
# 1-2 数据组装:获取发品所需数据
# 1-3 数据组装:属性映射(ISV/跨平台场景)
此步骤主要面向 ISV 服务商或跨平台搬品场景,自研商家直接填写属性即可跳过。
# 1-4 提交发品与审核上架
[API] 添加商品 / addproduct 提交后商品进入审核,通过 [事件] 商品审核 / product_spu_audit 事件通知获取审核结果。审核通过后需主动调用 [API] 上架商品 / listingproduct 上架(也可通过 [API] 设置商品上架策略 / setproductauditstrategy 配置审核通过后自动上架)。审核不通过时,可通过 [API] 获取商品 / getproduct 查看 audit_info 中的审核原因。
# 阶段二:商品日常管理流程
# 2-1 商品信息更新
商品更新有两个接口,作用于不同的数据层:
两个更新接口的区别:
| 对比项 | [API] 更新商品 / updateproduct | [API] 免审更新商品 / updateproductauditfree |
|---|---|---|
| 作用数据 | 草稿数据(edit_product) | 线上数据(product) |
| 是否审核 | 必须审核,通过后草稿覆盖线上 | 不需要审核,直接生效 |
| 适用状态 | 所有状态的商品 | 仅已上架商品 |
| 可更新范围 | 所有字段(标题/图片/类目/SKU等) | 有限字段(价格/库存/运费/限购/预售/售后地址/额外服务等) |
| 写入方式 | 覆盖写(未传的 SKU 会被删除) | 覆盖更新(缺省字段不处理) |
| 提示 | 可设置 listing=1 自动提交审核 | 仅更新库存时建议用 [API] 快速更新库存 / updatestock |
# 2-2 商品上下架与删除
下架后商品进入「未上架」状态,可重新上架。商品开售/取消开售用于控制定时上架场景。[事件] 商品上下架 / product_spu_listing 会推送上下架状态变更(status: 5-上架, 11-自主下架, 13-系统下架)。
# 2-3 商品查询与提审管理
# 阶段三:库存管理流程
库存管理涉及通用库存和区域仓库库存两套体系,内容较复杂,已独立整理到库存管理开发指南中。
详见:库存管理 - 开发指南
# 阶段四:赠品与买赠活动流程
# 4-1 添加非卖商品(赠品)
非卖商品的类目必须在 [API] 获取所有类目 / getallcategory 返回的可用范围内,超出范围的类目不支持添加为非卖商品。
# 4-2 在售商品转赠品 + 赠品管理
同一个在售商品只能被设置为一次非卖商品(转换不可重复)。
# 4-3 买赠活动管理
gift_id 对应的是非卖商品的 product_id(通过 [API] 添加非卖商品 / addgiftproduct 或 [API] 在售商品转赠品 / setproductasgift 获得)。
# 阶段五:限时抢购流程
# 商品状态流转
[API] 免审更新商品 / updateproductauditfree 直接更新线上数据,不改变商品状态。
# 状态流转操作对照表
| 操作 | 中文名 / 英文名 | 起始状态 | 目标状态 |
|---|---|---|---|
| 添加商品 | [API] 添加商品 / addproduct | 初始创建 | 审核中 |
| 审核通过 | [事件] 商品审核 / product_spu_audit(status=3) | 审核中 | 未上架 |
| 审核不通过 | [事件] 商品审核 / product_spu_audit(status=2) | 审核中 | 审核不通过 |
| 修改重提 | [API] 更新商品 / updateproduct | 审核不通过 | 审核中 |
| 撤回审核 | [API] 撤回商品审核 / cancelauditproduct | 审核中 | 未上架 |
| 上架 | [API] 上架商品 / listingproduct | 未上架 | 已上架 |
| 下架 | [API] 下架商品 / delistingproduct | 已上架 | 未上架 |
| 更新核心信息 | [API] 更新商品 / updateproduct | 已上架 | 审核中 |
| 删除 | [API] 删除商品 / deleteproduct | 已上架 / 未上架 | 已删除 |
| 免审更新 | [API] 免审更新商品 / updateproductauditfree | 已上架 | 已上架(不变) |
审核通过后需主动调用 [API] 上架商品 / listingproduct 上架,或通过 [API] 设置商品上架策略 / setproductauditstrategy 设置自动上架。状态变更通过 3 个事件通知推送:[事件] 商品审核 / product_spu_audit、[事件] 商品上下架 / product_spu_listing、[事件] 商品更新 / product_spu_update。
# 前端对接说明
| 中文名 / 英文名 | 请求方式 | 功能说明 |
|---|---|---|
| 获取商品H5短链 / getproducth5url | POST /channels/ec/product/h5url/get | 生成商品 H5 页面短链接 |
| 获取商品口令 / getproducttaglink | POST /channels/ec/product/taglink/get | 生成商品口令用于分享 |
| 获取商品二维码 / getproductqrcode | POST /channels/ec/product/qrcode/get | 生成商品二维码图片 |
| 获取商品Scheme码 / getproductscheme | POST /channels/ec/product/scheme/get | 生成商品 URL Scheme |
# 接口全览
# 必接接口
# API 接口
| 中文名 / 英文名 | 请求方式 | 功能说明 |
|---|---|---|
| 发品前校验 / categoryprecheck | POST /channels/ec/product/categoryprecheck | 校验店铺/类目权限,获取发布规则 |
| 添加商品 / addproduct | POST /channels/ec/product/add | 提交商品草稿数据并发起审核 |
| 获取商品 / getproduct | POST /channels/ec/product/get | 查询单个商品的草稿/线上数据 |
| 获取商品列表 / getproductlist | POST /channels/ec/product/list/get | 分页查询商品列表 |
| 更新商品 / updateproduct | POST /channels/ec/product/update | 修改草稿数据,需重新审核 |
| 上架商品 / listingproduct | POST /channels/ec/product/listing | 审核通过后上架商品 |
| 下架商品 / delistingproduct | POST /channels/ec/product/delisting | 将已上架商品下架 |
| 获取库存 / getstock | POST /channels/ec/product/stock/get | 获取单个 SKU 库存数量 |
| 快速更新库存 / updatestock | POST /channels/ec/product/stock/update | 增加/减少/设置 SKU 库存 |
# 事件通知
| 中文名 / 英文名 | 事件标识 | 功能说明 |
|---|---|---|
| 商品审核 / product_spu_audit | Event: product_spu_audit | 审核通过/不通过时回调 |
| 商品上下架 / product_spu_listing | Event: product_spu_listing | 上架/自主下架/系统下架时回调 |
| 商品更新 / product_spu_update | Event: product_spu_update | 商品信息变更时回调 |
# 全量接口
商品管理共 40 个 API 接口(商品 23 + 库存 4 + 赠品 6 + 买赠活动 3 + 限时抢购 4),完整列表请查看官方文档:
# 相关运营文档
- 详见成长中心:商品上架指引
- 详见成长中心:申请类目
- 详见成长中心:商品SKU设置搜推运营指南
- 详见成长中心:避免虚假夸大宣传
- 详见成长中心:避免低价SKU引流
# 常见问题 FAQ
Q:调用 [API] 添加商品 / addproduct 提示需要开通运费险?
A:[API] 发品前校验 / categoryprecheck 返回 all_pass: true 代表店铺层面已开通运费险,但发品时还需在商品维度打开运费险开关。