開發(fā)指引
商戶后臺系統(tǒng)先調(diào)用微信支付的統(tǒng)一下單接口,微信后臺系統(tǒng)返回鏈接參數(shù)code_url,商戶后臺系統(tǒng)將code_url值生成二維碼圖片,用戶使用微信客戶端掃碼后發(fā)起支付。注意:code_url有效期為2小時,過期后掃碼不能再發(fā)起支付。
業(yè)務(wù)流程時序圖
業(yè)務(wù)流程說明:
(1)商戶后臺系統(tǒng)根據(jù)用戶選購的商品生成訂單。
(2)用戶確認(rèn)支付后調(diào)用微信支付【統(tǒng)一下單API】生成預(yù)支付交易;
(3)微信支付系統(tǒng)收到請求后生成預(yù)支付交易單,并返回交易會話的二維碼鏈接code_url。
(4)商戶后臺系統(tǒng)根據(jù)返回的code_url生成二維碼。
(5)用戶打開微信“掃一掃”掃描二維碼,微信客戶端將掃碼內(nèi)容發(fā)送到微信支付系統(tǒng)。
(6)微信支付系統(tǒng)收到客戶端請求,驗證鏈接有效性后發(fā)起用戶支付,要求用戶授權(quán)。
(7)用戶在微信客戶端輸入密碼,確認(rèn)支付后,微信客戶端提交授權(quán)。
(8)微信支付系統(tǒng)根據(jù)用戶授權(quán)完成支付交易。
(9)微信支付系統(tǒng)完成支付交易后給微信客戶端返回交易結(jié)果,并將交易結(jié)果通過短信、微信消息提示用戶。微信客戶端展示支付交易結(jié)果頁面。
(10)微信支付系統(tǒng)通過發(fā)送異步消息通知商戶后臺系統(tǒng)支付結(jié)果。商戶后臺系統(tǒng)需回復(fù)接收情況,通知微信后臺系統(tǒng)不再發(fā)送該單的支付通知。
(11)未收到支付通知的情況,商戶后臺系統(tǒng)調(diào)用【查詢訂單API】(查單實現(xiàn)可參考:支付回調(diào)和查單實現(xiàn)指引)。
(12)商戶確認(rèn)訂單已支付后給用戶發(fā)貨。
生成二維碼規(guī)則
對應(yīng)鏈接格式:weixin://wxpay/bizpayurl?sr=123456。請商戶調(diào)用第三方庫將code_url生成二維碼圖片。該模式鏈接較短,生成的二維碼打印到結(jié)賬小票上的識別率較高。
例如,將weixin://wxpay/bizpayurl?sr=123456生成二維碼見圖6.10。
圖6.10掃碼支付二維碼示例