wap站、手機APP 接入支付寶、微信、銀聯支付。


 一、wap站

 ①、支付寶接入

  1、開發前准備:申請一個通過實名認證的企業支付寶賬號,並申請開通手機WAP支付功能。

  2、流程

    參數准備:

    1. 企業支付寶賬號的PID(也叫ParnerID)和KEY,如果使用RSA簽名而不是MD5的話,還要把RSA私鑰准備好
    2. 支付時用戶看到的東西:商品名稱(subject)、支付總額(total_fee)、購買數量(通常都是1吧)
    3. 交易后的跳轉地址,交易成功后用戶可以手工點擊,或頁面延遲自動跳轉到這個地址(return_url)
    4. 交易狀態異步通知地址,交易成功或交易關閉會把消息POST到這個地址(notify_url)

    流程圖:

    

    流程解釋:     

    1. 用戶點擊購買按鈕(或其他形式),向網站發起購買請求
    2. 網站創建訂單,指派一個唯一訂單號
    3. 網站把訂單號、企業支付寶賬號、交易金額、數量等信息,用私鑰簽名發送給支付寶
    4. 支付寶創建一個交易訂單,返回一個交易令牌(token)
    5. 網站按照指定要求,用token和自己的私鑰,構造一個重定向得到支付地址
    6. 網站把重定向地址返回給瀏覽器
    7. 瀏覽器自動重定向到該地址,即包含了token、網站簽名的支付寶交易頁面
    8. 支付寶顯示當前交易金額、數量、賣家等信息
    9. 用戶用自己的支付寶賬號支付這筆金額
    10. 支付寶把用戶支付成功(或失敗)這個消息和訂單號加上支付寶的簽名,使用HTTP POST的方式通知網站(失敗的話,會隔段時間重新發送)
    11. 網站處理交易后續邏輯(發貨、訂單狀態存儲之類的)
    12. 網站返回"success"字符串給支付寶,表示該通知已經處理,不用再重發
    13. 支付寶顯示支付成功頁面給用戶(這一步和第10步是不分先后發生的)
    14. 支付成功頁面延遲自動跳轉,或用戶點擊“返回商戶頁面”,跳轉到網站的支付結束頁面(此時不一定成功處理支付寶發來的通知),但會在URL帶上當前的訂單號和狀態。

  3、總結:整個流程主要分三步:一是申請支付寶交易號(獲取token),這一步可以理解為,讓支付寶驗證網站的有效性、讓網站指定該交易要支付多少錢 二是用戶到支付寶頁面付款,這一步可以理解為,讓支付寶驗證用戶有效性,讓用戶在一個不受網站監視的環境下進行支付 三是用戶付款后,處理結果頁面告訴用戶支付成功(同步通知),另外異步通知網站服務器該訂單已支付。

 

 ②、微信支付接入

  1、開發前准備:商戶在微信公眾平台(申請掃碼支付、公眾號支付)或開放平台(申請APP支付)按照相應提示,申請相應微信支付模式。微信支付工作人員審核資料無誤后開通相應的微信支付權限。微信支付申請審核通過后,商戶在申請資料填寫的郵箱中收取到由微信支付小助手發送的郵件,此郵件包含開發時需要使用的支付賬戶信息。

  2、流程:

    

    流程解釋

      1、用戶在商戶側完成下單,使用微信支付進行支付

      2、由商戶后台向微信支付發起下單請求(調用統一下單接口)注:交易類型trade_type=MWEB

      3、統一下單接口返回支付相關參數給商戶后台,如支付跳轉url(參數名“mweb_url”),商戶通過mweb_url調起微信支付中間頁

      4、中間頁進行H5權限的校驗,安全性檢查。

      5、如支付成功,商戶后台會接收到微信側的異步通知

      6、用戶在微信支付收銀台完成支付或取消支付,返回商戶頁面(默認為返回支付發起頁面)

      7、商戶在展示頁面,引導用戶主動發起支付結果的查詢

      8,9、商戶后台判斷是否接到收微信側的支付結果通知,如沒有,后台調用我們的訂單查詢接口確認訂單狀態

      10、展示最終的訂單支付結果給用戶

 

③、銀聯接入

  1、開發前准備:商戶與銀聯簽約並支付費用,審核通過之后獲取商戶ID和秘鑰、下載銀聯接入Demo。

  2、流程圖:

    

    流程圖解釋:

 

二、手機APP

①、支付寶接入

  1、開發前准備:申請一個通過實名認證的企業支付寶賬號、下載SDK開發包、提供APP apk以備審核,審核通過后即可進行代碼集成。

  2、流程

    流程圖:

    

    流程解釋:

    1. app攜帶支付信息調用支付接口請求支付寶客戶端調起支付界面;
    2. 用戶操作,輸入密碼支付,支付成功;直接返回取消支付;出現錯誤,支付失敗;進入支付界面,但輸入密碼支付,支付待確認;
    3. 支付寶客戶端將支付結果告訴app客戶端,商戶服務器通知app服務器支付結果;
    4. app客戶端處理支付結果;
    5. app服務器處理支付結果。

 ②、微信支付接入

  1、開發前准備:在微信開放平台上申請開發者帳戶,申請移動應用,並且申請開通微信支付。經過一系列流程,開通會有郵件,得到對應的(1)開放平台APPID(2)商戶號MCHID(3)商戶密鑰key、下載微信SDK開發包。

  2、流程:

    流程解釋:

      1. 客戶端請求訂單

      2.認證商戶,獲取access_token

      3、組裝生成預定單所需參數並簽名

      4、調用微信統一下單接口並傳遞參數,得到預訂單號

      5、對得到的預定單參數再次簽名

      6、調起微信支付並驗證參數有效性

      7、驗證通過,提示用戶輸入支付密碼

      8、提交支付,異步返回支付結果和訂單詳情

      9、客戶端同步跳轉頁面。

  

③、銀聯支付接入:

  1、開發前准備:商戶與銀聯簽約並支付費用,審核通過之后獲取商戶ID和秘鑰、下載銀聯接入Demo、下載集成到APP中的SDK開發包                  (https://open.unionpay.com/ajweb/help/file)。

  2、流程圖:

    

  

    流程圖解釋:

      (1)用戶在客戶端中點擊購買商品,客戶端發起訂單生成請求到商戶后台;

      (2)商戶后台收到訂單生成請求后,按照《手機控件支付產品接口規范》組織並推送訂單信息至銀聯后台;

      (3)銀聯后台接收訂單信息並檢查通過后,生成對應交易流水號(即TN),並回復至商戶后台(應答要素:交易流水號等);

      (4)商戶后台接收到交易流水號(TN),將交易流水號返回至客戶端;

      (5)客戶端通過交易流水號(TN)調用支付控件;

      (6)用戶在支付控件中輸入相關支付信息后,由支付控件向銀聯后台發起支付請求;

      (7)支付成功后,銀聯后台將支付結果通知給商戶后台;

      (8)銀聯后台同時也將支付結果通知支付控件;

      (9)支付控件顯示支付結果並將支付結果返回至客戶端;

     此處備注:我們是通過后台獲取訂單,我們可以根據商品id等信息通過后台接口獲取訂單信息,對訂單支付流程的簽名加密過程后台完成。


免責聲明!

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



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