前幾個月做了一個旅游網站,有PC站和手機站,涉及支付寶支付功能.
要求:PC站下的單,用戶用手機登錄也能支付;同理,手機站下的單,PC端登錄也能支付.
附支付寶開放平台網址:即時到賬 ,手機網站支付.
當然啦,最基本的就是要申請賬號,簽約產品.完事之後,把官網的DEMO跑起來.
PC端DEMO:create_direct_pay_by_user-CSHARP-UTF-8
手機端DEMO:alipay.wap.create.direct.pay.by.user-CSHARP-UTF-8
然後呢,要了解支付寶的支付邏輯.
現在我理解的是,把商品信息提交給Alipay而已(安全方面已然做足,時間戳,md5等加密參數確保api安全,Alipay會把表單數據拼接好,並post給Alipay,Alipay處理接收到的數據後,返回支付界面內容.)
Com.Alipay.Config.return_url:PC端和手機站支付完成後跳轉的頁面網址不一樣.
Com.Alipay.Config.service:"alipay.wap.create.direct.pay.by.user"(->手機站);"create_direct_pay_by_user"(->電腦站).
支付時主要參數:out_trade_no(商戶訂單號),subject(訂單名稱),total_fee(付款金額),body(商品描述)...等.
alipay會根據config去提交這些數據.生成支付寶訂單.
如果用戶下了訂單,卻未支付.如何繼續支付呢.
不管是手機端還是電腦端,根據 out_trade_no(商戶訂單號),subject(訂單名稱),total_fee(付款金額),body(商品描述)...等 再調用支付寶接口即可(信息保證和下訂單時的數據是一樣的),即可繼續支付上次下的訂單.