合单支付- 支付宝生活号

1、修订记录

版本号 日期 说明 作者
0.1 2021/08/26 新接口参数定义 宁华雄
0.2 2021/12/27 支持国密 王晶
0.3 2022/12/14 新增支付宝业务拓展参数extend_params_channel 刘军

2、业务说明

(1)场景说明

1、在电商场景中存在多个商家的多笔订单一次支付,即用户提交一笔订单中包含多个子商户订单信息,用户确认无误后一笔支付订单总金,合单支付款项分别进入子商户各自的账户

(2)接口说明 1、帮助商户代创建和代运营生活号。在商户完成对开发者的授权后,开发者即默认添加为商户生活号的操作员,即可通过接口或生活号后台帮商户维护生活号。 2、商户调用此接口前,请确保已开通“生活号第三方应用“ 3、代创建提交且支付宝审核通过后,下一步则需商户做代创建的授权确认,商户可登录商家中心b.alipay.com查看待办事项,并确认授权

3、请求地址

环境 HTTPS请求地址
正式环境 https://qrcode.ysepay.com/gateway.do

4、请求参数说明

4.1公共请求参数

参数 类型(字节长度) 必填 参数说明
method String(128) Y 接口名称 固定值 ysepay.online.combine.alijsapi.pay
partner_id String(20) Y 在银盛支付开设的服务商商户号,请联系客户经理提供
timestamp String(19) Y 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" 示例值:2014-07-24 03:07:50
charset String(10) Y 商户网站使用的编码格式,如UTF-8、GBK、GB2312等,默认值 UTF-8
sign_type String(10) Y 报文签名算法,RSA 、SM
sign String(256) Y 签名字符串,再用Base64编码
notify_url String(190) Y 交易成功异步通知到商户的后台地址,http路径支持多个url进行异步通知,多个url用分隔符“,”分开,格式如:url1,url2,url3,支持TLS1.0、TLS1.1、TLS1.2
version String(3) Y 接口版本 3.0,当前版本3.0
tran_type String(1) N 交易类型,说明:1或者空:即时到账,2:担保交易
biz_content String Y 业务请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递

4.2 业务请求参数

参数名biz_content,值为一个json格式对象,下面列表描述json对象的值

参数 类型(字节长度) 必填 参数说明
combine_out_trade_no String(1,32) Y 商户系统生成的合单订单号,须保证在商户端不重复,生成规则前8位必须为交易日期,如20220525,范围跨度支持包含当天在内的前后一天,且只能由大小写英文字母、数字、下划线及横杠组成,示例值:202205256843192280647118
shopdate String(8,8) Y 商户系统的交易发生日期格式yyyyMMdd 示例值:20180525
buyer_logon_id String(100) N 该字段于2023-9-1已不支持使用,请使用buyer_id对接,如有疑问请咨询银盛技术支持!
buyer_id String(100) N 买家支付宝用户ID,和buyer_logon_id不能同时为空。buyer_id获取方法:https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.8ujLD6&treeId=115&articleId=104114&docType=1通过网页授权获取用户信息,同步响应结果中的user_id对应文档中的buyer_id。
timeout_express String(2,6) Y 设置未付款交易的超时时间,一旦超时,该笔交易就会自动被关闭。(需申请业务权限,权限未开通情况下该参数不生效,默认未付款交易的超时时间为7d)取值范围:1m~15d。m-分钟,h-小时,d-天。该参数数值不接受小数点,如1.5h,可转换为90m。注意:设置了未付款交易超时时间的情况下,若我司在限定时间内没有收到成功支付通知,则会关闭交易,关闭后该笔交易若付款方支付成功的情况下,会自动原路退款至付款方。示例值:96h 代表96小时后订单自动关闭
combine_seller_id String(1,20) Y 合单交易银盛支付商户号,必须是子单收款商户号或者服务商商户号
business_code String(1,10) Y 业务代码 ,00510150
subject String(1,250) Y 商品的标题/交易标题/订单标题/订单关键字等。该参数最长为250个汉字。
total_amount Number(10,2) Y 该笔子订单的资金总额,单位为RMB-Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。Number(10,2)指10位长度,2位精度
currency String(3) N 支持币种:CNY(人民币),默认CNY
extra_common_param String(2000) N 公用回传参数 商户自定义数据域,原样返回
sub_order_list list Y 子单订单信息(最多50笔)
extend_params_channel String N 支付宝业务拓展参数json格式 示例值:样例7.2

4.2.1 子订单 sub_order_list

参数 类型(字节长度) 必填 参数说明
out_trade_no String(1,32) Y 商户生成的子单订单号,生成规则前8位建议为交易日期,如20180525,范围跨度支持包含当天在内的前后一天,且只能由大小写英文字母、数字、下划线及横杠组成 示例值:201805256843192280647118
amount Number(10,2) Y 该笔子订单的资金总额,单位为RMB-Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。Number(10,2)指10位长度,2位精度
seller_id String(200) Y 银盛支付子单收款商户号(银盛支付生成并下发)

5、响应参数说明

银盛支付对商户的请求数据处理完成后,会将处理的结果数据同步回执给商户。

请注意:银盛后期会对返回参数保留扩展的权力,扩展方式为新增参数但不会删除参数,请商户在解析银盛返回参数时要支持银盛可能扩展参数这种情况。

5.1 公共响应参数

参数 类型(字节长度) 必填 参数说明
sign String Y 签名字符串,Base64编码
ysepay_online_combine_alijsapi_pay_response String Y 业务响应参数的集合,最大长度不限

5.2 业务响应参数

参数 类型(字节长度) 必填 参数说明
code String Y 响应代码
msg String Y 响应代码描述
combine_out_trade_no String(32) Y 商户生成的合单订单号
combine_trade_no String(30) N 银盛支付合单交易流水号
trade_status String Y 交易目前所处的状态。成功状态的值: TRADE_SUCCESS 示例值:附录8.1
total_amount Number Y 该笔订单的资金总额,单位为RMB-Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。
extra_common_param String N 商户自定义数据域,原样返回
jsapi_pay_info String Y Json格式字符串,作用于原生态的js支付时的参数

6、交易成功异步通知参数

银盛支付对商户的请求数据处理完成后,会将处理的结果数据通过服务器主动通知的方式通知给商户网站。这些处理结果数据就是服务器异步通知参数。

请注意:银盛后期会对返回参数保留扩展的权力,扩展方式为新增参数但不会删除参数,请商户在解析银盛返回参数时要支持银盛可能扩展参数这种情况。

参数 类型(字节长度) 必填 参数说明
sign_type String Y 签名类型,请求时的签名类型RSA/SM
sign String Y 签名字符串,Base64编码
notify_type String Y 通知类型directpay.status.sync
notify_time String(19) Y 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" 示例值:2014-07-24 03:07:50
combine_out_trade_no String(32) Y 商户生成的合单订单号 示例值:6843192280647118
combine_total_amount Number N 该笔订单的资金总额,单位为RMB-Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。
trade_no String(30) N 该交易在银盛支付系统中的交易流水号。
trade_status String Y 交易目前所处的状态。成功状态的值: TRADE_SUCCESS\ TRADE_CLOSED等 示例值:附录8.1
account_date String(10) N 入账的时间,格式"yyyyMMdd" 示例值:20140724
channel_send_sn String(50) N 发往渠道流水号
paygate_no String(16) N 支付网关编号
channel_recv_sn String(50) N 渠道返回流水号
extra_common_param String N 商户自定义数据域,原样返回

7.1 Jsapi支付

tradeNO这个值即取自上面jsapi_pay_info参数里的tradeNO的值
AlipayJSBridge.call("tradePay", {
  tradeNO: "201209071234123221" 
}, function(result) {
    if(result.resultCode == '9000'){
        //成功处理
    }
});

7.2 支付宝业务拓展参数extend_params_channel

{
    "food_order_type": "qr_order"
}

8、附录

8.1 交易状态

枚举名称 枚举说明
WAIT_BUYER_PAY 交易创建,等待买家付款。
TRADE_CLOSED 在指定时间段内未支付时关闭的交易;客户主动关闭订单。
TRADE_SUCCESS 交易成功,且可对该交易做操作,如:多级分润、退款等。
TRADE_PART_REFUND 部分退款成功。
TRADE_ALL_REFUND 全部退款成功。
TRADE_FAILD 交易失败
TRADE_UNDEPOSIT 交易成功,商户未入账,请联系客户经理处理

8.2 支付网关编号

支付渠道代码 支付渠道
900000001 银联-支付宝
9000010 银联-微信
10810001 银联扫码-银联云闪付
10010001 网联-微信
10000012 网联-支付宝 {"code":200,"message":"成功","data":null,"list":null}

results matching ""

    No results matching ""