微信支付的坑

2020-12-31  本文已影响0人  苍老师的眼泪
  1. 服务端忘记二次签名,或二次签名的算法跟统一下单的签名算法不一致(一个md5另一个sha256)。
  2. 小程序端调用wx.requestPayment方法时,timestamp参数不是字符串。
  3. 退款的时候,金额用元为单位带小数点而不是以整数分为单位(0参数格式错误)
  4. 统一下单返回“body不是UTF8编码”,body字段(商品简单描述)有utf8mb4字符(比如emoji标签😄)微信就会返回失败!
    解决方法:
$new_body = preg_replace('/[\x{10000}-\x{10FFFF}]/u', '', $body);
5. 统一下单返回 "商户单号重复",一般遇到这种情况时,先下了一单,未支付,再次支付的时候,订单金额发生了变化,
    这种情况应使用另一个商户单号下单。
6. 微信扫码付款,付款码缓存了
7. 某些sdk会缓存微信的证书,需要用原生的curl函数处理就好了
上一篇下一篇

猜你喜欢

热点阅读