收藏
回答

微信支付回调应该怎样处理业务?

用户支付完成=》界面显示支付成功=》微信服务器发起回调请求=》服务器验证签名、金额=》修改订单状态

这是正常的支付流程

用户支付完成=》界面显示支付成功=》微信服务器发起回调请求=》服务器验证 金额或者签名不对=》这个时候需要怎么做

当回调的验证 金额或者签名不对的情况下 服务器应该做什么,退款? 推送给客户端说信息不符? 但是用户这边已经显示支付成功了


这个问题一直没想明白


回答关注问题邀请回答
收藏

2 个回答

  • Yza
    Yza
    2020-10-15

    验签不对,就肯定什么都不处理。就是等待结果中。

    验签对,但是 支付金额不对、数据不对等等情况,建议调用一次 查询订单接口,按查询结果为准更新本地数据。如果查询回来是未支付的,客户那边支付的话,找腾讯客服反映。

    2020-10-15
    有用 1
    回复 3
    • F帅
      F帅
      2020-10-15
      小程序端显示支付成功后 我这边需要用小程序连接蓝牙进行出货的业务, 但是如果还需要再回调中确认支付结果,是不是只能等回调成功后 给小程序推送消息啊
      2020-10-15
      回复
    • Yza
      Yza
      2020-10-15回复F帅
      可以在回调中确认结果。也可以在支付成功跳回来的页面,自己主动查询一次结果嘛,不用等回调。


      考虑到有些用户直接支付完,就关掉所有页面的情况,我建议你在回调中 推送消息。
      2020-10-15
      回复
    • F帅
      F帅
      2020-10-15
      感谢感谢
      2020-10-15
      回复
  • 老张
    老张
    2020-10-15

    我们的做法,仅供参考:

    一、notify_url中,一般只有两步处理:1、一个集合用来完整记录回调通知信息;2、在关联订单或者商品上改为已支付并加入支付者的openid(尽量原子操作,不涉及到事务);

    二、在小程序端,如果用户支付后,点击了“完成”,则进入业务处理,如步骤一的第2步;如果用户直接切换退出小程序,则什么也不做。

    2020-10-15
    有用
    回复
登录 后发表内容
问题标签