关于微信支付的一些错误总结、微信支付48001

最近在一个项目中遇到了微信支付的一些问题,顺便写篇笔记记录一下。

1、errcode:48001 api unauthorized

这个问题属实很坑,刚刚收到这个错误的时候我百度了一下,网上很多网友都说是scope的原因,具体不再重复,参考链接:https://blog.csdn.net/xgocn/article/details/100082900

然后花了两天时间排查,直到我拿到前端传过来的code,通过微信官方的调试工具依然报错时才问前端你这code从那里获得的。前端说通过wx.login组件。

我们这个项目微信公众号、小程序、APP是统一的账号系统,但是不同的端口调用的接口不一样。wx.login属于小程序登录组件,获取到的code只能通过code2session接口获取openid。

至此问题得以解决。

当然如果是公众号授权的话,大家参考上述链接内容就可以解决问题了。小程序中获得code有两个组件,要注意区分。

2、微信total_fee下单时要精确到分。

我们经常用的金钱单位是元,因此商品的价格常常是类似10.01这样的格式,微信total_fee单位是分,在下单时我们需要乘以100,具体报的错误忘了,但必须注意这个细节。

而支付宝的金额单位是元。注意区分微信和支付宝。

3、JSAPI缺少参数total_fee。

发生这种问题首先要检查接口返回数据与官方是否一致,可以将相关数据打印输出。

其次是订单编号重复时也会在前端报这个错误。有时候用户对于一个订单发起了支付,但是并未支付,第二次再次发起支付的时候,订单中任何内容发生变更都会报订单重复的错误。

遇到订单重复的时候网友们建议的方法是修改订单号。

4、预支付ID

预支付ID的有效期为两个小时,预支付ID为空的时候往往会发生以下三种情形:

①金额为空

②订单编号重复

③订单编号为空

5、微信获取Openid的所有文档。

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_4

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开源商城源码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值