小程序纯签约

更新时间:2024.11.14

商户可以通过请求此接口唤起小程序委托代扣的签约页面

注意:

  • 用户在微信的页面中完成代扣签约后,微信会同时将签约信息通过异步通知的方式通知给商户后台。如果用户放弃签约或签约失败则不通知。

商户流程介绍:

1.用户从商户小程序发起签约请求 (商户需确认委托代扣权限已开通,模板已审批通过,小程序APPID与商户号已绑定)。

2.商户将签约请求参数按照规则拼接之后,通过小程序跳转,向签约小程序发起签约请求。

3.用户在微信签约小程序选择支付方式完成签约。

4.微信将签约结果返回给商户。

接口说明

适用对象:服务商

请求URL: wx.navigateToMiniProgram(OBJECT)接口

接口兼容: iOS 微信客户端 6.5.9 版本开始支持,Android 客户端即将在 6.5.10 版本开始支持

OBJECT参数说明

参数名

变量

类型[长度限制]

必填

描述

微信签约小程序appid

appId

string[1,32]

固定值 :wxbd687630cd02ce1d
请在小程序配置文件app.json的配置项navigateToMiniProgramAppIdList中增加此appid
示例值:wxbd687630cd02ce1d

场景信息传递给小程序的数据

extraData

object

签约的请求参数,详情见extraData字段详细说明。

场景信息传递给小程序的数据

打开小程序的页面路径

path

string[1,64]

固定值:pages/index/index
示例值:pages/index/index

接口调用成功的回调函数

success

Function

  -

接口调用失败的回调函数

fail

Function

  -

接口调用结束的回调函数

complete

Function

调用成功、失败都会执行

 

示例代码

1wx.navigateToMiniProgram({
2    appId:'wxbd687630cd02ce1d',
3    path:'pages/index/index',
4    extraData:{
5        appid:'wx426a3015555a46be',
6        contract_code:'122',
7        contract_display_account:'张三',
8        mch_id:'1223816102',
9        sub_mch_id:'1900000109',
10        notify_url:'https://www.qq.com/test/papay',
11        plan_id:'106',
12        request_serial:123,
13        timestamp:1414488825,
14        sign:'FF1A406564EE701064450CA2149E2514'
15    },
16success(res) {
17    // 成功跳转到签约小程序 
18},
19fail(res) {
20    // 未成功跳转到签约小程序 
21}
22})

用户签约完成之后,会跳转回商户小程序,可通过onShow(OBJECT)所携带的参数判断判断用户由签约小程序返回商户小程序,OBJECT返回参数请查看小程序开发文档onShow参数说明

referrerInfo.extraData字段说明

参数名

变量

类型[长度限制]

必填

描述

返回码

return_code

string[1,16]

客户端小程序收到的签约结果
SUCCESS:签约成功
FAIL:签约失败
示例值:SUCCESS

错误信息

return_msg

string[1,128]

签约失败的错误信息
示例值:

委托代扣协议id

contract_id

string[1,32]

签约成功后微信返回的委托代扣协议id
示例值:201710180325670965

注意:

如果用户正常点击微信签约页的确定按钮返回商户小程序,那么会返回extraData ; 如果用户点击浏览器左上角的返回,则不返回extraData

示例代码

1App({
2    onShow(res) {
3        if (res.scene === 1038) { // 场景值1038:从被打开的小程序返回
4            const { appId, extraData } = res.referrerInfo
5            if (appId == 'wxbd687630cd02ce1d') { // appId为wxbd687630cd02ce1d:从签约小程序跳转回来
6                if (typeof extraData == 'undefined'){
7                    // TODO
8                    // 客户端小程序不确定签约结果,需要向商户侧后台请求确定签约结果
9                    return;
10                }
11                if(extraData.return_code == 'SUCCESS'){
12                    // TODO
13                    // 客户端小程序签约成功,需要向商户侧后台请求确认签约结果
14                    var contract_id = extraData.contract_id
15                    return;
16                } else {
17                    // TODO
18                    // 签约失败
19                    return;
20                }
21            }
22        }
23    }
24})   
25

 

反馈
咨询
目录
置顶