发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种便于功能扩展的POS前置系统及方法,用于解决现有技术中原有POS系统不适应新业务扩展的问题。
为实现上述目的及其他相关目的,本发明提供一种便于功能扩展的POS前置系统及方法。
一种便于功能扩展的POS前置方法,所述便于功能扩展的POS前置方法包括交易上传方法和交易应答方法;
所述交易上传方法包括:
I1,通讯模块接收前端系统上传的交易请求;
I2,报文转接模块将所述交易请求转换成交易请求内部格式报文,并根据识别配置信息识别出交易请求内部格式报文的内部交易代码,且上传交易请求内部格式报文包含的交易请求信息;
I3,报文交换模块对所述交易请求信息进行验证后转发;
I4,所述报文组包模块根据转换配置规则将所述交易请求信息转换成交易请求外部格式报文;
I5,通讯模块将所述外部交易报文上传到后台系统;
所述交易应答方法包括:
O1,所述通讯模块从后台系统接收交易应答
O2,所述报文转接模块将所述交易应答转换成交易应答内部格式报文,并根据配置信息识别出交易应答内部格式报文的内部交易代码,且上传交易应答内部格式报文包含的交易应答信息;
O3,所述报文交换模块对所述交易应答信息进行验证后转发;
O9,所述报文组包模块将验证后的交易应答信息转换为交易应答外部格式报文;
O10,所述通讯模块将所述交易应答外部格式报文转发给前端系统。
优选地,步骤I2中,所述报文转接模块在接收所述交易请求后,首先进行商户和POS机终端的合法性检查,然后再将所述交易请求转换成交易请求内部格式报文。
优选地,步骤I2中,所述交易请求信息包含对所述内部交易代码的MAC验证结果。
优选地,步骤I3中,所述报文交换模块根据所述内部交易代码取出内存中存储的交易处理配置信息,并对所述交易配置信息进行验证。
优选地,所述交易请求的格式为64个域ISO8583格式;所述交易请求信息的格式为128个域ISO8583格式;所述交易应答的格式为128个域ISO8583格式;所述交易应答信息的格式为64个域ISO8583格式。
优选地,所述便于功能扩展的POS前置方法还包括超时控制步骤:超时控制模块获取交易流水号,对交易进行超时控制。
优选地,所述便于功能扩展的POS前置方法还包括加密步骤:安全模块对所述报文转接模块转发的信息、或/和报文组包模块组包的信息进行加解密验证。
优选地,所述配置信息由配置平台模块配置;所述配置平台模块配置ISO8583信息,包括配置ISO8583各个域类型和长度、各类交易的识别信息、各类交易的位图定义。
优选地,所述配置平台模块还用于配置通讯模块、报文转接模块、报文交换模块、或/和报文组包模块的进程。
一种便于功能扩展的POS前置系统,所述便于功能扩展的POS前置系统包括:通讯模块、报文转接模块、报文交换模块、报文组包模块、配置平台模块;所述通讯模块用于与后台系统或/和前端系统通信;所述报文转接模块与所述通讯模块相连,用于将接收到的外部格式报文转换为内部格式信息;所述报文交换模块与所述报文交换模块相连,用于实现报文转接模块与报文组包模块之间的信息交换;所述报文组包模块与所述报文交换模块相连,用于将内部格式信息转换成外部格式报文;所述配置平台模块与所述通讯模块、报文转接模块、报文交换模块、报文组包模块分别相连,用于对所述通讯模块、报文转接模块、报文交换模块、报文组包模块进行配置。
如上所述,本发明所述的便于功能扩展的POS前置系统及方法,具有以下有益效果:
本发明可以通过配置实现与已有交易相似的新业务,而无需修改程序,增强了系统的可扩展性,提高了工作效率。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
请参阅附图。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
下面结合实施例和附图对本发明进行详细说明。
实施例一
本实施例提供一种便于功能扩展的POS前置方法,如图1所示,所述便于功能扩展的POS前置方法包括交易上传方法和交易应答方法;
所述交易上传方法包括:
I1,通讯模块接收前端系统上传的交易请求;进一步,所述交易请求的格式为64个域ISO8583格式;所述交易请求信息的格式为128个域ISO8583格式;
I2,报文转接模块将所述交易请求转换成交易请求内部格式报文,并根据识别配置信息识别出交易请求内部格式报文的内部交易代码,且上传交易请求内部格式报文包含的交易请求信息;进一步,所述报文转接模块在接收所述交易请求后,首先进行商户和POS机终端的合法性检查,然后再将所述交易请求转换成交易请求内部格式报文。所述交易请求信息包含对所述内部交易代码的MAC验证结果。
I3,报文交换模块对所述交易请求信息进行验证后转发;进一步,所述报文交换模块根据所述内部交易代码取出内存中存储的交易处理配置信息,并对所述交易配置信息进行验证。
I4,所述报文组包模块根据转换配置规则将所述交易请求信息转换成交易请求外部格式报文;
I5,通讯模块将所述外部交易报文上传到后台系统;
所述交易应答方法包括:
O1,所述通讯模块从后台系统接收交易应答;进一步,所述交易应答的格式为128个域ISO8583格式;所述交易应答信息的格式为64个域ISO8583格式。
O2,所述报文转接模块将所述交易应答转换成交易应答内部格式报文,并根据配置信息识别出交易应答内部格式报文的内部交易代码,且上传交易应答内部格式报文包含的交易应答信息;
O3,所述报文交换模块对所述交易应答信息进行验证后转发;
O9,所述报文组包模块将验证后的交易应答信息转换为交易应答外部格式报文;
O10,所述通讯模块将所述交易应答外部格式报文转发给前端系统。
进一步,所述便于功能扩展的POS前置方法还包括超时控制步骤:超时控制模块获取交易流水号,对交易进行超时控制。
进一步,所述便于功能扩展的POS前置方法还包括加密步骤:安全模块对所述报文转接模块转发的信息、或/和报文组包模块组包的信息进行加解密验证。
进一步,所述配置信息由配置平台模块配置;所述配置平台模块配置ISO8583信息,包括配置ISO8583各个域类型和长度、各类交易的识别信息、各类交易的位图定义。更进一步,所述配置平台模块还用于配置通讯模块、报文转接模块、报文交换模块、或/和报文组包模块的进程。
本实施例还提供一种便于功能扩展的POS前置系统,如图2所示,所述便于功能扩展的POS前置系统包括:通讯模块、报文转接模块、报文交换模块、报文组包模块、配置平台模块、安全模块、管理模块、守护模块、超时控制模块、存储转发模块、批处理模块、控制台模块。其中,所述通讯模块用于与后台系统或/和前端系统通信;所述报文转接模块与所述通讯模块相连,用于将接收到的外部格式报文转换为内部格式信息;所述报文交换模块与所述报文交换模块相连,用于实现报文转接模块与报文组包模块之间的信息交换;所述报文组包模块与所述报文交换模块相连,用于将内部格式信息转换成外部格式报文;所述配置平台模块与所述通讯模块、报文转接模块、报文交换模块、报文组包模块分别相连,用于对所述通讯模块、报文转接模块、报文交换模块、报文组包模块进行配置。
具体地,所有模块之间采用消息对列方式进行数据交换。
所述通讯模块用于与NAC通讯(实际上是与NAC建立TCP/IP链接),也用于与银行后台系统通讯。通讯模块与NAC、通讯模块与银行后台系统之间均采用TCP/IP协议进行通讯。
所述前端系统可以为NAC(Network Access Controller),所述NAC也可以是具备NAC功能的路由器或其它设备。
所述报文转接模块是用于从通讯模块接收NAC的64个域的ISO8583报文,完成商户和终端等检查、报文MAC验证、64个域的ISO8583报文转为内部格式等工作,并根据转后的内部交易报文识别正确的路由,根据配置信息识别出内部交易代码。所述报文转接模块还用于从通讯模块接收银行后台系统的128个域的ISO8583交易应答报文,并将该报文转为内部格式。
所述报文交换模块用于接收报文转接模块传送的交易请求,根据交易代码,取出内存中的本交易配置信息,并做必要的检查,包括是否支持此交易、是否需要转换PIN等,如果交易不支持,则返回交易。如需要转换PIN,则进行转换。该模块还用于设置交易的超时时间、冲正的重发次数。所述报文交换模块还用于调用超时控制模块获取交易流水号,对交易进行超时控制;如有交易超时,则进行相应的超时处理。该模块还用于记交易流水入表,处理完后将交易转发到报文组包模块。
所述报文组包模块用于根据转换配置规则表中的转换规则配置信息,完成内部报文格式到ISO8583(包括64个域或128个域)报文格式的转换工作,并将转换后的消息发送指定通讯服务模块;所述报文组包模块还用于为返回NAC的应答消息调用安全模块产生MAC。
所述超时控制模块用于实现交易流水号的顺序分配;报文交换模块在请求时将请求交易通过超时模块进行登记,在应答时通过超时模块撤消登记;超时控制模块还对超时的交易通过报文交换模块引发冲正拒绝。
所述管理模块用于接收从报文转接模块发来的管理类交易请求,根据交易代码,调用配置的交易处理函数进行相应处理。管理类交易包括:签到、签退、批结算、批上送、批上送结束;所述存储转发模块用于根据设置的重发时间定时从存储转发信息表内查找未收到应答的冲正请求,并向银行后台系统发送冲正请求,直到收到应答或重发次数已到。
所述银行后台系统可以是银行综合前置系统,也可以是银行核心系统,或银行其它系统。
所述安全模块实现了对签到交易时工作密钥的生成、交易时PIN转换、验证MAC、生成MAC的功能,支持软件加密和硬件加密机来实现这些功能。
所述系统还支持IC卡的交易,包括IC卡查询、IC卡消费、IC卡圈存、IC卡转账、IC卡脚本通知、IC卡预授权类等交易。
所述批处理模块用于生成商户清算文件和后台银行系统清算文件、生成业务需要的有关报表等。
所述守护模块用于管理其它模块的启动、停止,监控这些模块的运行状况,若发现所管理的模块意外死掉,自动将起拉起,并能控制各模块所运行的进程个数。
所述控制台模块用于维护商户信息、维护POS设备信息、维护密文密钥信息等。
所述配置平台模块用于配置ISO8583信息,其中包括ISO8583各个域类型和长度信息、各类交易的识别信息(即定义一类交易的所必需的条件域)、各类交易的位图定义等。所述配置平台模块还用于配置各模块对应的进程的相应信息,包括进程启动个数、进程所用的消息对应KEY值、进程的各种其它参数如日志级别、日志文件最大值、消息队列中允许的最多信息条数等;还用于配置通讯模块所使用的IP地址和端口号等。所述配置平台模块还用于配置各类交易对应的交易信息,如交易请求和应答的内部代码、交易起源ID、交易目的ID、交易是否支持标志、交易是否记账标志、交易是否需要转换PIN、交易超时设置时间、交易超时后的内部处理代码、交易超时后的重发的次数等。所述配置平台模块还用于配置交易内部代码和其对应的唯一内部处理函数名称。
本发明所述的便于功能扩展的POS前置系统的特点在于通过增加配置信息就可以实现新的同类交易,而无需修改程序,增强了系统的可扩展性,提高了工作效率。
本发明在基本交易已经实现的情况下,对于新增的与基本交易类似的新交易,通过配置平台配置相关交易信息,包括交易的BITMAP值(如与基本交易相同,则共用原来的值,即取相同的BITMAP索引值)、新交易的识别信息、新交易对应的内部交易代码及其[0024]中的信息和内部交易代码对应的唯一内部处理函数名称,无需修改程序,就可以支持新的交易,大大提高了工作效率。
实施例二
本实施例提供一种便于功能扩展的POS前置方法,该方法在处理正常金融请求交易的流程如图3所示,包括正常金融类请求交易与应答过程。
所述正常金融类请求交易处理流程如下:
通讯模块接收NAC上送的交易请求后送报文转接模块;
报文转接模块完成商户和终端等合法性检查、64个域ISO8583格式报文到内部格式报文转换等工作,并根据转后的内部交易报文识别正确的路由,根据配置信息识别出内部交易代码;进行MAC验证,并将验证结果写入交易信息,上送交易信息给报文交换模块;
报文交换模块根据交易代码,取出内存中的交易配置信息,并做必要的检查,包括是否支持此交易、是否需要转换PIN等,如果交易不支持,则返回交易信息给报文组包模块。如需要转换PIN,则进行转换。该模块还用于设置交易的超时时间、冲正的重发次数;还用于调用超时控制模块获取交易流水号,对交易进行超时控制;如有交易超时,则进行相应的超时处理。该模块还用于记交易流水入表,处理完后将交易信息转发到报文组包模块;
报文组包模块接收到交易信息后,根据转换配置规则表中的转换规则配置信息,完成内部报文格式到128个域ISO8583报文格式的转换工作,将交易信息上送通讯模块;
通讯模块上送交易信息到银行后台系统。
正常金融类应答交易处理流程如下:
通讯模块从银行后台系统接收交易应答信息,并将交易应答信息送报文转接模块;
报文转接模块将接收银行后台系统的128个域的ISO8583交易应答报文转为内部格式,根据转后的内部交易报文识别正确的路由,根据配置信息识别出内部交易代码,然后将交易应答信息送报文交换模块;
报文交换模块接收交易应答信息后,进行MAC验证,更改交易流水入表中交易状态和应答码等值,完成其它相应工作后,将交易应答信息发送到报文组包模块;
报文组包模块将内部格式的应答信息转换为64域的ISO8583报文格式应答信息,并调用安全模块生成MAC值,然后将64域的ISO8583报文格式应答信息送通讯模块;
通讯模块将应答信息送NAC。
实施例三
本实施例提供一种便于功能扩展的POS前置方法,该方法在处理正常管理类请求交易的流程如图4所示,包括正常管理类请求交易与应答过程。
正常管理类请求交易处理流程如下:
通讯模块接收NAC上送的交易请求后送报文转接模块;
报文转接模块完成商户和终端等合法性检查、64个域ISO8583格式报文到内部格式报文转换等工作,并根据转后的内部交易报文识别正确的路由,根据配置信息识别出内部交易代码;进行MAC验证,并将验证结果写入交易信息,上送交易信息给管理模块;
管理模块根据交易代码,用配置的交易处理函数进行相应处理。如果是签到交易,则还需要调用安全模块生成一组工作密钥,将交易应答信息上送报文组包模块。
正常管理类应答交易处理流程如下:
报文组包模块接收到交易应答信息后,根据转换配置规则表中的转换规则配置信息,完成内部报文格式到64个域ISO8583报文格式的转换工作,将交易应答信息上送通讯模块;
通讯模块将交易应答信息送NAC。
实施例四
本实施例提供一种便于功能扩展的POS前置方法,该方法在基础交易完成的情况下通过配置实现新交易的方法。本实施例以中国银联银行卡联网联合技术规范V2.1要求实现的MOTO预授权为例说明。MOTO预授权报文格式同传统的预授权交易报文格式,只是25域取值18以区别传统的预授权交易,表明该交易是属于MOTO业务。预授权交易以第0域(消息类型请求时取值0100,应答时取值0110)、第3域(交易处理码取值03x000,判断前2位为03即可)、第25域(服务点条件码,传统的预授权该域取值00,MOTO预授权该域取值13)做为关键域。
配置MOTO预授权交易的内部交易代码,MOTO预授权请求内部交易代码为1505,MOTO预授权应答内部交易代码为1506;
MOTO预授权交易使用报文同传统的预授权,因此BITMAP值取传统的预授权BITMAP值,即取相同的BITMAP索引值;
以传统的预授权为参考,设置1505的参数,包括交易起源ID、交易目的ID、交易是否支持标志、交易是否记账标志、交易是否需要转换PIN、交易超时设置时间、交易超时后的内部处理代码、交易超时后的重发的次数等;
配置1505的识别关键信息,第0域取0100,第3域取03,第25域取18;配置1506的识别关系信息,第0域取0110,第3域取03,第25域取18;
配置1505和1507的内部处理函数名称,取值同参考传统的预授权交易对应的值;
再分别重启报文转接模块、报文交换模块和报文组包模块对应的进程,本发明的POS前置系统即可支持MOTO预授权交易。
综上所述,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。