用于支付处理的设备和方法与流程

文档序号:16990860发布日期:2019-03-02 00:57阅读:164来源:国知局
用于支付处理的设备和方法与流程

本申请要求分别于2016年5月13日和2016年5月16日提交的美国临时专利申请号62/336,457和62/337,108的权益。所有前述申请都通过引用整体并入本文。

本申请涉及用于处理交易的设备,特别是涉及商家销售终端和支付终端之间的通信。



背景技术:

现代零售交易为消费者提供多种支付选择。商家销售终端(也称为销售点(pos)设备)是商家用来计算客户所欠金额并例如通过生成发票或账单呈现支付的交易信息的设备。然后,客户向商家付款。在收到付款后,商家通常会向客户发出交易的收据。

通常在销售点处,客户将选择使用卡(诸如借记卡或信用卡)、无线支付设备(诸如移动电话或平板电脑)等进行支付。这种支付方法可能需要输入凭证,诸如个人识别号(pin)和客户授权。客户凭证的输入经由支付终端(诸如安全pin输入设备(sped))完成。

商家销售终端和支付终端之间的集成可能非常复杂。商家销售终端可以采用平板电脑、个人计算机、移动电话等形式,但是在大多数情况下,商家销售终端和支付终端之间存在物理连接。每个支付终端通常具有其自己的具有特定通信协议的特定设置,这使得集成商(例如商家或独立软件供应商)难以且昂贵地将其销售终端与多于一个的支付终端模型进行认证和集成。

目前,商家销售终端需要本地地和直接地与给定的支付终端通信。这种直接通信可以经由串行端口、usb、蓝牙和/或通过使用因特网协议连接到路由器来进行,这需要安装驱动和api。除其他外,这可能需要商家销售终端硬件制造商(例如apple)在一些情况下同意安装某些软件包。此外,由于处理器不能在支付终端上远程运行诊断,因此可能难以对支付终端上的问题(例如,硬件故障或设备之间的通信故障)进行故障诊断。此外,更新支付终端上的软件是低效且昂贵的。

商家销售终端开发商通常不愿意在销售终端上安装第三方软件(即,不是商家销售终端制造商的任何人开发的软件)。此外,商家随时间推移定期升级支付终端,并且每个这种升级当前需要获得和安装新的驱动,并根据用于新支付终端的api开发新的软件。这又是耗时且复杂的。



技术实现要素:

根据本发明的一个方面,提供了一种用于支付处理的计算机服务器,包括:网络接口;处理器;存储器,其包含用于由所述处理器执行的计算机可读指令,所述指令包括:终端连接模块,其用于通过所述网络接口接收来自支付终端的连接请求,并且与所述支付终端形成加密的网络连接;配对模块,其用于接收来自商家销售终端的识别所述支付终端的配对请求,并且使所述支付终端与所述商家销售终端在数据结构上相关联;交易请求模块,其用于以第一数据格式从所述商家销售终端接收定义交易参数的第一消息,以与所述支付终端兼容的第二数据格式生成包含所述交易参数的第二消息,并且通过所述加密的网络连接将所述第二消息发送到所述支付;收据递送模块,其用于通过所述加密的网络连接以所述第二数据格式从所述支付终端接收支付凭证消息,以所述第一数据格式生成收据消息,并且将所述收据消息发送到所述商家销售终端。

根据本发明的另一方面,提供了一种处理支付的方法,包括在服务器处:通过网络接口接收来自支付终端的连接请求,并且与所述支付终端形成加密的网络连接;接收来自商家销售终端的识别所述支付终端的配对请求,并且使所述支付终端与所述商家销售终端在数据结构上相关联;以第一数据格式从所述商家销售终端接收定义交易参数的第一消息,以与所述支付终端兼容的第二数据格式形成包含所述交易参数的第二消息,并且通过加密的网络连接将所述第二消息发送到所述支付终端;通过所述加密的网络连接以所述第二数据格式从所述支付终端接收支付凭证消息,以所述第一数据格式生成收据消息,并且将所述收据消息发送到所述商家销售终端。

附图说明

在示出示例实施例的附图中,

图1是示例支付处理系统的框图。

图2是服务器的示例组件的框图;

图3描绘了服务器上的软件的简化布置;

图4是描绘将支付终端与商家销售终端进行配对的示例方法的流程图;并且

图5是描绘支付处理的示例方法的流程图。

具体实施方式

图1是示例支付处理系统的框图。商家侧包括商家销售终端102和支付终端104。非商家侧包括服务器106、网关设备108和110以及基础交换设备112。网关设备108、110和基础交换设备112可以将服务器106与金融机构、卡发行商等的系统接合。例如,不同的网关设备可以处理不同类型的交易、与不同发行商或金融机构相关的交易等。在一些实施例中,网关设备108是eselectplus网关,网关设备110是ipgate网关,并且服务器106是云通信服务器。在一些实施例中,ipgate网关110经由安全套接字层(ssl)连接与服务器106通信。在一些实施例中,eselectplus网关108经由ssl上的超文本传输协议(https)连接与服务器106通信。如所描绘的,存在两个网关设备。然而,在其他实施例中可以存在更多或更少的网关设备,并且网关设备可以是除eselectplus或ipgate网关之外的设备。

商家销售终端102可以是例如移动设备(例如平板电脑、智能电话等)或有线设备(例如pc终端)。适合用作商家销售终端的设备包括能够与服务器106进行基于ip的加密连接的设备。商家销售终端102可以运行任何操作系统(例如,ios、android、microsoftwindows、linux等)。商家销售终端102还可以向服务器106发送配对请求以与支付终端104配对,并且向服务器106发送请求以发起交易。这样的请求可以以适当的数据格式(诸如http)以电子消息的形式发送。商家销售终端102可以在已完成交易之后从服务器106接收收据消息。在一些实施例中,商家销售终端102可以生成收据。

一些实施例与各种支付处理系统、商家销售设备、销售终端和由例如netsuite提供的插件协同工作。这种设备、销售终端和插件在题为“paymentprocessingplug-in”的技术文档(2016版,第1次发行)中进行了描述,该技术文档作为附录a包含在美国临时申请号62/337,108中,其通过引用并入本文。例如,在一些实施例中,服务器106和网关108、110中的一个或多个被配置为接收请求或提供根据支付处理插件文档构建的响应。

支付终端104可以是例如安全pin输入设备(sped)。各种型号的支付终端是可用的,并且包括由verifone和ingenico生产的设备。支付终端104通常包括用于接受卡的插入(例如借记卡或信用卡)的插槽,并且还可以包括用于(例如,通过由各种支付终端的供应商提供的paypass、paywave和expresspay技术)无线地检测卡的检测器。支付终端104通常还包括键盘,该键盘包括数字和具有其他功能的各种输入,包括具有特定功能的热键。支付终端104通常根据特定通信协议和消息格式与商家销售终端102通信。这种通信通常需要在商家销售终端102上安装驱动和api,以便以所需的数据格式与特定支付终端104通信。支付终端104使用的通信协议可以随特定支付终端104的制造商和型号而变化。

图2是示例服务器106的组件的框图。如所描绘的,服务器106包括处理器124、网络接口116、存储器122、永久存储器118和输入/输出接口120。

处理器124可以是intel或amdx86或x64、powerpc、arm处理器等。处理器124可以在加载在存储器122中的软件的控制下操作。网络接口116允许服务器106连接到其他设备,包括商家销售终端102、支付终端104、eselectplus网关108和ipgate网关110。i/o接口120将服务器106连接到一个或多个外围设备(诸如键盘、鼠标、usb设备、盘驱动器等)。

软件可以从外围设备或从网络设备加载到服务器106上。可以使用处理器124来执行这种软件。图3描绘了服务器106处的软件的简化布置。该软件可以包括操作系统126和应用软件,诸如终端连接模块128、配对模块130、交易请求模块132和收据递送模块134。

广义地说,为了执行交易,商家销售终端102向服务器106发送请求。此后,销售终端102等待来自服务器106的收据消息。服务器106从请求中提取信息并将信息打包为与支付终端104兼容的数据结构。然后,服务器106将信息包发送到支付终端104,支付终端104根据支付终端的标准协议发起交易。

一旦已发起了交易,支付终端104就向服务器106发送金融消息,然后服务器106通过适当的网关将金融数据路由到基础交换机112,基础交换机112将交易数据发送到适当的外部第三方卡网络服务器114(例如mastercard或visa网络)进行审批。

然后,基础交换机112从卡网络服务器114接收指示交易是被批准还是被拒绝的回复,以及其他信息(例如,交易id、交易金额、来自用于交易的卡的某些数字等)。然后将该回复路由回服务器106以进行格式化,然后发送到支付终端104。

支付终端104基于回复信息完成交易,并且然后向服务器106发送概要交易收据消息。然后,服务器106重新打包该数据并将其发送到商家销售终端102以便创建收据。

根据该简要概述,应当理解的是,使用服务器106的好处在于来自支付终端的金融数据通过服务器106而不是通过商家销售终端102路由到基础交换机112。因此,商家销售终端102在整个交易中不暴露于任何敏感卡数据。商家销售终端102仅向服务器106发送交易请求,并且然后一旦交易完成就等待来自服务器106的包含收据信息的消息。

图4是描绘用于将商家销售终端与支付终端进行配对的示例过程的流程图。在一些实施例中,支付终端104充当服务器106的客户端。在框402处,服务器106通过网络接口116接收来自支付终端104的连接请求。在一些实施例中,支付终端104在第一次启动时将连接请求发送到服务器106,并且连接请求包括支付终端104的终端id和支付终端104的序列号中的至少一个。在框404处,服务器106与支付终端104形成加密的网络连接。在一些实施例中,在与服务器106建立加密连接之后,支付终端104等待来自服务器106的进一步指令。在一些实施例中,加密连接包括tls连接。其他加密技术是可能的,例如加密连接可以是ssl连接或其他合适的加密连接。

在框406处,服务器接收来自商家销售终端102的配对请求,其中配对请求识别支付终端104。在一些实施例中,通过终端id在配对请求中识别支付终端104。在一些实施例中,支付终端104显示商家可以与配对请求一起包括的数字或字母数字代码,以识别用于配对的期望的支付终端104。在框408处,服务器106使支付终端104与商家销售终端102在数据结构上相关联。在一些实施例中,服务器106通过支付终端104的终端id或代码来识别支付终端104。

在一些实施例中,在关联之后,服务器106向支付终端104和销售终端102发送关联确认消息。在一些实施例中,支付终端104和/或商家销售终端102在接收到关联确认消息之后向用户显示警报。

图5是描绘用于处理交易的示例过程的流程图。为了发起交易,商家销售终端102例如通过条形码扫描、用户输入等收集交易数据。交易数据包括诸如交易类型和交易金额的交易参数。可选地,交易数据可以包括例如客户识别数据、发票行项目数据或其他交易数据。商家销售终端102将交易参数编码成数据格式(例如,json、xml、表单变量、键值配对等)的消息。商家销售终端102使用通信协议(例如,http或https)将消息发送到服务器106。在一些实施例中,第一消息是http或httpspost消息。在框502处,服务器106接收消息。在一些实施例中,直接从销售终端102接收消息。在一些实施例中,销售终端102将消息发送到商家网络服务器(未示出),并且商家网络服务器将消息转发到服务器106。

商家销售终端102可以通过在商家销售终端102上运行的应用来发起交易,然而,不需要商家销售终端102执行任何特定的软件应用以实现与支付终端104的兼容性。例如,商家销售终端102不需要执行任何专用软件(例如由第三方设计)来与支付终端104通信。相反,销售终端102仅需要向服务器106发送httpspost消息,而不管将用于进行交易的支付终端104的品牌或型号。

在一些实施例中,httpspost消息至少包括以下信息:a)商家凭证;b)识别要用于交易的支付终端104的数据(例如终端id),以及c)交易细节,其可以包括交易类型(购买、退款、购买无效、退款无效等)、美元金额、订单id号、欺诈数据(frauddata)、是否提供小费选项等。可以用httpspost消息包括的其他数据可以包括行项目号和客户id。在一些实施例中,使用https对从商家销售终端102到服务器106的通信进行加密,并且还使用https对从支付终端104到服务器106的通信进行加密。在一些实施例中,支付终端104和服务器106之间的连接是传输层安全(tls)或ssl连接。

在一些实施例中,如果商家仅具有一个支付终端104,则可以从httpspost消息中省略终端id,这是因为服务器106维护存储器118中的后端数据库,其将支付终端104与商家id相关联。

一旦服务器106接收到第一消息,服务器106然后就处理该请求,提取相关的交易数据,并且在框504处,以与在第一条消息中识别的支付终端104兼容的第二格式生成包含提取的数据的第二消息。在一些实施例中,服务器106维护已经提供给商家的每个支付终端104的数据库,并且因此关于特定支付终端104的设备信息可用于服务器106。

在框506处,服务器106然后将第二消息发送到支付终端104。然后,支付终端104发起所请求的交易。支付终端104向客户或持卡人提供必要的提示(例如插入卡、授权交易金额、小费等)。一旦已从客户或持卡人获得了必要的输入,支付终端104就生成第三消息,该第三消息包含由支付终端104发送到服务器106的与交易有关的金融数据。在一些实施例中,支付终端绕过服务器106并将第三消息直接发送到网关108或110。

在一些实施例中,第三消息的格式与常规交易系统一致(其可以根据卡是否是例如mastercard或visa等而变化),并且可以包括加密的卡号、有效期和加密的emv数据。术语“emv”是指europay、mastercard和visa的简写方式,但是将应当理解的是,主要机构之外的其他卡类型也可以与本文描述的系统和方法一起使用。

在一些实施例中,服务器106从支付终端104接收第三消息,并且服务器然后将第三消息路由到适当的外部网络114以确定交易是被批准还是被拒绝。根据服务器106接收到的第三消息的格式,服务器106将确定将第三消息转发到的适当的网关108或110。然后,服务器将第三消息发送到适当的网关。在一些实施例中,服务器106使用ssl连接与ipgate网关110通信,并且服务器106使用https连接与eselectplus网关108通信。所选择的网关以预期接收网络(例如,visa、mastercard等)可接受的格式将把第三消息重新打包为第四消息。第四消息被发送到基础交换机112。基础交换机112将第四消息发送到适当的外部网络。

在外部网络(例如,visa、mastercard等)已处理了交易请求之后,外部网络服务器114将第五消息返回到基础交换机112。然后,基础交换机112将识别第五消息的源,并将第五消息路由到适当的网关108或110,以进行格式化和处理。然后将来自第五消息的相关数据发送到服务器106,服务器106将相关数据格式化为与支付终端104兼容的第六消息。然后,服务器106将第六消息发送到支付终端104。在一些实施例中,网关108或110在没有在服务器106处进行额外格式化的情况下将第五消息直接发送到支付终端104。

第六消息的内容可以包括,例如,交易是被批准还是被拒绝的指示、交易的响应代码、交易金额、所使用的卡号的前4位和后4位、卡类型以及为了最终生成收据所需的任何其他详细信息。在网关108或110直接与支付终端104通信的实施例中,第五消息包括与先前描述的第六消息类似的内容。

在从服务器106接收到第六消息(或者如果直接从网关108或110发送,则为第五消息)时,支付终端104然后将向客户/持卡人提供关于交易是被批准还是被拒绝的指示。然后,支付终端104将生成包含生成收据所需的数据的支付凭证消息,并且支付终端104以第二数据格式将支付凭证消息通过加密的网络连接发送到服务器106。在框508处,服务器106接收支付凭证消息。在框510处,服务器106处理支付凭证方法并生成第一数据格式的收据消息。在框512处,服务器106将收据消息发送到商家销售终端102。在一些实施例中,商家销售终端102基于收据消息中包含的数据创建收据。

本领域技术人员将理解,从支付终端104和商家销售终端102的角度来看,不需要特殊格式化,并且不需要在支付终端104或商家销售终端102上安装供应商或平台专用软件。这是因为支付终端104和商家销售终端102将数据发送到服务器106,而不是在商家销售终端102和支付终端104之间直接发送数据。然后,服务器106可以在商家销售终端102和支付终端104不必直接通信的情况下,将数据重新打包为与预期接收终端兼容的格式。

在一些实施例中,由商家销售终端102生成并发送到服务器106的第一消息包括附加参数,即用于异步操作的回发(post-back)url。异步操作为系统提供了一定程度的稳健性。例如,一旦支付终端104已被触发以开始交易,客户/持卡人可能花费很长时间来提供相关数据(例如,交易金额的授权、提供小费金额、输入pin码等)以完成交易。该延迟顺序可以导致商家销售终端102上的连接超时。

如果第一消息中不包括回发url参数,则通信的默认为同步响应流。如果第一消息中包括回发url参数,则将在原始套接字请求上从服务器106向销售终端102发送确认。

当请求异步操作时,这允许服务器106将收据消息发布到在第一消息中标识的回发url(例如,由商家销售终端102发送的原始httpspost消息)。然后,商家销售终端102可以轮询该url,直到在该url处发布了收据消息。在一些实施例中,商家销售终端102定期轮询url。这消除了在进行交易的时间段内维持与服务器106的加密连接的需要。

作为异步操作的机制的一部分,商家销售终端102可以要求将合作伙伴或商家凭证的形式包括在收据消息中以提供关于收据的真实性的验证。这种凭证的示例包括api令牌或在服务器106、支付终端104和商家销售终端102之间共享的客户端证书。

在一些实施例中,如果服务器106不能连接到支付终端104,则服务器106向商家销售终端102返回错误消息。错误消息可以包含错误条件代码,该代码提供有关错误性质的更多细节。示例错误条件代码是“另一个已在进行中的交易”条件代码,其指示在第一消息中标识的支付终端104已经参与另一个交易。

在一些实施例中,支付终端104的软件的部分可以托管在服务器106中,而不是本地地存储在支付终端104上。商家或销售终端将无法访问软件的任何这种部分,这可以提供关于例如篡改或保护敏感数据的增强的安全性。

在一些实施例中,当支付终端104被提供给商家时,服务器106将与支付终端104有关的数据的记录保存在存储器118中的后端数据库或另一个存储位置中。与支付终端104有关的这种数据包括序列号或其他唯一标识符,并且保存将每个支付终端104与订购支付终端104的商家相关联的记录。

使用根据一些实施例的系统和方法的一个可能的好处在于商家销售终端102(例如平板电脑)的开发者具有针对销售终端102开发和设计其自己的软件而不必安装第三方驱动来与支付终端104接合的自由。这可以减少在这种其上存储空间可能受到限制的嵌入式设备上所需的存储空间量。此外,如果并且当不同的支付终端104被使用或者支付终端104被升级时,不需要更新在商家销售终端102上运行的软件。所需要的只是商家销售终端开发者确保以httpspost消息或用于与服务器106通信的另一合适格式来发起交易请求。在一些实施例中,商家销售终端102不直接与服务器106通信,而是经由商家侧的网络服务器进行通信,并且商家侧的服务器直接与服务器106通信。

应当理解的是,从商家销售终端102的角度来看,通常(使用适当的驱动和api)直接从支付终端104充当服务器的系统中的支付终端104接收到的数据的格式与从本申请中的服务器106接收到的数据的格式之间没有区别。

还应当指出的是,服务器106包括存储元件118,其可以存储应用编程接口(api),所述应用编程接口(api)包括针对商家销售终端102和支付终端104所支持的所有交易特征(例如欺诈工具、小费等)的命令。因此,根据一些实施例,保留了销售终端102和支付终端104的功能。

使用本文描述的服务器106,商家销售终端102不必与在支付终端104上运行的软件集成或直接兼容。支付终端104和销售终端102之间的所有通信都经由服务器106路由,服务器106处理和重新打包数据以与预期的接收设备兼容。除了在商家销售终端102方面设备不可知且操作系统不可知之外,在服务器106上运行的平台还可以与由当前平台(例如ingenico和verifone设备)支持的几乎任何支付终端104一起操作。

在一些实施例中,非金融交易可以由服务器106发起。服务器106还可以发起与支付终端104的通信和执行与交易无关的命令。例如,服务器106可以包括升级模块,其被配置为查询支付终端104以请求在支付终端104上运行的软件的版本。如果服务器106确定支付终端104上的软件能够升级,则服务器可以将软件更新推送到支付终端104。在一些实施例中,服务器106可以在不首先请求软件版本的情况下将软件更新推送到支付终端104。

在一些实施例中,服务器106发起交易结算。例如,可以使用草案捕获(draftcapture)方法来处理交易,根据该方法,服务器106维持被授权并准备好结算的交易的记录。服务器106可以向支付终端104发送请求以获得结算经授权的交易的指令。作为响应,支付终端104可以向服务器106发送指令以继续进行结算。

可替选地或另外地,商家销售终端102可以维持经授权的交易的记录,以便稍后提供给服务器106进行结算。该记录可以包括例如可以被加密的交易标识符和交易参数。服务器106可以向商家销售终端102发送请求以提供要结算的交易。作为响应,商家销售终端102可以发送经授权的交易的记录,服务器106可以继续对其进行结算。

例如,服务器106可以在预定义的时间段(诸如,在营业日结束时、或在经授权的交易的记录达到定义的大小或货币值时)发起结算。

在一些实施例中,商家终端102或商家服务器向服务器106发送命令以发起对交易的关闭或结算。在一些实施例中,服务器106自动发起关闭或结算(例如,在营业日结束时或在特定商家当天关闭时)。

在一些实施例中,服务器106指示支付终端104与服务器106断开连接。该功能可以帮助管理服务器106上的连接,因为在任何给定时间可能存在连接到服务器106的许多支付终端104,可能有数千或数万个设备。此外,可能有在操作的多个服务器106。如果给定服务器106被安排或需要维护,则服务器106可以向一个或多个连接的支付终端104发出命令以断开连接并连接到不同的服务器。

在一些实施例中,服务器可以向支付终端104发送命令,其指示支付终端104在重新连接到服务器106之前与服务器104断开一段定义的时间。例如,服务器106可以指示支付终端104在商家的商店已经关闭时与服务器断开连接,并且指示支付终端在商家的商店打开时(例如12小时的时段)重新连接到服务器106。

在一些实施例中,服务器向支付终端104发送命令,其指示支付终端104与服务器106断开连接而没有定义重新连接的时间。一旦断开连接,支付终端104可以通过用户致动支付终端104的小键盘上的键、或者通过用户拔出支付终端104并然后再插回支付终端(例如通过断开和重新连接电力电缆或者断开和重新连接网络电缆对支付终端104进行电力循环)来重新连接到服务器106。

本文公开的一些实施例允许更简单、安全且与设备/os不可知的解决方案,其允许任何支持ip通信的商家销售终端102和支付终端104之间的通信。基于云的服务器106可以充当商家销售终端102和支付终端104之间的消息传递的通道(conduit),并且不需要商家销售终端102和支付终端104之间的直接通信。如此,一些实施例消除了在商家销售终端上本地地安装支付终端相关的软件的需要,先前需要其来促进销售终端102和支付终端104之间的通信。一些实施例还允许远程监视和报告所连接的设备。一些实施例将交易消息的格式化抽象为中心位置。

尽管已经详细描述了实施例,但是应该理解的是,可以在其中进行各种改变、替换和更改。

此外,本申请的范围不旨在限于说明书中描述的特定实施例。如本领域普通技术人员将从本申请的公开内容容易地理解的,可以利用执行与本文中所描述的对应实施例大致相同的功能或实现与其大致相同的结果的现有或以后将开发的过程、机器、制造、物质组成、装置、方法或步骤。因此,所附权利要求旨在在其范围内包括这种过程、机器、制造、物质组成、装置、方法或步骤。

如可以理解的,上述示例仅是示例性的。本发明由所附权利要求限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1