- 1 文档说明
- 1.1 文档目的
- 1.2 阅读对象
- 1.3 技术支持联系方式
- 1.4 术语与定义
- 1.4.1 符号含义
- 1.4.2 术语含义
- 2 业务方案说明
- 2.1 应用场景
- 2.1 业务流程
- 3.收款子账户申请接口
- 3.1 收款子账户开立申请
- 3.1.1接口说明
- 3.1.2请求报文说明
- 3.1.3 返回报文说明
- 3.2 收款子账户开立查询
- 3.2.1接口说明
- 3.2.2请求报文说明
- 3.2.2返回报文说明
- 4.收款子账户交易接口
- 4.1 转账支付建单
- 4.1.1接口说明
- 4.1.2 请求报文
- 4.1.3返回报文说明
- 4.2转账支付订单查询接口
- 4.2.1接口说明
- 4.2.2 请求报文
- 4.2.3 应答报文
- 4.3 转账支付异步通知
- 4.3.1 功能说明
- 4.3.2 通知报文
- 4.4 商户分账结果查询接口
- 4.4.1 接口说明
- 4.4.2请求报文
- 4.2.3应答报文
- 4.5 异步通知分账结果
- 4.5.1 应答返回报文
- 4.6 收款子账户入金通知
- 4.6.1 接口说明
- 4.6.2 应答报文
1 文档说明
1.1 文档目的
本文档目的是为宝付商户转账支付定义一个接口规范,以帮助商户技术人员快速接入宝付网关,并快速掌握其相关功能,便于尽快的投入使用。
1.2 阅读对象
- 商户开发人员、维护人员和管理人员
- 宝付转账支付相关的技术人员
1.3 技术支持联系方式
在开发或使用转账支付接口时,如果您有任何技术上的疑问,请按如下方式寻求帮助,宝付技术支持人员会及时处理,给予您答复。
- 技术支持热线:021-68819999-8005
- 技术支持Email:support@baofoo.com
- 技术支持QQ:800066689
1.4 术语与定义
1.4.1 符号含义
序号 | 符号缩写 | 符号性质 | 符号说明 |
---|---|---|---|
1 | M | 强制域(Mandatory) | 必须填写的属性,否则会被认为格式错误 |
2 | C | 条件域(Conditional) | 某条件成立时必须填写的属性 |
3 | O | 选用域(Optional) | 选填属性 |
4 | R | 原样返回域(Returned) | 必须与先前报文中对应域的值相同的域 |
1.4.2 术语含义
- 商户号:宝付提供给商户的唯一编号,是商户在宝付的唯一标识。
- 终端号:商户在与宝付签订某项具体产品功能的合作协议自动分配的会员属性,将用于进行具体交易的必要参数。
- 原商户订单号:原先支付时商户请求提交的支付订单号。
- 商户流水号:商户请求宝付时提交的流水号,每次请求均不可重复。
- 商户订单号:商户请求宝付时提交的订单号,当天请求不可重复;
- 宝付交易号:宝付用于一笔订单的唯一标识。
2 业务方案说明
2.1 应用场景
转账支付产品由宝付开发,提供给合作商户的一种安全的支付产品。
用户购买商品或服务时,向宝付分配给商户的专属账户打款,宝付进行自动匹配加值的模式。
注:该接口为纯后台模式
2.1 业务流程
流程说明:
1、商户开通转账支付/转账支付分账产品,系统会自动为商户创建专属收款子账户,该子账户只能使用1.0版本建单功能;
2、用户在商户平台下单支付时,商户先依据用户信息向我司申请收款子账户;
3、商户向用户展示收款子账户信息;
4、用户通过手机网银或网银向收款子账户发起付款;
5、宝付通过银网联收到用户转账资金后,将用户付款成功通知给商户;
6、商户接收到用户付款成功通知后,向宝付发起建单请求;
宝付收到商户的建单请求检验通过后将用户转账资金登记在商户在我司开立的商户号下,并通知商户建单成功(收单成功)。
3.收款子账户申请接口
3.1 收款子账户开立申请
3.1.1接口说明
1.报文编号:T-1001-004-02
2.接口用于创建收款子账户
3.1.2请求报文说明
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 用户类型 | userType | M | 1 个人 2 企业 |
02 | 用户姓名 | userName | M | 个人填姓名、企业填营业执照名称 |
03 | 用户证件号 | userCard | M | 个人填身份证证件号、企业填统一社会信用代码 |
04 | 用户联系手机号 | userPhone | o | 个人填个人手机号,企业填法人手机号 |
05 | 法人姓名 | legalPersonName | C | 企业填写 |
06 | 法人证件号 | legalPersonCard | C | 企业填写 |
07 | 商户订单号 | memberTransId | M |
3.1.3 返回报文说明
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 子账户号 | acsNo | M | |
02 | 子账户号名称 | acsName | M | 商户名称 |
03 | 子账户创建时间 | createTime | M | yyyy-MM-dd HH:mm:ss格式 |
04 | 返回码 | retCode | M | |
05 | 错误码 | errorCode | C | |
06 | 错误原因 | errorMsg | C |
失败示例
{
“errorCode”:”FI00092”,
“errorMsg”:”创建失败”,
“retCode”:0
}
成功示例
{
“acsName”:”同城哈尔滨科技票据有限公司测试商户2”,
“acsNo”:”681325967357”,
“createTime”:”2025-04-30 09:54:14”,
“retCode”:1
}
3.2 收款子账户开立查询
3.2.1接口说明
1.报文编号:T-1001-004-01
2.接口用于查询收款子账户开立信息
3.2.2请求报文说明
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 用户证件号 | userType | M | 1 个人填证件号、企业填统一社会信用代码 |
3.2.2返回报文说明
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 子账户信息 | acsMess | M | |
02 | 子账户号 | acsMessacsNo | M | |
03 | 子账户名称 | acsMessacsName | M | 商户名称 |
04 | 返回码 | retCode | M | |
05 | 错误码 | errorCode | C | |
06 | 错误原因 | errorMsg | C |
失败示例
{
“errorCode”:”BF0004”,
“errorMsg”:”查证信息不存在”,
“retCode”:0
}
成功示例
{“acsMess”:[{
“acsMessacsName”:”上海迅信网络科技有限公司”,
“acsMessacsNo”:”68011300059688”
},
{
“acsMessacsName”:”上海迅信网络科技有限公司”,
“acsMessacsNo”:”68011300053689”}
],
“retCode”:1
}
4.收款子账户交易接口
4.1 转账支付建单
4.1.1接口说明
交易URL
测试环境地址:https://vgw.baofoo.com/cutpayment/api/backTransRequest
正式环境地址:https://public.baofoo.com/cutpayment/api/backTransRequest
4.1.2 请求报文
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 版本号 | version | M | 4.0.0.0 |
02 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
03 | 终端号 | terminal_id | M | |
04 | 交易类型 | txn_type | M | 取值0431 |
05 | 交易子类 | txn_sub_type | M | 98 |
06 | 加密数据类型 | data_type | M | json |
07 | 加密数据 | data_content | M | 具体参数如下加密数据。注意:加密之前,先将组装的数据(请参照数据模版组装)进行Base64编码转化,然后再进行证书加密。 |
加密数据
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
02 | 子账户号 | subAccountNo | M | |
03 | 商户订单号 | trans_id | M | 商户发起的支付订单号 |
04 | 银行流水号 | bank_serial_no | M | |
05 | 支付金额 | order_money | M | 单位:分 |
06 | 分账明细 | share_info | O | 金额单位(分),在内扣模式下需要满足收单金额=手续费+分账金额,在外扣模式下需要满足收单金额=分账金额。格式:商户1,金额1;商户2,金额2…例如:100000363,10;100000364,90 |
07 | 手续费承担方 | fee_member_id | O | |
08 | 分账通知地址 | share_notify_url | O | 分账结果通知 |
加密数据模板JSON
{
“member_id”:123564,
“subAccountNo”:”1234567890”,
“trans_id”:”123456”,
“bank_serial_no”:”银行流水”,
“order_money”:”1000000”,
“share_info”:”100000363,10;100000364,90 “,
“share_notify_url”:”分账回调地址”
}
4.1.3返回报文说明
序号 | 参数含义 | 参数名称 | 必填 | 参数备注 |
---|---|---|---|---|
01 | 应答码 | resp_code | M | 应答码为0000时,表示订单预提交成功 |
02 | 应答信息 | resp_msg | M | |
03 | 版本号 | version | R | |
04 | 商户号 | member_id | R | 宝付提供给商户的唯一编号 |
05 | 终端号 | terminal_id | R | |
16 | 接入类型 | biz_type | R | |
07 | 数据类型 | data_type | R | xml/json |
08 | 交易类型 | txn_type | R | 取值0431 |
09 | 交易子类 | txn_sub_type | R | 98 |
10 | 商户流水号 | trans_serial_no | R | 8-20 位字母和数字,每次请求都不可重复 |
11 | 商户订单号 | trans_id | R | 商户订单号 |
12 | 附加字段 | additional_info | O | |
13 | 预留字段 | req_reserved | R |
解密后报文JSON
{
“additional_info”: “”,
“data_type”: “json”,
“member_id”: “100000178”,
“order_id”: 25960005451,
“req_reserved”: “”,
“resp_code”: “0000”,
“resp_msg”: “交易成功”,
“terminal_id”: “100000935”,
“trans_id”: “20250512185554509600”,
“trans_serial_no”: “202505121855545098902”,
“txn_sub_type”: “98”,
“txn_type”: “0431”,
“version”: “4.0.0.0”
}
4.2转账支付订单查询接口
4.2.1接口说明
交易URL
测试环境地址:https://vgw.baofoo.com/cutpayment/api/backTransRequest
正式环境地址:https://public.baofoo.com/cutpayment/api/backTransRequest
4.2.2 请求报文
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 版本号 | version | M | 4.0.0.0 |
02 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
03 | 终端号 | terminal_id | M | |
04 | 交易类型 | txn_type | M | 取值0431 |
05 | 交易子类 | txn_sub_type | M | 40 |
06 | 加密数据类型 | data_type | M | data_type =xml或json |
07 | 加密数据 | data_content | M | 具体参数如下加密数据。 |
加密数据
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 交易子类 | txn_sub_type | M | 40 |
02 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
03 | 终端号 | terminal_id | M | |
04 | 商户订单号 | trans_id | M | 商户发起的支付订单号 |
05 | 商户流水号 | trans_serial_no | M | 8-20 位字母和数字,每次请求都不可重复 |
06 | 接入类型 | biz_type | C | 其他:不填写和默认0000,表示为储蓄卡支付。 |
07 | 请求方保留域 | req_reserved | O | |
08 | 附加字段 | additional_info | O |
4.2.3 应答报文
序号 | 参数含义 | 参数名称 | 必填 | 参数备注 |
---|---|---|---|---|
01 | 应答码 | resp_code | M | 0000表示交易成功,仅代表查询订单状态成功,不代表订单支付成功,具体订单什么状态需要看state的值,具体参考下面state各状态代表的含义 |
02 | 应答信息 | resp_msg | M | |
03 | 商户订单号 | trans_id | R | 商户订单号 |
04 | 终端号 | terminal_id | R | |
05 | 交易类型 | txn_type | R | 取值0431 |
06 | 交易子类 | txn_sub_type | R | 40 |
07 | 数据类型 | data_type | R | xml/json |
08 | 版本号 | version | O | |
09 | 附加字段 | additional_info | O | |
10 | 预留字段 | req_reserved | O | |
11 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
12 | 商户流水号 | trans_serial_no | R | 8-20 位字母和数字,每次请求都不可重复 |
13 | 接入类型 | biz_type | R | |
14 | 订单状态 | state | M | 订单的状态:0:待确认(预下单时的状态),1:成功,2:失败,3:待处理,4:已取消 |
15 | 成功时间 | succ_time | O | 仅state=1时即订单已经加值成功的时候才有成功时间,其余状态为空值 |
4.3 转账支付异步通知
4.3.1 功能说明
将结果异步通知给商户
4.3.2 通知报文
member_id= 100000178&terminal_id=1000938&data_content=09f27e40024994307c854b5bff54fdbb79e7ed9900e6013e58a816e31ef39088f42417a5d87d05e01508b93bea5be2af8fa0562b8259b07eff3fb61fee70d69a5550561731b6bf1319a98091180490d6fd783af72d20e7bf53e3b924f6455f93d7234fff06fef004f05e6795903e21535a1b19fa75473fc99a8b8ff2aadc146f85bf2bb168ccfa724a77e24f4aea12ed0634b4810feed3c1c799bdbd03b98c8378ca5fa68efd1bccd54d8f9a7ad80912f8e5c29ff74f0b8bef247c4e4319f8778366f06f3b547f9586bf229e3b15bd38523999bb58f9c11fd68df33da5ad5d99f6a528c69b178248804da25b082ab08f9c504a4db70139f1a540614fa21cebb3
解密后报文
- Xml格式
<result> <resp_code>0000</resp_code> <resp_msg>成功</resp_msg> <memberTransId>test0000000000a01</memberTransId> <state>1</state> <orderMoney>1.01</orderMoney> <succTime>20170808143943</succTime> </result>
- Json格式
{ "resp_code":"0000" "resp_msg":"成功" "memberTransId":"test0000000000a01", "orderMoney":"1.01", "state":"1", "succTime":"20170808143943" }
加密数据
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 应答码 | resp_code | M | |
02 | 应答信息 | resp_msg | M | |
03 | 商户订单号 | memberTransId | M | |
03 | 订单金额 | orderMoney | M | |
14 | 状态 | state | M | 1:成功 2:失败 |
15 | 成功时间 | succTime | M | yyyyMMddHHmmss |
注:
宝付将掉单或超时的订单取出,补发支付结果(结果有成功和失败,不是仅仅发支付成功的订单,请商户务必要根据应答码判断支付结果是成功还是失败,再进行正确的处理),以GET和POST方式发送到商户配置的接收地址,商户接收到支付结果,并且进行相应处理之后,需要商户接收通知的地址在页面上输出 OK 表示接收成功<除了 OK 无任何其他内容>,告诉宝付已经成功接收并处理完毕,宝付系统在未得到商户接收通知成功的反馈时,将通过重发机制再次通知商户(重发次数 2~10 次,请以第一次收到的支付成功的消息为准,避免进行多次充值或支付),直到商户接收成功或达到最大重发次数为止。
4.4 商户分账结果查询接口
分账代扣产品商户执行分账指令以后结果是异步的,商户只能根据传的notify_url去查询分账是否成功,如果商户接收地址异常的情况下是无法获取分账结果的。针对此类情况添加一个分账结果查询的接口。
4.4.1 接口说明
交易URL
测试环境地址:https://vgw.baofoo.com/cutpayment/api/backTransRequest
正式环境地址:https://public.baofoo.com/cutpayment/api/backTransRequest
交易开发可参考:*.java
4.4.2请求报文
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 版本号 | version | M | 4.0.0.0 |
02 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
03 | 终端号 | terminal_id | M | |
04 | 交易类型 | txn_type | M | 取值0431 |
05 | 交易子类 | txn_sub_type | M | 35 |
06 | 加密数据类型 | data_type | M | json |
07 | 加密数据 | data_content | M | 具体参数如下加密数据。 |
加密数据
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 交易子类 | txn_sub_type | M | 35 |
02 | 接入类型 | biz_type | M | 0000 |
03 | 终端号 | terminal_id | M | |
04 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
05 | 商户流水号 | trans_serial_no | M | 8-20 位字母和数字,每次请求都不可重复 |
06 | 商户订单号 | trans_id | M | 商户发起的支付订单号 |
07 | 附加字段 | additional_info | O | 长度不超过 128 位 |
08 | 请求方保留域 | req_reserved | O |
加密数据模板
- Xml格式
<?xml version="1.0" encoding="UTF-8"?> <data_content> <txn_sub_type>35</txn_sub_type> <biz_type>0000</biz_type> <terminal_id>100000949</terminal_id> <member_id>100000749</member_id> <trans_serial_no>20170613145610</trans_serial_no> <trans_id>0ea3f928-95b3-43a2-a598-d1914d2c4dc7</trans_id> <additional_info>test</additional_info> <req_reserved>test</req_reserved> </data_content>
- Json格式
{ "txn_sub_type":"35", "biz_type":"0000", "terminal_id":"100000949", "member_id":"100000749", "trans_serial_no":"20170613145610", "trans_id":"0ea3f928-95b3-43a2-a598-d1914d2c4dc7", "additional_info":"test", "req_reserved":"test" }
4.2.3应答报文
1575809f3d01ff49a4708c398b7e9827edd733cab60be13dd7bcfe5ef2d13efd71b3337b762ae4ec6495ff789278d69634f426a84880f70d196177948f5a85a0d571089b385be33a21beaf77dad5b71e42b5438d90e0a0c07245d1648548d69e5c539b0cacb688f2563a323ec61b297066bbc076902f03937a1fa2d1c0a1d96615a8e8db614eda18f622c84822fc4a7fe118804f096de923b809036c013db1186087c559f721db3b97f6db58d1badead99c621f5e6937feeb403c8575fb266126fd341c94b751e8ce7b994a6110eaae783cd81cae2962a6d92489dfc86e2454280a02d76b0f301c8fb716c9a1946b18116e202570fcea644c52f397fa3b0461e7cf3fd3806dffb8aada003af8ecdeaefdf8f7a87462a680532fd1d1585eac0a6e0a655a9effa574b50afe17bd2ffadd7d3d432a3900bcde276e03f281d5ebbb96783de9b430e22041be6ab4f7ef64dbcdf8b9d25da56031cff0add7508ab16e2512c2a31542a1be833db3603230b2bca6dca52e4359d3ec09666daced2746acd5f54dd15fa2d4b08c95787ee7f7e324ccf41ada4ffd1fd732ccfe2f37cbe742f6a7e69e1e3825750dbc6e96d8a14942c73ac0d6f861b418d286f2472473d9b1865953cfdccdbb23e977fbd3f0efd3da9d8c22e65d0bacfdcfd946ad3086b928af6b4262ade342c4a2b55d077fa0a60476342f582b308118a6df9e2ffe3ba0836a910906ee62d0efdb6171dfe948710b5b70b42dfcd409de1d67e06a91e7284b44a979dd89f08aea5bb2090a8b030bba4abc3d8002b299f4d7db91861851fc3814f6068913503f94dd14291baaddd9dfb22fd5610b658e9773e2b707cefc7ccde66c3d0259e3434d2fa6cd79391bae4eb027c894bfe324c52084372875618585e
解密后报文
- Xml格式
<?xml version="1.0" encoding="UTF-8" ?> <result> <share_state>0</share_state> <version>4.0.0.0</version> <member_id>100000749</member_id> <data_type>xml</data_type> <resp_msg>交易成功</resp_msg> <resp_code>0000</resp_code> <txn_sub_type>35</txn_sub_type> <additional_info>test</additional_info> <terminal_id>100000949</terminal_id> <req_reserved>test</req_reserved> <txn_type>0431</txn_type> </result>
通知结果解密后的报文格式是根据原交易订单请求的“data_type”来决定,输出内容包括
序号 | 参数含义 | 参数名称 | 必填 | 参数备注 |
---|---|---|---|---|
01 | 版本号 | version | R | |
02 | 请求方保留域 | req_reserved | R | |
03 | 附加字段 | additional_info | R | |
04 | 应答码 | resp_code | M | 具体参见附录:应答码 |
05 | 应答信息 | resp_msg | M | 填写具体的应答信息 |
06 | 商户号 | member_id | R | 宝付提供给商户的唯一编号 |
07 | 终端号 | terminal_id | R | |
08 | 数据类型 | data_type | R | |
09 | 交易类型 | txn_type | R | |
10 | 交易子类 | txn_sub_type | R | |
11 | 接入类型 | biz_type | R | |
12 | 订单结果状态码 | order_state | M | 状态码取值(大写字母): S:交易成功 F:交易失败 I:处理中 FF::交易失败 IMPORTANT:当状态码结果为FF时,非支付订单交易结果,如:必传参数缺失时,报文解析失败时,参数格式校验 |
13 | 分账结果状态码 | share_state | C | 状态码取值(大写字母或数字):1:分账成功、0:未分账、IMPORTANT:当order_state不为FF时必须填写 |
4.5 异步通知分账结果
异步通知分账结果
4.5.1 应答返回报文
序号 | 参数含义 | 参数名称 | 必填 | 参数备注 |
---|---|---|---|---|
01 | 数据域 | data_content | M | 加密数据 |
加密数据
请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 应答码 | resp_code | M | 具体参见附录1:应答码 |
02 | 应答信息 | resp_msg | M | 填写具体的应答信息 |
03 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
04 | 终端号 | terminal_id | M | |
05 | 订单号 | trans_id | M |
返回报文示例
- Xml格式
<?xml version="1.0" encoding="UTF-8" ?> <result> <member_id>100000749</member_id> <terminal_id>100000933</terminal_id> <trans_id>87fd763c-df98-4fac-9602-2aa023e8f4c6</trans_id> <resp_msg>分账成功</resp_msg> <resp_code>BF00338</resp_code> </result>
- Json格式
{ "member_id":100000749" "terminal_id":100000933" "trans_id":87fd763c-df98-4fac-9602-2aa023e8f4c6" "resp_msg":分账成功" "resp_code":BF00338" }
4.6 收款子账户入金通知
4.6.1 接口说明
该接口用于接收收款子账户入金银行流水通知4.6.2 应答报文
序号 | 参数含义 | 参数名称 | 必填 | 参数备注 |
---|---|---|---|---|
01 | 数据域 | data_content | M | 加密数据 |
加密数据
请求响应结果的数据类型根据请求参数字段“data_type”来决定,输出内容包括
序号 | 域名 | 变量名 | 必填 | 备注 |
---|---|---|---|---|
01 | 应答码 | resp_code | M | 具体参见附录1:应答码 |
02 | 应答信息 | resp_msg | M | 填写具体的应答信息 |
03 | 商户号 | member_id | M | 宝付提供给商户的唯一编号 |
04 | 终端号 | terminal_id | M | |
05 | 支付金额 | order_money | M | 单位:分 |
06 | 收款方账户号 | payee_acct_code | M | |
07 | 付款方账户号 | payer_acct_code | M | |
08 | 付款方开户名 | payer_user_name | M | |
09 | 银行流水号 | bank_serial_no | M | |
10 | 银行到账时间 | bank_time | M | |
11 | 银行附言 | bank_remark | C |
最后编辑:yanli 更新时间:2025-05-22 20:57