1. 程式人生 > >微信支付邏輯圖

微信支付邏輯圖

微信支付時序圖。

微信支付官方文件https://pay.weixin.qq.com/wiki/doc/api/index.html

  • xml與物件的互轉, 微信使用xml格式而不使用json通訊, 也確實有點奇葩
  • 簽名,千萬不要以為只是MD5一下,要是你自己開發,我敢說,你60%的時間都耗在簽名除錯這一塊


以上是微信公眾賬號支付的時序圖,簡單概括為2個點。

  • 下單,發起支付
  • 接收非同步通知,修改訂單的支付狀態
    下單和修改支付狀態是使用者的業務系統乾的事,我們主要重點在發起支付和接收非同步通知


微信支付流程:
①、使用者訪問支付頁面時,該頁面生成支付訂單,向微信伺服器報備訂單,而這裡訂單的生成則需要商戶資訊,訂單資訊,還有使用者openid,簽名等。


②、訂單生成成功,微信返回一個訂單的資訊,然後將這些資訊分配到前段頁面。
③、使用者點選支付按鈕時,呼叫發起支付的方法,此時微信會驗證這個方法是否正確,正確則可出現支付頁面。
④、支付成功或失敗或取消,微信都會把資訊返回,此時可根據返回資訊作出不同處理。