現在支付_聚合支付_手機網頁接入

現在支付產品種類繁多,涵蓋了線上(手機app、手機網頁、掃碼、公衆號、跨境等)及線下(傳統pos、訂單pos、netpos、卡牌等)的微信、支付寶、銀聯支付業務爲大中型企業提供可靠的聚合支付服務,獲得衆多企業的好評。公司網址:www.ipaynow.cn


聚合支付前一篇文章也介紹過,只要對接一次,便可擁有市面上主流的支付方式,節約開發成本,提高對賬效率;


下面來介紹手機網頁端的支付接入:

1.產品使用場景:

銀聯支付

用戶在手機網頁中選擇銀聯支付,跳轉到銀聯卡支付頁面。用戶輸入銀行卡號後,會收到銀聯發送的短信驗證碼,輸入驗證碼後完成支付。


支付寶支付:


在手機網頁選擇支付寶支付,跳轉到支付寶網頁。如果手機安裝有支付寶APP,則會自動喚起只需輸入密碼即可完成支付;如果沒有安裝支付寶APP,則需要在瀏覽器中輸入支付寶賬號與密碼完成訂單支付;

流程同支付寶官方(截圖忽略)

微信支付:


產品優勢不做介紹,接過就知道。

產品流程:

(1)用戶通過手機瀏覽器請求商戶頁面,用戶確認訂單後提交訂單信息

(2) 商戶服務端收到用戶請求後,按照現在支付統一下單接口生成請求參數。商戶服務端通過HTTPS工具請求現在支付交易系統

(3) 現在支付交易系統記錄商戶訂單信息,並根據報文信息請求對應支付渠道

(4) 支付渠道返回下單報文

(5) 現在支付交易系統生成返回報文,並將報文返回給商戶服務端

(6) 商戶從現在支付下單返回報文中獲取支付鏈接,並請求支付鏈接跳轉到支付渠道,支付渠道頁面會喚起對應手機App

(7) App提示用戶輸入密碼,用戶在app中輸入支付密碼

(8) 支付渠道確認支付成功後,發送後臺異步通知給現在支付交易系統

(9) 現在支付交易系統確認渠道異步通知後,給商戶服務端發送後臺異步通知

(10) 商戶服務端確認異步通知後,返回確認報文給現在支付。

(11) 銀聯或支付寶渠道,需要用戶在頁面中點擊返回商戶按鈕,然後跳轉到商戶前臺通知頁面

(12) 商戶根據前臺通知展示支付結果。注意,交易狀態以現在支付後臺異步通知爲準。

通知機制:


 重複通知機制:現在支付交易系統在第一次通知失敗後,將在30秒後發起第二次通知,如果還是失敗將再隔2分鐘發起第三次通知,以後如果還是不成功,將再間隔10分鐘、30分鐘、60分鐘、2個小時、6個小時、10個小時、15個小時後重複通知。最終在25小時內完成9次重複通知後,將不再繼續重複通知。當然,在每一次通知後,如果收到“success=Y”的應答就停止重複通知。重複通知時間間隔如下:30秒、2分鐘、10分鐘、30分鐘、1小時、2小時、6小時、10小時、15小時。


請求報文樣例:
appId=14897224287****&consumerCreateIp=**.**.**.**&deviceType=0601&frontNotifyUrl=http%3A%2F%2Flocalhost%3A10802%2Ffront&

funcode=WP001&mhtCharset=UTF8&mhtCurrencyType=156&mhtLimitPay=1&mhtOrderAmt=1&mhtOrderDetail=mhtOrderDetail&mhtOrderNam

e=merchantTest&mhtOrderNo=20170101202020001XZ&mhtOrderStartTime=20171012152127&mhtOrderTimeOut=3600&mhtOrderType=01&mht

Reserved=aadfsdfsdf&mhtSignType=MD5&mhtSignature=3265cfee37c93c040eacf992b211a642&notifyUrl=http%3A%2F%2Flocalhost%3A10

802%2Fnotify&outputType=0&payChannelType=13&version=1.0.0

 請求參數:



服務端通知接口接入注意事項:

1.通知方式採用HTTPS協議POST方式通知;

2.報文數據以字符串流的形式放在報文體中,所以直接getParameter是得不到數據的。

數據接收Java版示例代碼:

//獲取通知數據需要從body中流式讀取

BufferedReader reader = req.getReader();

StringBuilder reportBuilder = new StringBuilder();

String tempStr = "";

while((tempStr = reader.readLine()) != null){

      reportBuilder.append(tempStr);

}

//報文數據字符串

String reportContent= reportBuilder.toString();


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章