华体会app下载

小程序支付不了咋回事

最近有机会尝试了小程序的支付开发,总结下期间碰到的问题。

小程序支付和以往的网页、APP微信支付大同小异,应该说小程序的支付更简便了些,不需要设置支付目录、不需要授权域名等操作。其实主要的流程就两步:

开发者服务端向微信发起统一下单请求,小程序调起微信支付。

接下来说说开发过程中遇到的一些问题。

1:首先确认小程序已经申请开通支付功能且开通或绑定商户号。

如果之前已经实现过微信支付,可以直接绑定原有的商户号即可,开发前的准备工作还是要做好的。

2:确认用户的openid和appid是对应的。

如果只有一个微信系产品的话,这个问题应该不会存在,但是比如存在公众号、小程序等多个微信系产品的情况下,就需要特别注意对应关系了,在请求统一下单接口时一定要确保提交参数中的openid是其对应appid下的用户,因为存在多个appid的时候会容易把openid搞错,所以一定要通过appid这一条件去数据库获取用户openid,不匹配的appid和openid在统一下单会返回一个APPID_MCHID_NOT_MATCH 错误。

3:微信支付回调需要再次签名验证。

在统一下单的接口中会传入一个notify_url的参数供微信对支付结果的一个回调通知,我们以这个支付结果回调通知来判断当前支付是否成功从而来更新业务状态,而且我们还需要对notify_url接收的参数再次做签名校验,防止被恶意请求或伪造支付结果通知。

4:小程序支付成功页面跳转问题。

小程序通过 wx.requestPayment 来调起微信支付,在success方法里可以实现支付成功后页面自定义跳转。注意跳转方式请选用合适的导航,小程序里不同的导航所支持的跳转方式不一样。

问答

怎么查看自己的微信小程序id

2022-6-15 11:44:18

问答

小程序支付功能的申请过程

2022-6-16 12:49:26

搜索