微工卡人脸核身
更新时间:2024.12.27通过小程序拉起微工卡授权使用微工卡。
注意
- 微工卡不需要用户确认即可跳转。
# wx.navigateToMiniProgram
支持商户: 【普通服务商】
接口名称: wx.navigateToMiniProgram,详见小程序跳转API (opens new window)文档
微工卡AppID: wxd24d9057cd83d47a
path路径: /pages/card/authen_with_auth
# 接口参数
# Path
- mchid 必填【服务商商户号】 微信服务商商户的商户号,由微信支付生成并下发。
- sub_mchid 必填【子商户号】 微信服务商下特约商户的商户号,由微信支付生成并下发。
- appid 选填【服务商应用ID】 与服务商商户号有绑定关系的AppID。应用ID和子商户应用ID其中必须有一个与当前小程序AppID一致。
- sub_appid 选填【子商户应用ID】 与子商户商户号有绑定关系的AppID。应用ID和子商户应用ID其中必须有一个与当前小程序AppID一致。
- openid 必填【用户标识】 用户在商户对应AppID下的唯一标识。
- token 必填【预下单token】 通过接口生成的预授权token。
- authenticate_number 必填【商户单号】 同核身预下单接口提交的商户系统内部的商家核身单号。
# 核身成功返回结果
授权成功结果通过小程序带参返回上一个小程序的extraData 传递,具体参数如下:
- msg_type 必填【消息类型】 标识本次返回结果的消息类型,此处为人脸核身的消息,为: AUTHENTICATE_WITH_AUTHORIZATION。
- authorize_state 选填【授权状态】 授权状态,首次授权时返回:AUTHORIZATION_SUCCESS:授权成功;INCONSISTENT_REAL_NAME:实名信息不一致。
- authenticate_state 选填【核身状态】 核身状态,核身成功时返回:AUTHENTICATE_SUCCESS:核身成功;VERIFY_FACE_FAILED_TOO_MANY:人脸验证失败次数过多。
- authenticate_time 选填【核身时间】 核身时间(时间戳),核身成功时返回。
示例代码
1wx.navigateToMiniProgram({2 appId: 'wxd24d9057cd83d47a',3 path: '/pages/card/authen_with_auth?mchid=123456&sub_mchid=666666&appid=wx1234567889999&sub_appid=wx1234567000000&openid=o17o88-JPyaisuNH-8RXGwcfb4zE&token=qfq-34ewq257w_1re4re&authenticate_number=abcdefghijklmn',4 success(res) {5 // 打开成功6 }7})
# 获取返回结果示例
通过在 app.js
中调用 App 方法注册小程序实例时,绑定 onShow 函数获取返回结果。
详细的参数含义和使用请参考 App参考文档 (opens new window)。
示例代码
1App({2 onShow(options) { 3 // 场景数值为1038(从其他小程序跳回),跳回的小程序appid为wxd24d9057cd83d47a 4 if (options.scene === 1038 && options.referrerInfo && options.referrerInfo.appId === 'wxd24d9057cd83d47a') { 5 const resp = options.referrerInfo.extraData || {}; 6 if (resp.msg_type === 'AUTHENTICATE_WITH_AUTHORIZATION' && resp.authenticate_state === 'AUTHENTICATE_SUCCESS') { 7 // TODO 处理人脸核身成功返回结果 8 } 9 } 10 },11})
# 错误码
错误码 | 描述 | 解决方案 |
---|---|---|
1001 | mchid不合法 | 传入正确的服务商商户号 |
1002 | AppID不合法 | AppID和sub_appid至少传入一个 |
1003 | 小程序来源不合法 | AppID和sub_appid其中必须有一个与当前小程序AppID一致 |
1004 | OpenID不合法 | 传入正确的OpenID |
1005 | 授权token不合法 | 传入正确的预授权token |
1006 | authenticate_number不合法 | 传入与预下单时一致且未达终态的authenticate_number |
文档是否有帮助