小程序在微信使用场景中越来越广泛,腾讯云人脸核身针对小程序提供嵌入式 SDK,开发人员可以将相应的 SDK 添加到小程序开发工具中,从而直接调用小程序 SDK 中提供的 OCR 识别、活体检测和 1:1人脸比对服务。
基于微信小程序原生体验,人脸核身微信小程序接入渠道提供一闪活体检测模式,要求符合以下行业要求且具备相关资质的客户才能申请,接入前请确认公众号的主体和类目是否符合以下范围,并准备好对应的资质文件,资质审核需要5 - 7个工作日,请预留好上线时间。所需对应的资质文件请参见 微信小程序资质文件列表。
政务:机构或事业单位。
金融:银行、保险、信托、基金、证券/期货、持牌消费金融、非金融机构自营小额贷款、汽车金融/金融租赁。
医疗:公立医疗机构、互联网医院、三级私立医疗机构。
运营商:基础电信运营商、虚拟运营商(含转售移动通信)。
教育:学历教育(学校)、公立学校、私立学校。
出行与交通:网约车(快车/出租车/专车/其他网约车)、航空、公交/地铁、水运、骑车、火车/高铁/动车、长途汽车、租车、高速服务。
生活服务:生活缴费。
旅游:酒店。
商业服务:公证。
社交:直播。
物流:收件/派件、货物运输。

说明
授权指引

接入流程


1. 登录 人脸核身控制台,单击自助接入>创建业务流程,完成微信H5/小程序服务的业务流程创建,获取 RuleID 和小程序 SDK 下载链接。
2. 下载小程序 SDK,并在小程序代码中引入,调用 init 方法进行初始化。
3. 接入方服务端调用实名核身鉴权 DetectAuth 接口,获取到核身流程标识(BizToken)。
4. 客户后端将 BizToken 返回给客户小程序端,然后小程序调用核身方法 startVerify 进入核身流程。
5. 用户完成人脸核身后,会以回调函数形式返回 BizToken ,接入方小程序将 BizToken 传给接入方服务端,接入方服务端即可凭借 BizToken 参数调用获取实名核身结果信息增强版 GetDetectInfoEnhanced 接口去获取本次核身的详细信息,最后将核身结果返回给接入方小程序。
SDK 接入
开发准备
下载 SDK
安装 SDK
将小程序 SDK 文件夹放在小程序根目录下,使用 require 函数引入。
const Verify = require('/verify_mpsdk/main');
调试 SDK
请在微信开发者工具中使用手机“预览”模式进行调试,请勿使用“真机调试”。
卸载 SDK
卸载时删除
verify_mpsdk
文件夹,移除相应 require 代码即可。快速入门
1. 将 verify_mpsdk 文件夹放到小程序项目根目录。
2. 初始化慧眼实名核身 SDK。
在 App.js 的 onLaunch() 中加入相应代码,在 App.json 文件里添加活体验证页面
verify_mpsdk/index/index
。//app.jsApp({onLaunch: function () {// 初始化慧眼实名核身组件const Verify = require('/verify_mpsdk/main');Verify.init();}})// app.json{"pages":["verify_mpsdk/index/index"]}
3. 调用 SDK 功能函数 wx.startVerify()。
在需要实名认证的地方调用 wx.startVerify() 进入实名认证页面,认证完成会触发对应的回调函数。
// 单击某个按钮时,触发该函数gotoVerify: function () {let BizToken = getBizToken();// 该函数为客户自定义函数,去客户后端调用 DetectAuth 接口获取 BizToken// 调用实名核身功能wx.startVerify({data: {token: BizToken // BizToken},success: (res) => { // 验证成功后触发// res 包含验证成功的token, 这里需要加500ms延时,防止iOS下不执行后面的逻辑setTimeout(() => {// 验证成功后,拿到token后的逻辑处理,具体以客户自身逻辑为准}, 500);},fail: (err) => { // 验证失败时触发// err 包含错误码,错误信息,弹窗提示错误setTimeout(() => {wx.showModal({title: "提示",content: err.ErrorMsg,showCancel: false})}, 500);}});}
4. 添加域名服务器白名单。
小程序前端接口请求有域名白名单限制,未添加白名单的域名只能在调试模式下运行。您需要在小程序上线前需要将以下域名添加至白名单:
// request 合法域名、uploadFile 合法域名、downloadFile 合法域名这三种都要添加faceid.qq.com、faceid.qcloud.com// socket合法域名 (v1.0.20及以上版本需要添加以下socket域名)wss://faceid.qq.com// v1.0.17及以上版本身份校验环节如需NFC方式读取证件,需要添加以下socket域名 wss://idcloudread.eidlink.com
基本 API 描述
Verify.init(options)
:初始化插件。options
:Object required 初始化的参数。wx.startVerify(options)
:进入实名认证页面。options
:Object required 初始化的参数。 options.data.token
:String required 客户后端调用 DetectAuth 接口获取的 BizToken。options.success
:Function(res) required 验证成功的回调。res 包含验证成功的 token。options.fail
:Function(err) required 验证失败的回调。err 包含错误码、错误信息。操作步骤
步骤1:创建 RuleId
步骤1:创建 RuleId
RuleId 用于调用配置的业务流程,创建步骤如下:
1. 登录腾讯云人脸核身控制台,在 自助接入 页面,单击创建业务流程。


2. 选择应用场景:微信小程序,并根据需求填写相关信息,填写完成后单击下一步。微信小程序需要上传对应的资质文件,我们会在3 - 5个工作日完成审核。


3. 选择应用类型:选择增强版人脸核身,然后点击下一步。 

4. 进入接入配置,根据您业务的实际场景填写页面标题、业务名称、业务描述信息、业务联系方式后单击下一步。


5. 选择人脸比对库源。人脸核身支持两种方式:跟权威库比对和跟上传照片比对。
其中跟权威库比对的收费价格为:增强版人脸核身(权威库)- 微信的价格。
跟上传照片比对的收费价格为:增强版人脸核身(自传照片)- 微信的价格。OCR 不再单独收费。

6. 配置身份证 OCR 功能,如果不需要则勾选“不需要用户在验证时上传”,然后单击下一步。

7. 配置活体检测方式,勾选后单击下一步。

8. 配置意愿页面,根据您的业务情况勾选:是否增加用户意愿确认流程,然后单击下一步。请注意,增强版人脸核身默认是不增加意愿确认流程的,如配置了增加意愿确认,则将按意愿核身价格计费,详情请参见 价格说明。


9. 配置结果页的文案描述,然后单击下一步。

10. 业务信息填写完成后,确认您的配置信息和计费信息,然后单击确认并提交审核。

11. 流程审核通过后,系统会自动创建流程并分配业务 ID(RuleId)


步骤2:获取 BizToken
步骤2:获取 BizToken
完成 RuleId 创建后,需获取 BizToken,用于调用您配置的人脸核身验证的流程。
调用 实名核身鉴权接口,传入 步骤1 生成的 RuleId,和认证结束后重定向的回调链接地址 RedirectUrl,得到核验流程唯一密钥(BizToken)和用于发起核身流程的 URL。
在线调试
注意:
BizToken 是仅一次核身流程的标识,有效时间为7,200秒;用户完成核身后,开发者可用该标识获取验证结果信息,结果信息仅保留3天。
如果输入参数 RedirectUrl 为空,则用户完成核验后默认跳转腾讯云人脸核身产品介绍页。
步骤3: 回调小程序SDK
步骤4: 查询核验结果信息
用户完成人脸核身后,页面会跳转到 wx.startVerify 的回调地址(该回调地址是业务方自定义的绝对路径地址)之后,您在服务端即可凭借 BizToken 参数调用 获取实名核身结果信息 接口去获取本次核身的详细信息。获取到用户验证过程数据,包括文本信息、识别分数、照片和视频。也可以通过访问 腾讯云人脸核身控制台 查看服务调用情况。
说明: