
通过支付宝或微信扫码进行人脸实人认证。
无论是网站、小程序还是APP客户端,在运营过程中,都会面临国内的互联网监管压力,这个时候对用户进行实名认证是必备功能,ThinkAPI
最新推出的人脸核身接口可以最大程度的简化开发工作,通过优雅SDK一键对接支付宝和微信实人认证,而且比直接使用支付宝或微信官方的认证更具高性价比。
功能介绍
- 通过传递姓名+身份证号码返回认证地址,用户可以生成二维码进行扫码认证,认证结果可以异步回调或主动查询
- 支持支付宝和微信
- 支持网站、H5、App
- 适用于社区、电商、游戏、直播、金融等需要用户实名认证的场景。
认证流程
- 传递用户姓名和身份证号码(这一环节可以通过身份证OCR识别或用户输入的方式获取)
- 调用接口生成支付宝或微信认证地址
- 根据认证地址生成二维码展示在页面或App客户端
- 用户打开支付宝或微信扫码完成实人认证
- 通过异步回调或主动查询接口查询认证接口
接口文档
返回认证链接,用户通过该链接进行刷脸认证
调用地址: https://api.topthink.com/face/detect
请求方式:POST
返回类型:JSON
API 调用: 调用说明
名称 | 必填 | 类型 | 说明 |
---|---|---|---|
idcard | 是 | string | 身份证号(大陆二代身份证) |
name | 是 | string | 姓名 |
callbackUrl | 是 | string | 认证成功后重定向地址,网页端接入可以直接传入网页地址,app接入传入app schema地址 |
notifyUrl | 是 | string | 认证结束后异步通知接口,具体见异步通知说明 |
faceauthMode | 是 | string | ZHIMACREDIT 支付宝认证 WECHAT 微信认证(生成只有微信客户端可以打开的链接) |
$client = new Client("访问令牌")
$result = $client->faceDetect()
->withIdcard("idcard")
->withName("name")
->withCallbackUrl("callbackUrl")
->withNotifyUrl("notifyUrl")
->withFaceauthMode("faceauthMode")
->request();
名称 | 类型 | 说明 |
---|---|---|
orderNumber | string | 认证业务订单号 |
requestId | string | 请求记录ID |
status | string | 初步认证状态 |
originalUrl | string | 获取个人刷脸实名认证长链接。可以生成短网址避免生成二维码数据过大 |
expire | string | 链接失效时间,毫秒值 结果依据实际的刷脸方式为准:支付宝 30分钟 微信 2小时 |
{
"code": 0,
"data": {
"orderNumber": "45d35c36e36dfe9938jh9115c32a387a",
"requestId": "ER20221223113141254502",
"status": true,
"originalUrl": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx1f7125112b74db52&redirect_uri=https%3A%2F%2Fopen.faceid.qq.com%2Fv1%2Fapi%2FgetCode%3FbizRedirect%3Dhttps%253A%252F%252Ffaceid.qq.com%252Fapi%252Fauth%252FgetOpenidAndSaveToken%253Ftoken%253D7FBAF4F7-4F1A-4561-9937-C852E6238523A&response_type=code&scope=snsapi_base&state=&component_appid=wx9802ee81e68d6dee#wechat_redirect",
"expire": "1671773501745"
},
"message": "Success"
}
查询人脸识别结果
不计次调用地址: https://api.topthink.com/face/query
请求方式:POST
返回类型:JSON
API 调用: 调用说明
名称 | 必填 | 类型 | 说明 |
---|---|---|---|
orderNumber | 是 | string | 认证业务订单号 |
$client = new Client("访问令牌")
$result = $client->faceQuery()
->withOrderNumber("orderNumber")
->request();
名称 | 类型 | 说明 |
---|---|---|
name | string | 姓名 |
idcard | string | 身份证 |
status | string | 认证状态(0:认证中 1:认证成功 2:认证不匹配) |
{
"code": "0",
"data": {
"status": 1,
"name": "张三",
"idcard": "331081158456138512"
},
"message": "认证成功"
}