The present disclosure relates to a point-of-sale (POS) system. More specifically, the present disclosure is directed to systems and methods for testing a POS automation device.
Today, as more purchases made in businesses are made through electronic transactions, electronic devices, such as point-of-sale (POS) system are used to complete the transactions. These systems are complex systems that can include multiple hardware peripherals and software applications. For example, a POS terminal may include a computing device with a display device, a card reader employing an insert-pay mechanism and/or a slide mechanism, a pin-pad mechanism, as well as a handheld scanner, a printer, and other various supporting systems. Because these hardware systems and software applications involve different types of transactions and require different system protocols, testing should be performed to ensure proper operations. Otherwise, operation errors will occur causing delays at a merchant end. Therefore, prior to operation, a POS testing automation system tests the POS device of the individual features of the systems for compatibility and proper functionalities.
While typically there have been testing procedures set for these POS systems, however, in prior solutions, only a few POS system features were implemented and incorporated into a testing suite. That is, these POS testing automation systems only tested the electronic cards for a single testing suite at a time, i.e., testing via an insert-pay mechanism or a slide mechanism, but not both. Moreover, these prior testing procedures have limited testing capabilities and unable to test for full functionalities, such as, unable to access a secure network, difficulty in formulating a test plan, and/or failing to address a fall-back scenario (i.e., fall-back scenario occurs when a EMV chip card is inserted and fails to read three consecutive times due to a chip error, then the EMV chip card is swiped).
In view of the problems associated with the prior devices, there remains a need to provide a device that is capable of testing individual features of POS systems, and addressing all of the problems discussed above.
In an exemplary embodiment, a system for testing a point-of-sale (POS) device including a card stack mechanism having a plurality of card stacks configured to hold a plurality of cards, a card insert-pay mechanism configured to insert one of the plurality of cards into the POS device to be tested, a card swipe-pay mechanism configured to swipe one of the plurality of cards into the POS device to be tested, and a card screen pin-pad mechanism configured to select a key on a keypad or an operation displayed on a display of the POS device associated with one of the card insert-pay mechanism or the card swipe-pay mechanism.
In another exemplary embodiment, a system for testing a point-of-sale (POS) device including a plurality of card stacks configured to hold a plurality of cards, a first arm configured to retrieve a card from the plurality of card stacks, a second arm, cooperatively interfacing with the first arm, configured to carry the retrieved card to the POS device, a third arm, cooperatively interfacing with the first arm, configured to carry the retrieved card to the POS device, an input device configured to interface with a screen and a pin-pad of the POS device to select an operation of transaction, and a controller communicatively coupled to each of the first arm, the second arm, the third arm, and the input device. The controller is configured to insert, via the second arm, the retrieve card into the POS device for testing, swipe, via the third arm, the retrieve card into the POS device for testing, and select, via the input device, a press button or a touch screen on the POS device to perform the operation of transaction.
In another exemplary embodiment, a method of testing a point-of-sale (POS) device comprising selecting a card from a plurality of cards, the card including a first transaction type and a second transaction type, determining a transaction mode for the selected card, wherein the transaction mode is one of a card insert-pay mechanism or a card swipe-pay mechanism, determining a failure of either the card insert-pay mechanism or the card swipe-pay mechanism, switching to the card swipe mechanism or the card swipe-pay mechanism that is operational when the failure occur, and selecting an operation on the POS device to complete a transaction.
Other features and advantages of the present invention will be apparent from the following more detailed description of the preferred embodiment which illustrates, by way of example, the principles of the invention.
It should be noted that these Figures are intended to illustrate the general characteristics of methods, structure and/or materials utilized in certain example embodiments and to supplement the written description provided below. These drawings are not, however, to scale and may not precisely reflect the precise structural or performance characteristics of any given embodiment, and should not be interpreted as defining or limiting the range of values or properties encompassed by example embodiments. For example, the relative thicknesses and positioning of layers, regions and/or structural elements may be reduced or exaggerated for clarity. The use of similar or identical reference numbers in the various drawings is intended to indicate the presence of a similar or identical element or feature.
A point-of-sale (POS) automation system, according to the present disclosure, is capable of testing individual systems, such as, a card insert-pay mechanism, a card slide mechanism, a pin-pad mechanism, and/or a touch screen mechanism (for a contactless card) in a modular manner. Using a production line approach with modular individual parts constituting an entire system, the present POS automation system can continually test the functionalities of other parts of the system without interrupting or causing complications with the other parts of the system. By contrast, in the prior solution, if one of the systems fails, the entire system fails causing delays. Accordingly, the present system is to develop a modular and versatile solution that allows an end user to implement a test plan as needed. This results in reduction of costs and time associated with testing POS devices and associated systems by automating testing the POS devices and associated systems.
In some implementations, the proposed system of the present disclosure can test the POS system remotely using, for example, application programming interface (API) calls over secure network, as well as the ability to create various test plans based on the individual parts of the system. Some features of this approach include easy error debugging, easy replacement of parts within each system, and the ability to add more features in the future.
In some implementations, the proposed system of the present disclosure can combine testing of multiple features of the POS system, for example, inserting of EMV chip cards, swiping cards with EMV chip and magnetic strip, and testing pin-pad and touch screen, with an opportunity to choose from a list of available electronic card types (i.e., credit cards, debit cards, stored value cards, gift cards, etc.).
Each of the plurality of cards 20 includes a first transaction type and a second transaction type that are implemented in the POS terminal 50. In one implementation, the first transaction type is an interface mode for a microprocessor chip (e.g., Europay, Mastercard and Visa (EMV) chip cards) and the second transaction type is an interface mode for a magnetic strip (e.g., magstrip cards). When the interface mode is the microprocessor chip, the card 20 can be inserted or “dipped” into a card reader 55 of the POS terminal 50. When the interface mode is the magnetic strip, the card 20 can be swiped (or slid) into a card reader 57 of the POS terminal 50. In some implementations, the card 20 can include a third transaction type that is an interface mode for a contactless scan including NFC-enabled digital wallets such as Apple Pay and Google Pay. In this implementation, the card 20 is tapped or hovered over an associated card reader of the POS terminal 50. Examples of the cards 20 may include, but not limited to, credit cards, debit cards, gift cards, loyalty cards, prepaid cards forex cards, or similar electronic cards.
The POS terminal 50 is a hardware device that enables the merchants to process payments to complete a customer purchase. In some implementations, the POS terminal 50 can be a credit card terminal, a debit card terminal, or an Electronic Funds Transfer at Point of Sale (EFTPOS) terminal. Other exemplary embodiments of the POS terminal can be implemented, such as, but not limited to, a smartphone with plugged-in card readers. The POS terminal 50 may be fixed (wired) payment terminal or a portable (wireless) payment terminal communicatively connected to a controller, which will be described in detail later.
The system 10 includes a plurality of arms (i.e., a first arm 70, a second arm 80, and a third arm 90) that is configured to engage (i.e., hold, grab) an associated card 20a and move the associated card 20a to interface with the POS terminal 50. In this context, the term “associated card” 20a is a card selected from the plurality of cards 20 that is to be tested. The first arm 70 is configured to retrieve the associated card 20a from the card stacking mechanism 100. The second arm 80 is configured to transport the associated card 20a to the POS terminal 50 via the card insert-pay mechanism 200. The third arm 90 is configured to transport the associated card 20a to the POS terminal 50 via the card swipe mechanism 300. Each of the arms 70, 80, 90 is communicatively connected to the controller that controls the movement and operation of the arms 70, 80, 90. In some implementations, the arms 70, 80, 90 are identical to each other having the same parts and design. It should be appreciated that the arms 70, 80, 90 can be of different types and devices as long as the functionalities or features (i.e., graspability and maneuverability) are achieved.
Referring to
It should be appreciated that arm 80 and/or 90 is similar to arm 70 which is configured to house similar parts and operate in similar manner.
Referring to
The elevator 115 is supported and controlled by a drive shaft member 121 which is operated by a motor (not shown) housed in a housing 131 (shown in
It should be appreciated that the card stack mechanism 100 is not limited by the shape and form as depicted in
Referring back to
In some implementations, as shown in
The second arm 80 is disposed on a housing member 222 that is movable along the plurality of tracks 212, 213, 214. The housing member 222 includes a motor (not shown) to operate a drive member 231 to move the housing member 222. In one implementation, the drive member 231 is a drive gear. In order to move the second arm 80 along the plurality of tracks 212, 213, 214, the motor rotates the drive gear 231 that can be meshed with a linear gear 233 (i.e., teeth) formed on a side portion of each of the plurality of the tracks 212, 213, 214. In other words, the drive gear 231 and linear gear 233 constitute a rack and pinion steering system for translational movement. Because the second arm 80 is disposed on the housing member 222 including the drive gear 231 that engages the linear gear 233, the second arm 80 moves along the plurality of tracks 212, 213, 214 in a corresponding manner. On an exterior surface thereof (i.e., opposite side of linear gear 233), the housing member 222 includes a pair of rollers 237 to help maintain the housing member 222 against the plurality of tracks 212, 213, 214 during translational movement, as shown in
In a similar manner, referring to
In some implementations, as shown in
In some implementations, the system 10 can be implemented to test for failure during the card insert-pay mechanism 200 and revert to the card swipe-pay mechanism 300 for further testing. For example, the system 10 can implement a testing suite to conduct a “fall-back” scenario where the associated card 20a is inserted and failed to read at least three times due to the chip error (or other failures). Once failure occurred, the system 10 will operate in the card swipe-pay mechanism 300 for further testing. This enables a system to test individual mechanisms in a modular approach, rather than disrupting the functionalities of the other systems. In addition, this may determine which individual features of the POS system has the error rather than completely shutting down the entire POS system causing delays.
In some implementations, the system 10 can also be implemented to test for failure during the card swipe-pay mechanism 300 and revert to the card insert-pay mechanism 200 for further testing. For example, the system 10 can implement a testing suite to conduct a “fall-back” scenario where the associated card 20a is swiped and failed to read at least three times due to the magnetic strip (or other failures). Once failure occurred, the system 10 will operate in the card insert-pay mechanism 200 for further testing.
In some implementations, the system 10 can further be implemented to test for failure during the card screen pin-pad mechanism 400 for further testing. For example, the system 10 can implement a testing suite to conduct a “fall-back” scenario where the associated card 20a fails during the card insert-pay mechanism 200 and the card swipe-pay mechanism due to failure of card reading. Once failure occurred, the system 10 will operate in the card screen pin-pad mechanism 400 for further testing.
Referring now to
Referring to
Referring to
In some implementations, the gantry system 410 can be equipped with a specific support (not shown) in order to hold an object to perform the test. For example, the support can be used to hold a contactless payment card over the POS terminal 50. In other examples, the support can be used to hold a smartphone or smartwatch to process a digital credit card, such as, for example, Apple Pay or Google Pay.
In some implementations, the POS system 10 may include a robotic arm (not shown) that performs functionalities of the first arm 70, the second arm 80, the third arm 90, the gantry system 410, and/or the input device 450. In this embodiment, each of the first arm 70, the second arm 80, the third arm 90, the gantry system 410, and/or the input device 450 can be replaced by the robotic arm. The robotic arm may alone perform all the functionalities of the first arm 70, the second arm 80, the third arm 90, the gantry system 410, and/or the input device 450, as described above. The controller may be in communication with the robotic arm and may control the robotic arm in order to perform various functionalities of aforementioned devices and systems.
The storage system 1260 may comprise any storage media, or group of storage media, readable by processor 1250, and capable of storing software and data. The storage system 1260 can include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. The storage system 1260 may store a set of processor instruction or algorithm, which when executed by the controller 1200 enables automatic testing of the POS system 10. Examples of the non-volatile memory may include, but are not limited to, a flash memory, a Read Only Memory (ROM), a Programmable ROM (PROM), Erasable PROM (EPROM), and Electrically EPROM (EEPROM) memory. Examples of volatile memory may include, but are not limited Dynamic Random Access Memory (DRAM) and Static Random-Access memory (SRAM).
The controller 1200 provides control instructions to each of the first arm 70, the second arm 80, and/or the third arm 90, that is executed by motor controllers 102a, 102b which controls a motor driving housing (i.e., 131, 222, 322) that holds the arms 70, 80, 90 for linear translational movements. The control instructions may be individually configured for each arm 70, 80, 90. That is, the control instructions may move the respective arms 70, 80, 90, based on a type of transaction, for example, a card insert-pay mechanism 200 or a card swipe-pay mechanism for testing. For example, the control instructions may instruct the second arm 80 or the third arm 90 to move on a two-axis system (i.e., X-Y coordinate), and/or the first arm 70 to move in a vertical manner (i.e., Z coordinate) to retrieve the appropriate card. In other implementations, the control instructions may further provide instructions to the motor controllers 102a, 102b to control the gripper 76 of each arm 70, 80, 90 in order to hold and release the cards 20 at appropriate times.
The control instructions may also provide instructions to a motor 104 that operates the elevator 115. By way of example, the controller 1200 provides control instructions to the elevator 115 to move the platform 117 that supports the first arm 70 in a vertical direction (i.e., up-and-down) such that the first arm 70 is configured to engage one of the plurality of cards 20 stored in either the first or second card stacks 111, 112.
The control instructions may further provide instructions to motors 105a, 105b, 105c that operate the gantry system 410. By way of example, the controller 1200 provides control instructions to the first block 471, via the motor 105a, that is slideable on the first rail 421 in a linear movement, i.e., the Y-direction, and/or the second block 473, via the motor 105b, that is slideable on the second rail 423 in a linear movement, i.e., the X-direction to position the input device 450 in a desired position to position above the keypad 51 or the display 52 of the POS terminal 50. In addition to controlling the first block 471 and the second block 47 for linear movements, the controller may instruct the input device 450, via a motor 105c, to engage (i.e., touch) the keys on the keypad 51 or the display 52 to activate or achieve a function. In other words, the motor 105c is enabled to operate the input device 450 in a vertical direction (i.e., Z-direction).
It should be appreciated that specifications of the controller are not limited to the embodiments described herein, but may vary depending on the requirements of the POS system
In some implementations, the controller may be uploaded with a test plan for each test mechanism, i.e., the card insert-pay mechanism 200 or the card swipe-pay mechanism 300. In other implementations, the test plan may include details of all the cards that are to be tested with the POS terminal 50, in a sequence.
In some implementations, the controller receives and transmits information/data collected by each of the first arm 70, the second arm 80, the third arm 90, the POS terminal 50, the gantry system 410, the elevator 115, and/or the input device 450 via a receiver/transmitter (not shown). The receiver/transmitter can be configured to be embedded in the first arm 70, the second arm 80, the third arm 90, the POS terminal 50, the gantry system 410, the elevator 115, and/or the input device 450 for communication. The receiver/transmitter may communicate by any wireless communication protocols or means, such as Bluetooth, Wi-Fi, RF transmission, GPS, or the like.
Referring now to
As illustrated herein, various example embodiments provide a system and method for testing the POS system. The system performs automated testing of the payment terminal within POS systems. As a result, no manual intervention is required in accessing cards and interfacing them with a POS terminal. The system provides a low-cost solution, which can be configured to be implemented to different test cases based on user requirements.
In some implementations, the testing can be performed remotely or on-site.
In some implementations, the point-of-sale (POS) automation system is a modular product that can be integrated into existing manual set-ups and is scalable for large testing environments.
In some implementations, each mechanism is independent from each other, yet the mechanism works in tandem to form an overall system in which each API call can be integrated into a test plan structured to the need of the user.
As described herein, the term “proximal” end relates to an end being closest to the user, and the term “distal” end relates to an end being farthest from the user.
The articles “a” and “an,” as used herein, mean one or more when applied to any feature in embodiments of the present disclosure described in the specification and claims. The use of “a” and “an” does not limit the meaning to a single feature unless such a limit is specifically stated. The article “the” preceding singular or plural nouns or noun phrases denotes a particular specified feature or particular specified features and may have a singular or plural connotation depending upon the context in which it is used. The adjective “any” means one, some, or all indiscriminately of whatever quantity.
“At least one,” as used herein, means one or more and thus includes individual components as well as mixtures/combinations.
The transitional terms “comprising”, “consisting essentially of” and “consisting of”, when used in the appended claims, in original and amended form, define the claim scope with respect to what unrecited additional claim elements or steps, if any, are excluded from the scope of the claim(s). The term “comprising” is intended to be inclusive or open-ended and does not exclude any additional, unrecited element, method, step or material. The term “consisting of” excludes any element, step or material other than those specified in the claim and, in the latter instance, impurities ordinarily associated with the specified material(s). The term “consisting essentially of” limits the scope of a claim to the specified elements, steps or material(s) and those that do not materially affect the basic and novel characteristic(s) of the claimed disclosure. All materials and methods described herein that embody the present disclosure can, in alternate embodiments, be more specifically defined by any of the transitional terms “comprising,” “consisting essentially of,” and “consisting of”
Although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
It will be understood that, if an element is referred to as being “connected” or “coupled” to another element, it can be directly connected, or coupled, to the other element or intervening elements may be present. In contrast, if an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.).
Spatially relative terms (e.g., “beneath,” “below,” “lower,” “above,” “upper” and the like) may be used herein for ease of description to describe one element or a relationship between a feature and another element or feature as illustrated in the figures. It will be understood that the spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if the device in the figures is turned over, elements described as “below” or “beneath” other elements or features would then be oriented “above” the other elements or features. Thus, for example, the term “below” can encompass both an orientation that is above, as well as, below. The device may be otherwise oriented (rotated 90 degrees or viewed or referenced at other orientations) and the spatially relative descriptors used herein should be interpreted accordingly.
Example embodiments are described herein with reference to cross-sectional illustrations that are schematic illustrations of idealized embodiments (and intermediate structures). As such, variations from the shapes of the illustrations as a result, for example, of manufacturing techniques and/or tolerances, may be expected. Thus, example embodiments should not be construed as limited to the particular shapes of regions illustrated herein but may include deviations in shapes that result, for example, from manufacturing.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
While the disclosure has been described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the essential scope thereof. While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
The application claims priority to U.S. provisional application 63/369,126, filed Jul. 22, 2022, entitled “Systems and Methods for Testing Point-of-Sale Devices”, of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63369126 | Jul 2022 | US |