新能力|云调用支持微信支付啦!
发布于 5 年前 作者 vzhang 1700 次浏览 来自 分享

导语

小程序·云开发的云调用能力,让用户可以免鉴权快速调用微信的开放能力,极大节约了开发成本。现在,云调用已支持微信支付,用户在云开发控制台可直接绑定微信支付商户,在绑定完成后可在云开发中原生接入微信支付。

使用云开发的云调用来实现相应的支付功能后,__开发者无需关心证书、签名、微信支付服务器端文档,使用简单,代码较少,只需要调用相应的函数即可。此外,因为云调用基于微信私有协议实现,官方通过服务商提供支付接口对接支持,不依赖第三方模块,免去泄漏证书、支付情况等其他敏感信息的风险。此外,云开发的__云调用还支持云函数作为微信支付进行支付和退款的回调地址,不再需要定时轮询,更加高效

云调用支付支持接口

云调用支付现已支持如下接口

  • 统一下单接口
  • 查询订单
  • 关闭订单
  • 下载对账单
  • 申请退款
  • 查询退款

如何接入

准备工作

  • 微信开发者工具 Nightly 版 1.02.2005111 及更新的版本
  • 需要已经开通了微信支付,且已绑定了商户号的小程序。

如何开通

在微信开发者工具中,使用绑定的微信小程序账号,打开云开发控制台,在云开发控制台中的 设置 - 全局设置 中添加商户号

添加后,需要在绑定的商户号管理员在微信支付提供的【服务商助手】小程序上确认授权

如果需要 jsapi 和 api 退款权限,需要前往微信支付商户平台我的授权产品中进行确认授权,完成授权后即可调用微信支付相关接口能力

支付 Demo 代码

在云函数中,调用 cloudPay.unifiedOrder ,即可生成小程序侧调用支付接口所需请求结果

cloud.cloudPay.unifiedOrder({
        "body" : "小秋TIT店-超市",
        "outTradeNo" : "${Date.now().toString().slice(3)}",
        "spbillCreateIp" : "127.0.0.1",
        "subMchId" : "1900009231",
        "subAppid" : "wxe5f52902cf4de896",
        "totalFee" : 1,
        "envId": "test-f0b102",
        "functionName": "pay_cb"
})

关键开发流程

  1. 小程序调用云函数,在云函数中调用统一下单接口,参数中带上接收异步支付结果的云函数名和其所在云环境 ID
  2. 统一下单接口返回的成功结果对象中有 payment 字段,该字段即是小程序端发起支付的接口(wx.requestPayment)所需的所有信息
  3. 小程序端拿到云函数结果,调用 wx.requestPayemnt 发起支付
  4. 支付完成后,在统一下单接口中配置的云函数将收到支付结果通知

支付回调

微信支付云调用在调用时,需要传递 envIdfunctionName 这两个参数,这两个参数将会在微信支付成功后,发送相应的消息通知,来告知开发者用户的支付状态。

相关文档

云调用微信支付能力说明:<a href="https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/wechatpay.html" rel="noopener" target="_blank">https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/wechatpay.html</a>
API 文档:<a href="https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/open/pay/Cloud.CloudPay.html" rel="noopener" target="_blank">https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/open/pay/Cloud.CloudPay.html</a>

视频教程

为了帮助你掌握云调用微信支付,这里为你准备了快速上手视频~快去试试吧~

https://www.bilibili.com/video/BV1Tz4y1d7CX

总结

云开发的微信支付云调用能力,可以让更多的开发者安全、快捷的实现支付,让企业的资金更加的安全。

小调研

云调用现在已经支持了微信支付,除了微信支付,你还有什么特别想要的功能么?不妨在下方评论区中留言告诉我们。

4 回复

为什么普通商户不支持,只支持服务商子账户

为什么我没有找到微信支付配置呢,我明明开通了微信支付

这里的微信支付配置可以通过接口去发起添加请求吗

支持特约商户吗?

回到顶部