小程序支付
说明
- 目前 iOS 小程序(Android 小程序可以)暂时无法发起支付,原因是微信官方的政策原因,不是技术原因,可用时间需要等微信官方通知
- 你可以自己用收银台接口 + 客服消息或者模板消息 实现小程序打开网页收款,如果想小程序跳转请看下面
- 小程序代码 Demo 下载
接口参数
名称 | 类型 | 必须 | 说明 |
---|---|---|---|
aid | string | 是 | 账号aid |
name | string | 是 | 商品名称 |
pay_type | string | 是 | jsapi |
price | string | 是 | 如: 0.01 |
order_id | string | 是 | 你平台订单号,需要唯一 |
order_uid | string | 否 | 订单用户如: [email protected] |
notify_url | string | 是 | 回调地址 |
more | string | 否 | 订单其他信息,回调时原样传回 |
sign | string | 是 | 将参数按 name + pay_type + price + order_id + notify_url + app secret 顺序拼接后MD5(纯 value 拼接,不要包含 + 号) |
具体操作
- 跳转 XorPay 收银台小程序 appid 为:
wx455af826b1e7f2df
具体在 xorpay 后台查看 小程序具体跳转代码:
wx.navigateToMiniProgram({ appId: 'wx455af826b1e7f2df', path: 'pages/index/index', extraData: { 'aid': '1', #aid 'name': 'XorPay充值', 'pay_type': 'jsapi', 'price': '0.02', 'order_id': 'm-5', 'notify_url': 'https://abc.com/notify', 'sign': md5.hexMD5('XorPay充值' + 'jsapi' + '0.02' + 'm-5' + 'https://abc.com/notify' + 'app secret'), }, //envVersion: 'develop', fail(res) { wx.showToast({ title: res.errMsg, icon: 'none', }); }, success(res) { wx.showToast({ title: 'ok', icon: 'none', }); }, });
支付成功或者取消,会跳回你的小程序,并携带参数:
支付成功
extraData: { status: 'success' }
支付取消
extraData: { status: 'cancel' }
小程序直接拉起支付
- 先联系客服配置小程序 appid(小程序需要认证并且同一个主体才能绑定,也就是说只有企业小程序可以,个人小程序不行,因为个人小程序不能认证)
- 直接调用 JSAPI 接口 获取 jsapi 支付参数(接口需要额外传递小程序 appid 参数,如 /api/pay/aid?appid=xxxxxxx&is_mini=true)
- 在你小程序直接调用微信支付方法(无需跳转 xorpay 小程序)微信官方文档
- 该方式可以自行决定是否支持 iOS 支付
wx.requestPayment({
timeStamp: '',
nonceStr: '',
package: '',
signType: 'MD5',
paySign: '',
success (res) {
//支付成功
},
fail (res) {
//支付失败
}
})