久久久久久久久久久久久久一区,亚洲免费一级电影,成人精品影视,国产99re66在线视频

在線預約 | 微信營銷平臺 | 自助平臺 | 手機客戶端 | 設為首頁 | 加入收藏
眾旺互聯(lián)做您身邊的網(wǎng)絡專家
咨詢熱線(免長途費):
石家莊網(wǎng)站建設電話
當前位置:首頁 -> 新聞中心 -> 電子商務 -> 正文

“輕輕一掃,立刻扣款”,解讀付款碼背后的原理

發(fā)布日期:2020-05-13  信息來源:未知  點擊:
分享:
  最近由于業(yè)務需求,需要開發(fā)付款碼功能,該接口底層將會聚合市面上主流錢包 APP 的付款碼功能,如微信支付、支付寶支付。 ps:付款碼支付別稱有很多,如微信支付端支付產(chǎn)品為付款碼支付(之前的文檔叫做刷卡支付),而支付寶端產(chǎn)品為當面付-條支付,而有些文
    *近由于業(yè)務需求,需要開發(fā)付款碼功能,該接口底層將會聚合市面上主流錢包 APP 的付款碼功能,如微信支付、支付寶支付。
    ps:付款碼支付別稱有很多,如微信支付端支付產(chǎn)品為付款碼支付(之前的文檔叫做刷卡支付),而支付寶端產(chǎn)品為當面付-條支付,而有些文檔會稱為二維碼被掃支付。下文統(tǒng)一使用微信的定義方式,統(tǒng)稱為付款碼支付。
    可能有些同學對于付款碼支付這個聽起來很陌生,其實這個功能我們可能每天都在被使用。
    像我們在便利店買個早飯,**結(jié)賬時,使用支付寶/微信支付付款。收銀員會讓我們展示支付寶/微信付款碼,然后使用掃碼槍獲取此碼,**上送給微信/支付寶服務端完成一次扣款。
    01 付款碼支付詳細版流程
    微信/支付寶付款碼支付調(diào)用流程大同小異,官網(wǎng)寫的都比較清楚,這里直接用支付寶的官網(wǎng)的流程。
    從上面的流程可以看到,付款碼支付可以說是一個同步的接口,即接口同步返回扣款結(jié)果,無需通過另外異步通知獲取結(jié)果。
    不過這里我們需要注意,由于涉及安全風控等問題,付款碼支付過程用戶端可能需要輸入密碼確認支付,此時付款碼接口將會返回等待用戶支付。
    接入時務必這正確判斷返回信息,若返回以下結(jié)果,代表此時用戶正在輸入密碼。
    支付寶官方文檔暫未找到相關規(guī)則,經(jīng)過測試當支付金額大于 2000 ,需要輸入密碼。如果有熟悉其他驗密規(guī)則的同學,可以在評論區(qū)留言一下。
    另外一點需要注意的是,微信/支付寶其他支付接口,支付成功之后,微信/支付寶服務端將會發(fā)送消息通知支付結(jié)果。但是付款碼不一樣,該接口是不會有消息通知。
    所以如果付款碼支付若返回等待用戶輸入密碼,商家后臺服務必須定時調(diào)用調(diào)用微信支付/支付寶查詢接口,獲取支付結(jié)果。
    02 撤銷支付
    如果在一段時間內(nèi)比如 30s,輪詢查詢支付結(jié)果返回都是等待用戶支付,或者支付交易過程返回失敗或支付系統(tǒng)超時,這兩種情況官方文檔都是建議立刻調(diào)用撤銷接口撤銷交易。
    如果此訂單用戶支付失敗,撤銷接口將會訂單關閉;如果用戶支付成功,撤銷接口將會訂單資金退還給用戶。
    也就是說撤銷支付接口功能上等同與關閉訂單加上退款。雖然撤銷也具有退款功能,但是兩者存在比較大的區(qū)別:
    支付類型限制:微信/支付寶撤銷支付僅能撤銷付款碼支付類型的訂單,而退款可以支持多種支付類型的訂單。
    退款金額:撤銷接口只能是全額退款,而退款接口支持傳入金額,可以全額退款,也可以部分退款。
    時間限制:
    撤銷接口時間限制比較短,比如微信支付撤銷支持 7 天內(nèi)的訂單,而支付寶撤銷接口僅支持當天的訂單。
    但是退款接口可以支持較長時間訂單退款,比如微信支付退款支持一年內(nèi)的訂單,而支付寶僅支持3 個月內(nèi)訂單。
    基于以上區(qū)別,其他正常支付的單如需實現(xiàn)相同功能請調(diào)用退款接口,官方文檔建議僅在異常的情況下才建議調(diào)用撤銷支付接口。
    另外再說一點,有些地方這個功能接口稱為沖正接口,如下面工商二維碼支付。
    實際上提供的功能與微信/支付寶撤銷類似,這里需要各家支付公司提供文檔具體研究。
    03 撤銷支付相關問題
    由于撤銷支付,可能導致退款,也可能關閉訂單,接入之前一直有些問題弄不清楚,在官方文檔處也沒有查詢到任何資料,沒辦法只好實測驗證相關問題。由于規(guī)定,支付機構(gòu)不能直連微信/支付寶,所以以下測試基于銀聯(lián)微信/支付寶通道。銀聯(lián)提供的接口與直連微信/支付寶存在些許差別,但是主要功能一樣。
    1. 重復撤銷
    通過實測,微信/支付寶撤銷接口冪等實現(xiàn),重復撤銷返回結(jié)果一致。不過需要注意需要正確判斷撤銷的返回結(jié)果。比如微信撤銷接口成功判斷還需要結(jié)合 recall字段,支付寶也有類似字段。
    2. 訂單狀態(tài)微信/支付寶訂單狀態(tài)處理不太一致,微信訂單狀態(tài)比較復雜:
    微信支付訂單狀態(tài)機
    也就是說,付款碼訂單一旦被撤銷成功,再次查詢訂單,狀態(tài)將會返回為已撤銷(REVOKED)。
    另外微信對于付款碼支付訂單有限制,是無法調(diào)用關閉訂單接口關閉訂單,所以在付款碼的場景中,是不存在訂單狀態(tài)為 CLOSED—已關閉。
    接下來說下支付寶的狀態(tài),支付寶文檔沒要給出類似的訂單狀態(tài)機,我根據(jù)官方一些文檔,以及一些測試結(jié)果總結(jié)出下方訂單狀態(tài)圖。
    所以支付寶的付款碼訂單一旦撤銷成功,再次查詢原單狀態(tài)將會返回 TRADE_CLOSED。
    3. 對賬文件數(shù)據(jù)
    當天產(chǎn)生交易之后,次日我們需要拉取微信/支付寶對賬文件,逐一核對數(shù)據(jù),防止少賬,多賬問題。
    微信/支付寶對賬文件只會記錄交易成功的訂單,所以未支付的訂單被撤銷是不會出現(xiàn)在對賬文件中。但是如果支付成功了,然后又被撤銷成功,將會在對賬文件中產(chǎn)生兩筆記錄,一筆正交易,一筆反向退款記錄。
    正交易與普通的退款的記錄都比較好識別,一般可以使用我們上送給微信支付寶訂單號。但是撤銷導致退款記錄,我們無法僅用一個單號識別,我們需要結(jié)合另外的字段區(qū)分判斷。
    微信對賬文件撤銷產(chǎn)生那筆退款,交易狀態(tài)為 REVOKED,所以我們可以采用商戶訂單號加交易狀態(tài)識別出一條記錄是否為撤銷產(chǎn)生退款記錄。
    上面銀聯(lián)訂單號可以當做是微信支付寶內(nèi)部產(chǎn)生訂單號
    支付寶對賬文件比較麻煩,撤銷產(chǎn)生的退款記錄不能跟微信根據(jù)交易狀態(tài)區(qū)分。從對賬文件上看支付寶撤銷產(chǎn)生退款與普通退款接口產(chǎn)生退款記錄是一樣的。
    仔細研究對賬文件可以發(fā)現(xiàn)一些區(qū)別,撤銷導致退款記錄退款批次與正交易支付寶內(nèi)部訂單號是一致的。而正常退款記錄,退款批次號是由商戶自己上送的。所以我們可以以此篩選出撤銷產(chǎn)生的退款記錄。(文章由石家莊網(wǎng)站建設整理)
售前咨詢

4008887704

售后服務

0311-87222545

在線咨詢

工作日9:00-18:00 點擊進入

預約專家

提供專業(yè)解決方案 點擊進入

訪問微博

唯一官方微博平臺 點擊進入

聯(lián)系我們 | 公司簡介 | 付款方式 | 招賢納士 | 產(chǎn)品導航 | 在線預約 | 網(wǎng)站地圖

版權(quán)所有 2010-2030 石家莊眾捷網(wǎng)絡科技有限公司 冀ICP備11028497號-1冀ICP備11028497號-3
咨詢熱線:400-888-7704 咨詢信箱:kefu@zw0311.com
主站蜘蛛池模板: 博兴县| 扶绥县| 定州市| 柏乡县| 宁蒗| 怀集县| 青冈县| 巴楚县| 文登市| 舞钢市| 尉氏县| 从江县| 侯马市| 神农架林区| 吴桥县| 白沙| 京山县| 甘德县| 鄄城县| 周至县| 安陆市| 吐鲁番市| 泸州市| 隆子县| 昌乐县| 太康县| 容城县| 萍乡市| 崇义县| 犍为县| 渑池县| 荣成市| 邵阳县| 古田县| 繁昌县| 丰台区| 皋兰县| 威信县| 上林县| 锦州市| 湾仔区|