1.文档说明
1.1文档目的
本文档的目的是为宝付小额鉴权定义一个接口规范,以帮助商户技术人员快速接入宝付小额鉴权接口,并快速掌握接口中的相关功能,便于尽快的投入使用。
1.2阅读对象
- 开发人员、维护人员和管理人员
- 宝付相关的技术人员
1.3技术支持
在开发或使用宝付小额鉴权接口时,如果您有任何技术上的疑问,请按如下方式寻求帮助,宝付技术支持人员会及时处理,给予您答复:
技术支持热线:021-68819999-8005
技术支持Email:support@baofoo.com
技术支持QQ:800066689
2.接口须知
2.1 术语定义
符号 | 符号性质 | 符号说明 |
---|---|---|
M | 强制域(Mandatory) | 必须填写的域 |
C | 条件域(Conditional) | 某条件成立时必须填写的域 |
O | 选用域(Optional) | 选填属性(可选预) |
R | 原样返回域(Returned) | 必须与先前报文中对应域的值相同的域 |
2.2 接口调用说明
1.宝付小额鉴权是商户发起打款指令时,宝付随机打款[0.01-0.99]金额到商户用户,待打款成功后,商户用户回填金额等信息进行验证。
2.密文数据采用JSON格式,具体数据结构参考每个接口请求
3.请求地址、加密方式见统一入口文档
3.打款接口
3.1接口说明:
1.报文编号:T-1001-008-01
2.付款类型要与账号和名称对应,同一批次的付款类型必须一致,例如:付款类型为银行时,收款人账号必须是银行卡号,收款人名称必须是银行卡收款人姓名。
3.当付款类型是银行时必须填写银行信息
4.银行信息可选择填写联行号或省,市,支行名称两者其中一个
3.2请求报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transContent(循环域) | ||||
transNo | String | 100 | M | 商户订单号 |
transAccNo | String | 128 | M | 收款人账号 |
transAccName | String | 128 | M | 收款人名称 |
cardBankName | String | 128 | M | 收款人银行名称 |
cardProName | String | 128 | C | 银行卡收款人开户行省名 |
cardCityName | String | 128 | C | 银行卡收款人开户行市名 |
cardAccDept | String | 128 | C | 银行卡收款人开户行机构名 |
cardCnap | String | 128 | C | 银行卡联行号 |
transIdCard | String | 200 | C | 银行卡身份验证信息 |
transMobile | String | 200 | C | 银行卡预留手机号验证信息 |
transSummary | String | 256 | O | 摘要 |
格式样例:
{
"body": {
"transContent": [{
"cardAccDept": "浦东支行",
"cardBankName": "中国银行",
"cardCityName": "上海市",
"cardProName": "上海市",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transNo": "SC4011552551586790",
"transSummary": "备注1"
}, {
"cardAccDept": "浦东支行",
"cardBankName": "中国银行",
"cardCityName": "上海市",
"cardProName": "上海市",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transNo": "SC40115525515868100",
"transSummary": "备注1"
}]
},
"header": {
"memberId": "100000178",
"serviceTp": "T-1001-008-01",
"terminalId": "100000859",
"verifyType": "1"
}
}
3.3返回报文说明
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transHeader | ||||
returnCode | String | 100 | M | 响应码元素返回交易处理状态码,具体描述请参考附录1 |
returnMsg | String | 40 | M | 响应信息元素交易处理状态中文信息 |
transContent(循环域) | ||||
transOrderId | String | 20 | M | 宝付订单号 |
transBatchId | String | 20 | M | 宝付批次号 |
transNo | String | 100 | M | 商户订单号 |
transMoney | String | 20 | M | 付款金额 |
transAccNo | String | 128 | M | 收款人账号 |
transAccName | String | 128 | M | 收款人名称 |
cardAccDept | String | 128 | O | 银行卡收款人开户行机构名 (返回格式:省|市|支行) |
transSummary | String | 256 | R | 摘要 |
格式样例:
"header": {
"sysRespDesc": "",
"sysRespCode": "S_0000",
"terminalId": "100000859",
"serviceTp": "T-1001-008-01",
"memberId": "100000178"
},
"body": {
"transContent": [{
"cardAccDept": "上海市|上海市|中国银行浦东支行",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transBatchId": "22395956",
"transMoney": "0.75",
"transNo": "SC4011552551586790",
"transOrderId": "125480802",
"transSummary": "备注1"
}, {
"cardAccDept": "上海市|上海市|中国银行浦东支行",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transBatchId": "22395956",
"transMoney": "0.65",
"transNo": "SC40115525515868100",
"transOrderId": "125480803",
"transSummary": "备注1"
}],
"transHeader": {
"returnCode": "0000",
"returnMsg": "代付请求交易成功"
}
}
}
}
4.打款结果通知说明
4.1接口说明:
1.付款订单最终交易状态以代付state为准
2.宝付返回格式为JSON
3.商户接收到通知后务必在接收通知页面上返回大写OK
4.宝付系统在未确认商户接收通知成功后将会通过重发机制通知商户(重发次数10次,请以第一次收到的付款成功的消息为准,避免进行多次确认)通知发给商户。
5.该接口除了订单成功、失败结果通知外,退款的结果也一并通知。
6.商户若需要该回调接口需联系技术支持人员配置回调地址等相关信息。
7.通知接口Demo http://URL?member_id=1&terminal_id=2&data_type=JSON&data_content=密文
4.2返回报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
---|---|---|---|---|
transOrderId | String | 20 | M | 宝付订单号 |
transBatchId | String | 20 | M | 宝付批次号 |
transNo | String | 100 | M | 商户订单号 |
transMoney | String | 20 | M | 付款金额 |
transAccName | String | 128 | M | 收款人名称 |
transAccNo | String | 128 | M | 收款人账号 |
transFee | String | 128 | M | 手续费 |
state | String | 256 | M | 状态 0:转账中; 1:转账成功; -1:转账失败; 2:转账退款 |
transRemark | String | 256 | R | 备注 |
transStartTime | String | 100 | M | 交易申请时间 |
transEndTime | String | 100 | M | 交易完成时间 |
data_content格式样例:
{
"transOrderId": "125480803",
"transBatchId": "22395956",
"transNo": "SC40115525515868100",
"transMoney": "0.65",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transFee": "0.01",
"state": "1",
"transRemark": "转账成功",
"transStartTime": "2014-12-10 03:04:55",
"transEndTime": "2014-12-10 03:07:55"
}
注意:
接受请求之后,请必须按照要求返回”OK”。
5.打款查询接口
5.1接口说明
1.报文编号:T-1001-008-02
2.接口用于查询打款订单信息
5.2请求报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transContent(循环域) | ||||
transBatchId | String | 20 | O | 宝付批次号 |
transNo | String | 100 | M | 商户订单号 |
格式样例:
{
"body": {
"transContent": [{
"transNo": "SC4011552551586790"
}, {
"transNo": "SC40115525515868100"
}]
},
"header": {
"memberId": "100000178",
"serviceTp": "T-1001-008-02",
"terminalId": "100000859",
"verifyType": "1"
}
}
5.3返回报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transHeader | ||||
returnCode | String | 100 | M | 响应码元素返回交易处理状态码,具体描述请参考附录1 |
returnMsg | String | 40 | M | 响应信息元素交易处理状态中文信息 |
transContent(循环域) | ||||
transOrderId | String | 20 | M | 宝付订单号 |
transBatchId | String | 20 | M | 宝付批次号 |
transNo | String | 100 | M | 商户订单号 |
transMoney | String | 20 | M | 付款金额 |
transAccNo | String | 128 | M | 收款人账号 |
transAccName | String | 128 | M | 收款人名称 |
cardAccDept | String | 128 | O | 银行卡收款人开户行机构名 (返回格式:省|市|支行) |
transFee | String | 128 | M | 手续费 |
state | String | 256 | M | 状态 0:转账中; 1:转账成功; -1:转账失败; 2:转账退款 |
transSummary | String | 256 | R | 摘要 |
transRemark | String | 256 | R | 备注 |
transStartTime | String | 100 | M | 交易申请时间 |
transEndTime | String | 100 | M | 交易完成时间 |
格式样例:
"header": {
"sysRespDesc": "",
"sysRespCode": "S_0000",
"terminalId": "100000859",
"serviceTp": "T-1001-008-02",
"memberId": "100000178"
}, "body": {
"transContent": [{
"cardAccDept": "上海市|上海市|中国银行浦东支行",
"state": "1",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transBatchId": "22395956",
"transEndTime": "2019-03-14 16:19:58",
"transFee": "0.10",
"transMoney": "0.75",
"transNo": "SC4011552551586790",
"transOrderId": "125480802",
"transRemark": "",
"transStartTime": "2019-03-14 16:19:50",
"transSummary": ""
}, {
"cardAccDept": "上海市|上海市|中国银行浦东支行",
"state": "1",
"transAccName": "测试",
"transAccNo": "6217850800018933125",
"transBatchId": "22395956",
"transEndTime": "2019-03-14 16:30:16",
"transFee": "0.10",
"transMoney": "0.65",
"transNo": "SC40115525515868100",
"transOrderId": "125480803",
"transRemark": "",
"transStartTime": "2019-03-14 16:19:50",
"transSummary": ""
}],
"transHeader": {
"returnCode": "0000",
"returnMsg": "代付请求交易成功"
}
}
}
6.验证接口
6.1接口说明
1.报文编号:T-1001-008-03
2.接口用于回填金额等信息
6.2请求报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transContent | ||||
transNo | String | 100 | M | 打款商户订单号 |
transMoney | String | 20 | M | 金额 |
格式样例:
{
"body": {
"transContent": {
"transMoney": "0.65",
"transNo": "SC40115525515868100"
}
},
"header": {
"memberId": "100000178",
"serviceTp": "T-1001-008-03",
"terminalId": "100000859",
"verifyType": "1"
}
}
6.3返回报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transHeader | ||||
returnCode | String | 100 | M | 响应码元素返回交易处理状态码,具体描述请参考附录1 |
returnMsg | String | 40 | M | 响应信息元素交易处理状态中文信息 |
transContent | ||||
transNo | String | 100 | M | 打款商户订单号 |
transMoney | String | 20 | M | 金额 |
matchState | String | 20 | M | 匹配状态 1:成功 0:处理中 -1:失败 |
格式样例:
{
"header": {
"sysRespDesc": "",
"sysRespCode": "S_0000",
"terminalId": "100000859",
"serviceTp": "T-1001-008-03",
"memberId": "100000178"
},
"body": {
"transContent": {
"matchState": "1",
"transMoney": "0.65",
"transNo": "SC40115525515868100"
},
"transHeader": {
"returnCode": "0000",
"returnMsg": "代付请求交易成功"
}
}
}
7.验证查询接口
7.1接口说明
1.报文编号:T-1001-008-04
2.接口用于查询验证结果
7.2请求报文说明:
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transContent(循环域) | ||||
transNo | String | 100 | M | 打款商户订单号 |
格式样例:
{
"body": {
"transContent": [{
"transNo": "SC4011552551586790"
}, {
"transNo": "SC40115525515868100"
}]
},
"header": {
"memberId": "100000178",
"serviceTp": "T-1001-008-04",
"terminalId": "100000859",
"verifyType": "1"
}
}
7.3返回报文说明
参数名称 | 类型 | 长度 | 出现要求 | 参数备注 |
transHeader | ||||
returnCode | String | 100 | M | 响应码元素返回交易处理状态码,具体描述请参考附录1 |
returnMsg | String | 40 | M | 响应信息元素交易处理状态中文信息 |
transContent(循环域) | ||||
transNo | String | 100 | M | 打款商户订单号 |
transMoney | String | 20 | M | 打款金额 |
matchState | String | 20 | M | 匹配状态 1:成功 0:处理中 -1:失败 |
matchSuccessTime | String | 100 | M | 鉴权成功时间 |
格式样例:
{
"header": {
"sysRespDesc": "",
"sysRespCode": "S_0000",
"terminalId": "100000859",
"serviceTp": "T-1001-008-04",
"memberId": "100000178"
},
"body": {
"transContent": [{
"matchState": "1",
"matchSuccessTime": "2019-03-14 17:09:31",
"transMoney": "0.75",
"transNo": "SC4011552551586790"
}, {
"matchState": "1",
"matchSuccessTime": "2019-03-14 16:55:42",
"transMoney": "0.65",
"transNo": "SC40115525515868100"
}],
"transHeader": {
"returnCode": "0000",
"returnMsg": "代付请求交易成功"
}
}
}
8.注意事项
初次使用请仔细核对,信息是否有误,出现错误请及时联系宝付技术人员。
附录1: 《宝付代付介绍手册》响应码信息
响应码 | 打款状态 | 错误信息 |
---|---|---|
0000 | 未知 | 代付请求交易成功(交易已受理) |
0003 | 失败 | 商户代付报文格式不正确,{} |
0004 | 失败 | 交易请求记录条数超过上限! |
0201 | 失败 | 商户未开通代付业务 |
0205 | 失败 | 商户代付收款方账号{}被列入黑名单,代付失败 |
0206 | 失败 | 商户代付交易受限{} |
0300 | 未知 | 代付交易未明,请发起该笔订单查询 |
0301 | 失败 | 代付交易失败 |
0401 | 未知,请根据对账文件 | 代付交易查证信息不存在 |
0999 | 未知 | 代付主机系统繁忙 |
响应码 | 匹配状态 | 错误信息 |
---|---|---|
0000 | 未知 | 代付请求交易成功(以最终返回状态为准) |
0003 | 失败 | 商户代付报文格式不正确,{} |
0801 | 失败 | 打款交易不存在 |
0802 | 失败 | 打款交易处理中 |
0803 | 失败 | 回填信息已匹配,请勿重复提交 |
0804 | 失败 | 金额不匹配,请核对信息 |
0805 | 失败 | 匹配次数超限 |
0806 | 失败 | 匹配已超时 |
0999 | 未知 | 主机系统繁忙 |
最后编辑:xiaofeng 更新时间:2025-01-09 17:41