目录
云商通联调环境下,各支付模式对接支付渠道侧环境,查看对应关系。
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开发示例:
iOS开发示例:
调起方式如上文档,具体字段通过query方式传入,该方式同样适用于小程序打开,此处只展示部分字段,具体字段自行根据业务需求填写:
path=pages/orderDetail/orderDetail?cusid=平台分配的商户号&appid=平台分配的appid&orgid=平台分配的机构号&version=12&trxamt=1&reqsn=商户唯一订单号¬ify_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调起收银台小程序:
-
先将下单参数转换成json字符串,json转换方式可自行选择
-
将下单参数json组装成query参数格式,并进行urlencode后拼接进跳转schemeurl
示例代码如下,此处仅展示部分字段:
String json = "{" + |
其中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 |
是 |
交易场景 目前支持 |
goodsTag |
String |
否 |
订单优惠标记 |
profitSharing |
String |
否 |
分账标识: |
parkingInfo |
JSONObject |
否 |
停车场景信息,当交易场景为PARKING时,需要在该字段添加停车场景信息 |
停车场场景信息(parkingInfo)
字段 |
字段类型 |
必填 |
字段名称 |
说明 |
parkingId |
String |
是 |
停车入场id |
微信支付分停车服务为商户分配的入场id,商户通过入场通知接口获取入场id |
plateNumber |
String |
是 |
车牌号 |
车牌号,仅包括省份+车牌,不包括特殊字符。 |
plateColor |
String |
是 |
车牌颜色 |
车牌颜色,枚举值: |
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.微企付收银台页面完成转账,订单成功,【订单结果通知】接口发送给商户异步通知,可通过【订单状态查询】、【订单详情查询】接口查询具体订单信息;
(3)测试参数示例:
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)字段说明
字段 |
字段类型 |
必填 |
字段名称 |
说明 |
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)使用说明
- 资金管理模式为"自主管理"时,支持在2085-消费、2089-担保消费、2096-充值接口中,上传该支付模式实现账户的上账。
26. 云商通收银台
(1)字段说明
字段 |
字段类型 |
必填 |
字段名称 |
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)字段说明
字段 |
字段类型 |
必填 |
字段名称 |
说明 |
vspCusid |
String |
是 |
支付商户号 |
收银宝子商户 |
trxReserve |
String |
否 |
|
订单详情标签个性化说明 例:05|Q1#文西|Q2#186-2828-9999|Q3#广州市天河区体育西路107号|X#其他备注信息 |
(2)支付说明
支付模式 |
支付模式说明 |
当面付 |
(1)订单申请,返回 “通联订单号-respTraceNum”;当面付码牌或通联收银宝公众号/自带参数的当面付订单支付H5 订单页面输入respTraceNum订单号,完成支付。 (2)无需调用任何确认支付接口。 (3)订单结果通知提供。 |