小程序发券插件文档
产品介绍
产品介绍
接入指引
接入流程
接口规则
开发指引
公共API
小程序发券插件
联系我们
联系我们

小程序发券插件API

最新更新时间:2020.08.17 版本说明


商户在已有小程序场景内,向指定用户发放指定批次的支付券(当前仅支持商家券,暂不支持微信支付代金券)

接口说明

适用对象:微信支付商户

接口规则:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_3

小程序接入插件操作


插件版本号:1.1.5(更新时间 2020/8/17)

版本号将用在小程序配置app.json 文件配置中, "version": "1.1.5"

1、添加插件配置(引入插件包)

在小程序配置app.json 文件中加入如下配置:


// app.json
{
  "plugins": {
    "sendCoupon": {
      "version": "1.1.5",
      "provider": "wxf3f436ba9bd4be7b"

    }
  }
} 

2、在小程序页面中引入发券插件

注意:插件本身不带任何样式,只用于发起请求,支持插入子节点,子节点供商户任意定义样式和内容。

  1)在小程序页面配置文件中加入如下配置,引入send-coupon组件:


// page.json
{
  "usingComponents": {
    "send-coupon": "plugin://sendCoupon/send-coupon"
  }
} 

  2)在小程序页面的WXML模板中加入如下代码,并填入相关字段,字段说明参见小程序发券插件字段说明表

//page.wxml
<send-coupon
bindcustomevent="getcoupon"
send_coupon_params="{{send_coupon_params}}"
sign="{{sign}}"
send_coupon_merchant="{{send_coupon_merchant}}"
>
<!-- 内部为自定义代码,按钮点击部分的代码写在这里 -->
<!-- [[以下为示例代码 -->
<view class="text">领取</view>
<!-- 以上为示例代码 ]] -->
</send-coupon>

3、在小程序页面对应的JS逻辑中,获取插件实例并执行初始化操作


javascript
//page.js
Page({
  // 此函数名称可以自定义,跟bindcustomevent绑定的保持一致
  getcoupon: function(params) {
    // 插件返回信息在params.detail
    console.log('getcoupon', params)
  }
})
                            

如果事件绑定正确,在用户点击领券后,会触发领券事件,得到返回之后会调用getcoupon函数。

返回处理

从回调函数参数detail中,获取参数。


参数名 变量 类型[长度限制] 必填 描述
外层错误码 errcode string
返回整体错误码
错误信息 msg string
返回整体错误信息
+发券结果 send_coupon_result object 发券结果,包含需要发放的每张券的结果信息,是否成功或失败原因
参数名 变量 类型[长度限制] 必填 描述
返回状态码 code string
单张券错误码
返回信息 message string
单张券错误信息
批次号 stock_id string
微信支付券批次id
券code coupon_code string[1,64] 券的唯一标识
发券凭证 out_request_no string[1,128] 发券凭证,可包含英文字母,数字,|,_,*,-等内容,不允许出现其他不合法符号,需在单个批次单个用户下确保唯一性

返回示例


javascript
//获取代码示例
Page({
  data: {
    // ...
  },
  onLoad: function() {
    // ...
  },
  getcoupon: function(params) {
    console.log('getcoupon', params)
    console.log('detail', params.detail)
  }
})

错误码

Detail中errcode返回错误码


错误码 描述 解决方案
OK 调用成功 接口调用成功,具体发券结果(是否发券成功)需查看发券结果(send_coupon_result)中的参数
PARAM_ERROR 参数错误 参数错误,请开发者查看msg中具体的错误信息并进行修复处理
USER_NOT_EXISTS 登录态获取失效 引导用户重试
USER_GET_FAILED 登录态获取失败 报错,提示用户稍后操作
SIGN_ERROR 签名错误 请开发者检查签名正确性
SYSTEMERROR 发券超时 提示报错,提示用户稍后操作
FREQUENCY_LIMITED 发券频率过高 提示报错,引导用户稍后操作。例如“活动太过火爆,请稍后再领取”

发券结果(send_coupon_result)中的错误码


错误码 描述 解决方案
SUCCESS 该张券发券成功 提示用户领取成功/改变前端领券按钮状态
FAILED 该张券发券失败,查看message中的具体错误信息 提示用户领券失败,请开发者查看message中具体的错误信息并进行修复处理
NOTENOUGH 总预算用完 提示用户领券失败,请增加批次预算
DAYLIMIT 用户达到单天限领 提示用户领券失败,如需继续发放,可调整该批次单天发放上限
NATURELIMIT 用户自然人限领 提示用户领券失败,可提示用户检查其所有微信号领券情况,并请商户留意刷单风险
MAXQUOTA 用户领取张数达到上限 提示用户领券失败,该用户领取数量已达上限
DUPREQUEST 已通过该发券凭证给用户发券 提示用户领取成功/改变前端领券按钮状态
NOTRUNNING 批次状态非运营中 提示用户领券失败,并检查批次状态

  1. 如果批次是暂停状态,需重启后方可发放
  2. 如果批次已过期,请更换批次
EXPIRED 该批次已过期 请更换在有效期内的批次,再进行发放


版本说明

关闭
V1.2
2020年08月17日
1. 小程序插件版本号更新为1.1.5
V1.1
2019年11月20日
1. 请求参数 变量名中“-”中划线调整为“_”下划线
V1.0
2019年09月27日
1. 小程序发券插件接口上线

技术咨询

反馈有奖