经常我们在购物付款的时候,可以用手机里的微信或者支付宝来完成付款,而不是像以前一样等着商家用现金换。线下扫码支付大大提高了我们的支付效率。今天我们主要讲一下扫码支付的秘诀:如何实现快速支付?让我们享受速度,理解原理。
二维码——信息的载体
说到扫码支付,不得不提二维码。所有线下扫描支付都是从扫描二维码开始的。通过扫描二维码,我们可以在支付页面上看到商家的名字。所以二维码在这里的作用就是信息的载体,通过黑白的排列组合来记录信息。不仅仅是支付,我们看到很多APP的下载链接,还以二维码的形式记录链接地址。现在网上有很多现成的工具。输入一段内容后,内容可以生成二维码,所以生成二维码的实现过程中没有技术问题。
选择二维码作为支付信息的载体,一方面是受收银员扫描商品的一维码来识别商品的场景启发,另一方面二维码本身可以存储足够的数据信息,支持不同的数据格式。同时二维码具有一定的容错性,部分损坏后仍能正常读取。这一切使得二维码成为一种广泛使用的信息载体。
二维码识别-app验证和背景分析
二维码携带的信息肉眼无法识别,不同支付机构注入二维码的信息规则不一致,需要相应的服务器根据其编码规则进行分析。我们每次使用扫描识别二维码时,都会提示“正在处理中”,这意味着后台服务器正在解析二维码的内容,比如检查二维码携带的链接地址是否合法(比如微信会屏蔽支付宝的链接)、是否属于支付链接或外部链接地址等。
验证有很多规则。就支付链接而言,服务器在验证属于自己公司的支付链接后,会获取支付链接中包含的商户信息,然后判断商户是否存在,商户的状态是否正常等。所有验证通过后,后台服务器会将商户名称返回给发起用户的移动APP,同时告知APP服务器已经通过验证,可以在APP中调整收银员。于是我们确认支付,输入支付密码,后台继续验证支付密码的正确性。如果正确,付款就完成了。
扫描码支付流程的关键步骤
从这个过程来看,实现扫码支付的过程,最重要的是定义允许识别哪些类型的二维码,以及后台的验证逻辑。定义允许识别哪些类型的二维码。也就是说,当APP扫的时候,如果产品经理定义二维码携带的信息是另一个网站,就会在我们APP这边过滤。所以,有时候明明是网站,解析后看到的却是一串明文。此外,还需要定义平台自己的解析规则。比如微信识别支付码以13开头,微信检测数字内容以13开头,会先匹配是否符合支付码的规则。如果满足要求,将执行后续解析,如下图所示:
以上是主扫,即用户扫业务;对于商家扫描用户来说,原理是一样的,只是用户的支付码包含一个专属ID来识别用户。商家通过收银系统向微信或支付宝提交订单时,将扫描枪识别的信息传递给微信或支付宝,根据这个专属ID找到对应的用户,通过代扣直接扣钱。
文章转自:https://www.cmfspay.com/news/hangye/77.html
1.《快捷支付 浅谈扫码支付的秘密:快捷支付是如何实现的》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《快捷支付 浅谈扫码支付的秘密:快捷支付是如何实现的》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/tiyu/799458.html