银行卡OCR识别-图片上传
1.修订记录
修订 | 日期 | 说明 | 作者 |
---|---|---|---|
V0.1 | 2019/10/11 | 新接口参数定义 | 宁华雄 |
V0.2 | 2021/12/27 | 支持国密 | 王晶 |
2.接口说明
(1)场景说明
1、图片上传流程
(2)接口说明
1、 图片上传流程&接口
3.请求地址
环境 | HTTPS请求地址 |
---|---|
正式环境 | https://register.ysepay.com:2443/register_gateway/gateway.do |
4.请求参数说明
4.1 公共请求参数
参数 | 类型(字节长度) | 必填 | 参数说明 |
---|---|---|---|
method | String(1,128) | Y | 接口名称,获取上传口令。固定值:ysepay.merchant.register.token.get |
partner_id | String(1,20) | Y | 在银盛支付开设的服务商商户号,请联系客户经理提供 |
timestamp | String(1,19) | Y | 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss",示例值:2014-07-24 03:07:50 |
charset | String(1,10) | Y | 商户网站使用的编码格式,如utf-8、gbk、gb2312等。示例值:GBK |
sign_type | String(1,10) | Y | 签名类型,RSAS/SM |
sign | String(1,256) | Y | 签名字符串,再用Base64编码 |
notify_url | String(190) | Y | 银盛支付服务器主动通知商户网站里指定的页面http路径。示例值:http://api.test.ysepay.net/atinterface/receive_return.htm |
version | String(1,3) | Y | 接口版本,示例值:3.0 |
biz_content | String | Y | 业务请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递 |
4.2 业务请求参数
参数名biz_content,值为一个json格式对象,下面列表描述json对象的值
参数 | 类型(字节长度) | 参数说明 | 是否可为空 |
---|---|---|---|
该请求为空参数(但是biz_content依然要求按照json格式填写),每次请求都会获取到一个 TOKEN(口令)字符串,您需要在有效时间内,凭此TOKEN上传图片文件至银盛文件服务器中以备使用(图片上传具体查看2.2)。TOKEN有效时间为120s,一个TOKEN只允许上传一张需要认证的图片,若需重新上传同类型图片或不同类型图片,请重新获取token,新上传的图片会覆盖前一张图片
图片上传地址:
生产环境:
https://uploadApi.ysepay.com:2443/yspay-upload-service?method=upload
测试环境:
https://cloudbilltest.ysepay.com:2080/yspay-upload-service?method=upload
图片上传完毕之后请发起身份证OCR请求,进行识别。OCR识别接口中的token属性是您上传文件时使用的TOKEN值,您需要记住。
5.响应参数说明
银盛支付对商户的请求数据处理完成后,会将处理的结果数据同步回执给商户。
请注意:银盛后期对返回参数保留扩展的权利,扩展方式为新增参数但不会删除参数,请商户在解析银盛返回参数时要支持银盛可能扩展参数这种情况。
5.1 公共响应参数
参数 | 类型(字节长度) | 必填 | 参数说明 |
---|---|---|---|
sign | String | Y | 签名字符串,Base64编码 |
ysepay_merchant_register_token_get_response | String | Y | 业务响应参数的集合,最大长度不限 |
5.2 业务响应参数
参数 | 类型(字节长度) | 必填 | 参数说明 |
---|---|---|---|
code | String | Y | 响应代码 |
msg | String | Y | 响应代码描述 |
token | String(32) | Y | token |
token_status | String(20) | Y | 获取TOKEN返回的状态,指示业务进度,TOKEN_GET_SUCCESS获取成功;TOKEN_GET_NULL获取失败 |
6.图片上传接口服务
6.1 图片上传注意事项
为确保图片识别的成功率,请按照以下注意事项检查图片后再上传:
1.基本要求:图像文字清晰,人眼可辨别;对比度、亮度适中;尽量不要有背景,即证件充满图片,如果不能保证没有背景,请选择纯黑背景而且背景不宜过多。
2.对扫描图像的要求:扫描时选择分辨率300dpi,不能低于150 dpi,分辨率最好不要过高,图片大小支持2M内。
3.对拍摄图像的要求:拍摄时注意光照的影响,尽量避免反光和黑影,尤其是证件有薄膜覆盖的时候;拍摄时做好聚焦,以免图像模糊不清;拍摄时将证件放正;尽量不要使拍摄角度倾斜过大,以免造成图像变形;拍摄时请不要选择过高的分辨率拍摄,一方面造成图片过大,不利于传输,一方面分辨率过高也会影响识别率。拍摄时可以选择1280*960分辨率拍摄,低一些的分辨率也可以选择,但是要确保图像文字清晰
6.2 图片上传参数说明
图片上传地址:
生产环境:
https://uploadApi.ysepay.com:2443/yspay-upload-service?method=upload
测试环境:
https://cloudbilltest.ysepay.com:2080/yspay-upload-service?method=upload
请求参数是商户在与银盛支付进行数据交互时,提供给银盛支付的请求数据,以便银盛支付根据这些数据进一步处理。
参数 | 类型(字节长度) | 必填 | 参数说明 |
---|---|---|---|
picType | String(1,2) | Y | 图片类型,示例值:00 或者 30 |
picFile | Y | 通过body的mutipartfile类型上传 | |
token | String(1,50) | Y | token值 |
superUsercode | String(1,20) | Y | 商户在银盛支付平台开设的用户号[商户号] |
6.3 响应参数说明
银盛支付对商户的请求数据处理完成后,会将处理的结果数据同步回执给商户。
请注意:银盛后期会对返回参数保留扩展的权力,扩展方式为新增参数但不会删除参数,请商户在解析银盛返回参数时要支持银盛可能扩展参数这种情况。
参数 | 类型(字节长度) | 必填 | 参数说明 |
---|---|---|---|
isSuccess | boolean | Y | 是否成功 true:成功;false:失败 |
errorCode | String(1,4) | N | 错误码 失败时不可空 |
errorMsg | String(1,200) | N | 错误信息 失败时不可空 |
token | String(1,50) | N | token值成功时不可空 |
7.样例
无
8.附录
8.1 图片文件的类型
错误码 | 错误描述 |
---|---|
00 | 公民身份证人像面 |
30 | 公民身份证国徽面 |
35 | 银行卡正面照 |
36 | 银行卡反面照 |