# 创建优惠券
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南
接口英文名:createcoupon
可通过此接口创建优惠券。
相关事件通知:
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/channels/ec/coupon/create?access_token=ACCESS_TOKEN
# 云调用
调用方法:channels.ec.coupon.create
出入参和 HTTPS 调用相同,调用方式可查看 云调用 说明文档
# 第三方调用
本接口支持第三方平台代商家调用。
该接口所属的权限集 id 为:132
服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。
# 2. 请求参数
# 查询参数 Query String parameters
参数名 | 类型 | 必填 | 示例 | 说明 |
---|---|---|---|---|
access_token | string | 是 | ACCESS_TOKEN | 接口调用凭证,可使用 access_token、authorizer_access_token |
# 请求体 Request Payload
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | number | 是 | 优惠券类型,枚举值详情请参考下文 |
name | string | 是 | 优惠券名称,最长10个中文字符 |
promote_info | object | 是 | promote_info |
discount_info | object | 否 | discount_info |
receive_info | object | 是 | receive_info |
valid_info | object | 否 | valid_info |
ext_info | object | 否 | ext_info |
auto_valid_info | object | 否 | auto_valid_info |
# Body.promote_info Object Payload
promote_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
promote_type | number | 是 | 推广类型,枚举值详情请参考下文 |
# Body.discount_info Object Payload
discount_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
discount_condition | object | 否 | discount_condition |
discount_num | number | 否 | 优惠减免折扣数,换算规则,5000=5折,7000=7折,范围是1000-10000,必须是100的整数,不可低于2折,详见[详情描述](https://channels.weixin.qq.com/shop/frame/common/announce?key=1683887324&version=1) |
discount_fee | number | 否 | 优惠减免金额,单位为分,不可超过200元,同时如果是商品券,适用商品优惠后不可低于原价2折,如果是店铺满减券,不可低于价格门槛的2折。 详见[详情描述](https://channels.weixin.qq.com/shop/frame/common/announce?key=1683887324&version=1) |
# Body.receive_info Object Payload
receive_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
start_time | number | 是 | 优惠券领用开始时间戳(秒级时间戳) |
end_time | number | 是 | 优惠券领用结束时间戳(秒级时间戳) |
limit_num_one_person | number | 是 | 单人限领张 |
total_num | number | 是 | 优惠券领用总数 |
# Body.valid_info Object Payload
valid_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
valid_type | number | 是 | 优惠券有效期类型,枚举值详情请参考下文 |
valid_day_num | number | 否 | 优惠券有效期天数,valid_type为2时必填 |
start_time | number | 否 | 优惠券有效期开始时间(秒级时间戳),valid_type为1时必填 |
end_time | number | 否 | 优惠券有效期结束时间(秒级时间戳),valid_type为1时必填 |
# Body.ext_info Object Payload
ext_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
jump_product_id | number | 否 | 商品折扣券领取后跳转的商品id |
notes | string | 否 | 备注信息 |
# Body.auto_valid_info Object Payload
auto_valid_info
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
auto_valid_type | number | 是 | 优惠券开启自动生效类型,枚举值详情请参考下文 |
# Body.discount_info.discount_condition Object Payload
discount_condition
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
product_cnt | number | 否 | 商品件数门槛,不能和价格门槛同时设置 |
product_price | number | 否 | 商品价格门槛,单位为分,不能和件数门槛同时设置 |
product_ids | array | 否 | 商品id,商品券需填写,最多 200 个商品 |
# 3. 返回参数
# 返回体 Response Payload
参数名 | 类型 | 示例 | 说明 |
---|---|---|---|
errcode | number | 0 | 错误码 |
errmsg | string | ok | 错误信息 |
data | object | 优惠券信息 |
# Res.data Object Payload
优惠券信息
参数名 | 类型 | 示例 | 说明 |
---|---|---|---|
coupon_id | string | 111 | 优惠券ID |
# 4. 注意事项
- 创建优惠券时status=1(未生效,编辑中);
- 注意下面所有时间字段里面的均为以秒为单位的时间戳。
type优惠券类型
枚举值 | 描述 |
---|---|
1 | 商品条件折券, discount_condition.product_ids, discount_condition.product_cnt, discount_info.discount_num 必填 |
2 | 商品满减券, discount_condition.product_ids, discount_condition.product_price, discount_info.discount_fee 必填 |
3 | 商品统一折扣券, discount_condition.product_ids, discount_info.discount_num必填 |
4 | 商品直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_condition.product_ids, discount_fee 必填 |
101 | 店铺条件折扣券, discount_condition.product_cnt, discount_info.discount_num必填 |
102 | 店铺满减券, discount_condition.product_price, discount_info.discount_fee 必填 |
103 | 店铺统一折扣券, discount_info.discount_num 必填 |
104 | 店铺直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_fee 必填 |
promote_type推广类型
枚举值 | 描述 |
---|---|
1 | 小店内推广 |
9 | 会员券 |
10 | 会员开卡礼券 |
valid_type优惠劵有效期类型
枚举值 | 描述 |
---|---|
1 | 指定时间范围生效 |
2 | 生效天数 |
auto_valid_type优惠券开启自动生效类型
枚举值 | 描述 |
---|---|
0 | 不启用自动生效 |
1 | 启用自动生效,按领券开始时间(自动生效时间为 receive_info.start_time) |
# 5. 代码示例
请求示例
{
"type": 2,
"name": "双十一特惠券",
"discount_info": {
"discount_condition": {
"product_cnt": 0,
"product_ids": [
"1673110742",
"1673110743"
],
"product_price": 100
},
"discount_fee": 50,
"discount_num": 0
},
"ext_info": {
"jump_product_id": "1673110742",
"notes": "备注"
},
"promote_info": {
"promote_type": 1
},
"receive_info": {
"end_time": 1673110742,
"limit_num_one_person": 1,
"start_time": 1673110742,
"total_num": 100
},
"valid_info": {
"valid_day_num": 1,
"valid_type": 1
},
"auto_valid_info": {
"auto_valid_type": 1
}
}
返回示例
{
"errcode": 0,
"errmsg": "ok",
"data": {
"coupon_id": "111"
}
}
# 6. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码
错误码 | 错误描述 | 解决方案 |
---|---|---|
10021005 | 优惠券名称太长 | |
10021006 | 校验折扣数失败 | |
10021007 | 校验优惠价格失败 | |
10021008 | 校验直减券是否小于最低价格 | |
10021009 | 校验领取时间失败 | |
10021010 | 校验有效时间失败 | |
10021011 | 校验优惠券总发放量失败 | |
10021012 | 校验限领失败 | |
10021013 | 校验商户失败 | |
10021014 | 推广类型不对 | |
10021021 | 校验入参失败,含有非商户的指定商品 | |
10021024 | 优惠券信息违规 | |
10021035 | 创建 优惠券类型 暂不支持 | |
10021061 | 店铺未开启会员功能 | |
10021071 | 券可领取的结束时间应晚于当前时间 | |
10021072 | 券可领取的开始时间应早于券有效期的结束时间 | |
10021073 | 有效开始时间应早于有效结束时间 | |
10021074 | 券有效结束时间应晚于领取结束时间 | |
10021075 | 领取后有效期最长180天 | |
10021077 | 领券时间区间不可大于365天 | |
10021078 | 券有效期区间不可大于365天 | |
10021080 | 置券时传了非上架商品 |
# 7. 适用范围
本接口支持「微信小店」账号类型调用。其他账号类型如无特殊说明,均不可调用。