第三方支付集成


    看一個典型的在線支付流程。第三方支付平台就是提供網上支付的平台,由第三方支付平台來和各個銀行進行對接,商戶只要和第三方支付平台對接即可,降低了商戶的技術難度和接入門檻。常見的第三方支付平台:支付寶、網銀在線、快錢、財付通、易寶等。

    一個支付流程的數據流動:客戶在網上商店挑選商品、點擊支付,網站將用戶重定向到第三方支付平台的支付網關,並且將訂單號、金額等信息通過QueryString傳遞給支付網關,用戶在第三方支付平台支付成功后,第三方支付平台會自動訪問商戶的確認頁面,將支付成功的訂單號等信息通過QueryString傳遞給確認頁面,這樣商戶網站就能得到支付成功的通知了。以服裝賣場中的收銀台流程類比(漏洞:自己偷偷蓋假章,防范辦法:收銀台和商戶約定一個密鑰“天靈靈”,然后收銀台在小票上根據“小票編號”+“金額”+密鑰計算出md5寫到小票上)。

 

    todo:模擬器增加1 3 5分鍾重復通知商戶支付成功。重復通知的話是支付寶向商戶網站發請求,這時候支付寶服務器是客戶端。商戶號不存在的問題解決
Response.redirect過程商戶網站、瀏覽器、支付寶的請求流程。注意Transfer和Redirect的區別。retun.aspx頁面的參數是支付寶傳遞過來的。
虛擬商品(積分、充值卡)就直接增加積分、充值了。物理商品(鮮花、圖書)就把訂單標記為已支付,然后網站工作人員處理訂單、發貨,再把訂單狀態標記為“已發貨”(業務員手動完成),最后用戶確認收貨。

    第三方支付平台都提供了集成文檔和示例代碼,拿過來改改就行,當然如果你有興趣的話,可以看下這些示例代碼。至於具體的調用和實現,我就沒必要講了,因為支付寶有現成的Demo和灰常詳細的api文檔,我們要思考的是如何和訂單系統結合。

    網店不是直接向支付寶服務器發請求,而是讓用戶重定向到支付寶服務器去支付。就像服裝店讓客戶自己拿着小票去交錢一樣。

每個商家的密鑰都和其他商家不一樣,避免了“整個服裝城用一個hahah”的漏洞。要把訂單編號也加入md5的運算,防止用“001的返回小票領002號訂單的商品的漏洞”。商戶端的MD5算法要和支付寶一樣,否則會報錯,這個MD5算法是支付寶開發包中提供的。

開發包和密鑰的獲取,我們可以訪問支付寶官網技術支持頁面:https://b.alipay.com/order/techService.htm

 

下載相應的接口包,里面有各種語言的實例代碼和詳細的API文檔。

注意事項:

1、  訂單號是商家確定的。

2、  參數順序無所謂。

3、  支付寶就是“收銀台”,很形象,支付寶就是負責收銀,商家引導客戶去收銀台。收費單據就是返回的值。

4、  不要直接訪問模擬器主頁,模擬器主頁就是相當於支付寶的主頁

模擬器整合方法

1、解壓PaySiteSimulator.zip,如下:

運行Casini,把PaySiteSimulator當成網站運行,8080端口。這個相當於搭建支付寶模擬器網站,這個網站不需要咱們開發。

訪問模擬器的首頁:“支付寶網站后台(支付寶工作人員用)”是用來分配商戶編號的,支付寶商戶后台是供商戶修改密鑰的。

 

點擊Start按鈕,然后訪問模擬器主頁

 

2、修改C:\WINDOWS\system32\drivers\etc\hosts,把www.zhifubao.com映射到127.0.0.1

 

3、按照AliPay/支付寶接口集成文檔.進行集成測試。注意:那個支付寶模擬器是模擬支付寶的網站,不是商戶的程序。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM