快捷支付的本質(zhì):拆解掃碼支付的實(shí)現(xiàn)原理
如今在中國,二維碼支付已經(jīng)成為了人們最重要的支付方式。本文回答了二維碼的種類、原理、互聯(lián)互通的邏輯以及掃碼住背后資金流的走向問題。
目前在大街小巷,掃碼支付已經(jīng)成為了最受歡迎的支付方式,那么大家是否會好奇這背后的支付原理是怎樣的?
同時(shí)我近期看到央行開始主推“標(biāo)準(zhǔn)條碼互聯(lián)互通”的新聞,感覺還挺有趣的,于是抽空對掃碼支付進(jìn)行了一次大梳理,也順便分享出來。那么通過這篇文章,我將主要介紹三件事:
- ?常見主掃和被掃支付的原理?
- ?常見的靜態(tài)聚合碼是如何實(shí)現(xiàn)一碼多付的?
- ?條碼支付互聯(lián)互通是什么?有什么價(jià)值?以及可能會如何實(shí)現(xiàn)的?
一、掃碼支付
我們常見的掃碼支付主要分為主掃(你掃商家)和被掃 (商家掃你)兩種;
要特別講明白掃碼支付,就不得不提一下二維碼這個(gè)plus的東西。我們生活中存在各種應(yīng)用二維碼的東西,如掃碼加好友,掃碼下載app,掃碼支付等,同時(shí)也存在條形碼,類似超市的付款條碼,商品條碼等。
與條碼相比,二維碼記錄信息容量更大,具有容錯性,所以是當(dāng)前最受歡迎的一種記錄形式。
二維碼/條碼都是一種加密的信息承接載體,都是將復(fù)雜的東西簡化給我們呈現(xiàn)出來。
當(dāng)我們通過掃一掃進(jìn)行掃描二維碼的時(shí)候,實(shí)際上就是通過一定的規(guī)則將二維碼里面的內(nèi)容解析出來,比如地址合法性,是不是支付鏈接,還是外鏈網(wǎng)址之類的。
1. 主掃的原理
1)先睹為快
2)主掃支付的流程
3)主掃的核心邏輯
在我們實(shí)際的過程中,經(jīng)常會出現(xiàn)支付寶掃支付寶二維碼有時(shí)會提示已失效,掃其他二維碼會告知不可用,那么這里掃碼的原理是怎樣的,做了哪些具體判斷呢?
- 判斷二維碼鏈接是不是支付鏈接;
- 判斷該支付鏈接是不是自家的。如果不是,則攔截,目前支付寶的支付鏈接是“https://qr.alipay.com…”,則允許通過請求服務(wù)器,但如果檢測是“https://qr.wx.com…”,說明是微信支付鏈接,支付寶則反手就給你屏蔽了~
- 之后再去解析二維碼是否符合自家規(guī)則,目前支付寶的二維碼是“28”開頭,微信一般是”13“開頭;解析之后,再判斷二維碼是否有效;有效則進(jìn)行支付即可;無效則提示二維碼失效。
2. 被掃的原理
場景:我們?nèi)コ匈I東西經(jīng)常都會要求打開付款碼,然后掃碼槍進(jìn)行掃碼支付。
特點(diǎn):操作步驟簡單、支持離線付款、付款效率高
1)先睹為快
或許在這里很多人會納悶這里有條形碼和二維碼,最終的支付到底是掃條形碼還是二維碼呢?
其實(shí)這里取決于掃碼槍,現(xiàn)階段市面上有兩類:一維掃碼槍 (僅可以支持掃條形碼)和二維掃碼槍(兩個(gè)都可以掃)。
2)被掃付款邏輯
- 用戶打開付款碼;
- 收銀員輸入用戶應(yīng)付款金額,并生成訂單;
- 掃碼槍掃碼之后,將訂單提交給商家收銀臺系統(tǒng);
- 商家收銀臺系統(tǒng)將訂單推給商家后臺;
- 商家后臺將訂單推給支付寶請求完成扣款;
- 支付寶扣款成功,通知商家后臺系統(tǒng),同時(shí)給用戶發(fā)送消息通知。
以上如果商家不是直連支付寶/微信,而是對接其他三方支付公司,那么支付訂單可由商家推給支付寶/微信官方,改為推給對接的三方支付公司即可。一旦支付寶扣款成功,那么對接的支付公司會回調(diào)通知商家這筆訂單的支付結(jié)果。
3. 主掃和被掃的對比
相同點(diǎn):
- 兩者的基本原理都是一樣的;
- 掃碼支付的限額都比較低,遠(yuǎn)低于網(wǎng)銀支付;
不同點(diǎn):
- 用戶主動操作對象不一樣,一個(gè)是用戶,一個(gè)是商家;
- 被掃的話,在用戶付款碼中就會包含用戶的唯一ID標(biāo)識,支付寶/微信可以直接找到該用戶完成扣款操作。
4. 異常情況處理
在我們進(jìn)行掃碼支付時(shí),其實(shí)也會出現(xiàn)一些故障,那么針對這些故障,一般會有什么補(bǔ)救措施呢?
1)掃碼槍付款時(shí),突然網(wǎng)絡(luò)不穩(wěn)定不確定是否已付款了怎么辦?
答:出現(xiàn)網(wǎng)絡(luò)不穩(wěn)定,可以由兩種處理方式:
- 可以調(diào)用查詢接口去主動查詢微信/支付寶渠道該筆訂單是否已支付;如已支付,則就會更新訂單狀態(tài);
- 直接調(diào)用訂單撤銷接口,即不管用戶有沒有完成付款,這筆訂單終止,已付款則會退回余額;
2)出現(xiàn)重復(fù)支付的問題怎么辦?
答:系統(tǒng)作自動退款處理。一般重復(fù)支付指的是一個(gè)商品重復(fù)請求多次,并且多次完成支付了。針對這種情況,商家所接入的支付機(jī)構(gòu)會判斷出來,同時(shí)會作自動退款處理的。
二、靜態(tài)聚合碼
正常來講:支付寶和微信的二維碼是不互通的,支付寶不會支持微信的二維碼進(jìn)行付款。而近幾年我們經(jīng)??吹缴碳屹N出靜態(tài)聚合碼,消費(fèi)者通過這個(gè)碼使用微信付款,也可以使用支付寶付款,那么這里面的邏輯是怎樣的呢?
1. 實(shí)現(xiàn)原理
任何支付行為都是通過一個(gè)支付鏈接來完成,而支付鏈接內(nèi)容會包括必要信息,如來源、金額、商戶信息等。
而每個(gè)支付鏈接只能其對應(yīng)的服務(wù)端處理,即用戶使用支付寶二維碼完成支付行為的,最終付款會指向支付寶的服務(wù)端的;而微信二維碼則會指向微信的服務(wù)端。
要實(shí)現(xiàn)上述的聚合碼付款,那么就需要一個(gè)前置的中間環(huán)節(jié),需要這樣的一個(gè)通用的二維碼來優(yōu)先判斷付款來源方。在技術(shù)實(shí)現(xiàn)上會有userAgent來判斷用戶來自哪種客戶端。如果是MicroMessenger 則表示微信;AlipayClient是支付寶。
1) 時(shí)序圖如下
2) 大概流程圖
- 用戶通過微信/支付寶掃描靜態(tài)聚合碼;
- 系統(tǒng)判斷掃碼來源是微信還是支付寶;技術(shù)層面一般會用userAgent進(jìn)行區(qū)分;
- 確認(rèn)來源后請求對應(yīng)的渠道,如確認(rèn)是支付寶,則直接請求支付寶進(jìn)行支付即可;
- 支付完成,異步通知商戶對應(yīng)的支付結(jié)果;
聚合二維碼的推出,的確提高用戶和商戶的便利性;同時(shí)也會幫助商戶實(shí)現(xiàn)統(tǒng)一對賬功能,解決財(cái)務(wù)上對賬難的煩惱。
三、條碼互聯(lián)互通
1. 背景
中國人民銀行印發(fā)銀發(fā)【2019】209號文件,明確指出要推動條碼支付互聯(lián)互通。簡單的講就是以后要推動支付寶app可以去掃微信二維碼進(jìn)行付款啦。
部分文件內(nèi)容如下:
2. 互聯(lián)互通的價(jià)值
央行主推條碼業(yè)務(wù)進(jìn)行互聯(lián)互通,至少有三個(gè)價(jià)值點(diǎn):
1)為商家和用戶提供便利
對于商家而言,無需在提供一堆不同的二維碼,也無需中間的聚合服務(wù)商賺差價(jià);對于用戶而言,也無需識別區(qū)分是何種二維碼,打開app掃一掃就對了。
2)梳理規(guī)范,降低風(fēng)險(xiǎn)
更多二維碼交易,將會通過銀聯(lián)/網(wǎng)聯(lián)進(jìn)行清算,交易更加規(guī)范和統(tǒng)一,有利于風(fēng)險(xiǎn)共享和識別,對監(jiān)管有利;降低聚合支付的市場空間,有利于保持秩序。
3)打破市場競爭壁壘,更加有利于公平
相對更公平一些,而市場格局不會發(fā)生太大變化。同樣的,在“斷直連”之后對于市場格局也并未影響支付寶微信的市場份額。
支付互聯(lián)互通之后,那么更多拼的是服務(wù)和價(jià)值;誰的服務(wù)好,提供的價(jià)值多,誰就能占據(jù)更多的用戶。
3. 如何實(shí)現(xiàn)互聯(lián)互通
清算機(jī)構(gòu):是指銀聯(lián)和網(wǎng)聯(lián)這兩家具有資金清算能力的機(jī)構(gòu),簡稱央媽的一胎和二胎。每天資金的清結(jié)算均有這兩家處理,所有的支付公司、銀行都會在清算機(jī)構(gòu)里面開立賬戶。
實(shí)現(xiàn)互聯(lián)互通,我認(rèn)為至少要做好以下兩件事情:
- 清算機(jī)構(gòu)重新制定支付二維碼規(guī)范;所有支付機(jī)構(gòu)和銀行均得統(tǒng)一參與;
- 不同支付機(jī)構(gòu)的二維碼要互認(rèn)互掃。就是支付寶掃碼發(fā)現(xiàn)是微信支付鏈接,不能直接屏蔽告訴用戶不能支付,而是要繼續(xù)完成支付,最后將用戶的賬戶資金扣減。
說明:
- 打開支付寶掃一掃功能去掃微信付款碼;
- 商家層面會請求所對接的支付機(jī)構(gòu)進(jìn)行預(yù)下單處理,如微信;
- 支付寶層面受理到該微信支付鏈接,則允許支付寶用戶下單支付;
- 用戶端完成支付寶扣款100元(以100為例);商家層面提示微信收款完成,并記賬100元;
- 清算機(jī)構(gòu)準(zhǔn)實(shí)時(shí)給支付寶、微信調(diào)賬處理。微信加100元;支付寶減100元;清分完畢!
4. 資金怎么流向
在資金流層面,基本有一條恒定規(guī)則:用戶哪款app去付款,就是扣誰的錢;
舉例:就算是實(shí)現(xiàn)互認(rèn)互掃之后,用戶用支付寶掃微信商家收款碼;那么扣款對象一定是用戶支付寶賬戶,而收款對象為微信商家。
示例展示如下圖所示:
- 用戶用支付寶付款,對應(yīng)支付寶賬戶減少100元;
- 清算機(jī)構(gòu)會對支付寶、微信等支付機(jī)構(gòu)進(jìn)行調(diào)賬調(diào)整通知,分別是:支付寶在清算機(jī)構(gòu)的賬戶減少100元,微信對應(yīng)的賬戶增加100元;
- 微信在清算機(jī)構(gòu)的賬戶余額增加100元,則對應(yīng)給其商戶賬戶增加100元。最終實(shí)現(xiàn)資金對平。
四、小結(jié)
聊到這里,掃碼支付的出現(xiàn),已經(jīng)極大的方便了用戶的付款操作,讓我們大步踏向“無現(xiàn)金”時(shí)代啦。
同時(shí)為了更清楚闡述掃碼支付,我們現(xiàn)在再追本溯源一下,掃碼支付的本質(zhì)到底是什么呢?造就它的底層是什么呢?
其實(shí)就是快捷支付。
因?yàn)榭旖莸暮灱s綁卡后,通過簡單的驗(yàn)證就可以完成扣款操作;這種便利性造就了掃碼支付的繁榮,也會造就后續(xù)刷臉支付的繁榮。
作為文章的結(jié)尾,再送上自己對于這個(gè)拆解主題的產(chǎn)品思考,分為5個(gè)維度:
1)梳理產(chǎn)品的應(yīng)用場景,建立概念模型;即我們在哪些場景使用掃碼支付的,這個(gè)場景的表述決定用戶對產(chǎn)品的接受程度。
2)確立產(chǎn)品價(jià)值;掃碼支付已經(jīng)成為最主流付款方式,與生活密不可分,提高付款效率,這是掃碼支付的產(chǎn)品價(jià)值;但掃碼背后的邏輯大家都會比較忽視,而將它呈現(xiàn)出來讓更多感興趣的人理解,這也是文章的最大價(jià)值。
3)拆解業(yè)務(wù)流程的關(guān)鍵角色;關(guān)注產(chǎn)品的參與角色方,是讓我們快速了解產(chǎn)品的關(guān)鍵點(diǎn);比如掃碼支付的關(guān)鍵角色:用戶端、商戶端、微信端/支付寶端、清算機(jī)構(gòu)。只有拆解這些,整個(gè)的思路會更清晰。
4)確立產(chǎn)品核心流程,以及底層技術(shù)的實(shí)現(xiàn)方式。首先確立產(chǎn)品層面的核心流程。即:根據(jù)關(guān)鍵角色之間會如何形成交互關(guān)聯(lián),信息傳遞的;哪些信息的關(guān)聯(lián)是這個(gè)業(yè)務(wù)不會變的?比如普通掃碼支付和靜態(tài)聚合碼支付的相同點(diǎn)是什么,這個(gè)相同點(diǎn)就是業(yè)務(wù)所不變的。而底層的技術(shù)考慮主要是方便驗(yàn)證產(chǎn)品思路的可行性。
5)簡化呈現(xiàn)出來。對于一件事情真正弄懂的關(guān)鍵判斷條件之一,就是:盡可能將原本復(fù)雜的底層邏輯簡化為形象簡單的事情表述出來,用戶聽的越清楚,則表明自己懂的越透徹。
作者:JANMING;公眾號:產(chǎn)品思考隨筆
本文由 @JANMING 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于CC0協(xié)議。
代付、快捷、網(wǎng)銀、掃碼這些產(chǎn)品有什么區(qū)別
通俗易懂,很受益 ,謝謝分享
結(jié)尾贊??
那么問題來了,用戶A在支付寶被扣的錢,商家b也是在支付寶收錢。那么錢都是歸支付寶管理,那支付寶為什么要扣了錢后給微信加錢呢?
主動是不可能的,這時(shí)就需要央媽來定規(guī)矩了,既可實(shí)現(xiàn)監(jiān)管需要,又可以謀求統(tǒng)一
都是用支付寶付款和加款是跟微信沒關(guān)系呀
你邏輯有問題
注意用戶支付的平臺和收款商戶的收款的平臺啦
情景一:用戶A使用支付寶掃支付寶的商家碼,資金都是支付寶管理,不需要清帳;
情景二:用戶B使用支付寶掃了微信的商家碼,并支付100元,為了讓兩個(gè)資金的流向?qū)用婊ネ?,支付寶用戶C的支付寶賬號減少了100,微信商家的微信賬戶自然需要增加了100元的。
更多咨詢,請查收個(gè)人公眾號:產(chǎn)品思考隨筆