QQ 小程序微信支付功基于微信 H5 支付,QQ小程序后台仅对统一下单和支付回调两种接口进行透明转发。 其它接口(查询订单,关闭订单,申请退款,查询退款等)需开发者直接请求微信支付后台。
调用 QQ 小程序微信 H5 支付统一下单代理接口获取 H5 支付跳转连接
QQ小程序内使用 qq.requestWxPayment 呼起微信支付
目前微信支付按类目开放给包含以下一个或多个类目的小程序:电商平台、教育、生活服务、工具、旅游、餐饮、商家自营、商业服务、体育、汽车、社交红包。 只有允许开通的类目才可以在开发者管理端看到开通入口。
微信 H5 支付有 V2 版和 V3 版,两种版本的区别参见微信支付官网。官方文档
QQ小程序代理微信支付流程图如下:
微信支付原统一下单 API 为:
https://api.mch.weixin.qq.com/pay/unifiedorder
QQ 小程序后台对应的代理下单 API 为:
https://api.q.qq.com/wxpay/unifiedorder?appid=YourQQAppID&access_token=YourAccessToken&&real_notify_url=UrlEncodedNotifyUrl
微信支付原统一下单 API 为:
https://api.mch.weixin.qq.com/v3/pay/transactions/h5
QQ 小程序后台对应的代理下单 API 为:
https://api.q.qq.com/wxpay/v3/pay/transactions/h5?appid=YourQQAppID&access_token=YourAccessToken&&real_notify_url=UrlEncodedNotifyUrl
微信支付原统一下单 API 为:
https://api.mch.weixin.qq.com/v3/pay/partner/transactions/h5
QQ 小程序后台对应的代理下单 API 为:
https://api.q.qq.com/wxpay/v3/pay/partner/transactions/h5?appid=YourQQAppID&access_token=YourAccessToken&&real_notify_url=UrlEncodedNotifyUrl
微信支付原统一下单 API 为:
https://api.mch.weixin.qq.com/v3/combine-transactions/h5
QQ 小程序后台对应的代理下单 API 为:
https://api.q.qq.com/wxpay/v3/combine-transactions/h5?appid=YourQQAppID&access_token=YourAccessToken&&real_notify_url=UrlEncodedNotifyUrl
参数 | 是否必须 | 参数类型 | 填写说明 |
---|---|---|---|
appid | 是 | query | 填写 QQ 小程序 appid, 区别于 body 中的 appid,body 中填写的是微信的 APPID |
access_token | 是 | query | QQ 小程序后台接口调用凭证,通过getAccessToken 获得 |
real_notify_url | 否 | query | 填写直接调用微信支付下单接口时的 notify_url 参数,接收微信支付异步通知回调地址,通知url必须为直接可访问的url,不能携带参数。可选参数,若不填写,则取QQ小程序开发者管理端绑定的回调地址。 |
request body | 是 | body | 和直接请求微信支付后台的统一下单接口一样,但 notify_url 参数必须填写 QQ 小程序平台支付回调代理地址 |
API 版本 | 参数名称 | 参数类型 | 值 | 说明 |
---|---|---|---|---|
V2 | notify_url | body | https://api.q.qq.com/wxpay/notify | QQ 小程序平台 V2 版 支付回调代理地址 |
V3 | notify_url | body | https://api.q.qq.com/wxpay/v3/notify/MCH_ID/OUT_TRADE_NO | QQ 小程序平台 V3 版 支付回调代理地址, 其中 MCH_ID 和 OUT_TRADE_NO 分别为下单时的商户号和订单号。直连模式填普通商户号和订单号;服务商模式填服务商商户号和订单号;合单下单填合单商户号和订单号。 |
/v3/pay/transactions/h5
错误码 | 含义 | 解决方法 |
---|---|---|
9030 | 商户号没绑定 | 去 QQ 小程序开发者管理端绑定使用的商户号 |
9031 | notify_url 设置错误 | 按照上面 notify_url 参数填写说明检查参数 |
9032 | 没有开通微信支付 | 去 QQ 小程序开发者管理端开通微信支付接入权限 |
9034 | 请求 body 解析失败 | 检查请求 body |
下单成功后开发者会拿到用于呼起微信支付的跳转链接, 在 QQ 小程序中不允许直接呼起微信支付,需通过调用qq.requestWxPayment接口呼起