# 更新货品

接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南

接口英文名:updatesupplyproduct

请求方式:POST

该接口用于对微信小店内货品信息的更新

相关事件推送:

  • 货品审核事件通知
  • 货品上下架事件通知

# 1. 调用方式

# HTTPS 调用

POST https://api.weixin.qq.com/channels/ec/supplier/product/update?access_token=ACCESS_TOKEN

# 云调用

  • 本接口不支持云调用。

# 第三方调用

# 2. 请求参数

# 查询参数 Query String Parameters

参数名类型必填示例说明
access_tokenstringACCESS_TOKEN接口调用凭证,可使用 access_token(供货商)、authorizer_access_token(服务商代调用)

# 请求体 Request Payload

参数名类型必填说明
product_idstring货品ID
titlestring货品标题,至少3个字符,最长120个字符
short_titlestring货品短标题
aftersale_descstring售后描述
head_imgsarray货品头图,至少3张,最多9张(部分类目至少4张)。图片url需以mmecimage.cn/p/开头
head_videosobjarray视频头图,目前仅支持一个
desc_infoobject货品详情
catsobjarray三级类目信息,必须选到第三级类目
attrsobjarray货品参数属性
spu_codestring货品编码
brand_idnumber品牌ID,无品牌则不填
product_qua_infosobjarray货品资质信息
skusobjarraySKU列表,长度最少为1,最大为500
deliver_methodnumber发货方式。0=快递发货(默认),1=无需快递
express_infoobject运费信息
extra_serviceobject额外的售后服务
after_sale_infoobject售后/退货地址
size_chartobject尺码表信息
listingnumber更新完成后是否立即上架。0=否(默认),1=是

# Body.head_videos(Array) Object Payload

视频头图,目前仅支持一个

参数名类型必填说明
video_urlstring原始视频url

# Body.desc_info Object Payload

货品详情

参数名类型必填说明
imgsarray详情图片(至少1张,最多20张),url需以mmecimage.cn/p/开头
descstring详情文本描述

# Body.cats(Array) Object Payload

三级类目信息,必须选到第三级类目

参数名类型必填说明
cat_idnumber类目ID,需要先通过获取类目接口拿到可用的cat_id;这里的cat_id顺序与一,二,三级类目严格一致

# Body.attrs(Array) Object Payload

货品参数属性

参数名类型必填说明
attr_keystring属性键名(同一个货品不能重复)
attr_valuestring属性值

# Body.product_qua_infos(Array) Object Payload

货品资质信息

参数名类型必填说明
qua_idnumber资质ID
qua_urlarray资质图片url列表

# Body.skus(Array) Object Payload

SKU列表,长度最少为1,最大为500

参数名类型必填说明
sku_idnumber若填了已存在sku_id,则进行更新sku操作,否则新增sku
thumb_imgstringsku缩略图
price_infoobject价格信息
stock_numnumber库存数量
stock_diffobject库存增减信息
sku_codestringsku编码
bar_codestring条形码
sku_attrsobjarraysku规格属性列表

# Body.express_info Object Payload

运费信息

参数名类型必填说明
template_idnumber运费模板ID(deliver_method=1时不用填写)
weightnumber货品重量(单位:克),若运费模版按重量计价则必填

# Body.extra_service Object Payload

额外的售后服务

参数名类型必填说明
seven_day_returnnumber是否支持七天无理由退货。0=不支持,1=支持,2=支持(定制商品除外),3=支持(使用后不支持)

# Body.after_sale_info Object Payload

售后/退货地址

参数名类型必填说明
after_sale_address_idnumber售后/退货地址id,使用地址管理相关接口进行添加获取

# Body.size_chart Object Payload

尺码表信息

参数名类型必填说明
enableboolean是否启用尺码表
specification_listobjarray具体的尺码规格列表

# Body.skus(Array).price_info Object Payload

价格信息

参数名类型必填说明
cost_pricenumber成本价(分)
suggest_retail_pricenumber建议零售价(分)
lowest_retail_pricenumber最低零售价(分)

# Body.skus(Array).stock_diff Object Payload

库存增减信息

参数名类型必填说明
diff_typenumber库存变更类型。1=增加,2=减少,3=设置
numnumber增减数量

# Body.skus(Array).sku_attrsObject Payload

sku规格属性列表

参数名类型必填说明
attr_keystring规格属性键,最终展示为商详页sku规格的名称,最多40字符
attr_valuestring规格属性值,最多40字符

# Body.size_chart.specification_list(Array) Object Payload

具体的尺码规格列表

参数名类型必填说明
namestring尺码规格名称
unitstring规格单位
is_rangeboolean是否为区间
value_listobjarray尺码与规格值的映射列表

# Body.size_chart.specification_list(Array).value_listObject Payload

尺码与规格值的映射列表

参数名类型必填说明
keystring规格项对应的尺码值
valuestring规格为非区间时的值
leftstring规格为区间时的左边界
rightstring规格为区间时的右边界

# 3. 返回参数

# 返回体 Response Payload

参数名类型说明
errcodenumber错误码
errmsgstring错误信息
dataobject返回数据

# Res.data Object Payload

返回数据

参数名类型说明
product_idnumber货品ID
update_timestring更新时间

# 4. 注意事项

  • 货品有2份数据,草稿和线上数据,调用接口新增和修改货品数据后,影响的只是草稿数据,要调用上架货品接口(或本接口参数listing设置为1),并审核通过,草稿数据才会覆盖线上数据正式生效;

  • 该接口请求方式和添加货品接口基本一致,区别在于请求该接口时需要带上已存在的product_id;

  • 该接口是覆盖写操作,每次提交后,草稿数据会被整体替换为本次请求上传的数据:

    1. 若sku列表中带上已存在的sku_id,则会用新上传的内容更新对应的sku草稿;

    2. 若列表中某个的sku没有传入sku_id,则视为新增的sku,分配新的sku_id并插入到货品草稿中;

    3. 若原本存在于货品信息中的某个sku_id,在本次更新没有上传,则视为删除,货品草稿将移除该sku,在货品审核通过后,以上变动将作用于线上数据。

  • 图片相关参数(如head_imgs、desc_info.imgs、skus[].thumb_img等),请务必使用接口上传图片(参数resp_type=1),并将返回的img_url填入此处,不接受其他任何格式的图片url。若url曾经做过转换(url前缀为mmecimage.cn/p/),则可以直接提交。

  • 每个小店调用接口新增、更新货品次数会合并计算,有频次限制。

# 5. 代码示例

请求示例

{
	"product_id": "10000000089215",
	"title": "示例货品标题",
	"head_imgs": [
		"https://mmecimage.cn/p/xxx1",
		"https://mmecimage.cn/p/xxx2",
		"https://mmecimage.cn/p/xxx3"
	],
	"desc_info": {
		"imgs": [
			"https://mmecimage.cn/p/yyy1"
		]
	},
	"cats": [
		{"cat_id": 6031},
		{"cat_id": 6032},
		{"cat_id": 6033}
	],
	"skus": [
		{
			"sku_id": 462966903,
			"sale_price": 1300,
			"stock_info": {
				"stock_num": 100
			},
			"sku_attrs": [
				{
					"attr_key": "颜色",
					"attr_value": "白色"
				}
			]
		}
	],
	"express_info": {
		"template_id": 123456
	}
}

返回示例

{
	"errcode": 0,
	"errmsg": "ok",
	"data": {
		"product_id": 10000000089215,
		"update_time": "2025-06-20 10:00:00"
	}
}

# 6. 错误码

以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。

错误码错误描述解决方案
10020011货品的类目长度不对确认已选到三级类目
10020012规格不合法确认规格属于所选三级类目
10020013货品sku数量不合理sku数量必须在1-500之间
10020017类目非法确认类目正确
10020018商家不具备当前类目资质先申请类目资质
10020019运费模版非法确认运费模板ID正确
10020020货品标题为空填写标题
10020021货品标题过长标题不超过120字符
10020022货品头图为空至少上传3张头图
10020023货品头图过多最多9张头图
10020024货品描述过长缩短描述内容
10020025货品详情图片过多最多20张详情图
10020028sku价格过高不超过1000万元
10020034该货品的sku_id填写有误确认sku_id正确
10020035图片/视频url非法url前缀应为mmecimage.cn/p/
10020038上架的货品缺少sku至少提供1个sku
10020039SKU价格为0设置有效价格
10020042货品标题过短至少3个字符
10020049货品正在审核中,无法编辑先调用撤回审核接口
10020051参数错误按文档传参
10020052货品不存在确认货品ID正确
10020083该货品所需类目保证金高于当前保证金余额前往商家网页端补缴保证金
10020088当前类目不支持当前品牌确认品牌与类目匹配
10020106请上传至少3张货品头图补充头图
10020107请上传至少1张货品详情图补充详情图
10020110货品信息检查不通过检查货品完整性

# 7. 适用范围

本接口支持「小店供货商」账号类型调用。其他账号类型如无特殊说明,均不可调用。