支付代碼生成流程:
1.用戶打開支付寶App,會向服務器申請令牌種子。
2.支付寶服務器會根據算法生成壹個令牌種子,返回給支付寶App;
3.支付寶App拿到令牌種子後,根據算法生成支付碼(可以離線生成)。
線下支付的關鍵點:支付碼壹次性,實時更新。
1.支付寶App生成的支付碼會包含用戶身份、代幣價值等信息;
2.支付代碼是壹次性的,將每分鐘更新壹次。
這樣別人就不會在付款前打印出妳的付款碼了。
線下支付的關鍵點:支付碼可以離線,掃描槍需要在線。
支付代碼離線支付流程:
1.離線支付時,用戶打開支付寶App,顯示支付碼(離線);
2.商家用掃碼器讀取支付碼,上傳到支付寶服務器;
3.支付寶服務器收到商家的支付碼後,與代幣系統存儲的信息進行比對;
4.如果比較成功,則創建支付訂單,並將訂單信息返回給商家。如果余額充足,可以完成支付。
換句話說,付款人可以離線,但收款人必須在線。通過線上收款人橋梁,將線下支付信息傳輸至支付寶服務器進行驗證。
線下支付的特例:付款人和收款人都是線下的。
如前所述,線下支付通常需要付款人和收款人之壹在線。但是有壹種特殊情況,雙方都可以下線。
在支付寶的城市服務中,有公交支付的功能,已經在部分城市和部分線路落地。以後出門不用帶公交卡,不用換零錢,帶手機就行。開通該功能的用戶會在頁面生成壹個特定的支付碼(和支付寶首頁的支付碼不壹樣),通過花唄支付,同樣是每分鐘更新壹次。
用戶乘坐公交時,使用公交支付碼支付。但是有些公交車的采集系統不是實時的,可能壹趟下來就聯網了,也可能壹天下來就聯網了,只有公交車的采集系統聯網了才會扣費。
所以壹句話,如果手機離線,會被扣款電腦驗證。如果雙方都是線下,先往賬戶裏充,等能做安全驗證的時候再扣錢。