A payment ability extension processing method, device, and equipment
Through the HID protocol, the external payment device automatically installs the cash register payment capability expansion program, solving the problems of low access efficiency and high cost of external payment devices, and achieving convenient and efficient payment capability expansion.
Patent Information
- Application Number
- CN202510283360.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-11
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-03-11
AI Technical Summary
In the prior art, the access efficiency of external payment equipment and cash registers is low and costly, the merchants operate cumbersome, and subsequent upgrades and maintenance are difficult.
Through the HID protocol, external payment devices are simulated as keyboard or mouse, and automatically send and execute commands to the cash register and execute simulated keyboard input to realize the automatic installation and upgrade of the payment capability extension program.
No manual operation is required for merchants, which reduces access costs and cumbersomeness, improves access efficiency, and supports more payment methods, making subsequent maintenance convenient.
Smart Images

Figure CN119784376B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the technical field of electronic payment, and particularly to a payment capability expansion processing method, apparatus, and device. Background Art
[0002] In daily life, merchants usually collect payments from consuming users through cash registers deployed at the cashier desks. Cash registers usually support traditional payment methods such as bank cards, credit cards, and cash by themselves. However, currently, more and more new payment methods have emerged and even gradually become popular. For example, code scanning payment, near-field communication-based payment, face brushing payment, palm brushing payment, etc., pose challenges to the capabilities and convenience of cash registers.
[0003] In order to make full use of the existing cash registers at a large number of merchants to promote new payment methods, payment service providers for new payment methods have launched various corresponding external payment devices to expand the payment capabilities of cash registers. As a result, cash registers can indirectly use the expanded payment capabilities provided by the external payment devices through the external payment devices deployed for them, so as to support the corresponding new payment methods. For example, an external payment device is a near-field communication-based payment device, which can expand the near-field communication-based payment capabilities for a cash register by connecting to the cash register.
[0004] Since external payment devices and cash registers are often not provided by the same service provider, for payment service providers that provide external payment devices, if they want to minimize the transformation of the cash registers themselves, they consider mainly installing a payment capability expansion program provided by the payment service provider on the cash registers. Then, the payment capability expansion program is used to interact with the external payment device on behalf of the cash register, and the data of the cash register itself is obtained by the payment capability expansion program through methods such as screenshot recognition. Thus, the cash register basically does not need to actively cooperate, which helps to reduce the access cost and helps to increase the willingness of merchants to access external payment devices.
[0005] For the work of installing the payment capability expansion program, currently, it is mainly done by merchants or the staff of payment service providers themselves using a USB flash drive copied with the payment capability expansion program and inserting it into the cash register for operation and installation. However, in actual applications, the operation by merchants is relatively cumbersome and prone to problems, and sending staff by payment service providers incurs high labor costs. Moreover, the subsequent upgrade and maintenance of the payment capability expansion program may also face these problems.
[0006] Based on this, a solution that helps to improve the access efficiency of external payment devices for cash registers and reduce the access cost is needed. Summary of the Invention
[0007] One or more embodiments of this specification provide a payment ability extension processing method, apparatus, and device to solve the following technical problem: a solution that helps improve the access efficiency of external payment devices for cash registers and reduce access costs is needed.
[0008] To solve the above technical problem, one or more embodiments of this specification are implemented as follows:
[0009] A payment ability extension processing method provided by one or more embodiments of this specification is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The method includes:
[0010] Determine whether it is in a connected state with the cash register;
[0011] If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0012] Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information;
[0013] Through interaction with the cash register based on the payment ability extension program, use the ability corresponding to the extended payment method for the cash register.
[0014] A payment ability extension processing apparatus provided by one or more embodiments of this specification is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The apparatus includes:
[0015] A connection status confirmation module that determines whether it is in a connected state with the cash register;
[0016] An input status trigger module that, if so, sends a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0017] A simulated keystroke execution module that sends simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information;
[0018] An extended capability usage module uses the capability corresponding to the extended payment method for the cash register by interacting with the cash register based on the payment capability extension program.
[0019] A payment capability extension processing device provided by one or more embodiments of this specification is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The device includes:
[0020] At least one processor; and,
[0021] A memory communicatively connected to the at least one processor; wherein,
[0022] The memory stores instructions executable by the at least one processor. When the instructions are executed by the at least one processor, the at least one processor is enabled to execute:
[0023] Determine whether it is in a connected state with the cash register;
[0024] If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0025] Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through this execution, the cash register obtains and installs the payment capability extension program indicated by the simulated keystroke information;
[0026] Use the capability corresponding to the extended payment method for the cash register by interacting with the cash register based on the payment capability extension program.
[0027] One or more embodiments of this specification adopting the above at least one technical solution can achieve the following beneficial effects: It can automatically simulate an external payment device as a keyboard, and through the HID protocol, send and execute instructions as if they were input through a keyboard to the connected cash register, so as to automatically bring up the command input interface on the cash register, and further automatically input and execute the commands for obtaining and installing the payment capability extension program, thereby conveniently completing the installation of the payment capability extension program on the cash register, and further enabling the cash register to smoothly use the external payment device to expand and support more payment methods. This installation scheme does not require the payment service provider to send on-site staff, nor does it require the merchant to perform cumbersome operations, does not require a USB flash drive, has low cost and high efficiency, and also has good reliability, and is also convenient for subsequent upgrade and maintenance. Description of the Drawings
[0028] To more clearly illustrate the technical solutions in the embodiments of this specification or the prior art, the following will briefly introduce the accompanying drawings required for the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only some embodiments recorded in this specification. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can also be obtained based on these drawings.
[0029] Figure 1 Flow chart of a payment ability expansion processing method provided for one or more embodiments of this specification;
[0030] Figure 2 Provided for one or more embodiments of this specification Figure 1 Flow chart of the implementation solution of the method in the scenario where the cash register uses the Windows operating system;
[0031] Figure 3 Flow chart of a non-advance payment ability expansion program installation processing solution provided for one or more embodiments of this specification;
[0032] Figure 4 Flow chart of a deferred settlement order processing solution provided for one or more embodiments of this specification;
[0033] Figure 5 Structural diagram of a payment ability expansion processing device provided for one or more embodiments of this specification;
[0034] Figure 6 Structural diagram of a payment ability expansion processing device provided for one or more embodiments of this specification. Detailed implementation
[0035] The embodiments of this specification provide a payment ability expansion processing method, device, equipment and storage medium.
[0036] To enable those skilled in the art to better understand the technical solutions in this specification, the following will clearly and completely describe the technical solutions in the embodiments of this specification in conjunction with the accompanying drawings in the embodiments of this specification. Obviously, the described embodiments are only a part of the embodiments of this application, rather than all the embodiments. Based on the embodiments of this specification, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the scope of protection of this application.
[0037] To solve the problems in the background art, the applicant first considered remotely downloading and installing a payment ability extension program. In this way, there is no need for a USB flash drive, and there is no need for the payment service provider to send personnel. The merchant can operate on the cash register by himself. The merchant can open a browser through the mouse of the cash register, and then enter the download URL of the payment ability extension program in the browser through the keyboard of the cash register and access it, so as to obtain the latest payment ability extension program, and then install it. The download URL can be obtained by the merchant from the official website of the payment service provider. However, after trying this solution in some merchants, the effect is not very good. The reason is that the operator of the cash register often only performs some fixed operations related to cash register. In fact, he is not familiar with the above additional operations, has low efficiency, is easy to make mistakes and is afraid of making mistakes. Therefore, the willingness is not high, let alone subsequent upgrade and maintenance. Moreover, these additional operations are still relatively cumbersome.
[0038] Based on this, the applicant further considered that the original keyboard operations and the like that need to be performed on the cash register are replaced by an external payment device to simulate a keyboard (it can also be a human-computer interaction device such as a mouse) to do it automatically, and send corresponding simulated human-computer interaction instructions through the HID protocol to automatically install the payment ability extension program for the cash register. Thus, there is no need for the merchant to operate by himself, and the above problems can be solved.
[0039] Next, based on such a general idea, the solution of this application will be further described.
[0040] Figure 1 It is a schematic flowchart of a payment ability extension processing method provided for one or more embodiments of this specification. This method is applied to an external payment device configured for a cash register. The external payment device can provide one or more payment methods that the cash register itself does not have, which are called extended payment methods, so as to be able to extend additional payment capabilities for the cash register. For example, payment based on near-field communication (based on touch sensor recognition), face brushing payment (based on face recognition), palm brushing payment (based on palmprint recognition), iris payment and other capabilities. Correspondingly, the external payment device belongs to at least one of the following devices: a payment device based on near-field communication, a face brushing payment device, a palm brushing payment device, an iris payment device, etc.
[0041] The external payment device can especially be portable and relatively small, so it is more convenient to deploy for the cash register. The cash register is existing and the transformation cost is relatively low. The cash register and the external payment device can be provided by different service providers (here mainly means that they are not products of the same company). For example, the external payment device is provided by a certain third-party payment service provider, while the cash register may be provided by some traditional financial equipment manufacturers.
[0042] Figure 1 The process in it includes the following steps:
[0043] S102: Determine whether the cash register is in a connected state.
[0044] The cash register itself supports one or more relatively standard and common interfaces. For example, Bluetooth, USB (including TYPC-C), serial port, WiFi, etc. It can be a hardware interface or a wireless interface. Of course, the support situations of different cash registers may vary. In addition, there may be overlaps and support implementations among these interfaces. For example, the serial port may also be implemented based on the USB interface, and so on.
[0045] It is necessary to connect the external payment device to the cash register first for subsequent information interaction. Taking the serial port (such as standard serial interfaces like RS232, RS485, etc.) as an example, the cash register and the external payment device can be wired-connected through a serial data cable. Of course, a wireless serial port may also be used.
[0046] S104: If so, send a status trigger command to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state.
[0047] The HID protocol (Human Interface Device Protocol) is a device communication protocol defined in the Universal Serial Bus standard, mainly used to support data transmission between human-computer interaction devices (such as keyboards, mice, gamepads, touchscreens, etc.) and computers or other host devices. Its core goal is to achieve the plug-and-play function, enabling these devices to be recognized and used by the operating system without installing additional drivers. Both the external payment device and the cash register support the HID protocol. However, it is difficult to achieve payment-related service interactions between the two only with the HID protocol. Therefore, it is necessary to install a payment capability extension program to support higher-level protocols (such as custom lightweight communication protocols) for realizing service interactions between the two and efficiently interacting some data with specific service semantics.
[0048] To facilitate more convenient and better applicable use of the HID protocol, the external payment device and the cash register can especially be connected through USB or Bluetooth. In the case of Bluetooth, wireless interaction can be supported through Bluetooth HID.
[0049] In one or more embodiments of this specification, the external payment device can be without a keyboard and a mouse, thus being more compact and lightweight for easy carrying, movement, and deployment, and having a lower cost. The external payment device can be simulated as a keyboard and / or a mouse, and automatically send "commands generated and sent as if they were manually operated by a keyboard and / or a mouse" to the cash register through the HID protocol, without actually requiring manual operations (such as manually clicking the keyboard, manually clicking the mouse, etc.) to send corresponding commands.
[0050] For the manually operated part, basically, as long as the merchant connects the external payment device to the cash register by wire or pairs it for wireless connection, the connected state in step S102 can be ensured, and the subsequent steps can be automatically executed by the external payment device.
[0051] In one or more embodiments of this specification, instructions to be sent to the cash register can be pre-built into the external payment device, or these instructions can also be automatically generated in real time when they are to be sent. These instructions are automatically sent in a timely manner based on the set logic. For example, these instructions can be automatically triggered to start being sent when the external payment device and the cash register are initially connected.
[0052] Additionally, more flexibly, at least some of the above instructions can also be generated by the server of the payment provider and sent to the external payment device in a timely manner. The external payment device then forwards these instructions to the cash register through the HID protocol. Or the external payment device can also perform additional processing on the received instructions as needed and then send them to the cash register (the subsequent simulated keystroke information, etc. can also be processed in a similar manner, thus giving full play to the advantages of the server). This server-based method helps to perform subsequent upgrades and maintenance efficiently and is also convenient for serving multiple, a large number, or even a huge number of external payment devices (corresponding to the same payment service provider) and cash registers (such as at a large number of different merchants) in parallel, thereby more efficiently completing the installation of the payment ability expansion program on a large scale.
[0053] In one or more embodiments of this specification, it is considered to send commands (mainly referring to commands in command line form) to the cash register by finally simulating a keyboard through the HID protocol and trigger the execution of the commands to complete the installation of the payment ability expansion program. For the cash register, it usually does not naturally stay in the interface waiting to receive command lines. Therefore, first, a status trigger instruction is sent to the cash register through the HID protocol to trigger it to enter this interface, that is, to trigger the cash register to open its own console and enter the command input waiting state mentioned in step S104. There can be one or more status trigger instructions. For different cash register operating systems, the specific content of the status trigger instruction may be different.
[0054] It should be noted that the external payment device can also simulate a mouse to send instructions. However, this method requires more precisely determining the coordinate position in the cash register interface that the instruction is to target, and the implementation threshold is relatively higher. For the simulated keyboard solution, since the cash register also supports some operation methods of keyboard shortcuts and shortcut key combinations, it is relatively easier to accurately send instructions, and the cash register can also respond correctly more reliably. Therefore, this application prefers to let the external payment device simulate a keyboard to send instructions as if they were sent by manually operating the keyboard.
[0055] S106: Send simulated keystroke information (which is essentially an instruction) to the cash register via the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through this execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information.
[0056] In one or more embodiments of this specification, after the cash register enters the command input waiting state and before the external payment device sends simulated keystroke information, according to actual needs, the external payment device may also send more instructions to the cash register via the HID protocol. For example, it may also send a certain command to trigger the cash register to execute this command first in the command input waiting state and then wait for the external payment device to further send simulated keystroke information. The simulated keystroke information, in terms of form, seems to be an executable command input through the keyboard, but in fact it is sent by simulating keyboard input, so it is simply referred to as "simulated keystroke" here.
[0057] The simulated keystroke information may include the download address of the payment ability extension program. In response to the execution of the simulated keystroke information, the cash register automatically downloads the payment ability extension program from this download address and automatically installs the downloaded payment ability extension program, avoiding cumbersome manual operations. For example, there is no need for manual input of this download address.
[0058] S108: Use the ability corresponding to the extended payment method for the cash register by interacting with the cash register based on the payment ability extension program.
[0059] After the cash register is successfully installed, higher-level protocol business interactions can be carried out between the external payment device and the cash register based on the payment ability extension program. For example, based on the specified business operations of the cashier on the cash register, payment-related information (such as the amount to be paid, payment interface call request, membership number, or auxiliary screenshot, etc.) is transmitted to the external payment device to trigger the external payment device to use the extended payment method it supports to deduct the current user or perform other business processes.
[0060] The specified business operations, for example, are operations such as requesting payment, or requesting to log in as a member, requesting to register biometric information, etc. It should be noted that these business operations can be newly defined corresponding to new business semantics through intent recognition or other means on the basis of or outside the existing business semantics of the cash register, so as to first expand additional functions for the cash register in terms of operation form, enabling the cashier to still mainly operate the cash register, and this function is actually implemented by the external payment device.
[0061] Subsequently, if it is necessary to upgrade the payment ability extension program, it can be upgraded online based on the capabilities of the existing version, or the higher version can still be installed using the Figure 1 scheme. Of course, the payment ability extension program itself may also be subdivided into different parts, and one part of it can be installed using a similar scheme according to actual needs.
[0062] In one or more embodiments of this specification, the interactive reliability risk is further considered. For example, on the one hand, due to problems such as weak network signals or delays, the instructions actually automatically input into the cash register may be incomplete or even incorrect. On the other hand, due to the diverse types of existing cash registers on the market, some instructions cannot be executed correctly, resulting in compatibility issues. Therefore, an exemplary solution is provided here. It includes: determining whether the cash register is in a connected state, where the camera of the external payment device is in a state of shooting the screen of the cash register; if so, judging the simulated keystroke information required according to the screen display content captured; obtaining the simulated keystroke information, and sending the simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information. By executing, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information; through the interaction with the cash register based on the payment ability extension program, the capabilities corresponding to the extended payment method are used for the cash register.
[0063] Based on the real-time screen capture analysis of the external device, it can timely detect possible abnormal input situations and make corresponding adjustments, which can improve reliability; moreover, it helps to identify and select more appropriate simulated keystroke information for different cash registers, thus helping to improve compatibility.
[0064] By Figure 1 method, the external payment device can be automatically simulated as a keyboard, enabling it to send and execute instructions as if input through a keyboard to the connected cash register through the HID protocol, so as to automatically bring up the command input interface on the cash register, and further automatically input and execute the commands for obtaining and installing the payment ability extension program, thus conveniently completing the installation of the payment ability extension program on the cash register. Furthermore, the cash register can smoothly use the external payment device to expand the support for more payment methods. This installation scheme does not require the payment service provider to send on-site staff, nor does it require the merchant to perform cumbersome operations. It does not require a USB flash drive, has low cost, high efficiency, good reliability, and is also convenient for subsequent upgrade and maintenance.
[0065] Based on Figure 1 method, this specification also provides some specific implementation schemes and extended schemes of this method, which will be continued to be described below.
[0066] In one or more embodiments of this specification, in order to more reliably enter the command input waiting state, the above-mentioned state trigger instruction is subdivided into a first shortcut sub-instruction, a second shortcut sub-instruction, and a simulated keystroke sub-instruction, which are respectively used to sequentially and effectively achieve different segmented goals.
[0067] In this case, after determining that it is in a connected state with the cash register, if it is necessary to install a payment capability extension program, for an external payment device, first, through the HID protocol, send a first shortcut sub-instruction to the cash register to trigger the cash register to display the desktop (here it can mean making the desktop be in the frontmost position; this is used to prevent subsequent commands from being difficult to execute correctly. For example, if staying in a certain business page in the cashier software, subsequent commands may not be executed correctly according to the expected intention); after successfully displaying the desktop, then through the HID protocol, send a second shortcut sub-instruction to the cash register to trigger the cash register to display a running window in the desktop (here it can refer to a window that can input and run command lines); after successfully displaying the running window, then send a simulated keystroke sub-instruction (here it can refer to the name of the command line program to be run, that is, the console) to the cash register to trigger the simulated keystroke sub-instruction to be automatically input and executed in the running window. By executing, the console of the cash register itself is opened to enter the command input waiting state.
[0068] The first shortcut sub-instruction and the second shortcut sub-instruction can be simulated keyboard and / or mouse shortcut operation instructions. Taking the keyboard as an example, the shortcut operation instruction can be an instruction triggered by pressing a specified combination key on the keyboard; taking the mouse as an example, the shortcut operation instruction can be an instruction triggered by clicking a specified system button on the mouse or clicking a physical button on the mouse bound with a specified macro.
[0069] The above specific solution for entering the command input waiting state is particularly applicable to scenarios where it is necessary to call out a running window on the desktop. For example, if the cash register uses the Windows operating system, it belongs to such a scenario. For the convenience of implementation, more intuitively, one or more embodiments of this specification also provide Figure 1 a schematic flowchart of an implementation solution of the method in this scenario, see Figure 2 .
[0070] Figure 2 The instructions in [[ ]] do not require manual operation by the merchant and can be automatically sent to the cash register by the external payment device through the HID protocol to simulate keyboard input.
[0071] First, send a first shortcut sub-instruction, specifically an instruction triggered by simulating the pressing of the keyboard combination key "win + d", then the cash register responds to this instruction and switches to the desktop;
[0072] Then, send a second shortcut sub-instruction, specifically the instruction triggered by simulating the pressing of the keyboard combination "win+r". Then, in response to this instruction, the cash register pops up a run window from the desktop and waits to receive the next sub-instruction in the input box of the run window;
[0073] Next, send a simulated key-in sub-instruction, specifically the instruction triggered by simulating keyboard input of the text "CMD" and pressing the enter key. Then, in response to this instruction, the cash register starts the console and reaches the "Command Prompt" in the console interface, waiting for a command line to be entered. It can be considered that the command input waiting state is entered at this time;
[0074] Next, send simulated key-in information, specifically simulating keyboard input of a specific command line, and trigger the execution of this command line through simulation. This command line instructs to download the corresponding program (i.e., the payment ability extension program) from the instruction download address and install this program.
[0075] Based on Figure 2 the solution, the operation is simple, can be triggered at the startup of the external payment device, and is automatically executed without manual input. Compared with the manual keyboard input method, it is more reliable. With the support of the remote server, it can also perform batch operations with higher efficiency.
[0076] In addition to the cash register using the Windows operating system, cash registers using other operating systems (such as Linux, etc.) can also be processed in a similar way, and the main difference lies in the specific content of the corresponding sub-instructions or simulated key-in information.
[0077] The above mainly considers how to efficiently and automatically install the payment ability extension program for the cash register. Such an operation can be pre-executed to be prepared in advance for receiving users who may need to use the corresponding extended payment methods.
[0078] However, this application also considers the situation of not installing the payment ability extension program in advance, or not allowing the payment ability extension program to reside permanently on the cash register. These situations may be required in actual applications.
[0079] For example, the performance of many cash registers is relatively weak (especially some customized small cash registers), and the payment ability extension program may increase the burden on the cash register; for another example, some payment ability extension programs may have many optional modules, and only some of the modules may be needed in different scenarios; for another example, some cash registers may have requirements regarding security policies for external software; and so on. In these cases, there may be the above-mentioned needs, and it may be considered to install the payment ability extension program only when the extended payment method is needed or frequently used, and such installation may also be temporary. In this way, it helps to reduce the impact on the cash register and enables the cash register to perform many of its original tasks more normally.
[0080] To meet the above needs and minimize the impact on users' use of the extended payment ability (the situation may vary greatly among different merchants in terms of whether users will use it, which users will use it, and the usage frequency, etc.), one or more embodiments of this specification provide a flowchart of a non-advance payment ability extension program installation processing solution. See Figure 3 .
[0081] Figure 3 The process in
[0082] S302: After determining that it is in a connected state with the cash register, if a payment interaction operation by the user for the external payment device is received, then determine whether the payment ability extension program has been installed on the cash register.
[0083] For example, it is possible to try to send detection information to the cash register through the payment ability extension program on the external payment device itself to determine whether the other party has a correct response. The cash register needs to install the payment ability extension program in order to make a correct response through the payment ability extension program.
[0084] If it has been installed, normal interaction can be carried out in the manner of step S108. If not, in fact, it is not convenient for the cash register and the external payment device to conduct effective business communication at present, and it is difficult for the cash register to use the capabilities of the external payment device. In this case, since the user is currently waiting for payment next to the cash register and wants to use the extended payment method available on the external payment device for payment, the following special processing is adopted to enable the merchant to complete the cash collection from the user through the cash register normally.
[0085] S304: If not, then generate a deferred settlement order for the payment interaction operation.
[0086] In one or more embodiments of this specification, the slow settlement here is for the cash register. Compared with the normal cash register process, for the cash register process of this payment interaction operation, it will actually be completed more slowly for the merchant. It should be emphasized that, however, this has little impact on the user and may even provide a better experience.
[0087] Further determine the voucher information corresponding to the slow settlement order (for example, use the order number as the voucher information. For the sake of security, other identification information can also be encrypted or additionally generated). Through the HID protocol, send the voucher information corresponding to the slow settlement order to the cash register. The voucher information here can also be a type of simulated keystroke information. In this way, without the support of a high-level protocol, it includes, for example, an identification string used to represent the slow settlement order (which can be unique within the corresponding business scope, for example, uniquely identify an order). The voucher information can be input into the cash register by simulating keyboard operations, and the cash register can be made to save this voucher information. For example, trigger the cash register to open a log or other text file and write the voucher information for saving.
[0088] S306: Through the HID protocol, send a payment success trigger instruction carrying the voucher information corresponding to the slow settlement order to the cash register, triggering the cash register to forcibly end the cash register process for the user this time successfully.
[0089] In one or more embodiments of this specification, on the cash register, if there is a control that can be used to trigger the indication of successful cash register, then a payment success trigger instruction can be generated and sent through simulating keyboard and / or mouse operations to trigger this control to automatically end the cash register process successfully. Of course, it can also be manually forced to end by the cashier. It should be noted that normally, this cash register process is actually not ended because the cash register and the external payment device have not completed a complete and effective payment service cooperation, so it is called forcibly ending successfully here.
[0090] In some scenarios, on the cash register, the cash register may need the server to return the correct information to be able to automatically end the cash register process successfully. For example, in the case of card payment, it can end only after receiving the notification of successful card swiping returned by the server of the bank card or credit card issuer. Based on this, to prevent the cash register from being in a state where it cannot end the cash register process successfully by manually operating the local control, the cash register's cash register method can be forcibly switched to change such a state. For example, the cash register can be triggered to automatically switch to the cash payment method and automatically determine that the user has successfully paid the amount to be paid in cash this time. Of course, in fact, the user does not pay in cash. This switch is only for the convenience of forcibly ending the cash register process successfully.
[0091] S308: Request the server of the payment provider to issue the status trigger instruction and the simulated keystroke information; alternatively, it may only request to issue a part, and the rest is obtained from the local by the external payment device and sent.
[0092] To facilitate the subsequent normal business interaction between the cash register and the external payment device for the postponed settlement order and completely complete the relevant transactions of the postponed settlement order, such as correct settlement, etc., the cash register needs to install a payment capability extension program. Therefore, it can actively request the server to implement the installation. Here, it is an example of the server issuing an instruction to trigger the installation. Of course, it can also be triggered only by the external payment device. In this case, after generating the postponed settlement order or forcibly successfully ending the cash register process, the external payment device can trigger the installation in a timely manner (for example, as soon as possible when idle).
[0093] S310: After the cash register installs the payment capability extension program, based on the payment capability extension program, use the voucher information to request corresponding settlement from the external payment device or its server.
[0094] The cash register uses the voucher information to indicate that the corresponding cash register process and the postponed settlement order actually belong to its own business, and accordingly needs to correctly complete the settlement to protect the interests of the merchant.
[0095] Through Figure 3 the solution in, it helps to make a more flexible decision on when to install the payment capability extension program, and it is not necessary to install the payment capability extension program in advance, and the payment capability extension program does not necessarily need to be resident in the cash register, thus helping to reduce the burden on the cash register, and also not affecting the user's use of the extended payment method of the external payment device.
[0096] Furthermore, in Figure 3 the solution in, since the payment capability extension program is not installed, the external payment device may not be able to obtain the correct amount to be paid in a timely manner, and this situation may affect the generation of the postponed settlement order. To solve this problem, one or more embodiments of this specification also provide a flowchart of a postponed settlement order processing solution. See Figure 4 .
[0097] Figure 4 The process in includes the following steps:
[0098] S402: After generating the postponed settlement order for the payment interaction operation, determine the first amount to be paid estimated in the postponed settlement order, and the first amount to be paid is estimated to be less than the second amount to be paid that the user should actually pay this time.
[0099] For the sake of easy distinction, the amount to be paid that the user should actually pay this time is referred to as the second amount to be paid. Since the external payment device has not yet installed the payment capability extension program, it may not currently know the second amount to be paid. To solve this problem, the external payment device relatively conservatively estimates the amount to be paid as the first amount to be paid, which is included in the deferred settlement order.
[0100] What is desired is that the first amount to be paid should not be greater than the second amount to be paid. However, it may not be easy to accurately estimate the second amount to be paid. Therefore, as a second best option, it is expected that the estimated first amount to be paid is less than and relatively close to the second amount to be paid. In this way, it can ensure that most of the amount can be collected in a timely manner to protect the interests of the merchant, and at the same time avoid the user being mistakenly overcharged and affecting the user experience.
[0101] In one or more embodiments of this specification, the external payment device has a camera, and the placement table for the goods to be paid corresponding to the cash register is within the view range of the camera. Based on this, when generating a deferred settlement order for a payment interaction operation, it specifically includes: estimating the price of the goods according to the goods photographed within the view range; determining the first amount to be paid that is less than and close to the price according to the price; and generating a deferred settlement order indicating the first amount to be paid for the payment interaction operation.
[0102] In addition to this scheme of estimating the order amount by image recognition, other schemes can also be adopted for estimation, such as estimating based on the historical shopping situation of the current user, and so on.
[0103] S404: Deduct the first amount to be paid from the user.
[0104] To avoid confusing the user, it can also be more clearly notified to the user that only a part of the amount is immediately deducted at present, and the subsequent supplementary deduction will be made in due course.
[0105] S406: After using the voucher information to request corresponding settlement from the external payment device or its server, according to the request, determine and deduct the remaining unpaid amount from the user for settlement to the merchant corresponding to the cash register.
[0106] The unpaid amount, for example, is equal to the difference between the second amount to be paid and the first amount to be paid. Or, assuming the user pays in this situation, to improve the user experience, an additional discount (such as an amount reduction) can be given to the user during the supplementary deduction, then the unpaid amount will be less than the difference between the second amount to be paid and the first amount to be paid.
[0107] Through Figure 4In the solution, even if the cash register has not installed the payment ability extension program, it can still temporarily and indirectly rely on the ability to borrow an external payment device to serve users, and then correctly settle the accounts for the cash register, which is especially friendly to the cash register.
[0108] Based on the same idea, one or more embodiments of this specification also provide the corresponding devices and equipment for the above method, as Figure 5 , Figure 6 shown. The devices and equipment can correspondingly execute the above method and related alternative solutions.
[0109] Figure 5 FIG. is a schematic structural diagram of a payment ability extension processing device provided by one or more embodiments of this specification, which is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The device includes:
[0110] A connection status confirmation module 502 to determine whether it is in a connected state with the cash register;
[0111] An input status trigger module 504. If so, it sends a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0112] A simulated keystroke execution module 506 sends simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information;
[0113] An extended ability usage module 508 uses the ability corresponding to the extended payment method for the cash register through interaction with the cash register based on the payment ability extension program.
[0114] Optionally, the external payment device itself does not have a keyboard and a mouse.
[0115] Optionally, the status trigger instruction includes a first shortcut sub-instruction, a second shortcut sub-instruction, and a simulated keystroke sub-instruction;
[0116] The simulated keystroke execution module 506 sends the first shortcut sub-instruction to the cash register through the HID protocol to trigger the cash register to display the desktop;
[0117] Sends the second shortcut sub-instruction to the cash register to trigger the cash register to display a running window on the desktop;
[0118] Send the simulated keystroke sub-instruction to the cash register to trigger the automatic input and execution of the simulated keystroke sub-instruction in the running window. Through this execution, open the console of the cash register itself and enter the command input waiting state.
[0119] Optionally, the simulated keystroke information includes the download address of the payment ability extension program;
[0120] The simulated keystroke execution module 506 enables the cash register to download the payment ability extension program from the download address and install the payment ability extension program.
[0121] Optionally, there are multiple external payment devices corresponding to the same payment provider, and the multiple devices are distributed at multiple different merchants;
[0122] The simulated keystroke execution module 506 receives the simulated keystroke information remotely sent by the server of the payment provider before interacting with the cash register based on the payment ability extension program and using the ability corresponding to the extended payment method for the cash register;
[0123] Complete the corresponding trigger for the cash register by forwarding the simulated keystroke information to the cash register.
[0124] Optionally, after determining whether it is in a connected state with the cash register, the extended ability usage module 508, after determining that it is in a connected state with the cash register, if it receives a payment interaction operation from the user for the external payment device, determines whether the cash register has installed the payment ability extension program;
[0125] If not, generate a deferred settlement order for the payment interaction operation and send the voucher information corresponding to the deferred settlement order to the cash register through the HID protocol, so that after the cash register installs the payment ability extension program, based on the payment ability extension program, use the voucher information to request corresponding settlement from the external payment device or its server.
[0126] Optionally, the extended ability usage module 508 sends a payment success trigger instruction carrying the voucher information to the cash register to trigger the cash register to forcibly end the current cash register process for the user successfully;
[0127] Request the server of the payment provider to send down the simulated keystroke information.
[0128] Optionally, the extended ability usage module 508 triggers the cash register to automatically switch to the cash payment method and automatically determines that the user has successfully paid the cash for the amount to be paid this time.
[0129] Optionally, after generating a deferred settlement order for the payment interaction operation by using the extended capability module 508, determine a first estimated amount to be paid in the deferred settlement order, where the first estimated amount to be paid is estimated to be less than a second amount to be paid that the user should actually pay this time;
[0130] Deduct the first amount to be paid from the user;
[0131] After requesting corresponding settlement from the external payment device or its server by using the voucher information, determine and deduct the remaining unpaid amount from the user according to the request, so as to settle to the merchant corresponding to the cash register.
[0132] Optionally, the external payment device has a camera, and the placement table for goods to be paid corresponding to the cash register is within the view range of the camera;
[0133] The extended capability module 508 estimates the price of the goods according to the goods photographed within the view range;
[0134] Determine a first amount to be paid that is less than and close to the price according to the price;
[0135] Generate a deferred settlement order for the payment interaction operation, which indicates the first amount to be paid.
[0136] Optionally, the cash register uses the Windows operating system.
[0137] Optionally, the extended payment method includes a payment method based on near field communication.
[0138] Figure 6 A schematic structural diagram of a payment capability expansion processing device provided for one or more embodiments of this specification, which is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The device includes:
[0139] At least one processor; and,
[0140] A memory communicatively connected to the at least one processor; wherein,
[0141] The memory stores instructions executable by the at least one processor. When the instructions are executed by the at least one processor, the at least one processor is enabled to execute:
[0142] Determine whether it is in a connected state with the cash register;
[0143] If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0144] Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information;
[0145] Through interaction with the cash register based on the payment ability extension program, use the ability corresponding to the extended payment method for the cash register.
[0146] Based on the same idea, one or more embodiments of this specification also provide a non-volatile computer storage medium, which is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The medium stores computer-executable instructions, and the computer-executable instructions are set as:
[0147] Determine whether the cash register is in a connected state;
[0148] If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state;
[0149] Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information;
[0150] Through interaction with the cash register based on the payment ability extension program, use the ability corresponding to the extended payment method for the cash register.
[0151] In the 1990s, it was obvious to distinguish whether an improvement to a technology was a hardware improvement (e.g., improvement to the circuit structures such as diodes, transistors, switches, etc.) or a software improvement (improvement to the method flow). However, with the development of technology, many improvements to method flows today can be regarded as direct improvements to hardware circuit structures. Almost all designers obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement to a method flow cannot be implemented with a hardware entity module. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user's programming of the device. Designers can program by themselves to "integrate" a digital system on a single PLD, without having to ask a chip manufacturer to design and fabricate a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly implemented using "logic compiler" software, which is similar to the software compiler used in program development and writing. The original code before compilation also has to be written in a specific programming language, which is called Hardware Description Language (HDL), and there is not only one kind of HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones currently are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also be aware that by simply performing some logical programming on the method flow with the above-mentioned several hardware description languages and programming it into the integrated circuit, it is easy to obtain the hardware circuit that implements the logical method flow.
[0152] The controller can be implemented in any suitable manner. For example, the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program code (such as software or firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of the controller include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that in addition to implementing the controller in the form of pure computer-readable program code, it is entirely possible to logically program the method steps to enable the controller to be implemented in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, and embedded microcontrollers to achieve the same function. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be regarded as the structures within the hardware component. Or even, the devices for implementing various functions can be regarded as either software modules for implementing the method or the structures within the hardware component.
[0153] The systems, devices, modules, or units illustrated in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.
[0154] For the convenience of description, when describing the above devices, they are described separately as various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0155] Those skilled in the art should understand that the embodiments of this specification can be provided as a method, a system, or a computer program product. Therefore, the embodiments of this specification can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of this specification can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program code.
[0156] This specification is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the specification. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and combinations of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to the processors of general-purpose computers, special-purpose computers, embedded processors, or other programmable data processing devices to generate a machine, such that the instructions executed by the processors of the computer or other programmable data processing devices produce means for implementing the functions specified in one flow Figure 1 one flow or multiple flows and / or blocks Figure 1 or multiple blocks.
[0157] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory produce a manufactured article including instruction means that implement the functions specified in one flow Figure 1 one flow or multiple flows and / or blocks Figure 1 or multiple blocks.
[0158] These computer program instructions can also be loaded onto a computer or other programmable data processing device, such that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one flow Figure 1 one flow or multiple flows and / or blocks Figure 1 or multiple blocks.
[0159] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.
[0160] The memory may include non-permanent memory in the form of computer-readable media, random access memory (RAM), and / or non-volatile memory such as read-only memory (ROM) or flash memory (flash RAM). The memory is an example of computer-readable media.
[0161] A computer-readable medium includes both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can store information accessible by a computing device. As defined herein, a computer-readable medium does not include transitory computer-readable media such as modulated data signals and carrier waves.
[0162] It should also be noted that the term "comprising", "including" or any other variation thereof is intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that comprises the element.
[0163] This specification can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification can also be practiced in a distributed computing environment where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0164] Each embodiment in this specification is described in a progressive manner. The same or similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the embodiments of devices, apparatuses, and non-volatile computer storage media, since they are basically similar to the method embodiments, they are described relatively simply, and the relevant parts can be referred to the descriptions of the method embodiments.
[0165] The above description has been made of specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the acts or steps recited in the claims may be performed in a different order than in the embodiments and still achieve the desired result. Additionally, the processes depicted in the drawings do not necessarily require the particular order or sequential order shown to achieve the desired result. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0166] The above is only one or more embodiments of this specification and is not intended to limit this specification. For those skilled in the art, various changes and modifications can be made to one or more embodiments of this specification. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of one or more embodiments of this specification shall be included within the scope of the claims of this specification.
Claims
1. A payment ability extension processing method is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The method includes: Determine whether it is in a connected state with the cash register; If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state; Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information; Through interaction with the cash register based on the payment ability extension program, use the ability corresponding to the extended payment method for the cash register.
2. The method according to claim 1, wherein the external payment device itself does not have a keyboard and a mouse.
3. The method according to claim 1, wherein the status trigger instruction includes a first shortcut sub-instruction, a second shortcut sub-instruction, and a simulated keystroke sub-instruction; The step of sending a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state specifically includes: Send the first shortcut sub-instruction to the cash register through the HID protocol to trigger the cash register to display the desktop; Send the second shortcut sub-instruction to the cash register to trigger the cash register to display a running window on the desktop; Send the simulated keystroke sub-instruction to the cash register to trigger the simulated keystroke sub-instruction to be automatically input and executed in the running window. Through the execution, open the cash register's own console and enter the command input waiting state.
4. The method according to claim 1, wherein the simulated keystroke information contains the download address of the payment ability extension program; The step of enabling the cash register to obtain and install the payment ability extension program indicated by the simulated keystroke information specifically includes: Enable the cash register to download the payment ability extension program from the download address and install the payment ability extension program.
5. The method according to claim 1, wherein there are multiple external payment devices corresponding to the same payment provider, and the multiple devices are distributed at multiple different merchants; Before the step of using the ability corresponding to the extended payment method for the cash register through interaction with the cash register based on the payment ability extension program, the method further includes: Receive the simulated keystroke information remotely issued by the server of the payment provider; Forward the simulated keystroke information to the cash register to complete the corresponding trigger of the cash register.
6. The method according to claim 1 or 5, after determining whether it is in a connected state with the cash register, the method further includes: After determining that the connection state with the cash register is established, if a payment interaction operation is received from the user for the external payment device, it is determined whether the payment capability extension program has been installed on the cash register; If not, a deferred settlement order is generated for the payment interaction operation, and voucher information corresponding to the deferred settlement order is sent to the cash register via the HID protocol, so that after the payment capability extension program is installed on the cash register, based on the payment capability extension program, the voucher information is used to request corresponding settlement from the external payment device or its server.
7. The method according to claim 6, wherein the sending the voucher information corresponding to the deferred settlement order to the cash register specifically includes: Sending a payment success trigger instruction carrying the voucher information to the cash register to trigger the cash register to forcibly end the current cash register process for the user successfully; Requesting the payment provider's server to issue the simulated keystroke information.
8. The method according to claim 7, wherein the triggering the cash register to forcibly end the current cash register process for the user successfully specifically includes: Triggering the cash register to automatically switch to the cash payment method and automatically determining that the user has successfully paid the cash for the amount to be paid this time.
9. The method according to claim 7, after generating the deferred settlement order for the payment interaction operation, the method further includes: Determining a first amount to be paid estimated in the deferred settlement order, where the first amount to be paid is estimated to be less than a second amount to be paid actually payable by the user this time; Deducting the first amount to be paid from the user; After using the voucher information to request corresponding settlement from the external payment device or its server, the method further includes: Determining and deducting the remaining unpaid amount from the user according to the request, so as to settle to the merchant corresponding to the cash register.
10. The method according to claim 7, wherein the external payment device has a camera, and the item placement table for the goods to be paid corresponding to the cash register is within the view range of the camera; The generating a deferred settlement order for the payment interaction operation specifically includes: Estimating the price of the goods based on the goods photographed within the view range; Determining a first amount to be paid that is less than and close to the price according to the price; Generating a deferred settlement order indicating the first amount to be paid for the payment interaction operation.
11. The method according to claim 3, wherein the cash register uses the Windows operating system.
12. The method according to any one of claims 1 to 5, wherein the extended payment method includes a payment method based on near field communication.
13. A payment capability extension processing device, applied to an external payment device configured for a cash register, the external payment device providing at least one extended payment method that the cash register itself does not have, the device includes: A connection state confirmation module that determines whether the connection state with the cash register is established; Input status trigger module. If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state; Simulated keystroke execution module. Send simulated keystroke information to the cash register through the HID protocol to trigger the cash register. In the command input waiting state, the simulated keystroke information is automatically input and executed. Through the execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information; Extended ability usage module. Interact with the cash register based on the payment ability extension program to use the ability corresponding to the extended payment method for the cash register.
14. The device according to claim 13, wherein the external payment device itself does not have a keyboard and a mouse.
15. The device according to claim 13, wherein the status trigger instruction includes a first shortcut sub-instruction, a second shortcut sub-instruction, and a simulated keystroke sub-instruction; The simulated keystroke execution module sends the first shortcut sub-instruction to the cash register through the HID protocol to trigger the cash register to display the desktop; Send the second shortcut sub-instruction to the cash register to trigger the cash register to display a running window on the desktop; Send the simulated keystroke sub-instruction to the cash register to trigger the simulated keystroke sub-instruction to be automatically input and executed in the running window. Through the execution, the cash register's own console is opened and enters the command input waiting state.
16. The device according to claim 13, wherein the simulated keystroke information contains the download address of the payment ability extension program; The simulated keystroke execution module enables the cash register to download the payment ability extension program from the download address and install the payment ability extension program.
17. The device according to claim 13, wherein there are multiple external payment devices corresponding to the same payment provider, and the multiple devices are distributed at multiple different merchants; The simulated keystroke execution module receives the simulated keystroke information remotely sent by the server of the payment provider before using the ability corresponding to the extended payment method for the cash register through the interaction with the cash register based on the payment ability extension program; Forward the simulated keystroke information to the cash register to complete the corresponding trigger of the cash register.
18. The device according to claim 13 or 17, wherein the extended ability usage module, after determining whether it is in a connected state with the cash register, if it receives a payment interaction operation from the user for the external payment device after determining that it is in a connected state with the cash register, determines whether the cash register has installed the payment ability extension program; If not, generate a deferred settlement order for the payment interaction operation, and send the voucher information corresponding to the deferred settlement order to the cash register through the HID protocol, so that after the payment capability extension program is installed on the cash register, based on the payment capability extension program, the cash register uses the voucher information to request corresponding settlement from the external payment device or its server.
19. The device according to claim 18, wherein the extended capability usage module sends a payment success trigger instruction carrying the voucher information to the cash register, triggering the cash register to forcibly end the current cash register process for the user successfully; Request the payment provider's server to issue the simulated keystroke information.
20. The device according to claim 19, wherein the extended capability usage module triggers the cash register to automatically switch to the cash payment method and automatically determines that the user has successfully paid the cash for the amount to be paid this time.
21. The device according to claim 19, wherein after generating a deferred settlement order for the payment interaction operation, the extended capability usage module determines a first amount to be paid estimated in the deferred settlement order, and the first amount to be paid is estimated to be less than a second amount to be paid actually payable by the user this time; Deduct the first amount to be paid for the user; After using the voucher information to request corresponding settlement from the external payment device or its server, determine and deduct the remaining unpaid amount for the user according to the request, so as to settle to the merchant corresponding to the cash register.
22. The device according to claim 19, wherein the external payment device has a camera, and the item placement table for the items to be paid corresponding to the cash register is within the view range of the camera; The extended capability usage module estimates the price of the item according to the item photographed within the view range; Determine a first amount to be paid that is less than and close to the price according to the price; Generate a deferred settlement order for the payment interaction operation indicating the first amount to be paid.
23. The device according to claim 15, wherein the cash register uses the Windows operating system.
24. The device according to any one of claims 13 to 17, wherein the extended payment method includes a payment method based on near field communication.
25. A payment capability extension processing device is applied to an external payment device configured for a cash register. The external payment device provides at least one extended payment method that the cash register itself does not have. The device includes: At least one processor; And, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute: Determine whether it is in a connected state with the cash register; If so, send a status trigger instruction to the cash register through the HID protocol to trigger the cash register to open its own console and enter the command input waiting state; Send simulated keystroke information to the cash register via the HID protocol to trigger the cash register to automatically input and execute the simulated keystroke information in the command input waiting state. Through this execution, the cash register obtains and installs the payment ability extension program indicated by the simulated keystroke information; Use the capabilities corresponding to the extended payment method for the cash register by interacting with the cash register based on the payment ability extension program.
Citation Information
Patent Citations
Universal plug & play driver for automated payment systems and automated purchase system provided with such a driver
EP3570234A1
Point of sales system and method for point of sales payment service
KR1020130138494A