6.1 支付模式


目录

云商通联调环境下,各支付模式对接支付渠道侧环境,查看对应关系

1. 微信正扫

(1)字段说明

支付模式:SCAN_WEIXIN

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

extendParams

String

渠道拓展参数,最长1000字符

cerNum

String

证件号

name

String

付款人姓名

cerType

Long

证件类型

仅支持“1-身份证”

(2)使用说明

1.订单请求,不返回“订单状态”,返回“扫码支付信息”,供转化为二维码。

2.无需调用任何确认支付接口。

3.订单结果通知提供。

 

2. 微信JS

(1)字段说明

支付模式:WECHAT_PUBLIC

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号,与公众号对应

集团模式,必填

subAppid

String

收银宝子商户号,微信公众号支付 appid 参数

extendParams

String

渠道拓展参数,最长1000字符

acct

String

微信JS支付openid——微信分配

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

goodsTag

String

订单支付标识,订单优惠标记,用于区分订单是否可以享受优惠,字段内容在微信后台配置券时进行设置,只对微信支付有效

benefitDetail

JSONObject

优惠信息,benefitdetail的json字符串,注意是String,微信单品优惠

详情

chnlStoreid

String

渠道门店号--商户在支付渠道端的门店编号

subBranch

String

门店号

cerNum

String

证件号

name

String

付款人姓名

cerType

Long

证件类型

仅支持“1-身份证”

(2)使用说明

1.订单请求,不返回“payStatus”, 返回“payInfo支付串信息”,对应微信JS支付,json字符串。商户在微信APP:调用微信浏览器内通过JavaScript调用getBrandWCPayRequest发起支付

2.无需调用云商通确认支付接口。

3.订单结果通知通过【订单结果通知】提供。

附:

(1)微信公众号获取openid官方文档

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_4#

https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

(2)微信公众号JSAPI官方文档

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6

微信公众号支付请求云商通响应payinfo示例:

{"appid":"00000006","cusid":"XXXXXXXX","payinfo":"{\"appId\":\"wxb3fa424b649563b5\",\"timeStamp\":\"1477356696\",\"signType\":\"MD5\",\"package\":\"prepay_id=wx201610250851362b67f0b6570252306441\",\"nonceStr\":\"38642\",\"paySign\":\"66FF000B739F459D093FE24AB3462170\"}","reqsn":"1610258923119024","retcode":"SUCCESS","sign":"9513D3ABF5983F3FACCD8161931DB1ED","trxid":"180681592","trxstatus":"0000"}

注:

(1)公众号支付,需在收银宝商服端配置支付目录,T+1才能支付。

(2)一个收银宝商户号,最多配置10个小程序或公众号,平台有多个小程序或公众号时,需通过接口上送指定微信appid。

 

3. 快捷协议

(1)字段说明

支付模式:QUICKPAY_SFT

字段

字段类型

必填

字段名称

bankCardNo

String

银行卡号,SM4加密。

银行卡号和协议号---二选一必填;若上送银行卡号,优先通过卡号匹配协议信息,不校验上送的协议号

agreementNo

String

协议号

银行卡号和协议号---二选一必填;若上送银行卡号,则不判断协议号;

validate

String

有效期,信用卡必填,格式为月年;如0321,2位月2位年;SM4加密。

cvv2

String

CVV2,信用卡必填。SM4加密。

remark

String

备注,最长50个字符

(2)使用说明

1.只支持“6-收付通协议支付”签约方式绑定的银行卡;

3. 通过“payStatus”渠道交易结果,渠道交易实时响应-成功、失败、处理中;

4.订单结果通知提供。

注:

测试金额需1万以内。

交易金额为10元模拟发卡行不支持该笔交易

交易金额为11元模拟交易失败

交易金额为12元或协议号长度不等于41位模拟为协议号不一致

交易金额为13元模拟协议号不一致

交易金额为14元模拟余额不足

交易金额为15元协议已解除,扣款失败

其余情况模拟成功。

退款金额为16元为原交易不存在,退款失败

退款金额为17元为退款金额超过原金额,退款失败

其余情况为成功

 

4. 快捷支付

(1)字段说明

支付模式:QUICKPAY_VSP

字段

字段类型

必填

字段名称

bankCardNo

String

银行卡号,SM4加密。

银行卡号和协议号---二选一必填;若上送银行卡号,优先通过卡号匹配协议信息,不校验上送的协议号

agreementNo

String

协议号

银行卡号和协议号---二选一必填;若上送银行卡号,则不判断协议号;若上送协议号,则通过协议号校验协议信息

 

(2)使用说明

仅支付绑卡方式“7-收银宝快捷支付签约”绑定的银行卡

订单申请

——交易验证方式:2,不支持

——交易验证方式:不送/0/1

A:不验证短信,响应返回订单状态,不返回验证方式,无需调用确认支付。

B:验证短信,响应不返回订单状态,返回验证方式值为“1”,需继续调用【确认支付(后台+短信验证码确认)】

注:

(1)此支付模式连接渠道真实环境,请使用真实银行卡,且交易将从银行卡扣减金额建议小额支付;支持当天、隔天部分退款和全额退款;

(2)生产支付短信验证码有效时间为2分钟

 

5. 微信小程序支付

(1)字段说明

支付模式:WECHATPAY_MINIPROGRAM

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

acct

String

微信JS支付openid——微信分配

subAppid

String

收银宝子商户号,微信小程序支付 appid 参数

extendParams

String

渠道拓展参数,最长1000字符

goodsTag

String

订单支付标识,订单优惠标记,用于区分订单是否可以享受优惠,字段内容在微信后台配置券时进行设置,只对微信支付有效

benefitDetail

JSONObject

优惠信息,benefitdetail的json字符串,注意是String,微信单品优惠

详情

chnlStoreid

String

渠道门店号--商户在支付渠道端的门店编号

subBranch

String

门店号

cerNum

String

证件号

name

String

付款人姓名

cerType

Long

证件类型

仅支持“1-身份证”

 

(2)使用说明

1.订单请求,云商通不验证,返回“支付信息”商户在小程序平台调起支付的JS函数完成支付。

2.无需调用任何确认支付接口。

3.订单结果通知提供。

附:

(1)微信公众号获取openid官方文档

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_4#

https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html

(2)商户在小程序平台调起支付的JS函数API接口详见:https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_7&index=5

注:

(1)小程序支付,需在收银宝商服端配置支付目录,T+1才能支付。

(2)一个收银宝商户号,最多配置10个小程序或公众号,平台有多个小程序或公众号时,需通过接口上送指定微信subappid。

(3)关于“微信订单预消费”说明

1.【背景】微信对小程序生态中提供商品/服务在线销售及配送的小程序新增 《实物电商类小程序运营规范》管理要求,对交易资金要求根据收货状态进行结算。

2.【关于产品开通】商户需在收银宝新增支持开通“网上收银-微信订单预消费”产品,并解除10元风控限额。

3.【关于云商通二代处理】

(1)【消费】、【担保消费】接口优化:根据收银宝响应的交易类型,若收银宝响应“VSP681-微信订单预消费”,则云商通将该笔交易的订单子类型更新。且在收银宝通知“VSP686-微信订单完成”后,云商通也同步创建子订单类型为“微信订单完成”的订单。(商户订单号与原微信订单预消费订单一致)

订单类型 订单子类型
消费 微信订单预消费
消费 微信订单完成
担保消费 微信订单预消费
担保消费 微信订单完成

(2)订单:订单结果通知、订单状态查询、订单详情查询的接口,增加响应“是否微信订单预消费”字段。

(3)退款:云商通根据云商通本地原交易的订单子类型,创建退款订单:

订单类型 原交易订单子类型 退款订单--订单子类型
退款 微信订单预消费 微信订单退款
退款 微信订单完成 微信订单完成退款

 

(4)运营平台:同一个商户订单号的“微信订单预消费、微信订单完成”的订单,详情页面收款、分账、退款模块的信息保持一致。

(5)门户支持:支持支付模式=微信订单预消费,且此次新增的订单类型-订单子类型的订单能够在门户查询相关信息。

(6)情况概括:

订单类型

订单子类型

是否记账

是否进应用集合对账单

是否支持退款

对应收银宝交易类型

消费

微信订单预消费

微信订单预消费

消费

微信订单完成

微信订单完成

担保消费

微信订单预消费

微信订单预消费

担保消费

微信订单完成

微信订单完成

退款

微信订单退款

/

微信订单退款

退款

微信订单完成退款

/

微信订单完成退款

 

 

 

6. 付款码支付

(1)字段说明

支付模式:CODEPAY_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

authcode

String

支付授权码,支付宝被扫刷卡支付时,用户的付款二维码

*不支持数字货币付款码

extendParams

   

渠道拓展参数,最长1000字符

fqNum

   

支付宝分期, 暂仅支持支付宝花呗分期,支付宝信用卡分期

仅支持A01/A02;

3-花呗分期3期

6-花呗分期6期

12-花呗分期12期

3-cc支付宝信用卡分期3期

6-cc 支付宝信用卡分期6期

12-cc支付宝信用卡分期12期

goodsTag

String

订单支付标识,订单优惠标记,用于区分订单是否可以享受优惠,字段内容在微信后台配置券时进行设置,只对微信支付有效

benefitDetail

JSONObject

优惠信息,benefitdetail的json字符串,注意是String,微信单品优惠,详情

chnlStoreid

String

渠道门店号--商户在支付渠道端的门店编号

subBranch

String

门店号

termInfo

JSONObject

终端信息,

先通过【支付终端信息管理】新增

详情

(2)使用说明

1.订单请求,渠道端不验证时,响应返回“payStatus”,成功或失败;渠道端验证,则返回“进行中”

2.无需调用任何确认支付接口。

3.订单结果通知提供。

 

7. 支付宝正扫

(1)字段说明

支付模式:SCAN_ALIPAY

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

extendParams

String

渠道拓展参数,最长1000字符

fqNum

String

支付宝分期, 暂仅支持支付宝花呗分期,支付宝信用卡分期

仅支持A01/A02;

3-花呗分期3期

6-花呗分期6期

12-花呗分期12期

3-cc支付宝信用卡分期3期

6-cc 支付宝信用卡分期6期

12-cc支付宝信用卡分期12期

benefitDetail

JSONObject

优惠信息,benefitdetail的json字符串,注意是String,支付宝智慧门店,详情

chnlStoreid

String

渠道门店号--商户在支付渠道端的门店编号

subBranch

String

门店号

cerNum

String

证件号

name

String

付款人姓名

cerType

Long

证件类型

仅支持“1-身份证”

(2)使用说明

1.订单请求,不返回“订单状态”,返回“扫码支付信息”,供转化为二维码。

2.无需调用任何确认支付接口。

3.订单结果通知提供。

8. 银联扫码支付

(1)字段说明

支付模式:SCAN_UNIONPAY

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

extendParams

String

渠道拓展参数,最长1000字符

(2)使用说明

1.订单请求,不返回“订单状态”,返回“扫码支付信息”,供转化为二维码。

2.无需调用任何确认支付接口。

3.订单结果通知提供。

9. 支付宝JS

(1)字段说明

支付模式:ALIPAY_SERVICE

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号,与生活号对应

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

acct

String

支付宝JS支付user_id——支付宝分配

fqNum

String

支付宝分期, 暂仅支持支付宝花呗分期,支付宝信用卡分期

仅支持A01/A02;

3-花呗分期3期

6-花呗分期6期

12-花呗分期12期

3-cc支付宝信用卡分期3期

6-cc 支付宝信用卡分期6期

12-cc支付宝信用卡分期12期

extendParams

String

渠道拓展参数,最长1000字符

benefitDetail

JSONObject

优惠信息,benefitdetail的json字符串,注意是String,支付宝智慧门店,详情

chnlStoreid

String

渠道门店号--商户在支付渠道端的门店编号

subBranch

String

门店号

cerNum

String

证件号

name

String

付款人姓名

cerType

Long

证件类型

仅支持“1-身份证”

(2)使用说明

1.订单请求,不返回“payStatus”, 返回“payInfo支付串信息(支付宝交易单号)”,将此字段上传至“支付宝服务窗JSAPI官方文档的alipay.trade.create (统一收单交易创建接口)+JSAPI唤起收银台支付” AlipayJSBridge方法的参数tradeNO。

2.无需调用云商通确认支付接口。

3.订单结果通知通过【订单结果通知】提供。

附:

(1)支付宝获取user_id官方文档

https://doc.open.alipay.com/doc2/apiDetail.htm?spm=a219a.7629065.0.0.EoHbww&apiId=876&docType=4

(2)支付宝服务窗JSAPI官方文档

https://doc.open.alipay.com/docs/doc.htm?&docType=1&articleId=105591

支付宝服务窗支付请求云商通响应payinfo示例:

{"appid":"00000006","cusid":"xxxx","payinfo":"2016102521001004455008259156","reqsn":"1610258923075829","retcode":"SUCCESS","sign":"EF87B13EB952C954482676CDFE331107","trxid":"180681552","trxstatus":"0000"}

10. 银联JS

(1)字段说明

支付模式:UNIONPAY_JS

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

acct

String

支付账户用户标示,银联userid

extendParams

String

 

cusIp

String

 

(2)使用说明

1.订单请求,不返回“payStatus”, 返回“payInfo支付串信息”,对应银联JS支付,支付的链接,商户只需跳转到此链接即可触发支付。

2.无需调用云商通确认支付接口。

3.订单结果通知通过【订单结果通知】提供。

4.支付账户用户标识ACCT获取方式:

(1)分公司向商服运营部门申请商户在银联报备域名和通知地址说明;

(2)商户服务器与银联交互自行获取银联userAuth的code,银联地址https://qr.95516.com/qrcGtwWeb-web/api/userAuth?version=1.0.0&redirectUrl=redirectUrlA,redirectUrlA:商户接收userAuthCode的地址;

11. 收银宝POS

(1)字段说明

支付模式:ORDER_VSPPAY

字段

字段类型

必填

字段名称

vspCusid

String

 

trxReserve

String

业务关联内容,取值按如下规则拼接:

#订购人姓名#订购人地址#联系电话#证件类型#证件号

(2)使用说明

POS端冲正:必须关闭

POS端撤销/退款:建议关闭;

(1)订单申请,返回 “通联订单号orderNo”。终端POS或通联收银宝公众号订单页面输入orderNo订单号,完成支付。

(2)无需调用任何确认支付接口。

(3)订单结果通知提供。

12. H5收银台

(1)字段说明

支付模式:H5_CASHIER_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

payType

String

分期付:F02

当指定为F02时,交易仅限分期交易。分期交易金额必须大于500元。

isHide

String

1:隐藏标准收银台

0:不隐藏标准收银台(默认)

fqNum

String

支付宝分期;暂仅支持支付宝花呗分期,支付宝信用卡分期

仅支持A01/A02;

枚举值:

3:花呗分期3期

6:花呗分期6期

12:花呗分期12期

3-cc:支付宝信用卡分期3期

6-cc:支付宝信用卡分期6期

12-cc:支付宝信用卡分期12期

extendParams

String

渠道拓展参数,最长1000字符

goodsTag

String

订单支付标识

benefitDetail

JSONObje ct

优惠信息,benefitdetail 的 json 字符串,注意是 String,微信单品优 惠,详情

subBranch

String

门店号

(2)使用说明

1. 订单申请,返回“H5收银台”支付地址(在“chnlFrontParamInfo”JSON中返回的chnlPayInfo字段值),在微信/支付宝端打开该地址,进行支付;

2. 无需调用任何确认支付接口。

3. 订单结果通知提供。

13. 实时付款/代付

(1)字段说明

支付模式:WITHDRAW_SFT

字段

字段类型

必填

字段名称

payBankNumber

String

支付行号,12位数字

payBankName

String

开户行支行名称

如:“中国工商银行股份有限公司北京樱桃园支行”

province

String

开户行所在省

开户行所在市必须同时上送

根据中国省市表的“省份”内容填写。详情

city

String

开户行所在市

开户行所在省必须同时上送

根据中国省市表的“城市”内容填写。详情

remark

String

备注,最长50个字符

(2)使用说明

1.交易验证方式支持无验证、短信验证码、支付密码;

2. 使用无验证,validateType上送0;

3.使用短信验证码验证的,支付确认调用“确认支付(后台+短信验证码确认)”接口;

4.使用支付密码验证的,支付确认调用“确认支付【密码验证版】”接口;

5.通过“payStatus”获取渠道交易处理响应-成功、失败、处理中;

6.订单结果通知提供。

14. 微信小程序收银台

(1)字段说明

支付模式:WECHATPAY_MINIPROGRAM_CASHIER_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

limitPay

String

非贷记卡:no_credit

multiPay

String

支持多渠道支付

0/空:不支持

1:支持选择支付宝/微信支付

注:设置该参数后,isdirectpay不生效

isDirectPay

String

是否直接支付

1:直接支付

0:不直接支付,默认0;

subBranch

String

通联系统门店号

isHideShare

String

是否禁止分享

1-禁止分享

0或空时支持分享

cerNum

String

证件号

实名交易必填.填了此字段就会验证证件号和姓名

name

String

付款人真实姓名

实名交易必填.填了此字段就会验证证件号和姓名

(2)使用说明

1. 商户需开通收银宝微信/支付宝小程序收银台;

2. 订单请求,云商通系统生产订单,响应“appletPayParams-收银宝小程序收银台支付参数” ;

3. 商户小程序内调起通联收银台小程序。

调用方式:在小程序环境内,唤起小程序调起收银台小程序时(appId: 微信小程序的appId,固定为:wxef277996acc166c3),在extraData中将云商通返回的“appletPayParams-收银宝小程序收银台支付参数”中的字段名及字段值全部原样作为入参上送。

注:后续字段可能会增加,请获取全量变量,而不能用文档中的字段名来一个个获取,到时候收银宝增加通知字段,就无法兼容了。

4. 小程序的回调:

用户在收银台中完成支付后,会回调支付结果,具体结果可以在小程序生命周期Page.onShow中获取“code、errmsg”参数,详见

收银宝微信小程序收银台在线文档:“9.1 微信小程序收银台支付调用说明

收银宝微信小程序收银台在线文档:“9.2 支付宝小程序收银台支付调用说明


5.订单结果通知提供。

6. APP调起收银台小程序:

通联小程序收银台原始 ID:gh_e64a1a89a0ad

Android开发示例:

https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Launching_a_Mini_Program/Android_Development_example.html

iOS开发示例:

https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Launching_a_Mini_Program/iOS_Development_example.html

调起方式如上文档,具体字段通过query方式传入,该方式同样适用于小程序打开,此处只展示部分字段,具体字段自行根据业务需求填写:

path=pages/orderDetail/orderDetail?cusid=平台分配的商户号&appid=平台分配的appid&orgid=平台分配的机构号&version=12&trxamt=1&reqsn=商户唯一订单号&notify_url=服务器异步通知页面路径&body=标题&remark=备注&validtime=订单有效时间&limit_pay=no_credit&randomstr=随机字符串&paytype=W06&sign=签名


Android小程序回调APP注意事项
WXEntryActivity类文件,需要放置在微信配置应用时填写包名下的wxapi包中,比如当前APP配置包名为“com.allinpaysdk”,则WXEntryActivity需要放在“com.allinpaysdk.wxapi”包中,且该类只能命名为WXEntryActivity,WXEntryActivity以上规范为微信要求,不能修改,否则影响小程序回调APP

特殊说明:

上述文档有说明小程序回调APP说明,但是该回调仅限于在小程序内点击按钮返回APP时有效,但是当通过物理返回键返回APP、任务列表切换回APP、通过半屏小程序右上角关闭退出(即未通过收银台小程序内按钮退出),该回调并不会触发,该情况为微信小程序特性,小程序代码无法处理。

如遇到该情况,建议在APP跳转小程序时新建变量保存跳转标识,在APP内监听到重新打开APP且标志存在,则需要自行查询订单支付结果

15. 支付宝小程序收银台

(1)字段说明

支付模式:ALIPAY_MINIPROGRAM_CASHIER_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

limitPay

String

no_credit:指定不能使用信用卡

isDirectPay

String

是否直接支付

1:直接支付

0:不直接支付,默认0;

subBranch

String

通联系统门店号

isHideShare

String

是否禁止分享

1-禁止分享

0或空时支持分享

cerNum

String

证件号

实名交易必填.填了此字段就会验证证件号和姓名

name

String

付款人真实姓名

实名交易必填.填了此字段就会验证证件号和姓名

fqNum

String

支付宝分期

3 花呗分期3期

6 花呗分期6期

12 花呗分期12期

3-cc 支付宝信用卡分期3期

6-cc 支付宝信用卡分期6期

12-cc 支付宝信用卡分期12期

(2)使用说明

1. 商户需开通收银宝微信/支付宝小程序收银台;

2. 订单请求,云商通系统生产订单,响应“appletPayParams-收银宝小程序收银台支付参数” ;

3. 商户小程序内调起通联收银台小程序。

调用方式:在小程序环境内,唤起小程序调起收银台小程序时(appId: 微信小程序的appId,固定为:wxef277996acc166c3),在extraData中将云商通返回的“appletPayParams-收银宝小程序收银台支付参数”中的字段名及字段值全部原样作为入参上送。

注:后续字段可能会增加,请获取全量变量,而不能用文档中的字段名来一个个获取,到时候收银宝增加通知字段,就无法兼容了。

4. 小程序的回调:

用户在收银台中完成支付后,会回调支付结果,具体结果可以在小程序生命周期Page.onShow中获取“code、errmsg”参数,详见

收银宝微信小程序收银台在线文档:“9.1 微信小程序收银台支付调用说明

收银宝微信小程序收银台在线文档:“9.2 支付宝小程序收银台支付调用说明


5.订单结果通知提供。

6. APP调起收银台小程序:

  1. 先将下单参数转换成json字符串,json转换方式可自行选择

  2. 将下单参数json组装成query参数格式,并进行urlencode后拼接进跳转schemeurl

示例代码如下,此处仅展示部分字段:
 

String json = "{" +
        "\"cusid\": \"平台分配的商户号\"," +
        "\"appid\": \"平台分配的appid\"," +
        "\"orgid\": \"平台分配的机构号\"," +
        "\"version\": \"12\"," +
        "\"trxamt\": \"1\"," +
        "\"reqsn\": \"商户唯一订单号\"," +
        "\"notify_url\": \"服务器异步通知页面路径\"," +
        "\"body\": \"标题\"," +
        "\"remark\": \"备注\"," +
        "\"validtime\": \"订单有效时间\"," +
        "\"limit_pay\": \"no_credit\"," +
        "\"randomstr\": \"随机字符串\"," +
        "\"paytype\": \"A02\"," +
        "\"sign\": \"签名,参考2.1\"" +
        "}";
String query = URLEncoder.encode("payinfo=" + URLEncoder.encode(json, "UTF-8"), "UTF-8");
String url =
"alipays://platformapi/startapp?appId=2021001104615521&page=pages/orderDetail/orderDetail&thirdPartSchema="
+
 URLEncoder.encode("APP接收跳转的schemeurl", "UTF-8")
+ "&query=" + query;

其中thirdPartSchema是app接收跳转的scheme,该字段需要urlencode,其中下单参数按照上述方式组装,共需要两次urlencode

特殊说明:

小程序回调APP结果说明:
 小程序回调是支付宝通过thirdPartSchema带参跳转APP,APP再通过协议获取具体字段参数,其中支付宝进行跳转时是直接在thirdPartSchema后拼接backfromalipay? errmsg=结果信息&code=结果码,如thirdPartSchema为 “allinpaysdk://sdk/”,则app接收的schemeurl为“allinpaysdk://sdk/backfromalipay?errmsg=结果信息&code=结果码”。
 故建议:
1、 thirdPartSchema定义中不要自带参数,如要自带参数,则需要自行通过支付宝返回的schemeurl分割处理获取所需字段,以免报错或者获取不到字段;
2、 thirdPartSchema字段值以“/”结尾,如“allinpaysdk://sdk/”,而不是“allinpaysdk://sdk”
3、 thirdPartSchema字段如果未指定路径,则需要带上“://”,如“allinpaysdk://”

 

小程序回调app是通过schemeurl跳回app的,会带上code、errmsg参数,但是该回调仅限于在小程序内点击按钮返回APP时有效,但是当通过物理返回键返回APP、任务列表切换回APP即未通过收银台小程序内按钮退出,该回调并不会触发,该情况为支付宝小程序特性,小程序代码无法处理。

如遇到该情况,建议在APP跳转小程序时新建变量保存跳转标识,在APP内监听到重新打开APP且标志存在,则需要自行查询订单支付结果

 

16. PC网关支付

(1)字段说明

支付模式:GATEWAY_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

gateId

String

支付银行,见收银宝网银银行列表

注:不填时,将在网关平台显示银行列表供用户选择。

注:上送gateid,paytype不允许上送 B2C,B2B

payType

String

交易类型

-支持B2C和B2B和B2C,B2B

limitPay

String

不填--借、贷记卡均支持,默认

no_credit--指定不能使用信用卡支付

to_credit--限定使用信用卡支付

(2)使用说明

1. 订单申请,返回“PC网关支付”支付地址,支付地址(在“chnlFrontParamInfo”JSON中返回的chnlPayInfo字段值),在浏览器该地址,进行支付;

2. 无需调用任何确认支付接口;

3. 订单结果通知提供;
注:
(1)消费、担保消费,reqsUrl针对“PC网关支付”必填;
(2)“订单过期时间”则向渠道字段“validtime-订单过期时间”,若未上送不填默认为5分钟;

17. 微信支付分

(1)字段说明

支付模式:WECHAT_SCORE_VSP

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

outOrderNo

String

支付分服务单号

serviceId

String

服务id:微信分配的服务id

scene

String

交易场景

取值包括:

PARKING—车场停车场场景

PARKING_SPACE—车位停车场

GAS—加油场景

HIGHWAY—高速场景

BRIDGE—路桥场景

LIFE_PAY—生活缴费行业

SHARABLE_BIKE—共享单车

SHARABLE_CHARGERS—共享充电宝

E-COMMERCE—电商

OTHERS—其他

acct

String

支付平台用户标识

服务单中-用户的微信sub_openid

termInfo

JSONObject

终端信息,

先通过【支付终端信息管理】新增

详情

(2)使用说明

(1)发起微信支付分的支付前,需先调用【支付分服务单管理】接口进行服务单的创建、完结等操作,而后才可以发起微信支付分的扣款;

(2)无需调用任何确认支付接口;

(3)订单结果通知提供

18. 微信原生支付分(停车场)

(1)字段说明

支付模式:WECHATPAY_ PARKING_OPEN

字段

字段类型

必填

字段名称

wxAppid

String

微信应用ID

wxMchid

String

微信商户号

description

String

服务描述, 商户自定义字段,用于交易账单中对扣费服务的描述

attach

String

附加数据:在查询API和支付通知中原样返回,可作为自定义参数使用,

实际情况下只有支付完成状态才会返回该字段

tradeScene

String

交易场景

目前支持
PARKING:车场停车场景

goodsTag

String

订单优惠标记

profitSharing

String

分账标识:
Y:是,需要分账
N:否,不分账

parkingInfo

JSONObject

停车场景信息,当交易场景为PARKING时,需要在该字段添加停车场景信息

 

停车场场景信息(parkingInfo)

字段

字段类型

必填

字段名称

说明

parkingId

String

停车入场id

微信支付分停车服务为商户分配的入场id,商户通过入场通知接口获取入场id

plateNumber

String

车牌号

车牌号,仅包括省份+车牌,不包括特殊字符。

plateColor

String

车牌颜色

车牌颜色,枚举值:
BLUE:蓝色
GREEN:绿色
YELLOW:黄色
BLACK:黑色
WHITE:白色
LIMEGREEN:黄绿色

startTime

String

用户入场时间

式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒

endTime

String

用户出场时间

用户出场时间,遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒。

parkingName

String

停车场名称

所在停车位车场的名称
示例值:欢乐海岸停车场

chargingDuration

Long

计费时长

计费的时间长,单位为秒

deviceId

String

停车场设备

停车场设备id

(2)使用说明

1.【创建停车入场】接口:车辆入场后,先调用此接口,创建停车入场信息,接口响应“停车入场id”字段,用于后续下单接口

2.【查询车牌服务开通信息】接口:可通过此接口查询确认该车牌,是否被该用户开通车主服务;

3.【消费申请】、【担保消费申请】接口:当车辆出站时,商户上送“支付模式=WECHATPAY_PARKING_OPEN-微信原生支付分停车场”下单,接口响应原生支付分停车场信息,并微信支付进行异步扣款;

4.扣款成功,订单终态,【订单结果通知】接口发送给商户异步通知,可通过【订单状态查询】、【订单详情查询】接口查询具体订单信息;

5.【停车入场状态变更通知】接口:停车入场状态变更后,云商通会把相关停车入场状态发送给商户,商户需要接收处理该消息,并返回应答。

6.【退款申请】接口:当交易发生之后一年内,由于买家或者卖家的原因需要退款时,卖家可以通过退款接口将支付金额退还给买家,微信支付将在收到退款请求并且验证成功之后,将支付款按原路退还至买家账号上。

官网文档:https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter3_7_4.shtml

19. 微企付

(1)字段说明

支付模式:WQF

字段

字段类型

必填

字段名称

payType

String

支付形态,枚举值:

mini_program:小程序支付

H5:H5支付

app:app支付

riskControl

JSONObject

风控信息,详情

sceneInfo

JSONObject

场景信息,详情

frontCallbackUrl

JSONObject

前端回跳地址信息,详情

memo

String

附言,即对账文件中的“订单附加信息”字段

attachment

String

订单附加信息,附加数据,在查询API中原样返回,可作为自定义参数使用

goods

ARRAYObject

商品信息,商品信息,建议上送不多于5种商品信息(注:请勿添加金额为0商品),详情

payerOptions

ARRAYObject

微企付扫码支付指定付款方信息列表,详情

channelOptions

JSONObject

渠道选项,指定收银台支持的付款渠道,详情

riskControl-风控信息

字段

字段类型

必填

字段名称

说明

deviceId

String

设备号

设备号,终端设备号(门店号或收银设备ID),示例值:POS1:1

payerClientIp

Long

用户终端IP

用户终端IP,用户端实际ip,示例值:14.17.22.32

payerUa

String

用户UA

用户UA,浏览器User-Agent

createTime

Date

下单时间

 

pickType

String

提货方式

SELF_PICK:自提

LOGISTICS:物流

CHANGE_OWNER:改归属

pickDescription

String

提货描述

 

sceneInfo-场景信息

storeInfo-门店信息

字段

字段类型

必填

字段名称

说明

id

String

门店编号

 

name

String

门店名称

 

areaCode

String

地区编号

 

frontCallbackUrl-前端回跳地址信息

字段

字段类型

必填

字段名称

说明

mpPath

String

前端回跳小程序路径

 

mpAppid

String

前端回跳小程序appid

 

mpUsername

String

回调小程序原始id

 

mpUrlscheme

String

前端回跳小程序urlscheme

 

h5Url

String

h5支付前端回跳地址

 

iosUrl

String

ios系统app支付前端回跳地址

 

androidUrl

String

Android系统app支付前端回跳地址

 

 

goods-商品信息

字段

字段类型

必填

字段名称

说明

goodName

String

商品名称

 

goodNumber

Long

商品数量

 

goodAmount

Long

商品金额

单位:分

不能为0

payerOptions-指定付款方信息列表

字段

字段类型

必填

字段名称

说明

assignPayType

String

付款类型

指定付款类型:

INDIVIDUAL:个人付款

ENTERPRISE:企业付款

payerName

String

付款人名称

当assign_pay_type为ENTERPRISE时,该字段必须设置为付款企业名称。

当assign_pay_type为INDIVIDUAL时,该字段必须设置为指定个人付款人姓名(注:沙箱环境中指定个人付款人为固定姓名“李四”)

channelOptions -收银台支持的付款渠道

字段

字段类型

必填

字段名称

说明

includeBankSnames

List

指定银行简称列表

指定收银台支持的银行列表,例如平安银行为:PAB

excludeBankSnames

List

指定排除银行简称列表

银行简称,指定收银台不支持的银行列表,例如平安银行为:PAB

includePayChannels

List

指定支付渠道列表

指定渠道

INDIVIDUAL:个人银行卡

ENTERPRISE: 企业网银

WX_BALANCE: 微信零钱(注:沙箱环境暂不支持)

指定排除支付渠道,Include_pay_channels和exclude_pay_channels不能同时存在

excludePayChannels

List

指定排除支付渠道

 

(2)使用说明

1.申请开通微企付产品的商户,联系机构部报备,完成商户入驻,注册腾讯微企付的商户账号(企业ID);

2.【消费申请】、【担保消费申请】接口:上送“WQF-微企付”支付模式,完成下单,接口响应“渠道参数信息(前端支付参数)-WQFChnlFrontParamInfo”,商户获取此信息,需在小程序端跳转至微企付半屏小程序收银台完成支付;

具体操作方法见:https://businesspay.qq.com/p/doc/mse/flow/mp/payment.html?backend=java

3.微企付收银台页面完成转账,订单成功,【订单结果通知】接口发送给商户异步通知,可通过【订单状态查询】、【订单详情查询】接口查询具体订单信息;

4.【退款申请接口】:当原交易时间超过180天的订单不受理退款,微信支付退款支持单笔交易分多次退款(不超50次)。
官方文档:https://businesspay.qq.com/p/doc/mse/api/server.html#%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98
 

(3)测试参数示例:

{\"payType\":\"mini_program\",\"sceneInfo\":{\"storeInfo\":{\"areaCode\":\"000000\",\"name\":\"门店名称\",\"id\":\"id_111\"}},\"frontCallbackUrl\":{\"mpUsername\":\"mp_username_4146528ac27c\",\"h5Url\":\"https://h5_url_901d4ab9ee1f\",\"mpUrlscheme\":\"mp_urlscheme_1a4a72d0a0c7\",\"mpAppid\":\"mp_appid_29a4d6558172\",\"androidUrl\":\"https://android_url_270843fa17c3\",\"mpPath\":\"mp_path_603216074154\",\"iosUrl\":\"https://ios_url_82eaab7c8035\"},\"goods\":[{\"goodName\":\"good_name_db4cb2933956\",\"goodAmount\":1,\"goodNumber\":1},{\"goodName\":\"good_name_db4cb2933957\",\"goodAmount\":1,\"goodNumber\":1}],\"riskControl\":{\"createTime\":1729753557408,\"pickType\":\"SELF_PICK\",\"payerUa\":\"payer_ua_bc7da9dd31f3\",\"payerClientIp\":\"payer_client_ip_e165d351eda2\",\"pickDescription\":\"pick_description_878302f35a3c\",\"deviceId\":\"device_id_9c27f6e7f921\"}}}

 

20. 银行汇入金

(1)字段说明

支付模式:BANK_FUND_IN

字段

字段类型

必填

字段名称

openBankNo

String

开户银行

浙商银行:1009

(2)使用说明

1. 【消费申请】、【担保消费申请】接口:上送“银行汇入金-BANK_FUND_IN”支付模式,完成下单,接口响应“渠道参数信息(前端支付参数)-银行汇入金打款信息-bankFundInParamInfo”,用户按照此信息进行打款,上送附言信息;

2. 用户打款完成,云商通进行订单及账务处理,处理完成【订单结果通知】接口发送给商户异步通知,可通过【订单状态查询】、【订单详情查询】接口查询具体订单信息;

3. 【划款入账通知】接口发送入账成功还是自动退款成功通知;

4. 针对订单处理成功的订单,支持通过【退款申请】接口完成退款至打款账户;

21. 余额支付

(1)字段说明

支付模式:BALANCE_PAY

字段

字段类型

必填

字段名称

- - - 上送空json对象即可

(2)使用说明

1. 【消费申请】、【担保消费申请】接口:当资金管理模式为“自主管理、银行管理”时,支持上送“余额-BBALANCE_PAY”支付模式完成下单,该支付模式需特殊配置白名单权限;

2.  根据配置的鉴权方式,当鉴权方式为:短信验证码时,需继续调用【确认支付(后台+短信验证码确认)】接口完成验证;

3. 验证通过后,云商通进行订单及账务处理,处理完成【订单结果通知】接口发送给商户异步通知,可通过【订单状态查询】、【订单详情查询】接口查询具体订单信息;

4. 针对订单处理成功的订单,支持通过【退款申请】接口完成退款至出款会员账户;

5. 余额支付,针对出款会员的默认风控为:单日3笔,单笔1000,日累计1000,月累计1000元。

22. 微信小程序B2b门店助手

(1)字段说明

支付模式:WECHATPAY_B2b

字段

字段类型

必填

字段名称

说明

mchid

String

支付商户号

微信支付生成并下发的商户号

sessionKey

String

sessionKey

sessionKey要在小程序前端获取,可以参考微信小程序登录说明文档https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html

goodsFeeList

JSONObject

商品信息

 

goodsInfo

JSONObject

商品费用详情

 

goodsDesc

String

商品描述

Key要在商品描述,最多 127 字节

description

string[1,127]

示例: Image形象店-深圳腾大-QQ公仔

deliveryType

Long

配送方式

配送方式,具体取值为:

1.同城配送 2.快递配送 3.门店自提 4.无需配送与提货

goodsInfo-商品信息

字段

字段类型

必填

字段名称

说明

spuId

String

商品编号

商户系统内该商品的spuid,示例值:spu123456

skuId

String

商品规格编号

商户系统内该商品的skuid示例值:sku123

title

String

商品标题

商品标题 示例值:QQ长鹅

path

String

商详页小程序路径

商户商品详请页小程序路径 示例值:pages/index

headImg

String

商品主图

商品主图的url,大小建议64*64 示例值:https://mp.weixin.qq.com/123

category

String

类目

商户侧该商品所属的类目,示例值:玩偶

skuAttr

String

sku属性

商户系统内该商品的sku属性,如50cm

 

orgPrice

String

 商品原价

该商品原价,单位为分 示例值:5000

 

salePrice

String

商品售价

 

该商品售价,单位为分 示例值:4000

 

quantity

String

商品数量

 

用户购买该商品的数量

 

goodsFeeList-商品信息

字段

字段类型

必填

字段名称

说明

freightAmount

Long

运费
订单运费,微信B2b支付时可上送,用作记录,不记账
 

otherAmount

 

Long

其他费用
订单其他费用总金额,微信B2b支付时可上送,用作记录,不记账
 

productAmount

 

Long

商品原总金额
订单所有商品的原价总和,单位为分,微信B2b支付时可上送,用作记录,不记账
 

discount

 

Long

总优惠金额
订单总计优惠金额,单位为分,用于商家自己记录,与平台承担的优惠部分无关,不记账
currency

String

货币类型

货币类型,仅支持"CNY"

(2)使用说明

1.申请微信小程序B2b门店助手产品的商户,在二代产品开通流程\支付产品新增流程中开通门店助手后,需要完成扫码授权等操作

该产品的消费下单需要在小程序内调起微信支付方法,消费接口返回B2b订单支付的前端支付渠道参数,产品详细信息见:

https://isv-test.allinpay.com/doc/1535/

23.支付账户商委充值

支付模式:BIZCOMM_DEPOSIT

注意:本支付模式不支持退款。本支付模式仅用于支付账户商委充值

(1)字段说明:

字段

字段类型

必填

字段名称

bankCardNo

String

银行账户(必须是预先报备通联的银行账户)

Remark

String

备注

24.自主出金

(1)字段说明

支付模式:SELF_FUND_OUT

字段

字段类型

必填

字段名称

remark

String

备注,最长50个字符

channelOrderNo

String

渠道流水号

(2)使用说明

1. 资金管理模式为"自主管理"时,支持在2290-提现交易接口中,上送该支付模式实现账户的下账。

25.自主入金

(1)字段说明

支付模式:SELF_FUND_IN

字段

字段类型

必填

字段名称

remark

String

备注,最长50个字符

channelOrderNo

String

渠道流水号

(2)使用说明

  1. 资金管理模式为"自主管理"时,支持在2085-消费、2089-担保消费、2096-充值接口中,上传该支付模式实现账户的上账。

26. 云商通收银台

(1)字段说明

支付模式:CASHIER_YST

字段

字段类型

必填

字段名称

vspCusid

String

收银宝子商户号

集团模式,必填

limitPay

String

非贷记卡:no_credit

不填--借、贷记卡均支持;

payType

String

指定支付方式,则不展示收银台界面。枚举值:

YHK:银行卡快捷

WX:微信

ZFB:支付宝

YSF:云闪付

benefitDetail

JSONObje ct

优惠信息,benefitdetail 的 json 字符串,注意是 String,微信单品优惠,详情

goodsTag

String

订单支付标识

isHide

String

隐藏云商通收银台界面

0:不隐藏(默认)

1:隐藏

 

(2)使用说明

云商通收银台的支付链接,在响应的chnlFrontParamInfo的ystCashierUrl中返回。例如:"chnlFrontParamInfo":"{\"ystCashierUrl\":\"https://test.allinpay.com/h5/cashRegister?code=20250418105238208501286142\"}"

27. 当面付支付

(1)字段说明

支付模式:FACETOFACEPAY_VSP

字段

字段类型

必填

字段名称

说明

vspCusid

String

支付商户号

收银宝子商户

trxReserve

String

 

订单详情标签个性化说明

例:05|Q1#文西|Q2#186-2828-9999|Q3#广州市天河区体育西路107号|X#其他备注信息

(2)支付说明

支付模式

支付模式说明

当面付

(1)订单申请,返回 “通联订单号-respTraceNum”;当面付码牌或通联收银宝公众号/自带参数的当面付订单支付H5 订单页面输入respTraceNum订单号,完成支付。

(2)无需调用任何确认支付接口。

(3)订单结果通知提供。

 


wuxl2 2025年4月18日 17:03 收藏文档