无须开通网银,利用支付验证要素,结合安全认证,让持卡人完成互联网支付的支付方式。
无卡支付业务形态(以银联为例):认证支付、普通支付、快捷支付
认证支付:输入卡号 密码,获取短信验证码,输入短信验证码,支付成功
普通支付:输入卡号 密码,页面校验码,支付成功
快捷支付:(前提:已绑定卡信息)登陆,获取短信验证码,输入验证码,支付成功。
何谓无卡支付?无卡支付是指:
1. 支付无需物理卡片通过受理设备的读取;
2. 支付无需跳转至银行交互页面。
无卡支付的典型应用模式是:
1.验证卡信息的正确性;
2.通过短信验证码进行鉴权绑卡;
3.进行绑卡支付。
无卡支付业务结构一般如下图所示
通道是第三方支付安身立命的根本,第三方支付的核心业务均是建立在通道的基础上,对通道的认识和充分利用,是很有必要的。因而本文所讲的无卡通道知识,虽不涉及到无卡支付产品自身的设计,但却是无卡支付底层产品设计的基础。
无卡通道类别
本文提供三个视角对无卡通道进行分类:通道业务类型,通道业务能力,通道方身份。
第一种分类法:按通道业务类型,可分为代扣通道、卡通通道、快捷通道、信用卡无磁无密通道。
第二种分类法:按卡信息验证、授权、支付这三个环节的不同能力,可以将通道类别罗列如下表格。
第三种分类法:按通道方的身份进行分类,可以分为银企直连通道与间连通道,不同身份的通道方往往决定了它提供支付服务的质量、能力等。
无卡通道接口
再来看无卡通道的内容,也就是无卡通道提供的API接口。下述表格按类别大致地记录了无卡通道的接口,所有无卡通道接口均可归属于其中某一类别。
无卡通道特性
上述已讲无卡通道类别和接口,基于上述认识已经可以进行无卡通道对接。不过,想要向商户和用户提供优质的无卡支付产品,了解无卡通道的下述特性非常重要。
无卡通道-支付信息流
无卡支付的信息流方面,由于卡信息由支付机构(或其发展的商户)负责收集,风控也基本由支付机构负责。下述时序图以银行短验快捷通道为例,描述了一个用户进行快捷签约与绑卡支付的全过程。
无卡通道-支付资金流
无卡支付的资金流,与网银支付、POS刷卡等所有的第三方支付是一样的。下图是以一个商户委托支付公司代其收单的完整资金流:支付时,真实资金T+1从用户银行账户转至支付公司的备付金银行账户,结算时真实资金再从支付公司的备付金银行账户转至商户银行账户。
平常我们在购物付款时,使用手机中的微信或支付宝扫一扫即可完成支付,无需像以前携带现金等着商户找零钱。线下扫码支付大大的提高了我们付款的效率,今天就主要谈一谈扫码支付的实现流程,让我们享受快捷的同时,也了解其中的原理。
说起扫码支付,就不得不提二维码。线下所有的扫码支付都是以扫二维码开始,通过扫描二维码,我们可以看到付款页面商家的名称,所以二维码在这里承担的角色是——信息的载体,它通过黑白相间的排列组合记录信息。不止是支付,我们看到很多APP的下载链接,也是用二维码的形式记录链接地址。现在网上有很多现成的工具,输入一段内容后,即可把内容生成二维码,所以生成二维码这一步的实现流程不存在技术难题。
选择二维码作为付款信息的载体,一方面是受收银台扫描商品一维码来识别商品,这一场景的启发,另一方面是二维码本身可存储足够大的数据信息,而且支持不同的数据格式,同时二维码有一定的容错性,部分损坏后仍可正常读取。这一切,使得二维码成为了被大众广泛使用的信息载体。
二维码携带的信息,我们无法通过肉眼识别,不同的支付机构在二维码中注入的信息规则不一致,需要对应的服务器根据其编码规则解析。我们每次使用扫一扫识别二维码后,都会提示“正在处理中”,意味着后台服务器正在解析这个二维码的内容,比如核对二维码携带的链接地址是否合法(像微信解析出是支付宝的链接会屏蔽)、是属于支付链接还是属于外链网址等。
校验的规则很多,就支付链接来说,服务器校验属于自己公司的支付链接后,会获取支付链接中包含的商户信息,进而判断该商户是否存在、商户状态是否正常等,所有校验通过后,后台服务器会把商户名称返回到发起用户的手机APP上,同时告诉APP,服务器校验通过了,APP你可以调起收银台了。
于是我们确定支付,输入支付密码,后台继续校验支付密码的正确性,正确的话支付就此完成。
从这个过程来看,要实现扫码支付的流程,最关键的是要定义允许识别哪些类型的二维码以及后台的校验逻辑。
定义允许识别哪些类型的二维码。也就是说,当APP扫一扫,如果产品经理定义,发现二维码携带的信息是别家的网址“https://www.tina.com”,就在我们APP这边进行过滤,比如只要不是以“https://www.wx.com”开头的,不去请求服务器。所以,有些时候,明明是网址,但是解析后你看到的是一串纯文本。
比如定义支付链接的格式为“https//qr.wx.com……”,每次检测到该链接开头的,就请求服务器去校验该支付链接的有效性。
此外,还需要定义平台自有的解析规则,如微信识别为付款码是以13开头,微信检测到数字内容是以13开头的,会先去匹配其是否符合付款码的规则,符合的话才会进行后续的解析,如下图所示:
以上说的是主扫,也就是用户扫商家;对于商家扫用户,原理是一样的,只不过用户的付款码中包含的是识别该用户的专属ID,商家通过收银系统向微信或支付宝提交订单时,把扫码枪识别出来的信息传递给微信或支付宝,他们根据这个专属ID找到对应的用户,通过代扣直接就扣款了。