Apparatus and method for executing on-line purchases

Disclosed is an apparatus for executing on-line purchases. The apparatus includes three different servers, a ticket server, a doorman server, and a checkout server. The purchase tasks are spread among the servers, and timed, so that the on-line purchase can be handled without server overload and customers losing their place in line. The ticket server issues a purchase ticket to a customer. The purchase ticket includes a predetermined time after which the customer can present the ticket to purchase the purchase item. On or after the predetermined time, the customer presents the purchase ticket to the doorman server. The doorman server validates the ticket and checks that the predetermined time has passed. Once the doorman server approves the purchase ticket, the doorman server passes the purchase ticket to the checkout server with a purchase approval indicator. The checkout server then executes the on-line purchase of the purchase item.

BACKGROUND OF THE INVENTION

Technical Field

This invention relates to retail purchases and specifically to an apparatus for executing on-line purchases.

State of the Art

When limited quantity items are sold over the internet (on-line), the computer servers that process the purchase checkout can become overloaded due to high demand. When a server runs out of processing power and depth to handle the number of concurrent users trying to search for the item, add it to their cart, and make the purchase, some users begin to get dropped from their internet session and have to begin the process over again. In some cases, a customer who had a place “in line” to purchase the item, will lose their place in line because of a server overload, and may possibly find they cannot purchase the item because the quantity has run out once they try again. This causes anger and frustration towards the retailer, and does not contribute to good customer relationships.

Accordingly, what is needed is a system for handling on-line purchases which puts users in line and executes their on-line purchases smoothly and without dropping customers or making them lose their place in line.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

As discussed above, embodiments of the present invention relate to retail purchases and specifically to an apparatus for executing on-line purchases. Disclosed is an apparatus that includes three different servers, a ticket server, a doorman server, and a checkout server. The tasks involved in the on-line purchase of a purchase item are spread among the three servers, and timed, so that the on-line purchase can be handled efficiently and accurately, and without customers losing their place in line. The ticket server issues a purchase ticket (usually an electronic ticket) to the customer. The purchase ticket includes a predetermined time after which the customer can present the ticket to purchase the purchase item. On or after the predetermined time indicated on the purchase ticket, the customer presents the purchase ticket to the doorman server. The doorman server validates the ticket and checks that the predetermined time has passed. Once the doorman server approves the purchase ticket, the doorman server passes the purchase ticket to the checkout server with a purchase approval indicator. The checkout server then executes the on-line purchase of the purchase item. The use of multiple servers to handle the on-line purchase and time the purchase allows multiple lower-size, lower-capability, and lower-cost servers to be used to handle preliminary purchase tasks. The financial transaction portion of the on-line sale is still handled by a checkout server. However, the checkout server will not be overloaded with requests because the ticket server will control the timing of the purchase requests being presented to the checkout server. And much of the preliminary data-capturing can be handled by the ticket server or the doorman server, leaving the financial transaction task to be performed in a timed and efficient manner. This apparatus and technique will largely eliminate purchase overload on the checkout server, creating a customer-friendly on-line purchase experience.

Some products are so sought after that when they go on sale, people get in line to purchase them. Concert tickets; desired toys and other products; fuel when supply is low. These products have all motivated customers to stand in line to get a chance at purchasing a product. On-line purchases are no different. When the latest children's toy or smart phone goes on sale, the servers that handle the on-line purchases get overloaded, and can begin to drop customers or, even worse, crash completely. Servers get overloaded with customers trying to search for the purchase item, add it to their cart, and complete the financial transaction as quickly as possible. Some customers make it most of the way through the process, only to get dropped by the server during the financial transaction step when the server gets overloaded. The customer then has no choice but to go to the ‘end of the line’ and start over again, which could mean they do not get to purchase the purchase item. Customers get frustrated and develop negative feelings towards the retailer when they lose their place “in line” to make an on-line purchase. The disclosed apparatus and method will largely eliminate the overload on servers executing the on-line purchases, allowing users to get a place in line, keep their place in line, and execute their on-line purchase in an orderly and controlled fashion. Much of the user load will be on ticket servers. The ticket servers do not process the financial transaction, which means the processing requirements on the ticket server are lower, and the cost and size of the ticket server are lower. The capacity for concurrent users can be much higher when the peripheral events are handled by a ticket server and a doorman server, and the financial transactions handled by the checkout server are timed to avoid overload. Purchase tickets are distributed over a period of time, allowing a greater number of customers to be able to have a chance at getting a purchase ticket. Purchase tickets can be used as a reward to customers for purchasing a different item from a retailer. Or, purchase tickets can include bonus items or discounts for a related item. Customers will be happier because it will be less stressful to obtain a ticket, and once a customer obtains a ticket, they are guaranteed to get the purchase item as long as they check in to the doorman server on or after the predetermined time. Retailers will be happier because they will be able to sell high-demand items in a controlled manner, without alienating customers.

FIG. 1andFIG. 2show a simplified illustration of an apparatus for executing on-line purchases110.FIG. 3shows a block diagram of apparatus for executing on-line purchases110. Apparatus110includes a ticket server112, a doorman server120, and a checkout server124. Ticket server112, doorman server120, and checkout server124are in network communication with each other via network140. Network140is a wired network in the embodiment shown inFIG. 1throughFIG. 3, but this is not meant to be limiting. In some embodiments, network140is a wireless network. Ticket server112handles the purchase requests from customers, gives customers purchase tickets if inventory is available, and schedules times for redemption of the purchase tickets and completion of the financial transaction. Doorman server120receives the purchase tickets from customers for redemption, determines if the purchase ticket is valid and if the predetermined redemption time has passed, and sends an approval to complete the financial transaction to checkout server124. Checkout server124completes the purchase transaction by executing the financial transaction and approving product delivery.

A customer116as shown inFIG. 1andFIG. 2wishes to purchase a purchase item118(FIG. 2). Customer116uses a computing device134to submit a purchase request132to ticket server112, as shown inFIG. 1. Customer116uses computing device134, which in this embodiment is a handheld mobile computing device. Computing device134can be any computing device that can be configured to log on to a website or otherwise submit a purchase request132to ticket server112, such as a desktop or laptop computer, a mobile computing device such as a tablet, smartphone, or wireless communicator, a server, or any other computing device. In this embodiment customer116submits purchase request132by logging on to a retailer website with computing device134and using the website of the retailer to search for purchase item118, put it in their shopping cart, and request checkout. Customer116does not usually know they are using ticket server112, they just see feedback and instructions for the purchase on the display of computing device134. Ticket server112is used by the retailer to receive purchase request132and execute the purchases of purchase item118. In some embodiments, ticket server112is a plurality of ticket servers112used by the retailer to receive purchase requests132. Because ticket server112is not going to handle the checkout process, ticket server112can be a lower speed and capacity server that would be required to handle financial transactions.

Computing device134is communicatively coupled to apparatus110. In this embodiment, computing device134is wirelessly coupled to apparatus110via the internet, but this is not mean to be limiting. Computing device134can be wired or wirelessly coupled to apparatus110in any way which will allow computing device134to send purchase request114from apparatus110, and receive and send purchase ticket114from apparatus110.

Once ticket server112receives purchase request132from customer116, as shown inFIG. 1andFIG. 3, ticket server112will check to make sure that there are still purchase items118in inventory to be sold. If there are still purchase items118in inventory, ticket server112creates a purchase ticket114to be sent to customer116through computing device134. Purchase ticket114is the ticket which verifies that customer116has secured the right to purchase one (or other specified number) of purchase items118. The term ‘ticket’ as used herein means any ticket, voucher, certificate, rain check, receipt, or other item which is given to customer116, in either electronic or paper form, and can be traded at a later time for purchase item118. If purchase items118are out of inventory, ticket server112will send a message to computing device134that purchase item118is no longer available, and the process will end.

If purchase item118is still in inventory, ticket server112will complete the process of creating and delivering purchase ticket114to customer116. Purchase ticket114is associated with a predetermined redemption time, which is the time on or after which customer116may present purchase ticket114in order to complete the purchase of purchase item118. Assigning a predetermined redemption time to each purchase ticket114issued by ticket server112provides a way to control the number of concurrent customers trying to buy purchase item118. Purchase ticket114is also associated with the quantity of purchase items118that are associated with purchase request132(whatever quantity is requested and/or allowed according to purchase request132). Once customer116has their purchase ticket114, there is no reason to finish the purchase in a hurry, which would overload the checkout server. Customer116is assured of receiving their product118as long as they present their purchase ticket114on or after the predetermined redemption time.

Ticket server112determines the predetermined redemption time to be associated with purchase ticket114by determining a time after which ticket server112should be completed with processing most or all of the purchase tickets issued prior to purchase ticket114. Ticket server112schedules the predetermined redemption times for each purchase ticket so that redemptions are spread out over hours or days, whatever time is necessary to ensure that checkout server124does not become overloaded.

Ticket server112verifies or creates an account for customer116. The customer account can include customer information such as name, address, and the method of payment that will be used for the purchase. Ticket server112collects as much information as it can, so that checkout server124does not need to collect this information.

Ticket server112delivers purchase ticket114to computing device134for use by customer116, as shown inFIG. 1andFIG. 3. Purchase ticket114is often an electronic ticket, but can be a paper ticket or any other form of ticket used now or in the future for future redemption for a product. Purchase ticket114is associated with a predetermined redemption time, and a number of purchase items118, in this embodiment one purchase item118. Customer116can complete the purchase of purchase item118by presenting purchase ticket114to doorman server120anytime on or after the predetermined redemption time associated with purchase ticket114, and before the time indicated by the retailer ending the sale of purchase item118. In some embodiments, ticket server118delivers a reward coupon130with purchase ticket114. Reward coupon130can be any type of coupon for a discount or free item, for example, or any type of reward that the retailer may wish to give out.

FIG. 2andFIG. 3show the activity that takes place related to redemption of purchase ticket114. Redemption begins by customer116presenting purchase ticket114to doorman server120, using computing device134. It is to be understood that, just as with ticket server112, customer116does not usually know they are presenting purchase ticket114to doorman server120. Customer116is merely following the retailer's instructions to use a redemption website or whatever other process the retailer has put in place to redeem purchase ticket114. Once purchase ticket114is received by apparatus110from computing device134, using whatever process specified by the retailer, the retailer sends purchase ticket114to doorman server120to begin the redemption process. In some embodiments, doorman server120is a plurality of doorman servers120.

Doorman server120is used to validate and approve the redemption of ticket114for purchase item118. Doorman server120is in network communication with ticket server112and checkout server124, using network140in this embodiment. Doorman server120first validates purchase ticket114, then issues a purchase approval indicator122to checkout server124. Doorman server120validates purchase ticket114by checking the time, and checking with ticket server112to validate that purchase ticket114is being presented by customer116. Doorman server120sends a ticket validation request128to ticket server112in response to doorman server120receiving purchase ticket114from computing device134. Ticket server112determines whether purchase ticket114is valid, by cross-checking customer information, for example, or any other customer validation process. Ticket server112is validating purchase ticket114so that fraudulent purchase tickets cannot be presented to doorman server120. Once ticket server112has determined that purchase ticket114is a valid purchase ticket, ticket server112sends a ticket validation indicator126to doorman server120. Ticket server112sends ticket validation indicator126to doorman server120in response to ticket server112receiving ticket validation request128from doorman server120, and ticket server112determining that purchase ticket114is valid.

Doorman server120also checks that the predetermined redemption time associated with purchase ticket114has passed. If purchase ticket114is presented to doorman server120before the predetermined redemption time has passed, then doorman server120sends a message to computing device134to present purchase ticket114at a later time.

Once doorman server120has checked that the predetermined redemption time has passed, and received ticket validation indicator126from ticket server112, doorman server120issues purchase approval indicator122to checkout server124, and passes the transaction activity to checkout server124. Customer116is usually not aware of the transfer of tasks and information between ticket sever112, doorman server120, and checkout server124. Doorman server120issues purchase approval indicator122in response to purchase ticket114being presented to doorman server120on or after the predetermined redemption time, and doorman server120receiving ticket validation indicator126from ticket server112.

Checkout server124executes the online purchase of purchase item118for customer116in response to checkout server124receiving purchase approval indicator122from doorman server120. Executing the online purchase of purchase item118can include a number of different items, but in this embodiment, executing the online purchase of purchase item118includes completing the financial transaction for the purchase of purchase item118, meaning checkout server124collects an on-line payment for the purchase of purchase item114. And, in this embodiment, checkout server124sends a purchase payment complete indicator136to a fulfillment center138.

Completing the financial transaction for the purchase of purchase item118is often the most processor-intensive part of the purchase process, and the step that overloads servers most often. But, because the preliminary data-gathering and validation was completed by ticket server112and doorman server120, and because the presentation of purchase ticket114was timed by ticket server112, checkout server124is not overloaded, and is able to complete the scheduled transactions accurately and methodically. Checkout server124collects on-line payment for purchase item118from customer116, and sends purchase payment complete indicator136to fulfilment center138.

In this embodiment, fulfilment center138ships purchase item118to customer116in response to receiving purchase payment complete indictor136from checkout server124. It is to be understood that the delivery of purchase item118can take many forms, and the shipment of purchase item118as shown in this embodiment is just an example. In some embodiments, purchase item118is a digitally stored or electronic item, and can be delivered to computing device134by checkout server124. In some embodiments, checkout server124passes delivery of purchase item118to another server or computing device. In some embodiments, customer116may have arranged for pickup of purchase item118at a brick and mortar store. There are many ways for purchase item118to be delivered. Once checkout server124processes the payment for purchase item124and issues purchase payment complete indicator136, delivery can take any form necessary according to the specific purchase item118to be delivered and the delivery instructions from customer116.

Ticket server112and doorman server120can be smaller, lower processing speed and capability servers than checkout server124. Ticket server112is handling much of the concurrent users trying to find and schedule a purchase of purchase item118. But ticket server112does not have to handle the financial transaction. Often, one or more smaller size, lower cost, and lower processing speed ticket server112is able to handle the tasks required of ticket server112. In this embodiment, ticket server112is a commercial off-the-shelf server with a size smaller than the size of doorman server120. Doorman server120in this embodiment is also a commercial, off-the-shelf server with a size smaller than checkout server124. Checkout server124in this embodiment is a custom built rack-mount server that is larger than both doorman server120and ticket server112. Apparatus for executing on-line purchases110can have an overall size and cost lower than a system that uses multiple high-performance servers to handle the purchase tasks from beginning to end. In some embodiments, checkout server124is a plurality of checkout servers124.

It is also to be understood that ticket server112, doorman server120and checkout server124may communicate other forms and types of data between themselves, using network140, for example, besides what is described and shown in the figures. For example, in some embodiments, purchase ticket114is transferred between ticket server112, doorman server120, and checkout server124. In some embodiments, other data is transferred between these servers.

In some embodiments, purchase ticket114is provided as a reward or gift for purchasing another item. For example, when a first product is purchased, customer116can be issued purchase ticket114for purchase of purchase item118. A retailer can use purchase ticket114as an incentive in many different ways.

Apparatus for executing online purchases110can handle on-line purchases of high-demand items without getting bogged down and without customers losing their place in line or getting dropped from the process due to server overload. Ticket server112and doorman server120handle a portion of the tasks. Ticket server112issues a purchase ticket114to customer116with a predetermined redemption time after which purchase ticket114may be presented for redemption. Ticket server112schedules the predetermined redemption times such that checkout server124does not get overloaded with concurrent users wishing to process the financial transaction. Checkout server124processes the financial transaction, but does not have to handle a rush of customers searching for purchase item118and putting purchase item118in their shopping basket. Every customer in contact with checkout server124has been assured of obtaining a purchase item and is not competing for a place in line. Apparatus110executes on-line purchases quickly and efficiently, minimizes server overload, dropping of customers, and customers losing their place in line. Apparatus110can be lower cost and lower size than a usual bank of on-line purchase servers because ticket servers112and doorman servers120can be lower size and lower speed than checkout servers124. Apparatus110uses fewer custom, high-speed and high-performance checkout servers than a usual bank of on-line purchase servers.

FIG. 4illustrates a method200of handling on-line purchase requests. Method200includes an act210of receiving, with a ticket server, a purchase request for an on-line purchase of an item. The purchase request is received from a customer. In some embodiments, the purchase request is received by a computing device controlled by or operated by the customer. Method200also includes an act220of determining a redemption time after which a checkout server will be available to process the purchase of the item. The checkout server is a different server from the ticket server. The ticket server and the checkout server are in network communication. And method200includes an act230of issuing a purchase ticket to the customer for redemption on-line at or after the redemption time.

Method200can include many other acts. In some embodiments, method200includes an act of approving the purchase ticket with a doorman server, where the doorman server is in network communication with the ticket server. The doorman server and the ticket server are different servers. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending, with the doorman server, a ticket validation request via network to the ticket server. In some embodiments, approving the purchase ticket with a doorman server includes an act of determining, with the ticket server, that the purchase ticket is valid. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending, with the ticket server, a ticket validation indicator via network to the doorman server. In some embodiments, approving the purchase ticket with a doorman server includes an act of determining, with the doorman server, that the redemption time has arrived. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending a purchase approval indicator via network connection from the doorman server to the checkout server.

In some embodiments, method200includes an act of executing the on-line purchase with the checkout server in response to the checkout server receiving, via network communication, a purchase approval indicator from the doorman server. In some embodiments, method200includes an act of issuing a reward coupon with the purchase ticket.

FIG. 5illustrates a method300of issuing a purchase reward. Method300includes an act310of receiving, with a ticket server, an indication that a customer has purchased a first item. Method300of issuing a purchase reward also includes an act320of issuing to the customer, with the ticket server, a purchase ticket for a second item, where the purchase ticket is associated with a redemption time.

Method300can include many other acts. In some embodiments, method300includes an act of approving the purchase ticket with a doorman server, where the doorman server is in network communication with the ticket server. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending, with the doorman server, a ticket validation request via network to the ticket server. In some embodiments, approving the purchase ticket with a doorman server includes an act of determining, with the ticket server, that the purchase ticket is valid. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending, with the ticket server, a ticket validation indicator via network to the doorman server. In some embodiments, approving the purchase ticket with a doorman server includes an act of determining, with the doorman server, that the redemption time has arrived. In some embodiments, approving the purchase ticket with a doorman server includes an act of sending a purchase approval indicator via network connection from the doorman server to a checkout server, where the checkout server is a different server than the ticket server and the doorman server, and is in network communication with both. In some embodiments, method300includes an act of executing the purchase of the second item, with the checkout server, in response to the checkout server receiving the purchase approval indication, via network communication, from the doorman server.

In some embodiments, act320of method300includes an act of determining a redemption time after which the checkout server will be available to execute the purchase of the second item. In some embodiments, act320of method300includes an act of issuing the purchase ticket to the customer, wherein the purchase ticket may be redeemed for the second item on or after the redemption time.