【问题排查与解决】ios调起微信小程序支付失败

在iOS上调用微信小程序支付SDK遇到问题,安卓系统正常。问题可能涉及支付规范、参数缺失和SDK版本。解决包括:遵循支付规范避免特定字眼,确保传递小程序appId,检查使用正确版本的SDK。添加appId后,iOS成功调起支付。注意,官方文档未明确提及appId参数。
摘要由CSDN通过智能技术生成

场景

从外部APP跳转进入微信小程序中完成支付操作。安卓可以正常调起支付sdk,ios却不可以。

排查方向(1. 支付规范导致2. 参数缺少导致3. sdk版本问题)

微信小程序支付规范

微信小程序支付规范
在这里插入图片描述

解决方式

云端在生成预支付订单时,不要出现,费用、支付、付费、续费、转账等与费用相关的字眼。
参考链接

调起微信小程序参数问题(需要传入当前小程序的appId)

小程序拉取支付文档地址
在这里插入图片描述
公司前端小伙伴本身也是这样拉起支付的,安卓是可以正常拉起的,但ios就是不行,云端生成预支付订单的参数中也没有这些字眼(费用、支付、付费、续费、转账

解决方式

最后排查了好久发现还需要再传入当前小程序的appId

实际调起微信小程序支付需要的参数

 "wcPayData":{
 			"appId":"wx0xxxxxxxxxxxxxxx",
            "timeStamp":"123456789",
            "package":"prepay_id=wxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000",
            "paySign":"xxxx",
            "signType":"xxx",
            "nonceStr":"xxxxxxxxxxx"
        },

加入appId参数之后,ios可以正常拉起密码框完成支付,而官方文档中并没有该参数,具体什么原因并不得知。

SDK版本问题

微信的SDK分两种,一种包含支付的SDK,另一中是不包含支付的SDK。

解决方式

sdk问题解决方式参考

希望本文可以帮到你。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值