发明名称 Message dispatcher for payment system
摘要 A payment reader includes a contactless interface for communicating with a contactless device. The payment reader has a processor that executes instructions stored in memory, and the instructions include instructions for a plurality of firmware modules including a message dispatcher module and a plurality of functional modules. The functional modules generate messages and the message dispatcher module stores the messages in a queued data structure such as a stack or a queue. The messages are provided to the functional modules from the queued data structure. Some of the messages are timed messages that are returned to the queued data structure.
申请公布号 US9330383(B1) 申请公布日期 2016.05.03
申请号 US201514863381 申请日期 2015.09.23
申请人 Square, Inc. 发明人 Vadera Kshitiz
分类号 H04B5/00;H04B1/00;G06Q20/00;G06Q20/20;G06Q20/32;G06Q20/38 主分类号 H04B5/00
代理机构 Maynard Cooper & Gale, P.C. 代理人 Maynard Cooper & Gale, P.C. ;Van Hoven Joshua
主权项 1. A payment reader for processing transactions between a contactless device or a chip card and a point-of-sale application running on a seller mobile device, the payment reader comprising: a contactless interface configured to communicate with the contactless device; a contact interface configured to receive the chip card and communicate with the chip card; a wireless communication interface configured to communicate with the seller mobile device; a memory comprising a plurality of firmware modules, wherein the plurality of firmware modules comprise a message dispatcher module and a plurality of functional modules, wherein the functional modules comprise a contactless module associated with the contactless interface, a contact module associated with the contact interface, a communication module associated with the wireless communication interface, a transaction processing module, and a cryptography module; and a processor configured to execute instructions in the message dispatcher module and the plurality of functional modules, wherein the processor is configured to generate a queue for messages based on instructions associated with the message dispatcher module, wherein the processor is configured to execute functional instructions associated with one or more of the functional modules and provide one or more messages to the queue based on the executed functional instructions, and wherein the processor is configured to: receive a request to receive payment information from the point-of-sale application via the wireless communication interface;generate a first message based on the request to receive payment information, wherein the first message includes a request to receive payment information from one or more of the contactless interface or the contact interface;store the first message in the queue based on instructions of the message dispatcher module, wherein the first message is a timed message that includes a timing value;receive one or more additional messages based on instructions of one or more of the functional modules, wherein the one or more additional messages are standard messages;store the one or more additional messages in the queue based on the instructions of the message dispatcher module;provide the first message to one or more of the contactless module or the contact module based on the instructions of the message dispatcher module and the timing value;return the first message to the queue based on the timing message, a flag associated with the first message, and the instructions of the message dispatcher module, wherein the timing message and the flag associated with the first message indicate that processing of the first message should continue;provide the one or more additional messages to one or more of the functional modules based on the position of each of the one or more additional messages in the queue and the instructions of the message dispatcher module;provide the returned first message to one or more of the contactless module or the contact module based on the position of the returned first message in the queue, the timing value, and the instructions of the message dispatcher module; andremove the returned first message from the queue based the timed message or the flag associated with the first message, wherein one or more of the timed message and the flag associated with the first message indicate that processing of the returned first message should end.
地址 San Francisco CA US