微信支付:手機系統自帶的瀏覽器,調用微信支付如何實現(非掃碼)

Q:翻看了微信支付的api沒發現支持h5調支付接口的狀況(微信js除外),而後卻發現美團的支付成功調用了,這是怎麼實現的?php

   

 

A:web

 


使用微信H5支付便可。
H5支付經過URL調起微信APP,不涉及到應用簽名,可解決一次申請給多款APP使用的問題,看看如今遊戲分發行業就知道了。api

如今從官網申請到的APP支付(即經過SDK調起微信APP),若是適用在公司只有幾款APP的狀況,徹底沒問題。可是若是一家公司有幾十幾百款APP的話,使用APP支付就不合適了。(APP支付要求申請APPID,但每家公司主體只能申請10個APPID,若是該公司有100款APP,意味着要註冊10家公司,而H5支付是不須要APPID的)瀏覽器

H5支付如何申請?
微信官網如今只是放了H5支付的文檔,連接:【微信支付】開發者文檔,可是並無開放H5支付的申請,因此通常的公司目前從微信官網是沒法申請H5支付的,那麼從哪裏能夠申請到呢?
一、銀行,好比中信銀行、民生銀行、興業銀行。
二、銀行受理機構,好比這家剛剛賣了20億的威富通。
此外,還能夠經過一些聚合支付提供商或者第三方支付公司申請到。聚合支付好比ping++,愛貝,還有一些提供的二清的,怕題主也不敢用吧。第三方支付的話,匯元網、如今支付可申請到。
價格的話,小商戶基本在1%以上,大商戶的話1%下,T+1結算。據悉,杭州中信對大商戶可作到8%,T+1結算。安全

爲何經過銀行或者受理機構可申請,受理機構是個什麼鬼?
這與微信官方發展策略有關,微信官網一直不開放H5支付真實緣由,我也一直很想知道。微信在與支付寶競爭中,採起的與支付寶大相徑庭的政策,即經過銀行拓展商戶,最早找到的就是中信總行,中信總行落地在深圳分行。微信

微信拓展商戶,除了從官網獲客外,還經過如下三種方式:
一、普通代理,如今在官網仍能夠申請到,以線下主掃和被掃居多。普通代理在開始的時候,發展了不少二清代理模式,如今差很少都被清掉了。
二、第三方支付轉接結算模式,即由第三方支付爲商戶清算。嚴格來說,違規作法,第三方支付不能接第三方支付。不知道如今這種怎麼樣了。
三、銀行轉接清算模式,由銀行發展商戶,銀行負責商戶的進件與審覈,清算方面,財付通清算到銀行後,由銀行清算給商戶。如今是除了官網外,微信商戶進件量和交易量最大的一種,包括線下的主掃、被掃和線上的APP、H五、公衆號,PC掃碼。網絡

受理機構是什麼?
銀行的軟件服務商,具體來講,就是銀行要發展商戶,須要一套系統用來處理商戶的進件、交易轉接、商戶對帳、清結算等。銀行固然不會本身去開發,就和機構合做,由機構開發,兩者共同發展商戶,兩方分潤。異步

銀行和受理機構分別有哪些?
一、銀行
中信銀行,分中信總行和杭州分行,中信總行的微信落地在深圳分行。
民生,最出名的廈門民生
興業,福州興業和廣州興業作的很是好。
浦發,線下的比較多,線上的不多見到
據說還有渤海銀行,主要是天津分行,固然還有其餘一些銀行也在發展。
二、受理機構
最大的就是威富通了,財付通背景,威富通爲多家銀行提供系統,20億已賣。樓上那位說市面上微信都是走他們家的應該就是威富通的了。微信支付

若是不想經過H5支付,要解決應用內簽名的話,就有點走偏門了,好比我知道的有:
一、本身作一個SDK,每次支付時候經過APP調用該SDK,再由該SDK調用微信,這體驗可想而知。
二、將微信SDK作到手機應用底層去,跟1講到的SDK相似,體驗稍好。不過只有手機廠商能作到。網站

補充說明:
微信的H5支付分2種,封裝的SDK跟純H5,封裝的SDK跟APP支付相似,純H5既能用在wap網站上(非微信瀏覽器),也能夠用在APP上。
H5支付用於非微信瀏覽器,在IOS上仍體驗不佳,具體來說就是沒法自動回調。
微信瀏覽器內的H5支付指公衆號支付,微信已將此嚴格區分。
end

 


 

做者:i聚合支付
連接:https://www.zhihu.com/question/39182675/answer/218356841
來源:知乎
著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。

若是您是使用瀏覽器的移動網頁進行支付,那就是調用微信H5支付,若是是使用APP客戶端進行支付,那就要調用微信APP支付。

H5支付是指商戶在微信客戶端外的移動端網頁展現商品或服務,用戶在前述頁面確認使用微信支付時,商戶發起本服務呼起微信客戶端進行支付。主要用於觸屏版的手機瀏覽器請求微信支付的場景。能夠方便的從外部瀏覽器喚起微信支付。順便提醒一下,H5支付不建議在APP端使用,如須要在APP中使用微信支付,請接微信APP支付。

微信H5支付申請入口

登陸商戶平臺-->產品中心-->個人產品-->支付產品-->H5支付

微信H5支付業務流程

商戶側

要求商戶已有H5商城網站,而且已通過ICP備案。經過微信H5支付能夠實如今非微信瀏覽器(如QQ瀏覽器、谷歌瀏覽器、Safari等)中使用微信支付的場景。

用戶側

步驟(1):用戶從非微信瀏覽器的站點導航進入商戶H5網頁,用戶挑選需購買商品,選擇微信支付發起購買流程。

步驟(2):進入微信客戶端確認交易,輸入支付密碼。

步驟(3):支付成功,用戶收到支付憑證,同時商戶後臺收到支付成功的通知。

微信H5支付開發步驟

 


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

二、由商戶後臺向微信支付發起下單請求,調用統一下單接口,交易類型trade_type=MWEB;

三、統一下單接口返回支付相關參數給商戶後臺,如支付跳轉url(參數名「mweb_url」),商戶經過mweb_url調起微信支付中間頁;

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

五、如支付成功,商戶後臺會接收到微信側的異步通知;

六、用戶在微信支付收銀臺完成支付或取消支付,返回商戶頁面(默認爲返回支付發起頁面);

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

八、商戶後臺判斷是否接到收微信側的支付結果通知,如沒有,後臺調用咱們的訂單查詢接口確認訂單狀態;

十、展現最終的訂單支付結果給用戶。

常見問題

一、回調頁面

正常流程用戶支付完成後會返回至發起支付的頁面,如需返回至指定頁面,則能夠在MWEB_URL後拼接上redirect_url參數,來指定回調頁面。

如,您但願用戶支付完成後跳轉至,則能夠作以下處理:

假設您經過統一下單接口獲到的MWEB_URL=

則拼接後的地址爲MWEB_URL=

注意事項

(1)需對redirect_url進行urlencode處理

(2)因爲設置redirect_url後,回跳指定頁面的操做可能發生在:1,微信支付中間頁調起微信收銀臺後超過5秒 2,用戶點擊「取消支付「或支付完成後點「完成」按鈕。所以沒法保證頁面回跳時,支付流程已結束,因此商戶設置的redirect_url地址不能自動執行查單操做,應讓用戶去點擊按鈕觸發查單操做。

二、網絡環境未能經過安全驗證,請稍後再試

(1)商戶側統一下單傳的終端IP(spbill_create_ip)與用戶實際調起支付時微信側檢測到的終端IP不一致致使的,這個問題通常是商戶在統一下單時沒有傳遞正確的終端IP到spbill_create_ip致使。

(2). 統一下單與調起支付時的網絡有變更,如統一下單時是WIFI網絡,下單成功後切換成4G網絡再調起支付,這樣可能會引起咱們的正常攔截,請保持網絡環境一致的狀況下從新發起支付流程。

三、商家參數格式有誤,請聯繫商家解決

(1)當前調起H5支付的referer爲空致使,通常是由於直接訪問頁面調起H5支付,請按正常流程進行頁面跳轉後發起支付,或自行抓包確認referer值是否爲空。

(2)若是是APP裏調起H5支付,須要在webview中手動設置referer。

四、商家存在未配置的參數,請聯繫商家解決

(1)當前調起H5支付的域名(微信側從referer中獲取)與申請H5支付時提交的受權域名不一致,如需添加或修改受權域名,請登錄商戶號對應的商戶平臺--"產品中心"--"開發配置"自行配置 。

(2)若是設置了回跳地址redirect_url,請確認設置的回跳地址的域名與申請H5支付時提交的受權域名是否一致 。

五、支付請求已失效,請從新發起支付

統一下單返回的MWEB_URL生成後,有效期爲5分鐘,如超時請從新生成MWEB_URL後再發起支付。

六、請在微信外打開訂單,進行支付

H5支付不能直接在微信客戶端內調起,請在外部瀏覽器調起。

相關文章
相關標籤/搜索