订单分账(旧版)

更新时间:2024-02-28 19:08:26

更新日志:

日期 章节 内容
2022-12-09 1.1分账规则电子协议生成 请求报文增加pay_ver字段,传入指定值后可返回协议签署时的验证类型

对接必读

  • 分账功能开通说明:
    • 请先联系运营同事给商户开通分账功能以及分账入帐户。
    • 联系运营同事签署分账承诺函,签署后在商户后台“资质证照补充”处,补充上传“分账承诺函” 。如果对接了商户接口中的“1.3更新商户资料”接口 ,也可通过接口上传分账承诺函。
  • 分账功能只能正式环境对接,请联系对接支持人员提供正式环境域名。使用的商户号、入帐户都需是正式环境的。
  • 分账接口调用说明:
  • 接口注意事项:
    • 同一出账户、入账户不允许同时使用1.4订单分账接口和2.1分账受理接口,只能使用其中一种分账形式接口。
    • 首次签署协议,审核通过后,立即生效。第二次修改协议,之前的协议立即被作废(会造成暂时无法分账的情况),运营审核通过后,第二天凌晨5分才自动生效。
    • 在调用1.2分账规则电子协议签署接口时,若不知道验证码或者打款金额,需等验证码过期(1分钟)或者打款金额失效(24小时)后,才能再次请求1.1分账规则电子协议生成接口,否则会报“分账电子协议已经生成成功,请调用分账规则电子协议签署接口”。也可在签署时,把验证信息输错5次后,再次请求1.1分账规则电子协议生成接口。

1.1 分账规则电子协议生成

  • URL:order/allocate/generatecontract
  • Method:POST

注意:调用该接口前,请联系运营同事签署分账承诺函,签署后在商户后台“资质证照补充”处,补充上传“分账承诺函”后,可调用该接口。否则会报“分账背景说明图片不存在或缺失”。如果对接了商户接口中的“1.3更新商户资料”接口 ,也可通过 接口上传分账承诺函。

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 当前值为:100。传入值时,可返回verify_type类型
inst_no String 15 Y 机构编号,扫呗分配
trace_no String 32 Y 请求流水号,不带“-”的uuid
merchant_no String 15 Y 扫呗商户号(出账户)
phone_no String 11 N 商户结算卡银行预留手机号,对公商户可不填,对私商户必填
contract_type String 1 N 商户分账功能开通授权模式
1纸质授权函;
2电子协议
(不填默认为电子协议)
rule_list_json String 1024 Y 规则列表,Json数组
start_date String 8 Y 开始时间,yyyyMMdd
end_date String 8 Y 结束时间,yyyyMMdd
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,机构令牌名称为key),32位md5加密转换

以下字段为rule_list_json字段

参数名称 类型 长度 必填 说明
rule_no String 4 Y 规则编号,要求格式:0001,0002等
rules String 256 Y 规则列表,Json数组

以下字段为rules字段

参数名称 类型 长度 必填 说明
account_in String 15 Y 分账入账户(富友商户号)
allocate_scale Number 4 Y 分账最大比例,百分比[0,10000),精度为0.01%,如3即为0.03%

rule_list_json字段传值格式参考:

"rule_list_json": "[{\"rule_no\":\"0001\",\"rules\":[{\"account_in\":\"0001129F4411234\",\"allocate_scale\":89}]}]"

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(机构令牌名称为key),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
trace_no String 32 Y 原请求流水号
merchant_no String 15 N 商户号
expire_ts String 16 N 授权码失效时间(yyyyMMddHH:mm:ss)默认1分钟
amt_ts String 16 N 验证金额有效期(yyyyMMddHH:mm:ss)默认24小时
contract_no String 15 Y 协议编号
verify_type String 1 Y pay_ver值为100时返回,验证类型:1 打款认证;2 短信验证码
sign_url String 256 Y 协议签署服务地址

1.2 分账规则电子协议签署

  • URL:order/allocate/signcontract
  • Method:POST

verify_no(授权码)和verify_amt(打款金额)说明:
如果出账户是对私户,对私户的手机号会收到短信验证码,验证码填在verify_no字段;
如果出账户是对公户,对公户的银行卡会收到打款金额,金额填在verify_amt字段。
可根据1.1接口中返回的verify_type字段判断是收到的打款金额还是验证码

请求参数

参数名称 类型 长度 必填 说明
inst_no String 15 Y 机构编号,扫呗分配
trace_no String 32 Y 请求流水号,不带“-”的uuid
merchant_no String 15 Y 扫呗商户号
verify_no String 16 N 授权码
verify_amt Number 11 N 富友打款金额,单位:分(授权码与打款金额有且只有一个必填)
contract_no String 15 Y 协议编号
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,机构令牌名称为key),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(机构令牌名称为key),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
trace_no String 32 Y 原请求流水号
merchant_no String 15 Y 扫呗商户号

1.3 分账电子协议查询

  • URL:order/allocate/querycontract
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
inst_no String 15 Y 机构编号,扫呗分配
trace_no String 32 Y 请求流水号,不带“-”的uuid
merchant_no String 15 Y 扫呗商户号
contract_no String 15 Y 协议编号
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,机构令牌名称为key),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(机构令牌名称为key),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
trace_no String 32 Y 原请求流水号
merchant_no String 15 Y 扫呗商户号
contract_no String 15 Y 协议编号
contract_state String 2 Y 协议状态,签署中01(刚生成)、已签署02(审核中)、失效03(审核驳回/功能关闭)、已生效04
sign_url String 256 Y 协议签署服务地址

1.4 订单分账

  • URL:order/allocate/doallocate
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
out_trade_no String 32 Y 订单号,支付接口中返回的订单号
contract_no String 15 N 合同编号
rule_no String 4 N 分账规则编号,要求格式:0001,0002等
rule_list_json String 1024 Y 规则列表,json字符串
order_body String 128 N 订单描述
attach String 128 N 附加数据,原样返回
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

以下字段为rule_list_json字段

参数名称 类型 长度 必填 说明
account_in String 15 Y 分账入账户
allocate_amt Number 11 Y 分账入账金额

注:总的分账金额不可超过订单金额*最大分账比例。

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_name String 40 N 商户名称
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 N 利楚唯一订单号
attach String 32 N 附加数据,原样返回

1.5 分账交易查询

  • URL:order/allocate/query
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
pay_trace String 32 N 当前支付终端流水号,与pay_time同时传递
pay_time String 14 N 当前支付终端交易时间,yyyyMMddHHmmss,全局统一时间格式,与pay_trace同时传递
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
data_list_json String 1024 Y 数据对象,JSON字符串

以下字段为data_list_json字段

参数名称 类型 长度 必填 说明
allocate_time String 50 Y 分账时间yyyy-MM-dd HH:mm:ss
src_trade_no String 8 Y 源交易流水
src_trade_date String 8 Y 源交易日期yyyyMMdd
txn_amt Number 11 Y 分账金额 单位:分
account_out String 15 Y 分账出账户
account_in String 15 Y 分账入帐户
contract_no String 15 Y 合同编号
rule_no String 4 Y 分账规则编号
allocate_status String 8 Y 分账状态00:未分帐,01:已分帐,02:分账失败, 03:已撤销

1.6 入帐户资金汇总查询

  • URL:order/allocate/queryallocate
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
inst_no String 15 Y 机构编号,扫呗分配
trace_no String 32 Y 请求流水号,不带“-”的uuid
merchant_no String 15 Y 扫呗商户号
account_in String 15 Y 分账入帐户
start_date String 8 Y 分账起始日期,yyyyMMdd
end_date String 8 Y 分账截止日期,yyyyMMdd
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,机构令牌名称为key),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,机构令牌名称为key),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
trace_no String 32 Y 原请求流水号
merchant_no String 15 Y 扫呗商户号
account_in String 15 Y 分账入帐户
data_list_json String 1024 Y 分帐转账列表,json字符串

以下字段为data_list_json字段

参数名称 类型 长度 必填 说明
account_out String 15 Y 分账出账户
txn_amt Number 11 Y 分账金额 单位:分
src_trade_date String 8 Y 分账日期
src_trade_no String 50 Y 分帐转账交易流水号
contract_no String 15 Y 合同编号
rule_no String 4 Y 分账规则编号
allocate_status String 2 Y 分账状态00:未分帐,01:已分帐,02:分账失败, 03:已撤销

1.7 撤销分账

  • URL:order/allocate/cancel
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
pay_trace String 32 N 当前支付终端流水号,与pay_time同时传递
pay_time String 14 N 当前支付终端交易时间,yyyyMMddHHmmss,全局统一时间格式,与pay_trace同时传递
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 N 利楚唯一订单号

####

2.1 分账受理

url:order/allocate/allocateaccept
Method: POST
发起分账受理操作日期和源支付交易日期必须为同一天。
注意:同一出账户,入账户不允许同时使用订单分账接口和订单受理接口

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
contract_no String 15 Y 合同编号
rule_no String 4 Y 分账规则编号,要求格式:0001,0002等
rule_list_json String 1024 Y 规则列表,json字符串
order_body String 128 N 订单描述
attach String 128 N 附加数据,原样返回
is_freeze_all String 2 N 默认值= 0【只冻结分账金额】 传 1 表示【整单冻结】,当整单冻结时,对【整笔订单的金额-手续费】进行冻结。
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

以下字段为rule_list_json字段

参数名称 类型 长度 必填 说明
account_in String 15 Y 分账入账户
allocate_amt Number 11 Y 分账固定金额 单位:分

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_name String 40 N 商户名称
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 N 利楚唯一订单号
attach String 32 N 附加数据,原样返回

2.2 分账受理冲正

url:order/allocate/allocatecancel
Method: POST
发起分账受理冲正日期和发起分账受理日期必须为同一天。只有已经成功发起的分账受理才能受理冲正。

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
order_body String 128 N 订单描述
attach String 128 N 附加数据,原样返回
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_name String 40 N 商户名称
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 N 利楚唯一订单号
attach String 32 N 附加数据,原样返回

2.3 分账确认

url:order/allocate/allocateconfirm
Method: POST
发起分账确认的前提条件是商户必须先成功发起过分账受理请求(无受理冲正),发起分账确认操作日期必须在商户成功发起过分账受理请求之后的30个自然日之内。可以支持对一个或者多个入账方进行确认。
【整单冻结】的分账受理交易,进行分账受理时必须所有的分账受理子项同时确认。

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
account_in_list String 1024 Y 分账入账户信息
110版本:
分账入账户,多个以逗号分隔
120版本:
数据对象,JSON字符串
order_body String 128 N 订单描述
attach String 128 N 附加数据,原样返回
is_freeze_all String 2 O 120版本必传
分账受理时状态:
0:部分冻结
1:整单冻结
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

以下字段为account_in_list字段不同版本(pay_ver)入参

pay_ver 版本号为110
参数名称 类型 长度 必填 说明
account_in_list String 1024 Y 分账入账户,多个以逗号分隔
pay_ver 版本号为120
参数名称 类型 长度 必填 说明
account_in String 15 Y 分账入账户
unfreeze_amt Number 11 O 订单解冻金额 单位:分(整单冻结必传)
confirm_amt Number 11 O 订单分账确认金额
单位:分(整单冻结必传)

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_name String 40 N 商户名称
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 N 利楚唯一订单号
attach String 32 N 附加数据,原样返回

2.4 分账确认查询(单条)

  • URL:order/allocate/queryconfirm
  • Method:POST

请求参数

参数名称 类型 长度 必填 说明
pay_ver String 3 Y 版本号,当前版本110
merchant_no String 15 Y 商户号
terminal_id String 8 Y 终端号
terminal_trace String 32 Y 终端流水号,填写商户系统的订单号
terminal_time String 14 Y 终端交易时间,yyyyMMddHHmmss
pay_trace String 32 N 当前支付终端流水号,与pay_time同时传递
pay_time String 14 N 当前支付终端交易时间,yyyyMMddHHmmss,全局统一时间格式,与pay_trace同时传递
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换

返回参数

参数名称 类型 长度 必填 说明
return_code String 2 Y 业务响应码,01成功 02失败
return_msg String 128 Y 业务响应描述
key_sign String 32 Y 签名检验串,拼装所有非空参数+令牌(字典序,商家令牌名称为access_token),32位md5加密转换
result_code String 2 N 业务处理响应码,01成功 02失败
merchant_no String 15 N 商户号
terminal_id String 8 N 终端号
terminal_trace String 32 N 终端流水号,商户系统的订单号,扫呗系统原样返回
terminal_time String 14 N 终端交易时间,yyyyMMddHHmmss,全局统一时间格式
out_trade_no String 32 Y 订单号,查询凭据,填利楚订单号、微信订单号任意一个
contract_ssn String 15 Y 协议编号
unfreeze_amt_sum Number 11 Y 订单累计解冻金额
单位:分
data_list_json String 1024 Y 数据对象,JSON字符串

以下字段为data_list_json字段

以下字段为list 分账入账方确认信息
参数名称 类型 长度 必填 说明
account_in String 15 Y 分账入账户
confirm_amt Number 11 Y 分账入账户累计确认金额 单位:分
txn_amt Number 11 Y 分账入账户累计分账金额 单位:分
allocate_confirm_detail String 1024 Y 数据对象,JSON字符串

以下字段为allocate_confirm_detail字段

以下字段为list 分账入账方,分账确认明细
参数名称 类型 长度 必填 说明
confirm_date String 8 Y 确认日期yyyyMMdd
confirm_time String 6 Y 确认时间
HHmmss
trace_no String 1024 Y 分账确认订单号
confirm_amt Number 11 Y 确认金额 单位:分
unfreeze_amt Number 11 Y 解冻金额 单位:分
transfer_status String 2 Y 确认转账装填 00:未转账,01:转账中, 02:转账成功 03:转账失败
unfreeze_status String 2 Y 确认解冻状态 00:未解冻,01:解冻中, 02:解冻成功 03:解冻失败

© 利楚商服 2020 All rights reserved.