# 银行卡四元素核验数字证书服务API
在验证用户身份信息(身份证号码、姓名、手机号、银行卡号)通过后签发具有法律效力的第三方可信数字证书
# 一、公共参数
请求地址:http://api.spiderid.cn/api/router/rest,https://api.spiderid.cn/api/router/rest
服务接口名称(即公共参数method的值): realid.bankcard.fourCheck
请求方式:POST或GET
# 二、请求参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
realname | String | 是 | 身份证姓名,中文;参数支持数据加密,详情参照加解密方法说明 |
idcard | String | 是 | 身份证号码,18位;参数支持数据加密,详情参照加解密方法说明 |
phone | String | 是 | 手机号,11位;参数支持数据加密,详情参照加解密方法说明 |
bankcard | String | 是 | 银行卡号,14~21位数字;参数支持数据加密,详情参照加解密方法说明 |
请求示例:
http或https://api.spiderid.cn/api/router/rest?
realname=XXX
&idcard=XXX
&phone=XXX
&bankcard=XXX
&<[公共请求参数]>
# 三、响应参数
data结果信息 | 类型 | 描述 |
---|---|---|
valid | Boolean | true一致,false不一致或其他 |
message | String | 描述 |
incorrect | Integer | 返回码 |
certificate | String | 证书,不一定存在 |
# 四、成功示例
JSON示例
{
"code": 0,
"requestId": "dsd24...",
"data": {
"message": '一致' ,
"incorrect": 100 ,
"valid": true
},
"message": "success"
}
# 五、失败示例
JSON示例
{
"code": 0,
"requestId": "dsd24...",
"data": {
"message": '银行卡异常,暂不支持该卡验证' ,
"incorrect": 103 ,
"valid": false
},
"message": "success"
}
# 六、返回码说明(incorrect)
返回码 | 描述 | 是否收费 |
---|---|---|
100 | 一致 | 是 |
101 | 不一致 | 是 |
102 | 库中无此号 | 是 |
103 | 认证失败,如:银行卡异常,暂不支持该卡验证 | 否 |
# SDK 请求示例
//提供的url
String url = "http://api.spiderid.cn/api/router/rest";
//您的appKey
String appkey = "XXX";
//您的appSecret
String secretKey = "XXX";
//身份证姓名,注意不要有空格
String realname = "XXX";
//身份证号码是18位的,最后一位如果是大写X转换为x,注意不要有空格
String idcard = "XXX";
//手机号,注意不要有空格
String phone = "XXX";
//银行卡号,注意不要有空格
String bankcard = "XXX";
//1.默认客户端
ApiClient apiClient = new DefaultApiClient(url, appkey, secretKey);
//2.调用出错自动重试客户端
//AutoRetryApiClient apiClient = new AutoRetryApiClient(url, appkey, secretKey);
BankcardFourVerifyRequest req = new BankcardFourVerifyRequest();
req.setRealname(realname);
req.setIdcard(idcard);
req.setPhone(phone);
req.setBankcard(bankcard);
// 配置此参数时,会对请求参数进行加密
//req.setEncMethod(EncryptMethod.SM4);
// 配置此参数时,会对请求参数中的realname、idcard、phone、bankcard做加密
// req.setEncMethod(EncryptMethod.SM4);
try {
BankcardFourVerifyResponse response = apiClient.execute(req);
//后续业务处理
} catch (ApiException e) {
e.printStackTrace();
}