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 商户订单号
transAccNoString128M收款人账号
transAccNameString128M收款人名称
cardBankNameString128M收款人银行名称
cardProNameString128C银行卡收款人开户行省名
cardCityNameString128C银行卡收款人开户行市名
cardAccDeptString128C银行卡收款人开户行机构名
cardCnapString128C银行卡联行号
transIdCardString200C银行卡身份验证信息
transMobileString200C银行卡预留手机号验证信息
transSummaryString256O摘要

格式样例:

{
    "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
returnCodeString100M响应码元素返回交易处理状态码,具体描述请参考附录1
returnMsgString40M响应信息元素交易处理状态中文信息
transContent(循环域)
transOrderIdString20M宝付订单号
transBatchIdString20M宝付批次号
transNoString100M商户订单号
transMoneyString20M付款金额
transAccNoString128M收款人账号
transAccNameString128M收款人名称
cardAccDeptString128O银行卡收款人开户行机构名 (返回格式:省|市|支行)
transSummaryString256R摘要

格式样例:


    "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(循环域)
transBatchIdString20O宝付批次号
transNoString100M商户订单号

格式样例:

{
    "body": {
        "transContent": [{
            "transNo": "SC4011552551586790"
        }, {
            "transNo": "SC40115525515868100"
        }]
    },
    "header": {
        "memberId": "100000178",
        "serviceTp": "T-1001-008-02",
        "terminalId": "100000859",
        "verifyType": "1"
    }
}

5.3返回报文说明:

参数名称 类型 长度 出现要求 参数备注
transHeader
returnCodeString100M响应码元素返回交易处理状态码,具体描述请参考附录1
returnMsgString40M响应信息元素交易处理状态中文信息
transContent(循环域)
transOrderIdString20M宝付订单号
transBatchIdString20M宝付批次号
transNoString100M商户订单号
transMoneyString20M付款金额
transAccNoString128M收款人账号
transAccNameString128M收款人名称
cardAccDeptString128O银行卡收款人开户行机构名 (返回格式:省|市|支行)
transFeeString128M手续费
stateString256M状态
0:转账中;
1:转账成功;
-1:转账失败;
2:转账退款
transSummaryString256R摘要
transRemarkString256R备注
transStartTimeString100M交易申请时间
transEndTimeString100M交易完成时间

格式样例:

"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
transNoString100M打款商户订单号
transMoneyString20M金额

格式样例:

{
    "body": {
        "transContent": {
            "transMoney": "0.65",
            "transNo": "SC40115525515868100"
        }
    },
    "header": {
        "memberId": "100000178",
        "serviceTp": "T-1001-008-03",
        "terminalId": "100000859",
        "verifyType": "1"
    }
}

6.3返回报文说明:

参数名称 类型 长度 出现要求 参数备注
transHeader
returnCodeString100M响应码元素返回交易处理状态码,具体描述请参考附录1
returnMsgString40M响应信息元素交易处理状态中文信息
transContent
transNoString100M打款商户订单号
transMoneyString20M金额
matchStateString20M匹配状态
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(循环域)
transNoString100M打款商户订单号

格式样例:

{
    "body": {
        "transContent": [{
            "transNo": "SC4011552551586790"
        }, {
            "transNo": "SC40115525515868100"
        }]
    },
    "header": {
        "memberId": "100000178",
        "serviceTp": "T-1001-008-04",
        "terminalId": "100000859",
        "verifyType": "1"
    }
}

7.3返回报文说明

参数名称 类型 长度 出现要求 参数备注
transHeader
returnCodeString100M响应码元素返回交易处理状态码,具体描述请参考附录1
returnMsgString40M响应信息元素交易处理状态中文信息
transContent(循环域)
transNoString100M打款商户订单号
transMoneyString20M打款金额
matchStateString20M匹配状态
1:成功
0:处理中
-1:失败
matchSuccessTimeString100M鉴权成功时间

格式样例:

{
    "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  创建时间:2023-07-13 10:47
最后编辑:xiaofeng  更新时间:2024-09-19 18:06