快捷支付的背后逻辑:浅析扫码支付的实现流程

[复制链接]

1万

主题

1

回帖

4003

积分

高级会员

Rank: 4

积分
4003
发表于 2018-4-27 16:42:44 | 显示全部楼层 |阅读模式
深圳网广告位招租:点击联系     深圳网广告位招租     深圳网,深圳最好的本地论坛     深圳商铺写字楼二手房     深圳网广告位招租
全民云计算 云主机低至2折

平常我们在购物付款时,使用手机中的微信或支付宝扫一扫即可完成支付,无需像以前携带现金等着商户找零钱。线下扫码支付大大的提高了我们付款的效率,今天就主要谈一谈扫码支付的实现流程,让我们享受快捷的同时,也了解其中的原理。  请关注IOS设备上支付宝被盗刷是什么原理?https://www.zhihu.com/question/51413871
  二维码——信息的载体
  说起扫码支付,就不得不提二维码。线下所有的扫码支付都是以扫二维码开始,通过扫描二维码,我们可以看到付款页面商家的名称,所以二维码在这里承担的角色是——信息的载体,它通过黑白相间的排列组合记录信息。不止是支付,我们看到很多APP的下载链接,也是用二维码的形式记录链接地址。现在网上有很多现成的工具,输入一段内容后,即可把内容生成二维码,所以生成二维码这一步的实现流程不存在技术难题。
  选择二维码作为付款信息的载体,一方面是受收银台扫描商品一维码来识别商品,这一场景的启发,另一方面是二维码本身可存储足够大的数据信息,而且支持不同的数据格式,同时二维码有一定的容错性,部分损坏后仍可正常读取。这一切,使得二维码成为了被大众广泛使用的信息载体。
  二维码识别——APP校验及后台解析
  二维码携带的信息,我们无法通过肉眼识别,不同的支付机构在二维码中注入的信息规则不一致,需要对应的服务器根据其编码规则解析。我们每次使用扫一扫识别二维码后,都会提示“正在处理中”,意味着后台服务器正在解析这个二维码的内容,比如核对二维码携带的链接地址是否合法(像微信解析出是支付宝的链接会屏蔽)、是属于支付链接还是属于外链网址等。
  校验的规则很多,就支付链接来说,服务器校验属于自己公司的支付链接后,会获取支付链接中包含的商户信息,进而判断该商户是否存在、商户状态是否正常等,所有校验通过后,后台服务器会把商户名称返回到发起用户的手机APP上,同时告诉APP,服务器校验通过了,APP你可以调起收银台了。
  于是我们确定支付,输入支付密码,后台继续校验支付密码的正确性,正确的话支付就此完成。
  扫码支付流程的关键步骤
  从这个过程来看,要实现扫码支付的流程,最关键的是要定义允许识别哪些类型的二维码以及后台的校验逻辑。
  定义允许识别哪些类型的二维码。也就是说,当APP扫一扫,如果产品经理定义,发现二维码携带的信息是别家的网址“https://www.tina.com”,就在我们APP这边进行过滤,比如只要不是以“https://www.wx.com”开头的,不去请求服务器。所以,有些时候,明明是网址,但是解析后你看到的是一串纯文本。
  比如定义支付链接的格式为“https//qr.wx.com……”,每次检测到该链接开头的,就请求服务器去校验该支付链接的有效性。
  此外,还需要定义平台自有的解析规则,如微信识别为付款码是以13开头,微信检测到数字内容是以13开头的,会先去匹配其是否符合付款码的规则,符合的话才会进行后续的解析,如下图所示:



以上说的是主扫,也就是用户扫商家;对于商家扫用户,原理是一样的,只不过用户的付款码中包含的是识别该用户的专属ID,商家通过收银系统向微信或支付宝提交订单时,把扫码枪识别出来的信息传递给微信或支付宝,他们根据这个专属ID找到对应的用户,通过代扣直接就扣款了。
免责声明:深圳网不承担任何由内容提供商提供的信息所引起的争议和法律责任! 本文地址:https://www.szaima.com/thread-231669-1-1.html 上一篇: 新手站长究竟该如何制定SEO计划书_网站策划_网站运营_脚本之家 下一篇: 净水产品良莠不齐 低价净水器原因解析-水家电

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 提醒:请严格遵守本站规则,禁止广告!否则封号处理!!

关闭

站长推荐上一条 /2 下一条

深圳网广告位招租
广告位招租
广告位招租
快速回复 返回顶部 返回列表