1.文档说明
1.1文档目的
本文档的目的是为宝付验卡产品定义一个标准接口规范,以帮助商户技术人员快速接入宝付验卡服务,并快速掌握其相关功能,便于尽快的投入使用。
1.2阅读对象
商户开发人员、维护人员和管理人员
宝付安全服务产品相关的技术人员
1.3技术支持
在开发或使用接口时,如果您有任何技术上的疑问,请按如下方式寻求帮助,宝付技术支持人员会及时处理,给予您答复:
技术支持热线:021-68819999-8119
技术支持Email:support@baofoo.com
1.4术语与定义
1.4.1符号含义
序号 | 符号缩写 | 符号性质 | 符号说明 |
---|---|---|---|
1 | M | 强制域(Mandatory) 必须填写的属性,否则会被认为格式错误 | |
2 | C | 条件域(Conditional) 某条件成立时必须填写的属性 | |
3 | O | 选用域(Optional) 选填属性 | |
4 | R | 原样返回域(Returned) 必须与先前报文中对应域的值相同的域 |
1.4.2术语含义
- 商户号:宝付提供给商户的唯一编号,是商户在宝付的唯一标识;
- 终端号:商户在与宝付签订某项具体产品功能的合作协议时系统自动分配的会员属性,将用于进行具体交易的必要参数。
- 商户订单号:商户请求宝付时提交的订单号,订单号不可重复。
2.业务接口说明
2.1应用场景
宝付服务类产品是为了满足商户直接进行身份验证、银行卡验证等相关服务类认证,商户开通相关产品后认证的手续费直接从商户在宝付开通的账户中扣除。
2.2业务流程
流程图:
流程说明:
1、商户调用宝付五要素验证接口,发送验证请求;
2、宝付发送验证请求至下家(银行/银联/其它);
3、下家将验证结果通知宝付;
4、宝付同步将验证结果通知商户;
2.3业务接口
2.3.1银行卡验证类交易
商户可通过发起银行卡实名验证类交易对持卡人的身份信息、银行卡信息和银行预留手机号码进行验证。
交易URL
测试环境地址:https://vgw.baofoo.com/biztransfer/bankcard/v2/authWithSign
正式环境地址:https://gw.baofoo.com/biztransfer/bankcard/v2/authWithSign
请求报文
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
02 | 终端号 | terminal_id | M | 宝付提供给商户的终端编号 |
03 | 加密数据类型 | data_type | M | json |
04 | 加密数据 | data_content | M | 具体参数如下加密数据,注意:加密是先将组装的数据(请参照数据模版组装)进行Base64编码转化,然后再使用宝付公钥证书(RSA)加密得到密文。 |
05 | 数字签名 | data_sign | M | 首先将member_id + terminal_id ++data_type + data_content + encrypt_type拼接成字符串,进行Base64 UTF-8编码转化,然后再使用商户私钥证书(RSA)加密得到签名。 |
06 | 加密类型 | encrypt_type | M | 加密数据加密类型。取值:”RSA”. |
- 加密数据
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
1 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
2 | 终端号 | terminal_id | M | 宝付提供给商户的终端编号 |
3 | 商户订单号 | trans_id | M | 订单号唯一不可重复,长度String(50); |
4 | 订单日期 | trade_date | M | 格式:yyyyMMddHHmmss |
5 | 卡号 | acc_no | M | 银行卡号 |
6 | 证件证号码 | id_card | M | 身份证号码 |
7 | 证件类型 | id_type | M | 取值:0;0:身份证(只支持二代身份证)1:军官证;2:护照 |
8 | 持卡人姓名 | id_holder | M | 持卡人姓名 |
9 | 银行预留手机号码 | mobile | M | |
10 | 卡类型 | card_type | M | 101:借记卡,102:信用卡 |
11 | 卡有效期 | valid_date | C | 信用卡认证必传;信用卡有效期,如:0117(月+年) |
12 | 卡安全码 | valid_no | C | 信用卡认证必传;CVN2-信用卡背面3位数字检验码,如:123 |
13 | 验证类型 | verify_element | M | 取值:12,123,1234,1234-1,1-1。 12:两要素(银行卡号 + 姓名); 123:三要素(银行卡号 + 姓名 + 身份证号); 1234:四要素(银行卡号 + 姓名 + 身份证号 + 银行卡预留手机号); 1234-1:五要素(银行卡号 + 姓名 + 身份证号 + 银行卡预留手机号+账户类型) 1-1:两要素(银行卡号 + 账户类型) |
14 | 行业类型 | industry_type | O | 行业。取值:默认A1 |
15 | 费用承担方 | fee_member_id | O | |
16 | 账户类型 | acc_type | C | 01 一类户,五要素、两要素(银行卡号 + 账户类型)验证时必上传 |
加密数据模板:
➤JSON
{
"member_id": "100026286",
"terminal_id": "200001418",
"trans_id": "XXXXXXXXXXXX",
"trade_date": "20190123135756",
"acc_no": "6222****001",
"id_card": "3203****9142",
"id_type": "0",
"id_holder": "钱*宝",
"card_type": "101",
"mobile": "186****765",
"valid_date": "",
"valid_no": "",
"verify_element": "1234-1",
"industry_type": "A1",
"acc_type": "01"
}
应答报文(宝付返回报文)
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 响应状态 | success | M | true/false,此字段是通信及请求权限标识,非交易标识,交易是否成功需要查看data来判断 |
02 | 错误码 | errorCode | O | success为false为接口响应错误代码,详见数据字典-错误码 |
03 | 错误信息 | errorMsg | O | 错误描述 |
04 | 加密方式 | encrypt_type | M | 加密数据加密类型。取值:”RSA”. |
05 | 加密数据类型 | data_type | M | json |
06 | 加密业务成功数据 | data | M | success为true时有值,具体参数如下加密业务成功数据。注意:宝付首先将业务成功数据进行Base64 UTF-8编码转化,然后再使用商户公钥证书(RSA)加密得到密文。当success为false时,该字段为null |
07 | 数字签名 | data_sign | M | 宝付首先将success + data + encrypt_type + data_type拼接成字符串,进行Base64 UTF-8编码转化,然后再使用宝付私钥证书(RSA)加密得到签名。注意:商户拿到响应报文后,首先使用宝付公钥验签,再使用商户私钥解密。当success为false时,该字段为null |
加密业务成功数据 解密后参数(data)
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 认证结果码 | code | M | 0:亲,认证成功(收费);1:亲,认证信息不一致(收费);2: 亲,账户类型不一致(收费,该取值仅在verify_element=1234-1或1-1时出现);3:亲,认证失败(不收费);9:亲,其他异常(不收费) |
02 | 认证结果描述 | desc | M | 宝付提供给商户的唯一编号 |
03 | 商户订单号 | trans_id | R | 商户请求时上送的订单号 |
04 | 交易流水号 | trade_no | M | 宝付交易响应流水号 |
05 | 收费标示 | fee | R | Y:收费;N:不收费 |
06 | 机构响应码 | org_code | O | 详见文档《附录1》机构响应码 |
07 | 机构响应描述 | org_desc | O | 详见文档《附录1》机构响应码 |
08 | 银行编码 | bank_id | O | 详见文档《附录2》银行编码 |
09 | 银行简称 | bank_description | R | 详见文档《附录2》银行编码 |
10 | 账户类型 | acc_type | O | acc_type=01: 一类户;acc_type=04:账户类型未知。注:仅在code=0或2时返回账户类型 |
响应成功示例
{
"success": true,
"data": "wef0weuf283h2bvkdv0u-09j1ph1f7twf9y1o3flao",
"errorCode": null,
"errorMsg": null,
"encrypt_type": "RSA",
"data_type": "json",
"data_sign":"wef0weuf283h2bvkdv0u-09j1ph1f7twf9y1o3flao"
}
加密业务成功数据 解密后示例
{
"code":"0",
"desc":"亲,认证成功",
"trans_id":"14744392884941234",
"trade_no":"201611071910030000064673",
"fee":"Y",
"org_code":"null",
"org_desc":"null",
"bank_id":"",
"bank_description":"",
"acc_type":"01"
}
响应异常示例
{
"success": false,
"data":null,
"errorCode":"S1000",
"errorMsg":"请求参数有误",
"encrypt_type": "RSA",
"data_type": "json",
"data_sign":null
}
附录:
1. 机构响应码
错误码 | 含义 |
---|---|
0001 | 持卡人身份信息有误 |
0002 | 持卡人账号信息和身份信息不匹配 |
0003 | 持卡人账户信息有误 |
0004 | 该卡已被注销 |
0005 | 该卡已冻结,请联系发卡行 |
0006 | 该卡已挂失 |
0007 | 该卡有风险 |
0008 | 交易繁忙,请稍后再试 |
0009 | 卡号无效,请确认后输入 |
0010 | 卡状态异常,请联系发卡行 |
0012 | 请联系银行核实您的卡状态是否正常! |
0014 | 核查不一致(身份证号有误) |
0015 | 核查不一致(手机号有误) |
0016 | 核查不一致(姓名有误) |
0018 | 手机号码为空,请重新输入 |
0019 | 系统异常,请稍后再试 |
0020 | 银行卡已过有效期 |
0021 | 银行卡异常 |
0022 | 该卡验证错误次数超限,请隔日再试 |
0023 | 暂不支持该银行卡 |
0024 | 银行卡未开通银联无卡支付 |
0025 | 当前银行卡不支持该业务 |
0026 | 交易失败,请联系发卡行 |
0027 | 账户类型不一致,该账户类型是非1类户 |
0028 | 该卡长期未使用,暂停非柜面交易 |
0029 | 持卡人身份证已过期 |
0030 | 卡未激活,请激活后重试 |
0031 | 密码输入次数超限,请联系发卡行 |
0032 | 受限制的卡,请联系发卡行 |
0033 | 未成年或超过岁,不支持认证 |
2. errorcode响应码
错误码 | 含义 |
---|---|
S0001 | 系统繁忙,请稍后再试 |
S1000 | 请求参数有误(具体以响应参数错误为准) |
S1001 | 请求订单不存在或已过期,请重新发起交易 |
S1002 | 请求订单已受理,请稍后查询交易结果 |
S1003 | 订单不能重复提交 |
S1004 | 请求订单创建失败 |
S1005 | 请求报文解析失败 |
S1006 | 请求报文加密数据处理失败 |
S1007 | 请求明文数据与密文数据不一致 |
S1016 | 暂不支持该银行卡校验 |
S1018 | 不识别的号码段 |
S2000 | 商户不存在 |
S2001 | 商户状态异常 |
S2002 | 商户终端信息不存在 |
S2003 | 商户终端信息状态异常 |
S2004 | 商户暂不支持该产品 |
S2005 | 商户暂不支持该功能 |
S2006 | 商户余额不足 |
S1017 | 签名验证失败 |
3.银行编码列表
序号 | 银行代码 | 银行名称 |
---|---|---|
1 | ICBC | 工商银行 |
2 | ABC | 农业银行 |
3 | CCB | 建设银行 |
4 | BOC | 中国银行 |
5 | BCOM | 交通银行 |
6 | CIB | 兴业银行 |
7 | CITIC | 中信银行 |
8 | CEB | 光大银行 |
9 | PAB | 平安银行 |
10 | PSBC | 邮储银行 |
11 | SHB | 上海银行 |
12 | SPDB | 浦发银行 |
13 | CMB | 招商银行 |
14 | CMBC | 民生银行 |
15 | GDB | 广发银行 |
16 | HXB | 华夏银行 |
17 | BOB | 北京银行 |
4. 银行卡卡bin类型
卡类型 | 名称 |
---|---|
1 | 借记卡 |
2 | 贷记卡 |
3 | 预付卡 |
4 | 准贷记 |