法律状态公告日
法律状态信息
法律状态
2018-01-05
授权
授权
2015-05-27
实质审查的生效 IPC(主分类):G06Q20/32 申请日:20150114
实质审查的生效
2015-05-06
公开
公开
技术领域
本发明属于自动售货机移动电子支付技术领域,具体涉及一种基于嵌入式与云计算的自动售货机移动电子支付方法。
背景技术
随着移动互联网的快速发展,通过智能手机采用条码扫描进行支付的需求日益迫切。在自动售货机上应用条码扫描技术正在成为自动售货领域一种新兴的电子支付方式。
目前,支付宝和微信都开通了条码支付功能,消费者在手机上的APP生成反向扫描付款码,经自动售货终端上的扫码器扫描后,通过网络提交扣款申请信息至相应的支付宝或者微信支付平台服务器。支付平台服务器在扣款之后经由网络通知售货机终端出货。但支付宝支付和微信支付都是建立在Http和Https协议基础上,也即要求售货机终端系统具有基于Http和Https协议通信能力,而Http和Https协议目前多运行在android、windows、linux等操作系统平台之上,传统的自动售货机大都是单片机系统,很难实现基于Http和Https协议通信。
为了解决单片机与支付宝和财付通服务器通讯的问题,目前的解决方案是在售货机上加装Windows或安卓工控机,然后借助Windows工控机或安卓板完成与支付宝和财付通通讯交互,完成在线支付。
当发生支付时,自动售货机的上位机将扫描到的付款码传输到Windows或Android操作系统的上位机请求进行支付,安装有Windows或Android操作系统的上位机根据Http或者Https协议与支付宝或财付通支付接口服务服务器进行通讯,平台确认支付成功后通知上位机,上位机再通知单片机控制售货机出货。该方案要求每台自动售货机上就要安装有Windows或Android操作系统的上位机,负责与支付服务器进行通讯。
传统的解决办法硬件成本高,每台售货机上都要运行一套独立的支付通讯接口程序,管理难道大,且数据存放离散。支付数据存放在终端,不利于数据对账和结算。
发明内容
本发明所要解决的技术问题是:解决上述现有技术存在的问题,而提供一种基于嵌入式与云计算的自动售货机移动电子支付方法,无需再在每台自动售货机上安装Windows或Android操作系统的上位机,极大地降低了成本,通过云服务完成基于条码扫描的支付,支付数据可以统一存放在云服务器上,为对帐和结算提供更好的支持,服务器资源可以得到更好的利用,可以兼容不同金融机构和各种各类自动售货机的条码扫描支付方式,还可对传统自动售货机进行改造,接入简单,成本低。
本发明采用的技术方案是:
一种基于嵌入式与云计算的自动售货机移动电子支付方法,手机移动终端上的条码经自动售货机上的条码感应器扫描后,通过网络统一接入到云端的综合支付代理服务器,综合支付代理服务器根据Http和Https协议与支付宝或财付通通讯交互,完成在线支付。
上述技术方案中,所述的综合支付代理服务器包括终端通讯管理器、消息队列、业务处理中心、支付接口协议驱动、日志管理和Http/Https通讯协议:
终端通讯管理器主要负责综合支付代理服务器与自动售货机的数据通讯,包括数据接收、数据发送、数据校验、剔除重复四个模块;数据接收模块基于Socket方式接收自动售货机发送过来的数据;数据发送模块基于Socket将服务器的处理结果发送到自动售货终端;数据校验模块基于Hash算法验证接受到的数据是否正确,防止数据传输过程中发生跳变;剔除重复模块用于过滤因硬件故障或网络故障导致的重复数据,防止服务器重复处理终端请求;
消息队列负责缓存待处理消息,确保消息不遗漏,包括终端指令队列和撤单请求队列;
业务处理中心是综合支付代理服务器的业务实现核心逻辑,负责处理登录与支付相关业务请求,包括支付请求处理、撤单处理、登录处理、离线处理四个模块。登录处理模块负责售货机登录时验证售货机的合法性,生成并下达Passport,保持售货机的在线状态;离线处理模块负责在售货机离线时释放服务器相关资源,清除原有的Passport;支付请求处理模块负责处理支付请求,包括支付会话过程的所有控制逻辑;撤单处理模块负责处理撤单请求队列中的请求信息,调用相关支付接口协议驱动的撤单接口实现异常订单的手动和自动退款;
支付接口协议驱动负责与在线支付机构接口服务器进行通讯,实现了各支付机构的通讯接口协议,包括支付宝支付接口协议驱动和财付通支付接口协议驱动;
日志管理负责记录服务器的运行状态,用于跟踪和监视支付网关的运行。
上述技术方案中,所述的综合支付代理服务器为云端服务器,安装在自动售货终端的条码感应器将手机上的条码信息进行感应识别,然后,自动售货终端将感应后的条码信息通过无线网传送到云端的综合支付代理服务器,云端的综合支付代理服务器使用Http或Https协议与各支付机构的服务器进行相互验证,验证后的信息再通过综合支付代理服务器传送至自动售货机,自动售货机根据综合支付代理服务器返回的信息决定是否出货。
上述技术方案中,所述基于嵌入式与云计算的自动售货机移动电子支付方法,其具体流程如下:
登录流程:自动售货机通过socket连接发送请求登录信息即机器号和登录密码。综合支付代理服务器接收到登录请求,并且判断当前的机器号是否已经登录,如果已经登录,向自动售货机返回登录失败及其失败原因。如果当前的机器号没有登录,那么验证对应的密码是否正确。如果机器号和登录密码验证不通过,则综合支付代理服务器向自动售货机发送登录失败及其失败原因;如果验证通过,则为该机器生成一个Passport,向自动售货机返回登录成功及其生成的Passport;
支付流程:对于已经登录到综合支付代理服务器的自动售货机,即综合支付代理服务器已经为该台自动售货机生成了一个Passport。向综合支付代理服务器发起支付请求,综合支付代理服务器验证Passport是否正确,如果Passport不正确向自动售货机返回非法的接入。如果Passport正确,综合支付代理服务器为其生成一个支付订单,并且向支付宝/财付通支付接口服务器发送一个支付请求,并且接受支付宝/财付通支付接口服务器返回的支付结果信息。如果支付不成功,则更新该订单的状态,并且向自动售货机返回支付失败,并进入撤单流程。如果支付成功,更新订单状态,并且向自动售货机返回支付成功;自动售货机接收到支付成功之后,驱动自动售货机对应的货道电机,控制商品出货。如果出货不成功,则进入到撤单流程;
撤单流程:自动售货机发起撤单请求,为防止自动售货机网络故障,故将撤单请求存放在综合支付代理服务器退款处理队列中去;然后自动售货机向综合支付代理服务器发送撤单请求,综合支付代理服务器收到撤单请求后,验证该机器的Passport是否正确,如果不正确向自动售货机返回非法的接入;如果该机器的Passport正确,将该存放到发送支付接口服务器队列中,让后再向支付宝/财付通支付接口服务器发送撤单请求;支付宝/财付通支付接口服务器向综合支付代理服务器返回撤单结果;如果撤单不成功,综合支付代理服务器向自动售货机返回撤单失败。如果撤单成功,综合支付代理服务器向自动售货机返回撤单成功。
本发明提出了一种自动售货终端条码支付过程转移到云端实现的新方法,本发明还满足不同支付机构条码支付的统一接入方法,以及本发明提出的在自动售货机上加装条码识别设备和在自动售货终端上实现支持条码支付的方法,因此,本发明的新方法无须再在每台自动售货机上安装Windows或Android操作系统的上位机,大大降低了自动售货机的升级改造成本。本发明通过云服务完成基于条码扫描的支付,支付数据可以统一存放在云端服务器上,为对帐和结算提供了更好的支持,服务器资源可以得到更好的利用,可以兼容不同金融机构和各种各类自动售货机的条码扫描支付方式,应用广泛,技术先进,工作可靠。
附图说明
图1为本发明结构原理框图;
图2为综合支付代理服务器架构图;
图3为本发明登录流程图;
图4为本发明支付流程图;
图5为本发明撤单流程图。
具体实施方式
参见附图,本发明的基于嵌入式与云计算的自动售货机移动电子支付方法,手机移动终端上的条码经自动售货机上的条码感应器扫描后,通过网络统一接入到云端的综合支付代理服务器,综合支付代理服务器根据Http和Https协议与支付宝或财付通通讯交互,完成在线支付。
上述综合支付代理服务器包括终端通讯管理器、消息队列、业务处理中心、支付接口协议驱动、日志管理和Http/Https通讯协议:
终端通讯管理器主要负责综合支付代理服务器与自动售货机的数据通讯,包括数据接收、数据发送、数据校验、剔除重复四个模块;数据接收模块基于Socket方式接收自动售货机发送过来的数据;数据发送模块基于Socket将服务器的处理结果发送到自动售货终端;数据校验模块基于Hash算法验证接受到的数据是否正确,防止数据传输过程中发生跳变;剔除重复模块用于过滤因硬件故障或网络故障导致的重复数据,防止服务器重复处理终端请求;
消息队列负责缓存待处理消息,确保消息不遗漏,包括终端指令队列和撤单请求队列;
业务处理中心是综合支付代理服务器的业务实现核心逻辑,负责处理登录与支付相关业务请求,包括支付请求处理、撤单处理、登录处理、离线处理四个模块。登录处理模块负责售货机登录时验证售货机的合法性,生成并下达Passport,保持售货机的在线状态;离线处理模块负责在售货机离线时释放服务器相关资源,清除原有的Passport;支付请求处理模块负责处理支付请求,包括支付会话过程的所有控制逻辑;撤单处理模块负责处理撤单请求队列中的请求信息,调用相关支付接口协议驱动的撤单接口实现异常订单的手动和自动退款;
支付接口协议驱动负责与在线支付机构接口服务器进行通讯,实现了各支付机构的通讯接口协议,包括支付宝支付接口协议驱动和财付通支付接口协议驱动;
日志管理负责记录服务器的运行状态,用于跟踪和监视支付网关的运行。
上述综合支付代理服务器为云端服务器,安装在自动售货终端的条码感应器将手机上的条码信息进行感应识别,然后,自动售货终端将感应后的条码信息通过无线网传送到云端的综合支付代理服务器,云端的综合支付代理服务器使用Http或Https协议与各支付机构的服务器进行相互验证,验证后的信息再通过综合支付代理服务器传送至自动售货机,自动售货机根据综合支付代理服务器返回的信息决定是否出货。
上述基于嵌入式与云计算的自动售货机移动电子支付方法,其具体流程如下:
登录流程:自动售货机通过socket连接发送请求登录信息即机器号和登录密码。综合支付代理服务器接收到登录请求,并且判断当前的机器号是否已经登录,如果已经登录,向自动售货机返回登录失败及其失败原因。如果当前的机器号没有登录,那么验证对应的密码是否正确。如果机器号和登录密码验证不通过,则综合支付代理服务器向自动售货机发送登录失败及其失败原因。如果验证通过,则为该机器生成一个Passport,向自动售货机返回登录成功及其生成的Passport。
支付流程:对于已经登录到综合支付代理服务器的自动售货机,即综合支付代理服务器已经为该台自动售货机生成了一个Passport。向综合支付代理服务器发起支付请求,综合支付代理服务器验证Passport是否正确,如果Passport不正确向自动售货机返回非法的接入。如果Passport正确,综合支付代理服务器为其生成一个支付订单,并且向支付宝/财付通支付接口服务器发送一个支付请求,并且接受支付宝/财付通支付接口服务器返回的支付结果信息。如果支付不成功,则更新该订单的状态,并且向自动售货机返回支付失败,并进入撤单流程。如果支付成功,更新订单状态,并且向自动售货机返回支付成功。自动售货机接收到支付成功之后,驱动自动售货机对应的货道电机,控制商品出货。如果出货不成功,则进入到撤单流程。
撤单流程:自动售货机发起撤单请求,为防止自动售货机网络故障,故将撤单请求存放在综合支付代理服务器退款处理队列中去。然后自动售货机向综合支付代理服务器发送撤单请求,综合支付代理服务器收到撤单请求后,验证该机器的Passport是否正确,如果不正确向自动售货机返回非法的接入。如果该机器的Passport正确,将该存放到发送支付接口服务器队列中,让后再向支付宝/财付通支付接口服务器发送撤单请求。支付宝/财付通支付接口服务器向综合支付代理服务器返回撤单结果。如果撤单不成功,综合支付代理服务器向自动售货机返回撤单失败。如果撤单成功,综合支付代理服务器向自动售货机返回撤单成功。
机译: 基于有线和无线通信的自动售货机的管理,使用自动售货机的信息提供和信息获取系统以及使用该系统的自动售货机的管理,信息提供和信息获取方法
机译: 通过云计算为嵌入式设备的服务请求提供服务的基于云的系统及其相关的基于云的处理方法
机译: 用移动电话从自动售货机上购买的方法,基于该方法的萨特自动购买系统