注意事项(重要):
代付API在请求出现异常和(查询/交易)接口文档中标识出状态为未知的订单不得直接判断为失败,必须注意以下几点:
1、代付交易付款状态为未知时(接口文档附录中已使用红字描述),需使用查询接口查询订单最终状态,只有查询到state状态时才能判定订单状态。其他情况可以继断查询或以最终对账文件中状态为准。
2、return_code(查询/交易)不是订单状态,值为0000只表示受理成功;订单状态以查询接口中state字段为订单状态。
3、文档中(查询/交易)付款状态为未知状态,禁止此订单重发代付交易(除订单查询state有明确的失败的状态以外)。
包括但不限于以上事项,详见代付常见问题


1. 文档说明

1.1 文档目的

本文档的目的是为宝付代付定义一个接口规范,以帮助商户技术人员快速接入宝付代付API接口,并快速掌握代付API接口中的相关功能,便于尽快的投入使用。

1.2 阅读对象

  • 商户开发人员、维护人员和管理人员
  • 宝付代付相关的技术人员

1.3 技术支持

在开发或使用宝付代付API接口时,如果您有任何技术上的疑问,请按如下方式寻求帮助,宝付技术支持人员会及时处理,给予您答复:
技术支持热线:021-68819999-8005
技术支持Email:support@baofoo.com
技术支持QQ:800066689

2. 接口须知

2.1 术语定义

符号 符号性质 符号说明
M 强制域(Mandatory) 必须填写的域
C 条件域(Conditional) 某条件成立时必须填写的域
O 选用域(Optional) 选填属性(可选预)
R 原样返回域(Returned) 必须与先前报文中对应域的值相同的域
  • 代付业务:指商户从自身单位结算账户向持卡人指定银行卡账户进行款项划付的业务。
  • 签约:与宝付签订商业合作协议,使用宝付提供的互联网支付、wap支付、代付等金融服务功能。
  • 商户:与宝付签订合约并使用宝付提供的互联网产品的商户或者个人。
  • 终端:商户在与宝付签订某项具体互联网金融功能合作协议自动分配的会员属性,终端将用于进行具体的金融交易必要参数。
  • 订单:是指商户在使用宝付金融功能时产生的交易记录,商户和宝付之间采用订单作为结算的唯一依据。
  • 密钥:是指宝付分配给商户用于进行安全通讯验证的随机字符串或者是数字证书。

2.2 接口准备

仔细阅读代付API接口相关的文档
请先进行测试环境联调(测试环境信息查看文档“代付API测试环境信息”);
生产环境的商户号和终端号请登录商户前台自行查看,如若不知商户号和终端号请联系技术支持人员;
生产环境的公私钥证书需自行生成并上传生成的公钥,下载宝付公钥;

2.3 代付申请流程

代付交易处理流程

  • 1.商户系统发送代付请求调用接口BF0040001(用户身份信息+银行卡号)提交代付数据至宝付代付系统(服务器方式);
  • 2.宝付代付系统同步通知商户系统受理响应结果(服务器方式);
  • 3.宝付代付系统将持卡人身份和银行卡信息提交给银行,请求银行处理订单;
  • 4.宝付异步查询银行订单处理结果;
  • 5.商户调用接口BF0040002查询订单状态(服务器方式);

账户间转账处理流程

  • 1.商户系统创建转账订单调用接口BF0040007提交转账请求(服务器方式);
  • 2.宝付代付系统同步通知商户订单处理结果(服务器方式);
  • 3.若订单状态不明确,商户调用接口BF0040002查询订单状态(服务器方式);

3.代付接口

所有报文域以key/value的表单方式通过HTTP Post到宝付代付平台,交易结果同步响应给商户。

支付方式说明

支付方式说明:对私可不填写省、市、支行;对公必须填写。

接口开发说明

因不同商户开通产品不同,建议开发接口如下:

  • 付款到银行(订单无需拆分):BF0040001、BF0040002、BF0040003;
  • 付款到银行(订单需拆分):BF0040004、BF0040002、BF0040003;
  • 账户间转账:BF0040007、BF0040002;

3.1 接口公共参数定义

参数名称 参数含义 出现要求 参数备注
member_id 商户号 M 商户签约后宝付提供给商户的唯一编号,例:member_id=100000178
terminal_id 终端号 M 商户签约后宝付提供给商户,交易时必要的参数,例:terminal_id=100000859
data_type 数据类型 M data_type=xml或json;data_content依据data_type类型定义
data_content 请求报文(加密串) M
version 版本号 M 4.0.2

3.2 代付交易接口(BF0040001)

3.2.1 交易URL

3.2.2 功能说明

  • 该接口的主要功能为代付交易。商户根据定义的报文格式组装报文发送给宝付,宝付同步处理完后返回所示格式的报文给商户。
  • 如果宝付收单成功,将会在返回给商户的报文中的return_code字段返回一个0000,该交易查证需要调用代付订单查证(BF0040002)交易。
  • 如果宝付收单失败,将会在返回给商户的报文中的return_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。

限制条件:

代付交易一次处理的请求条数(trans_reqData)有限制,不超过5个,超过5个:交易请求记录条数超过上限!
请求报文体中的trans_no要求全局唯一,如果发现有重复则报错;
注意:测试环境为模拟各种生产上出现的订单问题,交易结果为随机

3.2.3 加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域,如:张三
to_acc_no收款人银行帐号M循环域,如:6222601234567890
to_bank_name收款人银行名称M循环域,如:中国工商银行
to_pro_name收款人开户行省名C循环域,如:上海市【见支付方式说明】
trans_cnap联行号C循环域,如: 11375211076
to_city_name收款人开户行市名C循环域,如:上海市【见支付方式说明】
to_acc_dept收款人开户行机构名C循环域,如:世纪大道支行【见支付方式说明】
trans_card_id银行卡身份证件号码C循环域,出现要求遵循双方约定,注:目前身份证件只支持身份证,填写身份证号码即可;
trans_mobile银行卡预留手机号C循环域,出现要求遵循双方约定,注:建议商户填写预留手机号码,若无预留手机号可填写本人其它手机号;
trans_summary摘要R循环域,可为空,最大支持256字符
trans_reserved用途R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

3.2.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称 描述 出现要求 参数备注
trans_content➤trans_head
return_code 响应码元素返回交易处理状态码 M 具体描述请参考附录1
return_msg 响应信息元素交易处理状态中文信息 M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid 宝付订单号 M 循环域,宝付订单号返回唯一
trans_batchid 宝付批次号 M 循环域
trans_no 商户订单号 M 循环域; 商户唯一流水号, 具体格式建议:商户编号+14位日期+3位随机数 如:100000178201412011230405687
trans_money 转账金额 M 单位:元
to_acc_name 收款人姓名 M 循环域
to_acc_no 收款人银行帐号 M 循环域
to_acc_dept 收款人开户行机构名 M 循环域,返回格式:省|市|支行
trans_summary 摘要 R 循环域
trans_reserved 用途 R 循环域

同步响应数据案例如下:

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付申请成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>10001</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>10002</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付申请成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_orderid": "10001",
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_orderid": "10002",
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

3.3 代付交易状态查证接口(BF0040002)

重要提醒

1、当交易请求超时,不建议立即发起查询,建议延后再查询。
2、在查询时return_code不是订单状态,值为0000只表示受理成功;订单状态必须以查询接口中state字段为订单状态。在状态不明的情况下订单不得处理为终态。

3.3.1交易URL

测试环境地址:https://paytest.baofoo.com/baofoo-fopay/pay/BF0040002.do
正式环境地址:https://public.baofoo.com/baofoo-fopay/pay/BF0040002.do

3.3.2功能说明

  • 该接口的主要功能为查询代付交易状态。商户根据定义的报文格式组装报文发送给宝付,宝付处理完后返回所示格式的报文给商户。商户根据宝付返回的报文可以查看到相关交易信息。
  • 如果请求宝付成功,宝付返回给商户的报文中的return_code字段返回一个0000,该查证订单交易最终状态请按state参数说明。
  • 如果请求宝付失败,将会在返回给商户的报文中的reuturn_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。
    限制条件:
    代付交易查证一次处理的请求条数(trans_reqData)有限制,不超过5个,超过5报:交易请求记录条数超过上限!
    批量查询的多笔订单每笔订单时间间隔不得超过24小时

3.3.3加密串报文格式定义

参数名称 描述 出现要求 参数备注
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_batchid 宝付批次号 O 宝付代付交易返回批次号
trans_no 商户订单号 M 商户提交的订单编号

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
        </trans_reqData>
        <trans_reqData>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_batchid": "20001",
                "trans_no": "1234567A"
            }, {
                "trans_batchid": "20001",
                "trans_no": "1234567B"
            }]
        }]
    }
}

3.3.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称描述出现要求参数备注
trans_content➤trans_head
return_code响应码元素返回交易处理状态码M具体描述请参考附录1
return_msg响应信息元素交易处理状态中文信息M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域
to_acc_no收款人银行帐号M循环域
to_acc_dept收款人开户行机构名M循环域,返回格式:省|市|支行
trans_fee交易手续费M循环域
state订单交易处理状态M循环域,0:转账中;1:转账成功;-1:转账失败;2:转账退款;
trans_summary摘要R循环域
trans_remark备注(错误信息)O循环域,错误信息备注
trans_starttime交易申请时间M循环域,格式:YYYY-MM-DD HH:mm:ss
trans_endtime交易完成时间O循环域,格式:YYYY-MM-DD HH:mm:ss

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付请求成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>200014</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>1</state>
            <trans_summary></trans_summary>
            <trans_remark>转账成功</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>200015</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>-1</state>
            <trans_summary></trans_summary>
            <trans_remark>余额不足</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付请求成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "1",
                "trans_summary": "",
                "trans_remark": "转账成功",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755",
                "trans_reserved": ""
            }, {
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "-1",
                "trans_summary": "",
                "trans_remark": "余额不足",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755",
                "trans_reserved": ""
            }]
        }]
    }
}

3.4 代付交易退款查证接口(BF0040003)

3.4.1交易URL

测试环境地址:https://paytest.baofoo.com/baofoo-fopay/pay/BF0040003.do
正式环境地址:https://public.baofoo.com/baofoo-fopay/pay/BF0040003.do

3.4.2功能说明

  • 该接口的主要功能为查询代付交易退款订单。商户根据定义的报文格式组装报文发送给宝付,宝付处理完后返回所示格式的报文给商户。商户根据宝付返回的报文可以查看到相关交易信息。
  • 如果请求宝付成功,宝付返回给商户的报文中的return_code字段返回一个0000,该查证订单交易最终状态请按state参数说明。
  • 如果请求宝付失败,将会在返回给商户的报文中的reuturn_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。
    限制条件:
    代付交易退款查证一次处理的请求条数(trans_reqData)有限制,不超过1个,超过1报:交易请求记录条数超过上限!

3.4.3加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_reqDatas➤trans_reqData
trans_btime查询起始时间M格式:YYYYMMDD(最多查询一天记录)
trans_etime查询结束时间M格式:YYYYMMDD(最多查询一天记录)

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_btime>20141210</trans_btime>
            <trans_etime>20141210</trans_etime>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_btime": "20141210",
                "trans_etime": "20141210"
            }]
        }]
    }
}

3.4.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称描述出现要求参数备注
trans_content➤trans_head
return_code响应码元素返回交易处理状态码M具体描述请参考附录1
return_msg响应信息元素交易处理状态中文信息M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域
to_acc_no收款人银行帐号M循环域
to_acc_dept收款人开户行机构名M循环域,返回格式:省|市|支行
trans_fee交易手续费M循环域
state订单交易处理状态M循环域,0:转账中;1:转账成功;-1:转账失败;2:转账退款;
trans_summary摘要R循环域
trans_remark备注(错误信息)O循环域,错误信息备注
trans_starttime交易申请时间O循环域,格式:YYYY-MM-DD HH:mm:ss
trans_endtime交易完成时间O循环域,格式:YYYY-MM-DD HH:mm:ss

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付请求成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>200014</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>2</state>
            <trans_remark>已退款</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>200015</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>2</state>
            <trans_remark>已退款</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付请求成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "2",
                "trans_remark": "已退款",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755"
            }, {
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "2",
                "trans_remark": "已退款",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755"
            }]
        }]
    }
}

3.5 代付交易拆分接口(BF0040004)

3.5.1交易URL

测试环境地址:https://paytest.baofoo.com/baofoo-fopay/pay/BF0040004.do
正式环境地址:https://public.baofoo.com/baofoo-fopay/pay/BF0040004.do

3.5.2功能说明

  • 该接口的主要功能为代付交易。原接口BF0040001不能对代付订单进行拆分,不能满足客户需求,故增加本接口,商户根据定义的报文格式组装报文发送给宝付,宝付同步处理完后返回所示格式的报文给商户。
  • 如果宝付收单成功,将会在返回给商户的报文中的return_code字段返回一个0000,该交易查证需要调用代付订单查证(BF0040002)交易。
  • 如果宝付收单失败,将会在返回给商户的报文中的return_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。
  • 订单手续费会按照拆分后的实际订单笔数来收,持卡人看到的到账笔数也和实际拆分的笔数一致。
  • 订单拆分接口请求成功后,具体订单的到账状态查询接口会逐笔返回,商户需要逐笔判断订单状态。
    限制条件:
    代付交易一次处理的请求条数(trans_reqData)有限制,不超过5个,超过5个:交易请求记录条数超过上限!
    请求报文体中的trans_no要求全局唯一,如果发现有重复则报错;

3.5.3加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_head
trans_count交易总笔数M交易总笔数
trans_totalMoney交易总金额M交易总金额,单位:元,实际数字是(15,2)小数点占一位,整数部分占13位
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域,如:张三
to_acc_no收款人银行帐号M循环域,如:6222601234567890
to_bank_name收款人银行名称M循环域,如:中国工商银行
to_pro_name收款人开户行省名C循环域,如:上海市【见支付方式说明】
trans_cnap联行号C循环域,如: 11375211076
to_city_name收款人开户行市名C循环域,如:上海市【见支付方式说明】
to_acc_dept收款人开户行机构名C循环域,如:世纪大道支行【见支付方式说明】
trans_card_id银行卡身份证件号码C循环域,出现要求遵循双方约定,注:目前身份证件只支持身份证,填写身份证号码即可;
trans_mobile银行卡预留手机号C循环域,出现要求遵循双方约定,注:建议商户填写预留手机号码,若无预留手机号可填写本人其它手机号;
trans_summary摘要R循环域,可为空,最大支持256字符
trans_reserved用途R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <trans_count>2</trans_count>
        <trans_totalMoney>99980</trans_totalMoney>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_no>1234567A</trans_no>
            <trans_money>20000</trans_money>
            <to_acc_name>张三</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_no>1234567B</trans_no>
            <trans_money>79980</trans_money>
            <to_acc_name>李四</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "trans_count": 2,
            "trans_totalMoney": 20
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_no": "1234567A",
                "trans_money": 10,
                "to_acc_name": "张三",
                "to_acc_no": 6222601234567890,
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_no": "1234567B",
                "trans_money": 10,
                "to_acc_name": "李四",
                "to_acc_no": 6222601234567890,
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

3.5.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称描述出现要求参数备注
trans_content➤trans_head
return_code响应码元素返回交易处理状态码M具体描述请参考附录1
return_msg响应信息元素交易处理状态中文信息M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域
to_acc_no收款人银行帐号M循环域
to_acc_dept收款人开户行机构名M循环域,返回格式:省|市|支行
trans_summary摘要R循环域,可为空,最大支持256字符
trans_reserved用途R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付申请成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>100001</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>20000</trans_money>
            <to_acc_name>张三</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>100002</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>49990</trans_money>
            <to_acc_name>李四</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>100003</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>29990</trans_money>
            <to_acc_name>李四</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付申请成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_orderid": "100001",
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "20000",
                "to_acc_name": "张三",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": ""
            }, {
                "trans_orderid": "100002",
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "79980",
                "to_acc_name": "李四",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_orderid": "100003",
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "29990",
                "to_acc_name": "李四",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

3.8 宝付账户实时交易接口(BF0040007)

3.8.1交易URL

测试环境地址:http://paytest.baofoo.com/baofoo-fopay/pay/BF0040007.do
正式环境地址:https://public.baofoo.com/baofoo-fopay/pay/BF0040007.do

3.8.2功能说明

  • 该接口的主要功能为宝付账户实时交易。商户根据定义的报文格式组装报文发送给宝付,宝付同步处理完后返回所示格式的报文给商户。
  • 如果宝付交易成功(以state交易转态为准),该交易可通过代付订单交易查证(BF0040002)查询。
  • 如果宝付交易失败(以state交易转态为准),将会在返回给商户的报文中的return_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。

3.8.3加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money交易金额M循环域,单位:元
to_acc_name收款人宝付会员名M循环域,如:好买基金
to_acc_no收款人宝付会员帐号M循环域,如:skyline@baofoo.com
to_member_id收款方会员号M循环域,收款方的商户号,如:100016487
trans_summary摘要R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>好买基金</to_acc_name>
            <to_acc_no>skyline@baofoo.com</to_acc_no>
            <to_member_id>100016487</to_member_id>
            <trans_summary></trans_summary>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "好买基金",
                "to_acc_no": "skyline@baofoo.com",
                "to_member_id": "100016487",
                "trans_summary": ""
            }]
        }]
    }
}

3.8.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称描述出现要求参数备注
trans_content➤trans_head
return_code响应码元素返回交易处理状态码M具体描述请参考附录1
return_msg响应信息元素交易处理状态中文信息M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money交易金额M循环域,单位:元
to_acc_name收款人宝付商户名M循环域,如:好买基金
to_acc_no收款人宝付注册帐号M循环域,如:skyline@baofoo.com
to_member_id收款方会员号M循环域,如:100016487
state交易处理状态M循环域,0:转账中;1:转账成功;-1:转账失败;2:转账退款
trans_summary摘要R
trans_remark备注(错误信息)O循环域,错误信息备注

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付申请成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>10001</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>好买基金</to_acc_name>
            <to_acc_no>skyline@baofoo.com</to_acc_no>
            <to_member_id>100016487</to_member_id>
            <state>1</state>
            <trans_summary></trans_summary>
            <trans_remark></trans_remark>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付申请成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": {
                "trans_orderid": "10001",
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "好买基金",
                "to_acc_no": "skyline@baofoo.com",
                "to_member_id": "100016487",
                "state": "1",
                "trans_summary": "",
                "trans_remark": ""
            }
        }]
    }
}

3.9 账户收款方交易查证接口(BF0040010)

3.9.1交易URL

测试环境地址:http://paytest.baofoo.com/baofoo-fopay/pay/BF0040010.do
正式环境地址:https://public.baofoo.com/baofoo-fopay/pay/BF0040010.do

3.9.2功能说明

  • 该接口的主要功能为账户间转账的收款方进行收款交易状态的查询;
  • 商户根据定义的报文格式组装报文发送给宝付,宝付处理完后返回所示格式的报文给商户。商户根据宝付返回的报文可以查看到相关交易信息。
  • 如果请求宝付成功,宝付返回给商户的报文中的return_code字段返回一个0000,该查证订单交易最终状态请按state参数说明。
  • 如果请求宝付失败,将会在返回给商户的报文中的reuturn_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。
    限制条件:
    代付交易查证一次处理的请求条数(trans_reqData)有限制,不超过5个,超过5报:交易请求记录条数超过上限!

3.9.3加密串报文格式定义

参数名称描述出现要求参数备注
>trans_content➤trans_reqDatas➤trans_reqData(循环域)
to_acc_no收款方宝付会员帐号O循环域,如:skyline@baofoo.com
to_member_id收款方会员号O循环域,如:100016487
trans_no付款方商户订单号M付款商户提交的订单编号
trans_member_id付款方会员号M付款商户会员号
trans_batchid宝付批次号O宝付代付交易返回批次号
trans_orderid宝付订单号O循环域,宝付订单号返回唯一

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
        </trans_reqData>
        <trans_reqData>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": {
                "trans_batchid": "20001",
                "trans_no": "1234567A"
            }
        }]
    }
}

3.9.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称描述出现要求参数备注
trans_content➤trans_head
return_code响应码元素返回交易处理状态码M具体描述请参考附录1
return_msg响应信息元素交易处理状态中文信息M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域
to_acc_no收款人银行帐号M循环域
to_acc_dept收款人开户行机构名M循环域,返回格式:省|市|支行
trans_fee交易手续费M循环域
state订单交易处理状态M循环域,0:转账中;1:转账成功;-1:转账失败;2:转账退款;
trans_summary摘要R循环域
trans_remark备注(错误信息)O循环域,错误信息备注
trans_starttime交易申请时间M循环域,格式:YYYY-MM-DD HH:mm:ss
trans_endtime交易完成时间O循环域,格式:YYYY-MM-DD HH:mm:ss
to_member_id收款方宝付会员号O循环域,(宝付账户交易返回)

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付请求成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>200014</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>1</state>
            <trans_summary></trans_summary>
            <trans_remark>转账成功</trans_remark>
            <trans_starttime>2014-12-10 03:04:55</trans_starttime>
            <trans_endtime>2014-12-10 03:07:55</trans_endtime>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>200015</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_fee>2.0</trans_fee>
            <state>-1</state>
            <trans_summary></trans_summary>
            <trans_remark>余额不足</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付请求成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "1",
                "trans_summary": "",
                "trans_remark": "转账成功",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755"
            }, {
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|张江支行",
                "trans_fee": "2.0",
                "state": "-1",
                "trans_summary": "",
                "trans_remark": "余额不足",
                "trans_starttime": "20141210030455",
                "trans_endtime": "201412100304755"
            }]
        }]
    }
}

3.10 代付宝付回调接口

3.10.1功能说明

  • 该接口的主要功能为商户进行BF0040001交易时,宝付代付结果通知给商户
  • 代付订单最终交易状态以代付state为准
  • 宝付返回格式为XML
  • 商户接收到通知后务必在接收通知页面上返回大写OK
  • 通知格式示例:https://www.baofu.com/notify?member_id=100000178&terminal_id=80226&data_type=XML&data_content=66b4deb
    注意:
  • 宝付系统在未确认商户接收通知成功后将会通过重发机制通知商户(重发次数10次,请以第一次收到的付款成功的消息为准,避免进行多次确认)通知发给商户。
  • 该接口除了订单成功、失败结果通知外,退款的结果也一并通知。
  • 商户若需要该回调接口需联系技术支持人员配置回调地址等相关信息。

3.10.2加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid宝付订单号M循环域,宝付订单号返回唯一
trans_batchid宝付批次号M循环域,宝付批次号
trans_no商户订单号M循环域,商户唯一流水号
trans_money交易金额M循环域,单位:元
to_acc_name收款方姓名M循环域
to_acc_no收款方银行帐号M循环域
trans_fee交易手续费M循环域
state交易处理状态M循环域,0:转账中;1:转账成功;-1:转账失败;2:转账退款
trans_remark备注(错误信息)O循环域,错误信息备注
trans_starttime交易申请时间M循环域,格式:yyyyMMddHHmmss
trans_endtime交易完成时间O循环域,格式:yyyyMMddHHmmss
trans_reserved用途R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>200014</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <trans_fee>2.0</trans_fee>
            <state>1</state>
            <trans_summary></trans_summary>
            <trans_remark>转账成功</trans_remark>
            <trans_starttime>20141210030455</trans_starttime>
            <trans_endtime>20141210030755</trans_endtime>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

3.10.3 同步响应报文说明

商户接收到通知返回ok字符串。
注:若开发此接口,请务必确认已返回“OK”。

3.11 代付交易接口(BF0042001)

3.11.1 交易URL

3.11.2 功能说明

  • 该接口的主要功能为代付交易。商户根据定义的报文格式组装报文发送给宝付,宝付同步处理完后返回所示格式的报文给商户。
  • 如果宝付收单成功,将会在返回给商户的报文中的return_code字段返回一个0000,该交易查证需要调用代付订单查证(BF0040002)交易。
  • 如果宝付收单失败,将会在返回给商户的报文中的return_code字段返回一个错误码,根据错误码在错误信息表里可以查看到具体的错误信息。

限制条件:

代付交易一次处理的请求条数(trans_reqData)有限制,不超过5个,超过5个:交易请求记录条数超过上限!
请求报文体中的trans_no要求全局唯一,如果发现有重复则报错;
注意:测试环境为模拟各种生产上出现的订单问题,交易结果为随机

3.11.3 加密串报文格式定义

参数名称描述出现要求参数备注
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_no商户订单号M循环域,商户唯一流水号,格式只支持数字和英文,具体格式建议:商户编号+14位日期+3位随机数,如:100000178201412011230405687
trans_money转账金额M循环域,单位:元
to_acc_name收款人姓名M循环域,如:张三
to_acc_no收款人银行帐号M循环域,如:6222601234567890
to_bank_name收款人银行名称M循环域,如:中国工商银行
to_pro_name收款人开户行省名C循环域,如:上海市【见支付方式说明】
trans_cnap联行号C循环域,如: 11375211076
to_city_name收款人开户行市名C循环域,如:上海市【见支付方式说明】
to_acc_dept收款人开户行机构名C循环域,如:世纪大道支行【见支付方式说明】
trans_card_id银行卡身份证件号码C循环域,出现要求遵循双方约定,注:目前身份证件只支持身份证,填写身份证号码即可;
trans_mobile银行卡预留手机号C循环域,出现要求遵循双方约定,注:建议商户填写预留手机号码,若无预留手机号可填写本人其它手机号;
trans_summary摘要R循环域,可为空,最大支持256字符
trans_reserved用途R循环域,可为空,最大支持256字符

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_reqDatas>
        <trans_reqData>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_bank_name>工商银行</to_bank_name>
            <to_pro_name>上海市</to_pro_name>
            <to_city_name>上海市</to_city_name>
            <to_acc_dept>张江支行</to_acc_dept>
            <trans_card_id>22032319930425218X</trans_card_id>
            <trans_mobile>18217550000</trans_mobile>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_bank_name": "工商银行",
                "to_pro_name": "上海市",
                "to_city_name": "上海市",
                "to_acc_dept": "张江支行",
                "trans_card_id": "22032319930425218X",
                "trans_mobile": "18217550000",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

3.11.4 同步响应报文说明

请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括:

参数名称 描述 出现要求 参数备注
trans_content➤trans_head
return_code 响应码元素返回交易处理状态码 M 具体描述请参考附录1
return_msg 响应信息元素交易处理状态中文信息 M
trans_content➤trans_reqDatas➤trans_reqData(循环域)
trans_orderid 宝付订单号 M 循环域,宝付订单号返回唯一
trans_batchid 宝付批次号 M 循环域
trans_no 商户订单号 M 循环域; 商户唯一流水号, 具体格式建议:商户编号+14位日期+3位随机数 如:100000178201412011230405687
trans_money 转账金额 M 单位:元
to_acc_name 收款人姓名 M 循环域
to_acc_no 收款人银行帐号 M 循环域
to_acc_dept 收款人开户行机构名 M 循环域,返回格式:省|市|支行
trans_summary 摘要 R 循环域
trans_reserved 用途 R 循环域

同步响应数据案例如下:

XML格式样例

<?xml version="1.0" encoding="UTF-8" ?>
<trans_content>
    <trans_head>
        <return_code>0000</return_code>
        <return_msg>代付申请成功</return_msg>
    </trans_head>
    <trans_reqDatas>
        <trans_reqData>
            <trans_orderid>10001</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567A</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
        <trans_reqData>
            <trans_orderid>10002</trans_orderid>
            <trans_batchid>20001</trans_batchid>
            <trans_no>1234567B</trans_no>
            <trans_money>1.23</trans_money>
            <to_acc_name>周小忍</to_acc_name>
            <to_acc_no>6222601234567890</to_acc_no>
            <to_acc_dept>上海市|上海市|工商银行张江支行</to_acc_dept>
            <trans_summary></trans_summary>
            <trans_reserved></trans_reserved>
        </trans_reqData>
    </trans_reqDatas>
</trans_content>

JSON格式样例

{
    "trans_content": {
        "trans_head": {
            "return_code": "0000",
            "return_msg": "代付申请成功"
        },
        "trans_reqDatas": [{
            "trans_reqData": [{
                "trans_orderid": "10001",
                "trans_batchid": "20001",
                "trans_no": "1234567A",
                "trans_money": "1.23",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }, {
                "trans_orderid": "10002",
                "trans_batchid": "20001",
                "trans_no": "1234567B",
                "trans_money": "2.34",
                "to_acc_name": "周小忍",
                "to_acc_no": "6222601234567890",
                "to_acc_dept": "上海市|上海市|工商银行张江支行",
                "trans_summary": "",
                "trans_reserved": ""
            }]
        }]
    }
}

4.注意事项

1、代付交易付款状态为“未知”时(附录中以使用红字描述),需使用查询接口查询订单最终状态,只有查询到state状态时才能判定订单状态。其他情况以最终对账文件中状态为准。
2、return_code不得作为订单状态,只表示受理成功。
3、文档中付款状态为未知状态,禁止此订单重发交易(除订单查询state有明确的失败的状态以外)。

附录1: 《宝付代付介绍手册》响应码信息

响应码范围 含义
0000 代付请求交易成功(交易已受理)
0001-0199 有关商户端上送报文格式检查导致的错误
0201-0599 有关商户相关业务检查导致的错误
其他 预留
响应码 付款状态 错误信息
0000 未知 代付请求交易成功(交易已受理)
0001 失败 商户代付公共参数格式不正确,{}
0002 失败 商户代付证书无效
0003 失败 商户代付报文格式不正确,{}
0004 失败 交易请求记录条数超过上限!
0201 失败 商户未开通代付业务
0202 失败 商户不存在,请联系宝付技术支持
0203 失败 商户代付业务未绑定IP,请联系宝付技术支持
0204 失败 商户代付终端号不存在,请联系宝付技术支持
0205 失败 商户代付收款方账号{}被列入黑名单,代付失败
0206 失败 商户代付交易受限{}
0207 失败 商户和委托商户不能相同
0208 失败 商户和委托商户绑定关系不存在
0300 未知 代付交易未明,请发起该笔订单查询
0301 失败 代付交易失败
0401 未知,请根据对账文件 代付交易查证信息不存在
0501 失败 代付白名单添加失败
0601 失败 代付(同卡进出)交易失败
0999 未知 代付主机系统繁忙

附录2:证书加密说明

1、测试环境使用宝付提供的测试证书和测试信息,正式环境公私钥证书需要商户自行使用开发包中提供的证书生成工具生成,并且需要登录宝付后台上传您的公钥和下载宝付的公钥;
2、“商户公钥”是做为一个证书文件保存在商户手中,商户通过“商户公钥”来加密请求的“data_type” 字段的数据,加密后的字符需要转成十六进制的字符。

附录3:银行字典

代付支持银行基本覆盖国内所有银行,全国性银行均支持,外资及区域性银行有银联标志均支持。具体支持银行请查阅开发包中的文档“代付支持银行列表”。
为提高通过率及到账时间,有如下建议:
a)请以”代付支持银行列表”中的银行名称填写;
b)若银行卡未带银联标识,对私银行建议填写开户省市支行信息;
c)若对私银行名称为“商业银行”,请直接填写商业银行,并填写相应的省市支行信息;
d)若对私银行名称为“信用合作社”,请直接填写信用合作社,并填写相应的省市支行信息;

作者:xiaofeng  创建时间:2023-06-19 16:47
最后编辑:xiaofeng  更新时间:2024-09-19 18:06