CN109544134A - 便捷支付服务方法和系统 - Google Patents

便捷支付服务方法和系统 Download PDF

Info

Publication number
CN109544134A
CN109544134A CN201811444612.4A CN201811444612A CN109544134A CN 109544134 A CN109544134 A CN 109544134A CN 201811444612 A CN201811444612 A CN 201811444612A CN 109544134 A CN109544134 A CN 109544134A
Authority
CN
China
Prior art keywords
string code
payment
barcode scanning
string
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811444612.4A
Other languages
English (en)
Other versions
CN109544134B (zh
Inventor
李鹏
李晓峰
谢群松
陈泽瀛
于卫国
吴亚乾
袁策书
何毅平
万帅
聂昌盛
杨柳
蔡朝辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unionpay Business Ltd By Share Ltd
Original Assignee
Unionpay Business Ltd By Share Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Unionpay Business Ltd By Share Ltd filed Critical Unionpay Business Ltd By Share Ltd
Priority to CN201811444612.4A priority Critical patent/CN109544134B/zh
Publication of CN109544134A publication Critical patent/CN109544134A/zh
Application granted granted Critical
Publication of CN109544134B publication Critical patent/CN109544134B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/204Point-of-sale [POS] network systems comprising interface for record bearing medium or carrier for electronic funds transfer or payment credit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3274Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being displayed on the M-device

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

本申请涉及支付技术领域,尤其涉及便捷支付服务方法和系统。本申请提供了一种便捷支付服务方法,应用于收银机,该方法包括:获取USB扫码设备或者串口扫码设备发出的串码数据;上述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与上述串码数据进行匹配以从上述串码数据中提取出支付串码;基于上述支付串码进行支付服务。通过本发明实现了对应不同类型的扫码设备的扩展兼容,提高了支付串码的获取效率。

Description

便捷支付服务方法和系统
技术领域
本公开涉及支付技术领域,尤其是涉及一种便捷支付服务方法和系统。
背景技术
超市、商场等现有的支付服务系统存在大量需收银员手动完成的繁琐操作,无法提供足够让收银员满意的操作体验。与收银员的交互不够高效便捷:串码与金额的自动识别未能做到足够智能或达到足够高的识别精度,这使得现有的支付服务系统存在大量需手动完成的繁琐操作,且收银员界面、热键等交互设计都难以让收银员获得高效优质的操作体验。无法快速完成不同型外接设备部署:目前市面上主流的设备中,POS终端设备通讯接口不计其数,扫码设备有3种规格以上的接口,打印设备存在4种规格以上的接口,通常支付系统难以兼容这些硬件设备间的差异,实现快速部署或设备更换几无可能。
发明内容
有鉴于此,本申请实施例提供一种便捷支付服务方法和系统,用以实现收银机对各种外接设备的兼容扩展,实现快速部署。
第一方面,本申请实施例提供了一种便捷支付服务方法,应用于收银机,该方法包括:获取USB扫码设备或者串口扫码设备发出的串码数据;上述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与上述串码数据进行匹配以从上述串码数据中提取出支付串码;基于上述支付串码进行支付服务。
在本发明较佳的实施例中,获取USB扫码设备发出的串码数据的步骤包括:用键盘钩子技术获取按键消息;所述按键消息由键盘输入产生或者由所述USB扫码设备发出的串码数据产生:根据所述按键消息中的内容和预设的串码规则判断所述按键消息的内容是否为USB扫码设备发出的串码数据;如果是,将所述按键消息中的内容作为USB扫码设备发出的串码数据。
在本发明较佳的实施例中,根据所述按键消息中的内容和预设的串码规则判断所述按键消息的内容是否为USB扫码设备发出的串码数据的步骤包括:如果所述按键消息中的字符队列中的字符均为数字字符,且所述数字字符符合预设的串码规则,确定所述按键消息的内容为USB扫码设备发出的串码数据。
在本发明较佳的实施例中,所述预设的串码规则包括:串码的长度、所述串码的首字符和所述串码的随机数的长度。
在本发明较佳的实施例中,获取串口扫码设备发出的串码数据的步骤包括:监测串口扫码设备的串口发送的数据;所述数据包括串码数据和非串码数据;利用预先构建并训练好的基于卷积神经网络的二分类模型对所述数据进行分类识别,识别出所述串码数据。
在本发明较佳的实施例中,提示收银员点选支付服务对应的在收银机显示屏上显示的编辑框;其中,上述编辑框内显示有上述支付服务对应金额;获取上述编辑框的路径名称以及上述编辑框的坐标信息,将上述路径名称以及上述坐标信息保存在配置文件中;根据上述配置文件从上述编辑框内读取上述金额;基于上述金额和上述支付串码进行支付服务。
在本发明较佳的实施例中,如果上述支付服务对应的金额在收银机显示屏上以非编辑框模式显示,则对上述金额进行截图,记录截图的坐标并保存为bmp文件;对上述bmp文件进行降噪处理;调用开源图像识别工具OCR对上述降噪的bmp文件进行图像识别得到上述金额;其中,bmp文件是指Windows操作系统中的标准图像文件格式;降噪处理,是指除去图像或文本中的噪声数据的过程;噪声数据是指数据中存在着错误或异常(偏离期望值)的数据,这些数据对数据的分析造成了干扰。基于上述金额和上述支付串码进行支付服务。
在本发明较佳的实施例中,所述方法还包括:向POS终端发送交易指令,所述交易指令中携带了银行卡的应用类型,以使所述POS终端根据所述银行卡的应用类型选择对应的联机后台。
在本发明较佳的实施例中,所述方法还包括:当完成所述支付串码对应的支付服务时,通过预设方式检测所述收银机连接的打印机的类型;所述预设方式包括:USB驱动检测方式、串口打印指令检测方式、端口号逐一检测方式和并口打印指令检测方式;所述打印机的类型包括:USB打印机、串口打印机和并口打印机;根据所述打印机的类型及所述打印机与所述收银机相连的端口,触发所述打印机对所述支付服务对应的支付信息打印。
第二方面,本申请实施例还提供了一种便捷支付服务系统,应用于收银机,该系统包括:串码获取模块,用于获取USB扫码设备或者串口扫码设备发出的串码数据;所述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与所述串码数据进行匹配以从所述串码数据中提取出支付串码;金额获取模块,用于获取经过扫码设备扫码之后在收银机显示屏上显示的金额;支付模块,用于根据所述支付串码和所述金额进行支付服务;银行卡应用处理模块,用于向POS终端发送交易指令,所述交易指令中携带了银行卡的应用类型,以使所述POS终端根据所述银行卡的应用类型选择对应的联机后台;打印机检测模块,用于支付模块根据所述支付串码和所述金额进行支付服务之后,检测所述收银机连接的打印机的类型及端口号;根据打印机的类型及端口号调用所述打印机对所述支付服务对应的支付信息打印。
采用上述方案获取USB扫码设备或者串口扫码设备发出的串码数据;所述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与所述串码数据进行匹配以从所述串码数据中提取出支付串码;基于所述支付串码进行支付服务。实现了对应不同类型的扫码设备的扩展兼容,提高了支付串码的获取效率。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施方式提供的便捷支付服务方法流程图;
图2为本申请实施方式提供的区分扫码设备和普通键盘产生的消息的方法流程图;
图3为本申请实施方式提供的基于串口通信的支付串码自动抽取方法的流程图;
图4为本申请实施方式提供的通过编辑框来获取金额方法的流程图;
图5为本申请实施方式提供的通过图像识别来获取金额方法的流程图;
图6为本申请实施方式提供的打印机类型及端口检测方法的流程图;
图7为本申请实施方式提供的便捷支付服务系统示意图;
图8为本申请实施方式提供的另一种便捷支付服务系统示意图。
具体实施方式
为使本公开实施方式的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本公开一部分实施方式,而不是全部的实施方式。基于本公开中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本公开保护的范围。
现有的支付服务系统广泛应用于超市、商场;收银员需要进行大量的手工劳动,操作繁琐,容易出错,造成商场、超市的损失;基于此,本申请提出了一种便捷支付服务方法及系统。用以实现对各种扫码设备的兼容,减少收银员的操作流程。下面通过具体实施方式进行描述,参见图1所示的便捷支付服务方法流程图,该方法应用于收银机,该方法包括以下步骤:
步骤101,获取USB扫码设备或者串口扫码设备发出的串码数据;
其中,该串码数据包括支付串码和货码。其中,货码是用于唯一标识商品的一串数字。市场中现有扫码设备根据数据传输方式可分为三种:基于串口主动通信的扫码设备,基于串口被动通信的扫码设备,以及基于USB的即插即用扫码设备。基于串口主动通信的扫码设备通过串口主动向收银机发送串码数据;基于串口被动通信的扫码设备接收来自收银机发送扫码指令后执行扫码,扫码完成后将串码数据通过串口向收银机发送;而基于USB即插即用的扫码设备通过模拟收银键盘按键事件生成串码数据。
步骤102,利用预先建立的支付串码正则表达式标准库与上述串码数据进行匹配以从所述上述串码数据中提取出支付串码;
其中,通过全方位支付渠道的标准支付串码正则表达式标准库,利用正则表达式匹配的方法,从货码和支付串码混杂的串码信息中准确识别出支付串码。由于本申请构建了丰富的正则表达式标准库,除支付宝与微信支付串码的正则表达式外,还包括了银联钱包、翼支付和移动和包等多种渠道的支付串码标准正则表达式,能够全方位服务移动支付场景。
步骤103,基于上述支付串码进行支付服务。
采用上述方案获取USB扫码设备或者串口扫码设备发出的串码数据;上述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与上述串码数据进行匹配以从上述串码数据中提取出支付串码;基于上述支付串码进行支付服务。实现了对应不同类型的扫码设备的扩展兼容。提高了支付串码的获取效率。
为了形象说明本申请的技术方案是如何实现对应USB扫码设备的兼容扩展,在本发明较佳的实施例中,获取USB扫码设备发出的串码数据的步骤包括:
(1)用键盘钩子技术获取按键消息;
其中,收银员使用USB扫码设备扫码和收银员由键盘输入都会产生按键事件消息;键盘钩子是通过系统调用插入的钩子,其本质是一段用以处理系统消息的程序,通过系统调用,将其挂入系统,捕获在Windows平台下任意窗口上的键盘操作。获取到按键消息后,系统需要将扫码枪与普通的键盘输入进行区分。
(2)根据上述按键消息中的内容和预设的串码规则判断上述按键消息的内容是否为USB扫码设备发出的串码数据;
其中,所述预设的串码规则包括:串码的长度、所述串码的首字符和所述串码的随机数的长度。
(3)如果是,将上述按键消息中的内容作为USB扫码设备发出的串码数据。
为了进一步确认按键消息是USB扫码设备发出的串码数据,在本发明较佳的实施例中,根据所述按键消息中的内容和预设的串码规则判断所述按键消息的内容是否为USB扫码设备发出的串码数据的步骤包括:如果所述按键消息中的字符队列中的字符均为数字字符,且所述数字字符符合预设的串码规则,确定所述按键消息的内容为USB扫码设备发出的串码数据。
其中,收银员点击键盘的消息多为换班的时候的员工号码、英文的字符、回车键、退出键等等。而USB扫码设备扫码生成的串码数据比如,微信的一种串码可以表示为181[0-5]\d{16};其中,18为长度;1为第一个数字;[0-5]表示从0-5中任意一位;16位随机数。串码的排列也有规则,串码的内容为数字而不是字母,比如长度是18位。从生成第一个数字到最后一个数字的时间间隔不会长于10ms。利用上述的串码的特征就可以识别出串码和键盘按键。为了详细说明对两种消息进行识别区分,参见图2所示的区分扫码设备和普通键盘产生的消息的方法流程图;
步骤S201,按键事件产生;
操作员使用USB扫码设备进行扫码或者操作员进行键盘输入,都会产生按键事件。
首先,使用键盘钩子技术获取收银机接收到的每一个按键消息,键盘钩子是通过系统调用插入的钩子,其本质是一段用以处理系统消息的程序,通过系统调用,将其挂入系统,捕获在Windows平台下任意窗口上的键盘操作。
步骤S202,判断按键对应的字符是否为数字;如果否,则传递到下一子程;如果是,执行步骤S203;
步骤S203,判断字符是否标记为非靶字符;如果是,则传递下一子程,如果否,执行步骤S204;
其中,非靶字符是考虑到因为有的数字信号被识别为不是串码;如果被重新发到系统中时可能会再一次被捕获,造成重复循环的识别,为了避免上述情况的发生,可以对不是串码的信号进行标记,从而避免被重复识别。
步骤S204,存入队列S;
步骤S205,判断10ms内是否有新增输入;如果是,执行步骤S206;
步骤S206,判断队列S是否符合支付串码规则;如果否,执行步骤S208;如果是,执行步骤S207;
其中,判断是否符合支付串码规则是为了从支付串码和货码中识别中支付串码;
步骤S207,将S以字符串形式传递至支付系统,唤起程序并发起交易。
步骤S208,依序向系统发送按键模拟并添加非靶标记。
为了实现对于串口扫码设备的兼容扩展,本发明较佳的实施例中,获取串口扫码设备发出的串码数据的步骤包括:监测串口扫码设备的串口发送的数据;其中,串口扫码设备包括基于串口主动通信的扫码设备和基于串口被动通信的扫码设备;所述数据包括串码数据和非串码数据;利用预先构建并训练好的基于卷积神经网络的二分类模型对所述数据进行分类识别,识别出所述串码数据。
其中,二分类模型是一种对计算机数值进行分类的算法;具体实施时,本系统是基于机器学习模型的支付串码特征抽取;机器学习是对能通过经验自动改进的计算机算法的研究。本系统构建初期收集了大规模的标准支付串码数据,采用深度学习(主要为卷积神经网络模型)的方法进行特征抽取和训练,以此提取支付串码的深度学习特征,该特征将用于二分类深度学习模型。系统将使用该模型将数据分为支付串码与非支付串码两个类别,进行二分类处理,能够有效筛选和识别出支付串码。参见图3所示的基于串口通信的支付串码自动抽取方法的流程图;方法包括:
步骤S301,监测终端串口发送的数据;
其中,串口发送的数据包括串码,也包括其他类型的数据,比如,扫码枪的输入是串码,是一串数字;而操作员手动输入往往不是串码:比如是一串金额的数字、换班的时候的员工号码、英文的字符、回车键、退出键等等。
步骤S302,深度学习二分类模型进行分类;
构建卷积神经网络模型训练大规模串码数据,提取串码深度学习特征;
构建并训练好基于卷积神经网络的二分类模型;
利用二分类模型对串口数据进行分类即:将串口的数据分为串码数据和非串码数据两类,由此抽取出串码数据。
本申请收集了大规模的标准支付串码数据,采用深度学习(主要为卷积神经网络模型)的方法进行特征抽取和训练,以此提取支付串码的深度学习特征,该特征将用于二分类深度学习模型。系统将使用该模型将数据分为串码与非串码两个类别,进行二分类处理,能够有效筛选和识别出支付串码。
举例说明:支付宝的支付串码的表示形式为:16((2[5-9])|(30)\d{14};其中,16表示16位长度;2表示第一位的数字;[5-9]表示5-9中的任意一个数字;{14}表示14位随机数;微信的支付串码为181[0-5]\d{16};其中,18为长度;1为第一个数字;[0-5]表示从0-5中任意一位;d{16}表示16位随机数。银联的支付串码为:1962\d{17},其中,19表示位数;62为头两位数字;{17}表示17位随机数。
而收银员通过键盘输入的回车键,或者英文的字母,或者在键盘上输入的一般的员工号,比如为:001-006;这些键盘输入的内容和串码数据相比,规则和内容的区别比较明显,从而可以对两种进行区分。
串码数据当中,货码与支付串码的差距也很大,只要进行足够量的训练,神经网络可以识别出任意一个数据是否是支付串码。用多个不同种类的串码组成一个数据集,比如多个微信的串码;多个支付宝的串码;多个非串码的数据,用数据集对神经网络进行训练;或者,单独用多个微信串码组成样本对神经网络进行训练;单独用非串码的多个数字样本对神经网络进行训练,都可以提高神经网络的识别能力。
步骤S303,判断是否为支付串码;如果是,执行步骤S304,如果否,返回步骤S301;
步骤S304,采用模糊匹配算法进行匹配;
利用Levenshtein算法距离计算串码间的相似性从而进行模糊匹配,识别与标准串码Levenshtein距离相近的串口数据,同时过滤掉非串口数据的噪音数据。
其中,Levenshtei距离即编辑距离,是针对二个字符串(例如英文字)的差异程度的量化量测,量测方式是看至少需要多少次的处理才能将一个字符串变成另一个字符串。同时利用BK-Tree算法树类型数据结构的剪枝原理,提高算法效率。采用基于Levenshtein距离(编辑距离)的BK-Tree模糊匹配算法,通过Levenshtein距离能够有效表达串码间的相似性,能够快速识别与标准串码Levenshtein距离相近的串口数据,同时过滤掉非串口数据。BK-Tree算法树类型数据结构的剪枝原理,可减少遍历节点的个数,算法效率远优于Levenshtein暴力枚举。通过基于Levenshtein距离的BK-Tree算法能够快速自动识别出串码(包括支付串码和货码)信息,过滤噪音数据信息。
步骤S305,判断是否为支付串码;如果是,则执行步骤S306,如果否,则返回步骤S301;
步骤S306,采用正则表达式匹配的方法从非串码中准确抽取出交易所用的支付串码。
其中,正则表达式是计算机科学的一个概念;正则表达式通常被用来检索、替换那些符合某个模式的文本。建立全方位多渠道的支付串码正则表达式标准库,采用正则表达式匹配的方法从非串码中准确抽取出交易所用的支付串码。
构建了丰富的正则表达式标准库,除支付宝与微信支付串码的正则表达式外,还包括了银联钱包、翼支付和移动和包等多种渠道的支付串码标准正则表达式,能够全方位服务移动支付场景。
步骤S307,判断是否为支付串码;如果是,执行步骤S308,如果否,返回步骤S301;
步骤S308,执行交易操作。
本申请通过特征抽取与模糊匹配整合的方式从串口传入的数据中抽取串码,再通过正则表达式匹配的方式进行识别,能够高效准确地抽取串口数据中的支付串码。有效提高了交易速度和效率。
为了更加智能地获取金额进行结算支付,本申请提供了两种获取金额方法,一种是通过编辑框来获取金额,编辑框是收银机自带的ERP软件在收银机的显示屏上生成的,只能用来显示被扫码物品的价格,并不能用来支付;所以需要提取编辑框中的金额用来支付。
在本发明较佳的实施例中,提示收银员点选支付服务对应的在收银机显示屏上显示的编辑框;
其中,当收银员在设置界面选择“从编辑框中获取”并点击“开始获取”按钮后,支付系统将自身界面隐藏并要求收银员点选收银软件用以展示金额的编辑框。其中,上述编辑框是收银机自带的管理资源软件ERP在显示屏上生成并显示的,编辑框内显示有上述支付服务对应的金额;
获取上述编辑框的路径名称以及上述编辑框的坐标信息,将上述路径名称以及上述坐标信息保存在配置文件中;
根据上述配置文件从上述编辑框内读取上述金额;
基于上述金额和上述支付串码进行支付服务。
为了详细说明,参见附图4所示的通过编辑框来获取金额方法的流程图,方法包括:
当收银员在设置界面选择“从编辑框中获取”并点击“开始获取”按钮后,支付系统将自身界面隐藏并要求收银员点选收银软件用以展示金额的编辑框,
步骤S401,判断是否第一次读取;如果是,执行步骤S402,如果否,执行步骤S409
步骤S402,调用内部函数GetForegroundWindow获取当前激活的(即收银员通过鼠标点击的)窗体句柄;
步骤S403,调用内部函数GetWindowThreadProcessId通过得到的窗体句柄获取其进程ID;
步骤S404,调用内部函数OpenProcess通过得到的进程ID获取其进程句柄;
步骤S405,调用内部函数GetModuleFileNameEx通过进程句柄获取其进程路径及进程名;
步骤S406,判断是否与系统进程名相同;
如果是,执行步骤S402,如果否,执行步骤步骤S407;
由于收银员操作不当等原因,会导致上述过程获取到支付系统程序自身的进程路径,因此会对获取到的进程路径及名称进行查验,若获取到的进程确实为支付系统程序自身,则经过短暂的休眠后程序会重新开始获取窗体句柄操作。
步骤S407,调用内部函数GetFocus获取焦点所在控件引用;
步骤S408,调用内部函数GetWindowRect获取焦点控件的坐标信息;
在配置文件中保存坐标信息,以便下一次金额获取时使用;
步骤S409,获取编辑框内文本信息;
当收银员不是第一次支付,而是需要再一次实现金额获取时,直接从配置文件中读取前一阶段保存的进程名及编辑框坐标,通过这两个参数定位到收银软件金额框,获取其金额信息,并将其格式化后显示在支付软件界面中。
步骤S410,格式化文本信息后显示在系统界面上。
考虑到目前市面上部分收银系统在显示屏的金额显示栏中采用非编辑框模式,如BUTTON模式、页面图像嵌入模式等,这使得编辑框获取方法无法应用在此类场景中,图像识别方法恰好弥补了这一缺陷,采用图像识别技术完成金额抽取,具有更加广泛的适用性。其中,收银系统是指部署在收银机中负责前台管理、点菜录单、结算、信息反馈与传递的系统。本申请图像识别使用的开源OCR引擎Tesseract,同时与Leptonica图片处理库相结合,可读取各种格式的图片文件并将其转换成超过60种语言的文本;其中,Leptonic是指一个面向教学的开源网站,广泛的应用于图像处理和图像分析的应用中;OCR引擎是指开源的图像识别工具;参见图5所示通过图像识别来获取金额方法的流程图。
步骤S501,判断是否第一次读取;如果是,则执行步骤S502,如果否,则执行步骤S504;
步骤S502,调用截屏工具供配置管理员对金额区域进行截图;
步骤S503,记录截图的坐标,并写入文件;
在配置文件中保存坐标信息以用于读取坐标信息。
步骤S504,截屏,保存图像为J.bmp;
步骤S505,OCR接口对截屏图像进行图像识别,识别结果写入result.txt文件;
步骤S506,读取result.txt文件;
步骤S507,格式化文本信息后显示在一扫付软件上。
本申请可自动识别收银系统所需结算的金额,无需收银员手工输入,在提高了收银效率的同时,避免了手工误输入的风险。
为了实现对于各种银行卡的应用类型的扩展,本实施例提供了一种扩展应用类型的方法,该方法包括以下步骤:
向POS终端发送的交易指令,该交易指令中携带了银行卡的应用类型;,以使上述POS终端根据上述银行卡的应用类型选择对应的联机后台。其中,POS终端是指,即通常意义下的POS机,是一种多功能终端,将其安装在信用卡的特约商户和受理网点中与计算机联成网络可实现电子资金自动转账。交易指令中设置了type字段,用来表明银行卡的应用类型;比如,银联金融应用:0x01;IC商务卡:0x02;公共支付应用:0x03;银商卡预付规范应用:0x04;银联商务全民付应用(总公司):0x05;银行卡大额应用:0x06;汇丰银行外卡应用:0x07;地税项目:0x08;通用增值应用:0x09;TMS应用:0x10等等。
POS终端根据所述银行卡的应用类型选择对应的联机后台。
应用类型,是指各支付渠道为其支付应用所命的名称,如银行卡、营销联盟、翼支付、移动和包等。上述方法实现了对于不同的银行卡的应用类型的扩展,使得支付服务可以兼容银行卡的各个不同类型的应用。除了对于银行卡的应用类型扩展之外,本申请的方法还能实现区分银行卡应用和非银行卡应用,比如微信、支付宝等扫码付之类的应用。如果客户选择刷银行卡支付,则收银员在界面上选择银行卡选项卡,进行支付,如果客户选择的是扫二维码支付,比如使用微信支付,则收银员点击扫码付选项卡进行支付。
目前市面上同类产品支持的打印设备按接口类型可分为四类,USB打印机、串口打印机、并口打印机以及COMPOS打印机。通常支付系统难以兼容这些硬件设备间的差异,实现快速部署或设备更换几无可能。本系统可以对连接的打印设备类型进行自动识别,并自动检测串口打印机、并口打印机和POS打印机的连接端口号。本系统在打印的初始化阶段,通过轮询的原理来自动检测连接的打印设备类型及其终端号。检测出连接的打印机类型后,保存设置供后续打印操作延用。参见图6所示的打印机类型及端口检测方法的流程图;
步骤601,检测USB打印机;
步骤602,判断打印设备是否激活;如果是,确定打印机的类型为USB打印机并保存配置;如果否,执行步骤S603;
步骤603,检测串口打印机;
步骤604,打印设备是否激活,如果是,确定打印机的类型为串口打印机并保存配置;如果否,执行步骤S605;
步骤605,更换端口号设备是否激活;如果是,确定打印机的类型是串口类型打印机并保存配置,如果否,执行步骤S606;
步骤606,检测并口打印机;
步骤607,打印设备是否激活;如果是,确定打印机的类型是并口类型,如果否,执行步骤S608;
步骤608,更换端口号设备是否激活;是,确定打印机的类型是并口类型,否,执行步骤S609;
步骤609,检测POS打印机;
步骤610,打印设备是否激活;如果是,确定打印机的类型是POS打印机,如果否,执行步骤S611。
步骤611,确定打印设备连接异常。
为了使得支付服务的功能更加丰富,提高便利性,方法还包括:支付结束后自动播报支付平台和收款金额,无需收银员反复确认。
无论收银机的焦点在何处,只要扫码枪轻轻一扫即可唤醒该系统进行工作,使得收银员实现了一扫即付的便捷。
收银员下班时,点击空格键,可以显示并打印上班时的所有交易清单。包括本班收款和退款清单。
当收银员收入自己的工号或者输入统一设置的密码才能够进入本系统中的页面。如果输入的工号或者密码与预存的工号或者密码不同则不能够进入支付系统。
根据收银员的选择来选择启动银行卡支付还是扫码付支付,如果收银员在界面上点击选择银行卡选项,则系统与POS机进行通信以实现银行卡的支付;如果收银员点击选择了扫码付选项卡,则系统进行识别支付串码和金额以进行支付服务的步骤。
对应于上述方法,本申请的实施方式还提供了一种便捷支付服务系统,应用于收银机,参见图7所示的便捷支付服务系统示意图,该系统包括:串码获取模块71,用于获取USB扫码设备或者串口扫码设备发出的串码数据;所述串码数据包括支付串码和货码;利用预先建立的支付串码正则表达式标准库与所述串码数据进行匹配以从所述串码数据中提取出支付串码;金额获取模块72,用于获取经过扫码设备扫码之后在收银机显示屏上显示的金额;支付模块73,用于根据所述支付串码和所述金额进行支付服务;银行卡应用处理模块74,用于向POS终端发送交易指令,所述交易指令中携带银行卡的应用类型,以使上述POS终端根据上述银行卡的应用类型选择对应的联机后台以及与该联机后台建立通讯;打印机检测模块75,用于支付模块根据所述支付串码和所述金额进行支付服务之后,检测所述收银机连接的打印机的类型及端口号;根据打印机的类型及端口号调用所述打印机对所述支付服务对应的支付信息打印。
本系统应用于收银机,其中,串码获取模块71,用于获取USB扫码设备或者串口扫码设备发出的串码数据,实现了对应不同类型的扫码设备的扩展兼容,提高了支付串码的获取效率;金额获取模块72和支付模块73可以自动获取交易金额并自动支付,避免收银员繁杂的手动输入;银行卡应用处理模块74可以自动识别银行卡的应用类型;打印机检测模块75实现了对打印设备的兼容扩展,避免收银员手动测试打印机。
该系统还包括数据库管理模块,用于支付结束后存储交易支付数据。
还包括语音提醒模块,用于支付结束后自动播报支付平台和收款金额,无需收银员反复确认。
还包括扫码唤醒模块,无论收银机的焦点在何处,只要扫码枪轻轻一扫即可唤醒该系统进行工作,使得收银员实现了一扫即付的便捷。
还包括一键换班模块,支付结束后收银员下班时,点击空格键,可以显示并打印上班时的所有交易清单。包括本班收款和退款清单;参见表1所示的本班收款清单,表2所示的本班退款清单表。
表1
微信 4笔 3.00元
银行卡 0笔 0.00元
支付宝 2笔 10.00元
其他 0笔 0.00元
总计 6笔 13.00元
表2
本系统还包括身份验证模块,支付之前当收银员收入自己的工号或者输入统一设置的密码才能够进入本系统中的页面,如果输入的工号或者密码与预存的密码不同则不能够进入支付系统。
本系统还包括切换模块,用于根据收银员的选择来选择启动银行卡支付还是扫码支付,如果收银员在界面上点击选择银行卡选项,银行卡应用处理模块启动以实现银行卡的支付;如果收银员点击选择了扫码付选项卡,则串码获取模块71提取出支付串码;金额获取模块72获取金额以用于支付。
除了图7所示的系统之外,还可以采用以下的系统实现,参见图8所示的另一种便捷支付服务系统示意图;附图包括系统核心处理模块,以及与所示系统核心处理模块分别相连的金额识别模块、数据库管理模块、POS终端、打印机、联机后台和收银机及扫码设备。
1)收银员通过收银机按下热键或系统核心处理模块监测到扫码设备有支付串码传入时,系统核心处理模块被唤起;
2)在系统核心处理模块被唤起时,金额识别模块将启动并从第三方软件中截取所需结算的金额;
3)系统核心处理模块向POS终端发送交易指令,并与之建立起实时通讯;
4)POS终端根据应用类型选择与特定的联机后台建立通讯,核心处理模块支持HTTP、JSON等多种通讯协议;其中,通讯协议是指一种网络通用语言,为连接不同操作系统和不同硬件体系结构的互联网络提供通信支持。
5)交易完成后,系统核心处理模块将相关数据写入数据库并执行打单等交互操作;
6)系统核心处理模块将交易结果发送给收银机中以供用户查看。
本系统的银行卡应用处理模块74可同时支持多种银行卡应用类型的快速扩展。本申请的切换模块实现了银行卡与扫码付类型的兼容扩展。解决了现有技术无法灵活叠加多种应用类型:银行卡交易、扫码支付交易等各应用类型的交易上送的联机后台不同,互传信息的协议与内容亦各不相同,当支付系统需支持多种应用类型的交易时,需对各种应用的交易逻辑一一处理,难以实现快速、低成本地部署和扩展。
本系统通过串码获取模块71兼容扫码设备间的差异,通过打印机检测模块兼容打印设备间的差异。解决了现有技术无法快速完成不同型外接设备部署:目前市面上主流的设备中,扫码设备有3种规格以上的接口,打印设备存在4种规格以上的接口,通常支付系统难以兼容这些硬件设备间的差异,实现快速部署或设备更换几无可能。
本系统通过串码获取模块71、金额获取模块72自动、高效且准确地捕获交易所需信息,免除收银员频繁的唤起与输入操作;此外,本系统采用认知负担最小化原则、一致性原则等设计思路,让收银员在发起交易、换班统计、重打印等基本操作中获得便捷的交互体验。解决了现有的支付服务系统与收银员的交互不够高效便捷:串码与金额的自动识别未能做到足够智能或达到足够高的识别精度,这使得现有的支付服务系统存在大量需手动完成的繁琐操作,且收银员界面、热键等交互设计都难以让收银员获得高效优质的操作体验。
总地来说,本发明目的在于拓展支付渠道、完善商户收款环境、节省硬件投放成本、免除硬件日常维护、简化收银员操作流程、缩短支付的时间、提高交易成功率,提供形式多样的管理决策服务,便于中小商户的快速部署和使用。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种便捷支付服务方法,其特征在于,应用于收银机,包括:
获取USB扫码设备或者串口扫码设备发出的串码数据;所述串码数据包括支付串码和货码;
利用预先建立的支付串码正则表达式标准库与所述串码数据进行匹配以从所述串码数据中提取出支付串码;
基于所述支付串码进行支付服务。
2.如权利要求1所述的方法,其特征在于,获取USB扫码设备发出的串码数据的步骤包括:
用键盘钩子技术获取按键消息;所述按键消息由键盘输入产生或者由所述USB扫码设备发出的串码数据产生:
根据所述按键消息中的内容和预设的串码规则判断所述按键消息的内容是否为USB扫码设备发出的串码数据;
如果是,将所述按键消息中的内容作为USB扫码设备发出的串码数据。
3.如权利要求2所述的方法,其特征在于,根据所述按键消息中的内容和预设的串码规则判断所述按键消息的内容是否为USB扫码设备发出的串码数据的步骤包括:
如果所述按键消息中的字符队列中的字符均为数字字符,且所述数字字符符合预设的串码规则,确定所述按键消息的内容为USB扫码设备发出的串码数据。
4.如权利要求2或3所述的方法,其特征在于,所述预设的串码规则包括:串码的长度、所述串码的首字符和所述串码的随机数的长度。
5.如权利要求1所述的方法,其特征在于,获取串口扫码设备发出的串码数据的步骤包括:
监测串口扫码设备的串口发送的数据;所述数据包括串码数据和非串码数据;
利用预先构建并训练好的基于卷积神经网络的二分类模型对所述数据进行分类识别,识别出所述串码数据。
6.如权利要求1所述的方法,其特征在于,还包括:
提示收银员点选所述支付服务对应的在收银机显示屏上显示的编辑框;其中,所述编辑框内显示有所述支付服务对应金额;
获取所述编辑框的路径名称以及所述编辑框的坐标信息,将所述路径名称以及所述坐标信息保存在配置文件中;
根据所述配置文件从所述编辑框内读取所述金额;
基于所述金额和所述支付串码进行支付服务。
7.如权利要求1所述的方法,其特征在于,还包括:
如果所述支付服务对应的金额在收银机显示屏上以非编辑框模式显示,则对所述金额进行截图,记录截图的坐标并保存为bmp文件;对所述bmp文件进行降噪处理;
调用开源图像识别工具OCR对所述降噪的bmp文件进行图像识别得到所述金额;
基于所述金额和所述支付串码进行支付服务。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
向POS终端发送交易指令,所述交易指令中携带了银行卡的应用类型,以使所述POS终端根据所述银行卡的应用类型选择对应的联机后台。
9.如权利要求1所述的方法,其特征在于,所述方法还包括:
当完成所述支付串码对应的支付服务时,通过预设方式检测所述收银机连接的打印机的类型;所述预设方式包括:USB驱动检测方式、串口打印指令检测方式、端口号逐一检测方式和并口打印指令检测方式;所述打印机的类型包括:USB打印机、串口打印机和并口打印机;
根据所述打印机的类型及所述打印机与所述收银机相连的端口,触发所述打印机对所述支付服务对应的支付信息打印。
10.一种便捷支付服务系统,其特征在于,应用于收银机,包括:
串码获取模块,用于获取USB扫码设备或者串口扫码设备发出的串码数据;所述串码数据包括支付串码和货码;
利用预先建立的支付串码正则表达式标准库与所述串码数据进行匹配以从所述串码数据中提取出支付串码;
金额获取模块,用于获取经过扫码设备扫码之后在收银机显示屏上显示的金额;
支付模块,用于根据所述支付串码和所述金额进行支付服务;
银行卡应用处理模块,用于向POS终端发送交易指令,所述交易指令中携带了银行卡的应用类型,以使所述POS终端根据所述银行卡的应用类型选择对应的联机后台;
打印机检测模块,用于支付模块根据所述支付串码和所述金额进行支付服务之后,检测所述收银机连接的打印机的类型及端口号;根据打印机的类型及端口号调用所述打印机对所述支付服务对应的支付信息打印。
CN201811444612.4A 2018-11-29 2018-11-29 便捷支付服务方法和系统 Active CN109544134B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811444612.4A CN109544134B (zh) 2018-11-29 2018-11-29 便捷支付服务方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811444612.4A CN109544134B (zh) 2018-11-29 2018-11-29 便捷支付服务方法和系统

Publications (2)

Publication Number Publication Date
CN109544134A true CN109544134A (zh) 2019-03-29
CN109544134B CN109544134B (zh) 2021-11-02

Family

ID=65850916

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811444612.4A Active CN109544134B (zh) 2018-11-29 2018-11-29 便捷支付服务方法和系统

Country Status (1)

Country Link
CN (1) CN109544134B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111915288A (zh) * 2020-07-30 2020-11-10 中国建设银行股份有限公司 支付控制方法、装置、智能销售终端、设备、介质和系统
CN113095450A (zh) * 2021-03-24 2021-07-09 东风电驱动系统有限公司 二维码数据获取方法、系统、电子设备及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN204028984U (zh) * 2014-03-27 2014-12-17 广州云移信息科技有限公司 二维码扫描支付的终端装置及支付系统
CN105678302A (zh) * 2016-03-09 2016-06-15 上海讯联数据服务有限公司 一种基于ocr的扫码支付收银软件金额识别系统
CN105809431A (zh) * 2016-03-04 2016-07-27 福建联迪商用设备有限公司 扫码支付的方法及系统
CN106095745A (zh) * 2016-05-27 2016-11-09 厦门市美亚柏科信息股份有限公司 基于通讯记录的交易记录提取方法及其系统
CN106251520A (zh) * 2016-07-20 2016-12-21 深圳巧思科技有限公司 一种超市收银系统
CN106447314A (zh) * 2016-09-09 2017-02-22 浪潮软件股份有限公司 一种集成多渠道零售终端支付方法
CN107644495A (zh) * 2016-07-22 2018-01-30 陈沛然 线上线下一体化收银系统及其收银方法
CN108198355A (zh) * 2018-01-08 2018-06-22 苏州市华信信息技术有限公司 适用于各种收银(费)系统的自动识别支付扫码枪
WO2018129680A1 (zh) * 2017-01-11 2018-07-19 孙丽霞 一种多功能自助购物系统及方法
CN108428129A (zh) * 2018-04-18 2018-08-21 阜阳师范学院 一种基于射频技术的快捷购物系统及方法
CN108510676A (zh) * 2018-04-12 2018-09-07 珠海横琴盛达兆业科技投资有限公司 一种基于bs架构的收银平台使用编码与快捷键实现单一商品打折的方法
CN108510262A (zh) * 2017-09-27 2018-09-07 深圳市享多多网络技术有限公司 一种支付方法以及装置
CN108596601A (zh) * 2018-05-11 2018-09-28 阿里巴巴集团控股有限公司 一种基于doi的支付方法、装置及设备

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN204028984U (zh) * 2014-03-27 2014-12-17 广州云移信息科技有限公司 二维码扫描支付的终端装置及支付系统
CN105809431A (zh) * 2016-03-04 2016-07-27 福建联迪商用设备有限公司 扫码支付的方法及系统
CN105678302A (zh) * 2016-03-09 2016-06-15 上海讯联数据服务有限公司 一种基于ocr的扫码支付收银软件金额识别系统
CN106095745A (zh) * 2016-05-27 2016-11-09 厦门市美亚柏科信息股份有限公司 基于通讯记录的交易记录提取方法及其系统
CN106251520A (zh) * 2016-07-20 2016-12-21 深圳巧思科技有限公司 一种超市收银系统
CN107644495A (zh) * 2016-07-22 2018-01-30 陈沛然 线上线下一体化收银系统及其收银方法
CN106447314A (zh) * 2016-09-09 2017-02-22 浪潮软件股份有限公司 一种集成多渠道零售终端支付方法
WO2018129680A1 (zh) * 2017-01-11 2018-07-19 孙丽霞 一种多功能自助购物系统及方法
CN108510262A (zh) * 2017-09-27 2018-09-07 深圳市享多多网络技术有限公司 一种支付方法以及装置
CN108198355A (zh) * 2018-01-08 2018-06-22 苏州市华信信息技术有限公司 适用于各种收银(费)系统的自动识别支付扫码枪
CN108510676A (zh) * 2018-04-12 2018-09-07 珠海横琴盛达兆业科技投资有限公司 一种基于bs架构的收银平台使用编码与快捷键实现单一商品打折的方法
CN108428129A (zh) * 2018-04-18 2018-08-21 阜阳师范学院 一种基于射频技术的快捷购物系统及方法
CN108596601A (zh) * 2018-05-11 2018-09-28 阿里巴巴集团控股有限公司 一种基于doi的支付方法、装置及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
徐海勇 等: ""二维码扫码聚合支付模式研究"", 《中国新通信》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111915288A (zh) * 2020-07-30 2020-11-10 中国建设银行股份有限公司 支付控制方法、装置、智能销售终端、设备、介质和系统
CN113095450A (zh) * 2021-03-24 2021-07-09 东风电驱动系统有限公司 二维码数据获取方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN109544134B (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
CN111428599B (zh) 票据识别方法、装置和设备
CN104794768B (zh) 定时自动运行考勤计算的考勤系统及考勤方法
US10847136B2 (en) System and method for mapping a customer journey to a category
CN110515846B (zh) 一种关于用户体验测试的数据自动化处理分析系统
US20140310170A1 (en) System and Method for Back Office Processing of Banking Transactions Using Electronic Files
CN107733782A (zh) 根据任务生成群的方法、装置及系统
CN107092913A (zh) 一种喷印字符在线识别及交互式后处理系统及方法
CN107273900A (zh) 图像处理装置及其控制方法、终端设备
CN107169856A (zh) 一种公积金业务对账方法和系统
CN110599156A (zh) 一种收款方法、收款装置、终端设备及介质
CN106530528A (zh) 收银票据信息识别方法及装置
WO2016055085A1 (en) System and method for pattern-recognition based monitoring and controlled processing of data objects based on conformity measurements
CN109544134A (zh) 便捷支付服务方法和系统
CN109857499B (zh) 基于windows系统收银软件屏幕金额获取的通用方法
CN106875162B (zh) 数据抓取方法、数据抓取装置、软收银对接接口及终端
CN108363780A (zh) 一种反洗钱的规则引擎及方法
CN205665728U (zh) 支付及数据采集、显示与数据分析系统
CN107563760A (zh) 一种支持1比n多人比对的生物识别收银方法及系统
CN106355792A (zh) 点验刷扫智能支付一体机
KR20110093398A (ko) 기업용 문자메시지 통합 관리 장치 및 방법
CN207458248U (zh) 关于扫描枪的语音系统
CN101174349A (zh) 一种网络税控器处理票据数据的方法
JP2017194808A (ja) 行動特性分析装置及び行動特性分析システム
CN108805541A (zh) 一种支付方法和系统、存储介质
CN101788816A (zh) 一种服装生产流水线管理系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant