關於支付寶以及微信支付的整合

weixin_33866037發表於2018-03-14

關於第三方支付實現

  • 1.點選第一個支付按鈕,後臺自己生成一個訂單,成功之後進入下一個支付頁面
  • 2.點選取消,返回上一個介面
  • 3.點選確定,呼叫後臺支付介面,後臺開始呼叫支付寶介面預下單,生成加簽後的移動端需要的引數,返回給移動端
    1. 移動端拿到 支付需要的引數,呼叫支付功能,代開第三方支付的app進行支付,支付成功,支付寶返回成功狀態碼給移動端,然後從第三方app返回自己的app
    1. 支付寶後臺非同步返回成功的訊息給 app的後臺
    1. 自己的app收到支付成功的響應,就請求後臺介面,看是否成功,如果成功,則進入支付成功的介面
    1. 失敗提示失敗,增加個 如果對訂單有任何疑問的超連結,人工解決這些異常狀況

1. 關於支付寶整合



    1. 支付遇到的bug
      1. 與後臺聯調的過程中,傳參的時候,報網路繁忙的錯誤,是因為傳的引數不對,必須使用後臺給的加簽之後的引數,才可以。
        例如後臺返回一下格式的資料,那麼 aliPayOrderString 的值就是我們要傳的參
{
    "seq": "321321",
    "code": 0,
    "msg": "sucessfull",
    "resMap": {},
    "aliPayOrderString": "alipay_sdk=alipay-sdk-java-dynamo&app_id9%3A52&version=1.0"
}
    1. 與後臺聯調,在支付成功的時候,沒有跳回app, 沒有接收到來自支付寶支付成功9000的回撥,導致後臺查詢不到支付成功的訂單,是由於客戶端沒有配置 urlScheme ,導致支付寶沒法返回app

    1. 支付接入流程
      1. 申請app的配置所需要的 appid、 應用公鑰、應用私鑰 ,需要填寫的資訊如下:
1.  進入網站,點選開發接入,掃碼登陸
2.  使用場景選擇第三方應用
3.  名稱:appname
4.  提供給我 appid:應用ID,呼叫API時用來識別開發者
5.  private_key:應用私鑰,pkcs8格式
6.  簽約才能獲取應用金鑰:使用公司支付寶 ,
聯絡人填法人
(簽約需要時間的,以及上架慢一點估計要3天+)

    1. 配置所有引數之後,支付第一步 :需後臺拿著相關引數加簽,返回加簽之後的引數給app移動端; 支付第二步,發起支付,呼叫支付方法,呼叫支付寶客戶端,支付寶付款介面進行付款,支付寶使用應用公鑰對交易資料進行驗籤,(付款成功失敗支付寶都會一部回撥結果給後臺,再次請求後臺介面,根據後臺返回的結果,來真正判斷是否付款成功)付款成功與失敗都返回自己的app,收到支付寶的回撥; 支付第三步:若支付寶返回成功。app端收到9000支付成功的回撥,再次呼叫後臺介面,若後臺介面返回支付成功,則提示使用者支付成功。
1059554-e57e20823e73f22c.png
image.png
    1. APP移動端所有工作完成的之後,後臺還需要做訂單核對功能

2. 關於微信支付整合


    1. 微信支付中遇到的BUG
      1. 在支付的過程完成的時候,返回0,由於訂單號不對的原因,用正確規則行成的訂單號才可以,調起app支付的功能。
    1. 微信支付接入流程
      1. 在微信開放平臺新建一個app, 獲取專案需要配置引數的appid、appkey、微信支付商戶號、API金鑰
      1. 其餘的步驟同支付寶

tips: 仔細看第三方文件,加強自己文件閱讀的能力。不懂的多問,多積累,學會感恩

相關文章