tft每日頭條

 > 生活

 > 支付寶直連當面付商戶規則調整

支付寶直連當面付商戶規則調整

生活 更新时间:2024-11-23 15:29:38

不知道大家是否注意到了,在平時付款時,即使沒有網,也可以出示付款碼讓商家掃碼付款成功,這是怎麼做到的呢?今天芝麻給大家簡單說一下。

支付寶直連當面付商戶規則調整(無網支付是如何做到的)1

其實微信和支付寶的“當面付”産品是一款需要聯機在線支付的産品,所以這裡所說的“沒有網”也僅僅指的是消費者客戶端不聯網的情況,商家是需要在聯網環境下才能收款的(這一點和公交卡圈存支付不一樣,公交卡的近場支付允許雙方都脫機)。所以嚴格來說,當面付産品(特指商戶主動掃消費者錢包客戶端上的token碼的支付場景)必須是在商戶聯機在線的情況下才可以交易,原因主要是因為以下兩點:

1.為了保證交易安全,支付公司必須确保每筆交易在支付後都真實發生了資金扣款,商家需要當場确認,所以商家聯機在線是必要的,不能雙方都脫機。

2.為了确保支付結果的真實性,必須是商家自己從支付接口或終端獲取支付結果,而不能以消費者展示的支付憑證作為最終支付結果。這個原因也比較好理解,一來消費者給的扣款憑證未必是真實有效的,二來針對訂單本身也需要返回正常的回執結果才能算交易完成。就像POS業務收款,商家也是務必要看到POS機打出收款單才會認為支付有效,單憑客戶手中的銀行扣款通知是不會讓客戶走的,隻會把這筆沖正,再讓客戶重新刷一筆。因此,商戶必須在聯機在線情況下才可以收款成功。

那麼這種當面付是如何在客戶端脫機情況下收款的呢?我們先以支付寶為例看看一個标準的當面付産品的信息流是什麼樣的:

支付寶直連當面付商戶規則調整(無網支付是如何做到的)2

在圖中紅色圓圈部分商家系統和支付寶系統是需要聯網對接的,所以商家必須在線收款,而消費者在展示code付款的時候,可以離線生成,因為無論是微信還是支付寶,都支持生成在線碼和離線碼兩種模式的付款碼。

在線碼比較容易理解,客戶在點擊“付款”時,客戶端向服務器申請一個給該客戶的支付憑證碼并顯示在客戶端。這個支付憑證碼在服務器端會有一組數據庫記錄其與真實客戶賬戶之間的關聯,并且這份關聯的有效期隻維持60s,超過時效這個支付碼便會作廢。用戶每次點開【付款】、或等待超過60s、或主動刷新付款碼時都會觸發客戶端重新向服務器發起申請新碼的請求。

這種在線碼優點是:

l安全性相對較高,實時在線生成,有效期僅60s,不會有被竊取付款碼盜刷的風險。

l業務靈活,由服務器直接生成發送,即使對碼的安全算法進行較大調整,也不用升級客戶端。

缺點也顯而易見:必須聯網生成,沒有網或者是網速不好的情況下,支付體驗會很糟糕。

所以,為了避免必須聯網的局限性,推出了離線碼。

支付寶直連當面付商戶規則調整(無網支付是如何做到的)3

離線碼的生成過程是這樣:

1.用戶登錄客戶端後,自動向服務器端申請一個令牌種子;

2.服務器端通過可信網絡向客戶端發送令牌種子(每個客戶的令牌種子唯一,換客戶登錄後銷毀原種子,重新下載種子)本地保存;

3.當用戶點擊【付款】時,客戶端用令牌種子 時間戳 一套安全算法即可生成一串數字,即離線碼。

當用戶使用離線碼付款時,服務器端會通過算法校驗這個碼是否來自這個對應用戶,校驗通過才會授權完成支付。

離線碼的優點:

(1)無需聯網生成,沒有網也可以順利使用;

(2)本地生成保存,一點付款碼就可以出來,客戶體驗較好。

但是缺點也是有的:

(1)因為離線碼保存在本地,所以用戶手機如果root後,保密存儲的令牌種子數據可能會被不法分子盜取用于随意消費。

不過針對這種缺陷,微信和支付寶肯定有相應的技術确保用戶支付安全,不過這個技術就屬于商業機密了,芝麻也不甚清楚。

(2)業務調整不如在線碼靈活,因為離線碼的生成邏輯都在客戶端完成,所以如果涉及到修改算法,就需要升級客戶端,客戶體驗會有影響。

(3)算法導緻的小概率錯誤,這個涉及一些算法問題,簡單來說就是A用戶的碼算出來後恰巧和B用戶的碼一模一樣,并且都有效。不過這種情況發生的概率極低,也可以忽略不計。

支付寶直連當面付商戶規則調整(無網支付是如何做到的)4

最後,芝麻給大家一點溫馨提示,現在手機支付在打開方便大門的同時,也給我們的信息和資金安全帶來了隐患,所以大家平時一定要注意手機軟件的健康使用,一般沒有特殊用途就不要root了;再有,重要密碼和證件不要記錄在一處,以免因為手機丢失帶來無法挽回的損失。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved