An Apple patent (number 20110218870) for a communication method for a roaming point-of-sale system has appeared at the US Patent & Trademark Office.
It would include methods of communicating between the system components. A handheld computing device sends messages to a scanning device, which messages cause the scanning device to scan and return barcode data from a barcode scanner and payment card information from a magnetic strip reader. The messages include a header and a message, and the header designates the command given and the size of the message, among other useful information. The inventors are Khawaja Shams and Michael Maysmith.
Here's Apple's background and summary of the invention: "In a store, there are often many sales associates out 'on the floor' meeting with customers, answering questions, etc. Eventually, though, when a customer decides to make a purchase the customer takes the item to a central point-of-sale location, where there is a cash register and barcode scanner which are linked to a pricing database, a credit card reader, etc.
"While this arrangement is generally sufficient, it is not always so. For example, during busy periods, this centralized arrangement can cause 'bottlenecks' and unpleasant lines at the checkout counter. If a line is too long, a customer may decide make his to purchase elsewhere or even not at all. Alternatively, if during regular, non-busy periods, the time it takes for the customer to walk from the display to the point-of-sale location gives the customer an opportunity to decide not to make the purchase, and this may be particular true with respect to non-essential and/or impulse purchases.
"To overcome such potential drawbacks of a centralized point-of-sale arrangement, a point-of-sale system is disclosed that includes a handheld computing device and a portable scanner. The handheld computing device can be used to complete a sales transaction based at least on data received from the portable scanner and data input into the handheld computing device. The handheld computing device can be, for example, a mobile phone, such as the iPhone, a smartphone, or a portable media player, such as an iPod touch. Both the iPhone and iPod touch are sold by Apple, Inc. of Cupertino, Calif.
"The portable scanning device can be a barcode scanner configured to operate with the handheld computing device. In some embodiments, the portable scanning device is configured to receive the handheld computing device in a dock to facilitate communication therewith. In some embodiments, the portable scanner also includes a magnetic strip reader.
"In one method of operation, the handheld computing device can execute a sales application, which has a graphical user interface that guides a sales associate through a sales transaction. For example, the sales application can instruct the sales associate to scan a barcode on an item to be purchased.
"In some embodiments, the sales application can require an input from an input device, e.g. a button or touchscreen, before sending a barcode-scan command to the scanning device. Upon receiving the barcode-scan command, the scanning device can issue a response message indicating that it has received the command. The scanning device can initiate its barcode-scan device and read and decode any scanned barcode(s). The scanned barcode(s) information can be formatted into a message having a header and appended message to report the decoded barcode data back to the handheld computing device.
"Upon receiving the decoded barcode data, the scanning device can process the decoded barcode data according to the instruction provided by the sales application and submit the decoded barcode data into a sales form that is part of the sales application. In most cases the decoded barcode data corresponds to a product code, which can be used to retrieve product information from an in-store server. The product information can include any information useful, or needed to complete a sales transaction, e.g. price information, name of the product, etc. The sales form can be used for printing a receipt, or keeping a record of the transaction.
"In some embodiments, either the sales program or the user (by issuing a command using an input device) can cause the sales program to send a command to the scanning device to scan payment information. In a manner similar to the barcode scan command sent from the handheld computing device, the scanning device can return either a confirmation message, which confirms to the handheld computing device that the command was received, or it can return the data immediately. The scanning device receives the payment information data by initiating reading by a magnetic strip reader to read payment card information. The payment card data is sent back to the handheld computing device and the sales application processes the payment card information. The processed information can be input into the sales form.
"The sales form including the payment card information can be sent to an in-store server to record the transaction. The in-store server can also process the payment information in conjunction with a financial clearinghouse to approve the transaction. In some embodiments, the handheld computing device can communicate directly with the clearinghouse to approve the transaction. The information regarding the transaction, which includes at least the payment card information, but can also include other information associated with the transaction from the payment clearinghouse can be input into the sales form as transaction information and sent to the in-store server.
"Additionally, a format for communications between a scanning device and a handheld computing is disclosed. Electronic messages sent between the scanning device and the handheld computing device can include headers with data fields containing data identifying a device, data designating a command, data denoting a message size, and data identifying a message identification number along with an appended message. The appended message can include data associated with the command designated by header data, and be of the size denoted by the header data.
"A variety of messages used in communication between a handheld computing device and a scanning device are disclosed. The messages include at least configuration messages, status messages, and command messages."
-- Dennis Sellers