支付寶開放平台 最新sdk可以通路開放平台進行下載下傳。
以下為流程和注意事項。
1.名詞簡介
請求 手機用戶端以字元串形式把需要傳輸的資料發送給接收方的過程。
傳回 支付寶以字元串形式直接把處理結果資料傳回給手機用戶端。
通知 伺服器異步通知。支付寶根據得到的資料處理完成後,支付寶的伺服器主動發起通知給商戶
的網站,同時攜帶處理完成的結果資訊回報給商戶網站。
敏感詞 帶有敏感政治傾向、暴力傾向、不健康色彩或不文明的詞。
2.準備工作
商戶簽約和密鑰配置。
3.SDK內建流程
解壓alipay_lib.zip,将解壓出來alipay_lib拷貝到Eclipse workspace,通過Eclipse
import 該工程,并在此工程的Properties->Android中選中為library 工程。
将alipay.jar複制至商戶應用工程的libs目錄下,通過Java Build Path導入進工程。
4.修改Manifest
android:name="com.alipay.android.app.sdk.WapPayActivity"
android:screenOrientation="portrait">
5.訂單資料生成
在調用快捷支付SDK時,需要送出訂單資訊info,其中參數以key=”value”形式呈
現,參數之間以“&”分割,所有參數不可缺。
6.接口調用
擷取Alipay支付對象調用支付,此接口方法實作為同步調用,将阻塞商戶應用UI
線程,是以調用此接口需啟動新線程,并使用looper 為main looper的Handler
對象與UI線程傳遞消息。
7.支付結果擷取和處理
調用pay方法支付後,将通過2種途徑獲得支付結果:
同步傳回
商戶應用用戶端擷取pay( )傳回的字元串資訊,在應用内直接處理支付結果。
異步通知
商戶需要提供一個http協定的接口,包含在參數裡傳遞給快捷支付,即notify_url。
支付寶伺服器在支付完成後,會以POST方式調用notify_url,以xml資料格式傳
輸支付結果。
8.如何獲得PID與密鑰
使用簽約支付寶賬号登入“商家服務”平台中的“我的商家服務”,點選“查詢PID、Key”,即可檢視到簽約支付寶賬号、合作者身份ID(PID)的資訊。輸入支付密碼,查詢key。
9.RSA密鑰生成與使用
打開openssl檔案夾下的bin檔案夾,執行openssl.exe檔案,輸入“genrsa -out
rsa_private_key.pem
1024”指令,回車後,在目前bin檔案目錄中會新增一個rsa_private_key.pem檔案,其檔案為原始的商戶私鑰(請妥善保
存該檔案,PHP開發語言中需要使用該檔案)
10.生成RSA公鑰
輸入“rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem”指令回車
後,在目前bin檔案目錄中會新增一個rsa_public_key.pem 檔案,其檔案為原始
的商戶公鑰(請妥善儲存該檔案,PHP開發語言中需要使用該檔案)
11.生成PKCS8編碼的私鑰
輸入指令“pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM
-nocrypt”并回車,儲存到一個文本檔案,可随意命名,隻要知道這個是PKCS8格式的私鑰即可(請
妥善儲存該檔案)
12.RSA密鑰使用邏輯:
商戶在使用RSA簽名方式的支付寶接口時,真正會用到的密鑰是商戶私鑰與支付
寶公鑰。商戶上傳公鑰給支付寶,支付寶把公鑰給商戶,是公鑰互換的操作。這就
使得商戶使用自己的私鑰做簽名時,支付寶端會根據商戶上傳的公鑰做驗證簽名。
商戶使用支付寶公鑰做驗證簽名時,同理,也是因為支付寶用支付寶私鑰做了簽名。
13.業務資料傳遞
支付寶提供的業務參數為支付寶需要商戶傳遞過來的資料要求。商戶隻需要根據自
己的業務需求,在業務邏輯代碼運作時把這些動态資料以指派給變量的形式,再通
過支付寶接口本身的接口邏輯,傳遞給支付寶系統,讓支付寶系統可識别。
舉例說明,商戶要把某筆訂單的資料傳遞給支付寶。那麼商戶需要先根據支付寶的
參數要求,從自己的下單系統中拿到付款總金額(total_fee)、商戶的訂單号
(out_trade_no)、訂單名稱(subject)等資料,再把這些資料一個一個以值的形
式賦給對應的變量。再通過代碼邏輯,把變量組合及加工成一次可以發送給支付寶
的請求。
注意事項:傳遞參數之前必須對參數進行簽名,就是調用sign方法,再加一些參數進行傳送,務必厘清哪些參數應該簽名。
如有問題請留言,轉載注明出處。