20171229-智能POS

Posted by PaymentGroup on November 27, 2017

一、主题分享

大家好,我当前的工作主要负责POSP系统和POSC端系统的程序开发和运维工作。

1、简介

我们打造的产品除了传统POS,主要还有MPOS、智能POS、二维码收银台等。 支持的功能除了传统的银行卡交易,还有微信、支付宝、银联三种渠道的各种扫码交易,此外,还有转账、便民缴费、进销存等功能。

2、POSP系统模块划分

我们POSP系统内部也划为几个模块,核心的就是处理POS联机交易的应用集群,处理socket通讯8583报文格式。但是智能POS肯定是HTTPS的通讯方式,那么需要先经过SSL加速器转换为HTTP通讯,再通过互联网前置模块转换成socket通讯,最后发到POSP应用集群。此外,还有二维码收银台的H5 web模块,进销存模块,应用市场模块等。内管系统单独成另一系统。

再说回智能POS终端部分。智能POS已经不是个新鲜的事物了,相关概念已经出来好多年了,现在已经是非常成熟和常见了。

3、智能POS基础

为了实现这些目标,智能POS必须要有一个统一的基础,因为一个收单机构肯定不止一个POS厂商,不止一种型号。 这个基础主要如下:

  • 统一操作系统:需要对操作系统的版本、安全控制、预装程序等制定统一要求。此外,对于按键和硬件模块的要求也需统一。
  • 统一签名验签:实现对所有程序的管理,未签名的程序一律不允许安装。
  • 统一硬件驱动层SDK接口: 这个是为了实现统一收单应用,也为其他第三方应用提供统一的硬件支持。
  • 统一收单应用,并提供统一的支付接口: 对第三方应用提供消费、预授权、二维码扫码等支付接口。
  • 对第三方制定统一的接口文档

此外,还有统一的launcher,统一的应用市场,统一的审核上架流程等等。

在打造了一个统一的基础之后,再积极培育第三方开发合作者,第三方业务合作者,打造一个丰富多元的支付生态系统。

4、三码合一

因为我们现在就在做三码合一,对这块还算了解,跟大家讨论讨论。 我们现在收银台有两个码,一个聚合了微信支付宝,为自己的域名地址,一个用于银联二维码静态主扫,为银联地址。现在需要把这两个合一。

银联提供两种方案:

  • 银联标准码方案,统一成银联地址的码,当微信支付宝扫的时候,银联给重定向到我们银行的地址。之后银行自己处理。银联主扫没有变化。
  • 非标码方案,统一成我行地址的码。但需要把地址报备给银联,当支持银联二维码的app扫的时候,还是将交易发到银联,银联没有订单信息,需要去银行做订单查询再回给支付APP,但这个有个问题,有好多银联支付的APP主扫时对于扫到的地址做了校验,如果不是银联地址就报错,所以需要他们做白名单配置。

如果用银联标准码方案,对于收单银行来说,微信支付宝的交易也得去趟银联,路由就长了,并且自己的控制力就弱了,但是受制于白名单。让众多银联付款APP改是很难的,现在大部分银行还是会采用银联标准码方案。

二、Q&A

1、收单相关

Q1、对于第三方合作伙伴,业务APP调用收银是跳转到贵行的收银台APP/插件?还是可以直接在业务APP里调用?还有就是业务伙伴拿对账单是否线上线下都能拿到?
A1、需要跳转到统一的收单应用,支付完再回来,打印的话可以自己打印,也可以让收单应用打印,参数控制,对账方面系统现在没有提供。
A2、嗯,打印相当于直接调POS的打印接口哈。

Q2、统一收单应用还需要操作吗?跳转过去直接扫码/刷卡?还是说需要选择支付方式?
A2、现在是参数里面告诉支付方式。

Q3、二维码收单和银行卡收单,现在是一次性结算还是分批结算?在智能POS上对账单是否统一一个出呢?
A3、如果你是说的终端的结算单,那是一个。如果是说的入账,那是分批入账的。入账是由入账的系统拿到清算文件之后进行入账,不归POSP系统,入账的流水在手机银行、网银、POS后台管理端能够看到。

2、入账相关

Q4、入账是由入账的系统拿到清算文件之后进行入账,不归POSP系统?清算文件?比如银联的账单?支付宝的入账通知吗?
A4、对于T+1商户,都是第二天银联清算文件,微信支付宝清算文件过来了对其入账,但由于时间不一致,是分别入账的。入账之后会有动账的短信通知。入账的流水明细可以在上述系统查到,但是确实需要筛选渠道。

Q5、资金是怎么个到商户呢?由银行统一结算给商户?还是线上由银行,线下由银联?
A5、这边都是线下商户,我们就是银行,由银行清算入账。

Q6、线下收单的商户结算资金和微信支付宝银联二维码的资金不能聚合?是因为线下银联直清商户+银行在微信支付宝是大商户模式?
A6、说的都是间联pos商户。直联商户跟这个系统没有关系。分批入账说的是一个商户一天有三笔入账,银联微信支付宝,因为我们是根据清算文件进行入账,但是每个渠道清算文件到的时间不一致。如果我们等到最后一个到再一块入账,就比较墨迹了。并且银联是自然日,微信、支付宝是工作日,很难一笔入账。

Q7、我觉得扫码的交易,不需要上送批节?
A7、是不需要批结,批结本身都可以不需要。

3、清算相关

Q8、支付宝微信的商户资金清算是以银行还是支付宝为准清算?
A8、我们以支付宝微信的清算文件为准。但这个机制每个银行不一样,一般都会和自己的流水核对。

Q9、银联商户清算是以银联提供的商户资金清算文件为准吗?
A9、我们的是,其他的不一定。银行都是以银行服务商接入微信支付宝,需要给每个POS商户建立子商户。

Q10、现在网联影响支付宝清算这块吗?
A10、网联现在只是让付款的这边接入它,收单这边没有要求。收单这边没有影响。

Q11、付款主要是那些业务场景,刷卡消费结果是指的什么?
A11、付款就是商户的收款,行业应用可以对其场景丰富。

Q12、POS银行卡收单是不是在终端上存储了刷卡消费结果?然后每天签退就会清除记录并同步上传到收单机构的POSP,就是银联或者银行卡收单机构反馈的交易报文类,比如支付成功,预授权成功等?
A12、终端本地是有本批次的消费结果记录的,每次结算交易之后对流水进行清除。但不会同步给POSP。

Q13、支付宝在收单业务,承担类似银联跨行清算的作用吗?可以这样理解吗?网联是要把支付宝跨行清算的功能取代吧!
A13、其实可以这样理解,支付宝相当于银联了,所以微信支付宝二维码支付的崛起威胁最大的就是银联,而不是银行,所以现在银联搞云闪付,搞二维码,搞统一APP都是为了对付第三方支付。

4、银联相关

Q14、那现在推银联的标准码,你们的记账模式要调整吗?其实现在银行卡的一些交易功能,可以去掉了?
A14、记账模式没有变化,银联现在给的聚合方式分为银联标准码和银联非标码,银联标准码就是域名是银联,微信支付宝扫的话银联再重定向到各个银行,银联非常想银行走标准码。非标码就是各个收单机构的自己域名的码,其实其他APP也能支持非标,非标就是主扫的时候订单信息不在银联,而在发码机构,需要银联去银行查询订单信息,银联把不符合他们命名规范的码都叫非标码,非标码应该是支持微信和支付宝聚合的。

Q15、银联扫码好像要签到?
A15、银联扫码不需要签到。终端签到主要是更新pin key和mac key。

5、其他

Q16、商户各大厂商收银机在集成卡和扫码业务时是无缝对接还是收银机SI也要开发?收银机集成方案怎样的?
A16、收银机和智能pos不一样,得自己按照联机接口开发。

本文档来自“支付产品架构交流群” 的聊天记录整理,由志愿者整理并发布到本网站。如需要及时收到来自“支付产品架构交流群”的最新消息,请扫码关注“凤凰牌老熊”的微信公众号。目前支付产品架构群还有不少空位。 本群面向支付行业的有经验(2年以上)的产品经理、软件工程师、架构师等,提供交流平台。如想加入本群,请在本文评论中留言(不公开),说明所在的公司、负责的工作、入群分享的主题和时间。