向用户预发放商品券

更新时间:2025.11.05

品牌方可以通过本接口向用户预发放指定商品券批次,并使用返回的token在领券组件中完成发券,当用户已领取过时使用相同参数获取的token拉起的领券组件会返回已领取状态,能否发放受限于商品券批次的发放限额:

  1. 商品券批次总预算

  2. 商品券批次每日预算(如果有)

  3. 商品券批次每人限领(如果有)

前置条件:已创建商品券批次,商品券批次处于 SENDING 状态

接口说明

支持商户:【品牌商户】

请求方式:【POST】/brand/marketing/product-coupon/users/{openid}/pre-send-coupon

请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

     【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看

接口限频:500/秒(品牌ID维度)

请求参数

Header  HTTP头参数

 Authorization  必填 string

请参考签名认证生成认证信息


 Accept  必填 string

请设置为application/json


 Content-Type  必填 string

请设置为application/json


 Wechatpay-Serial  必填 string

【微信支付公钥ID】  请传入brand_id对应的微信支付公钥ID,接口将会校验两者的关联关系,参考微信支付公钥产品简介及使用说明获取微信支付公钥ID和相关的介绍。以下两种场景将使用到微信支付公钥: 1、接收到接口的返回内容,需要使用微信支付公钥进行验签; 2、调用含有敏感信息参数(如姓名、身份证号码)的接口时,需要使用微信支付公钥加密敏感信息后再传输参数,加密指引请参考微信支付公钥加密敏感信息指引


path  路径参数

 openid  必填   string

【用户OpenID】 OpenID信息,用户在AppID下的唯一标识,获取方式参考OpenID


body  包体参数

 product_coupon_id  必填   string

【商品券ID】 商品券的唯一标识,创建商品券时由微信支付生成


 stock_id  必填   string

【批次ID】 商品券批次的唯一标识,商品券批次创建时由微信支付生成(可使用【创建商品券API】或【添加商品券批次API】创建),请确保该批次属于 product_coupon_id 对应的商品券


 coupon_code  选填   string(40)

【用户商品券Code】 用户商品券的唯一标识,给用户发券时需要为该用户的券分配,可使用 数字、大小写字母、下划线_、短横线- 组成,长度不超过40个字符。当且仅当 coupon_code_mode 为 API_ASSIGN 时必传,其他模式下用户商品券Code由微信支付分配,不允许传入。


 appid  必填   string

【公众账号ID】 公众账号ID也称AppID,是(微信开放平台、微信公众平台)为开发者提供的一个唯一标识,用于识别开发者的应用程序(APP、小程序、公众号)。 开发者需要先在微信开放平台或微信公众平台中申请ID,然后在品牌经营平台中绑定,详见品牌经营平台指引


 send_request_no  必填   string(128)

【发券请求单号】 品牌给用户发券的请求流水号,品牌侧需保持唯一性,可使用 数字、大小写字母、下划线_、短横线- 组成,长度在6-128个字符之间


 attach  选填   string(150)

【自定义附加信息】 发券时品牌方可以使用该字段附带自定义附加信息,长度限制150个UTF-8字符。微信支付不会解析该信息,仅在查询用户商品券和回调中原样返回。

注: 发券渠道多样,只有品牌方通过调用「向用户发放商品券」接口发放以及调用该接口预发券并在领券组件中发放的券才会在查询和回调中携带此字段,其他渠道发放的券 attach 为空。

请求示例

curl
Java
Go

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/brand/marketing/product-coupon/users/oh-394z-6CGkNoJrsDLTTUKiAnp4/pre-send-coupon \
3  -H "Authorization: WECHATPAY-BRAND-SHA256-RSA2048 brand_id=\"XXXX\",..." \
4  -H "Accept: application/json" \
5  -H "Wechatpay-Serial: PUB_KEY_ID_XXXX"  \
6  -H "Content-Type: application/json" \
7  -d '{
8    "product_coupon_id" : "200000001",
9    "stock_id" : "100232301",
10    "coupon_code" : "123446565767",
11    "appid" : "wx233544546545989",
12    "send_request_no" : "34657_20250101_123456",
13    "attach" : "example_attach"
14  }'
15

应答参数

200 OK

 token  必填   string(1024)

【预发券token】 商品券生成的预发券token,用于领券组件,该值有效期为5分钟

应答示例

200 OK

1{
2  "token" : "ABBpZjCfAAABAAAAAACmTrRvExc7XKea-gTVaBAAAADSn9xnWYv5l5lkN-GZBOXXZ30Cgo-RH7BfsyWbOKgfHH0JZ9R1PgIvZOif8lg8fwPDX8D1j4TcQs0v82F5F5edPhFwgN3sn2aGo2qJGWEWYBPW4MKtKoUC8CJ8ABsk8yH3k5ULDuFRijf9GIYBL3Cn785Hab28FtyRVfsiFFZMfzuXFy_S1x4wQfDQhxgOgM4V4ITiXtd_xvmsFY7zKUFI_RtayZlqkIEd"
3}
4

 

错误码

以下是本接口返回的错误码列表。详细错误码规则,请参考微信支付接口规则-错误码和错误提示

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

请根据错误提示正确传入参数

400

INVALID_REQUEST

HTTP 请求不符合微信支付 APIv3 接口规则

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

403

NO_AUTH

品牌没有此接口权限

品牌没有此接口权限

404

NOT_FOUND

用户券不存在

用户券不存在

404

NOT_FOUND

当前访问对象不存在,请确认ID是否合法且属于当前品牌

请确认ID是否合法且属于当前品牌

400

INVALID_REQUEST

传入的OpenID不合法

请使用参数 AppID 对应的的OpenID

400

PARAM_ERROR

Http header中缺少必填参数Wechatpay-Serial

缺少必要商品券图片,请补充上传后重试

 

元宝AI
反馈
目录
置顶