如下是微信支付交互時序圖,統一下單API、支付結果通知API和查詢訂單API等都涉及簽名過程,服務器
調用都必須在商戶服務器端完成。如圖1所示。微信
圖1 APP支付時序圖app
商戶系統和微信支付系統主要交互說明:異步
步驟1:用戶在商戶APP中選擇商品,提交訂單,選擇微信支付。微信支付
步驟2:商戶後臺收到用戶支付單,調用微信支付統一下單接口。網站
步驟3:統一下單接口返回正常的prepay_id,再按簽名規範從新生成簽名後,將數據傳輸給APP。參與簽名的字段名爲appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式爲Sign=WXPayurl
步驟4:商戶APP調起微信支付。spa
步驟5:商戶後臺接收支付通知。3d
步驟6:商戶後臺查詢支付結果。對象
如下是支付寶支付交互時序圖 ,以下圖圖2所示
圖2 APP支付時序圖
圖中虛線標識商戶鏈路,實線標識支付寶鏈路。
第4步:調用支付接口:此消息就是本接口所描述的支付寶客戶端SDK提供的支付對象PayTask,將商戶簽名後的訂單信息傳進payv2方法喚起支付寶收銀臺
第5步:支付請求:支付寶客戶端SDK將會按照商戶客戶端提供的請求參數發送支付請求。
第8步:接口返回支付結果:商戶客戶端在第4步中調用的支付接口,會返回最終的支付結果(即同步通知)
第13步:用戶在支付寶APP或H5收銀臺完成支付後,會根據商戶在手機網站支付API中傳入的前臺回跳地址return_url自動跳轉回商戶頁面,同時在URL請求中附帶上支付結果參數。同時,支付寶還會根據原始支付API中傳入的異步通知地址notify_url,經過POST請求的形式將支付結果做爲參數通知到商戶系統
除了正向支付流程外,支付寶也提供交易查詢、關閉、退款、退款查詢以及對帳等配套API。
特別注意: