业务需要新增支付渠道,接入云闪付,总结一下对接流程
已经跟银联进行签约的前提下,会收到银联提供的一些开发的必要信息
必要条件:
- 开发接口文档
- 商户号
- 私钥
- 网关公钥(一般是*.cer 文件)
- 交易证书(一般是*.pfx文件, 加密使用)
调用流程:
- 打开支付页面,点击支付
- 生成订单,并生成银联签名, 将对应的调用地址与相应的参数返回给前端
- 前端将得到的参数使用form-data的方式提交到银联接口,注意这里不能使用Ajax的方式, 否则会出现跨域的问题
支付参数:
MerId 商户号
MerOrderNo 订单号
OrderAmt 订单金额(单位:分)
TranDate 日期
TranTime 时间
TranType 交易类型(默认:0001)
BusiType 业务类型(默认:0001)
Version 版本号(认证支付,快捷支付:20150922 其他:20140728)
CurryNo 交易币种(CNY)
AccessType 接入类型(0-商户 1-机构)
AcqCode 收单机构号(平台分配,可不传递 可传:000000000000014)
MerPageUrl 商户前台通知地址
MerBgUrl 商户后台通知地址
MerResv 商户私有域(回调会原样数据返回)
Signature 签名
支付回调参数:
AcqDate:20211202 # 收单日期
TranType:0001 # 交易类型
AcqSeqId:00000003686254 # 收单流水号(银联单号)
TranDate:20211202 # 商户交易日期
BankInstNo:700000000151 # 支付机构号
CurryNo:CNY # 交易币种
BusiType:0001 # 业务类型
OrderAmt:100 # 订单金额
OrderStatus:0000 # 订单状态(0000-支付成功)
CompleteDate:20211202 # 订单完成日期
MerResv:MerResv # 商户私有域
MerOrderNo:163842732843 # 商户订单号
Signature:CxRMO5VswZ5HxrapaadOhQjriHQrQyrmiyQRINAZAdBfpZbQMHt4uN3cjk86G0Tta2XXIOO6w8%2BKgKPJ3riiNYO73b5z4dlCV9aatnTUUApxG8CrPNNpi9JyxyE17ZYeD7JEEwC7%2Bc%2F9ELK6PyVhFpLIf%2FTQEPikOAphj%2FaBwoISu9wk3OfPgafoBujkNfPN4q%2BvVanc2wdwj%2Fp259eR%2F85aUF4b06KIatVyw19Wfhu7u05YMg7Wewte3FsD%2B20Aa3PtNn74NahvRfUo9VvB%2BIa5e%2FbWZZ%2BiaQA%3D%3D # 签名
MerId:79001 # 商户号
CompleteTime:144311 # 订单完成时间
TranTime:021229 # 商户交易时间
Version:20140728 # 版本号
注意点:
1. 虽然同步与异步返回的是同样的参数, 但是还是有些不同 , 最好将接收到的数据value进行urldecode解码操作之后,再进行签名验证,否则会出现验证不通过的情况,当前同步回调参数是无需进行urldecode操作, 但是异步回调是必须的