摘要: 招商银行聚合支付文档
今天的开发需求是uniapp对接微信招商银行聚合支付,下面对相关业务进行说明!
前要工作:
要实现支付功能需要做一些前置工作,如果未完成则微信支付不可用。
1,公司来申请:申请微信支付商户号
2,小程序管理员开通: 绑定已有商户号并开通微信支付
注意: 一个商户可以关联多个小程序,一个小程序也可以绑定多个商户。
对应日常开发,在多商户的情况,每一个商户号在后台都会进行配置,存入数据库,支付时根据当前不同的账户决定使用那一个商户号,这一块需要后台对每一个AppId和商户号做关联,支付时才能确认具体使用那个商户号。(这一块需要后台处理相关逻辑)
获取code:
小程序微信招商银行聚合支付必须要携带code给后端验证的!但是小程序支付需要进一步获取openid作为验证安全性更好的,由于这是对接的招商银行聚合支付,我把code给后端,后端会根据code来获取openidid与招商银行那边作校验的!
weChatAfter() {
let that = this;
uni.login({
provider: 'weixin',
success: function(loginRes) {
that.loginResCode = loginRes.code;
}
})
setTimeout(function() {
that.weChatPayment()
}, 800);
},
触发后端接口唤起微信支付:uniapp支付文档
weChatPayment() {
let self = this;
let formData = {
self.introduceData,
orderId: self.introduceData.id,
payPwd: "123456",
// totalAmount: 0.01,
code: self.loginResCode,
// mallId:self.mallId
}
self.$api.weChatPayment(formData).then(res => {
if (res.code == 200) {
let data = res.data;
uni.requestPayment({
"timeStamp": data.payData.timeStamp,// 时间戳
"nonceStr": data.payData.nonceStr,// 随机字符串
"signType": data.payData.signType,// 签名算法
"package": data.payData.package,
"paySign": data.payData.paySign,// 签名
success: (res) => {
self.timer = setInterval(function() {
self.getweChatPayStatus()
}, 3000);
},
fail: (err) => {
uni.showToast({
icon: 'none',
title: "支付失败"
})
// 取消订单的问题。
// apiDeleteChargeOrder(orderId)
}
})
}
}).catch(err => {})
},
支付后要不断刷新当前支付的订单状态给后端获取招商银行那边的支付状态!所以要弄一个定时任务,如果回调成功后会返回主页!支付失败会直接提示回调的状态!
getweChatPayStatus() {
this.$api.getweChatPayStatus(this.introduceData.orderNumber,this.introduceData.id).then(res => {
if (res.code == 200) {
clearInterval(this.timer);
this.timer = null;
uni.showToast({
icon: 'none',
title: "支付成功",
})
setTimeout(() => {
uni.switchTab({
url: '/pages/index/index'
})
}, 500)
}
}).catch(err => {})
},
报错问题:
1,支付场景非法
–后台需要在创建预支付接口时将trade_type修改为JSAPI模式
2,支付验证签名失败
–需要后台检查生成签名时填写的appid是否正确,一个是小程序appid一个是应用的appid,确保没填错文章来源:https://www.toymoban.com/news/detail-673901.html
3,调用支付JSAPI缺少参数:total_fee
–可能是参数有误,注意package参数格式为:“prepay_id=wx20161…”文章来源地址https://www.toymoban.com/news/detail-673901.html
到了这里,关于uniapp小程序微信招商银行聚合支付的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!