US20050080510A1 - Determining the availability of purchasable items in a network environment - Google Patents
Determining the availability of purchasable items in a network environment Download PDFInfo
- Publication number
- US20050080510A1 US20050080510A1 US11/003,876 US387604A US2005080510A1 US 20050080510 A1 US20050080510 A1 US 20050080510A1 US 387604 A US387604 A US 387604A US 2005080510 A1 US2005080510 A1 US 2005080510A1
- Authority
- US
- United States
- Prior art keywords
- item
- refund
- vending machine
- entry
- customer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0639—Item locations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F5/00—Coin-actuated mechanisms; Interlocks
- G07F5/18—Coin-actuated mechanisms; Interlocks specially adapted for controlling several coin-freed apparatus from one place
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/001—Interfacing with vending machines using mobile or wearable devices
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/002—Vending machines being part of a centrally controlled network of vending machines
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/02—Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus
- G07F9/026—Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus for alarm, monitoring and auditing in vending machines or means for indication, e.g. when empty
Definitions
- Embodiments of the present invention relate generally to vending machines. More particularly, embodiments relate to a method and apparatus for communicating inventory information between vending machines within a network.
- vending machines are well known. Conventionally, vending machines have facilitated storage and dispensation of items such as cigarettes, postcards, drinks, candy, frozen deserts, snacks, video tapes, toys and the like. Such items are periodically loaded into a vending machine and then dispensed in response to a purchase order received from a user interfacing with a selection panel of the machine.
- vending machines are located in factories, office buildings, bowling alleys and other high traffic locations. Vending machine operators have found that strategic location of vending machines in high traffic areas regularly frequented by the same customers, promote habitual sales and brand loyalty. As a result, vending machines have proved successful automated devices for sales of goods to customers.
- vending machine management software has been implemented.
- One such software product is “Windows for Vending PRO with Inventory” produced by VendMaster. This product enables a vending machine operator to report and analyze various historical sales data. VendMaster's product is intended to enhance a vending machine operator's ability to identify high-demand inventory, determine times to stock the machine, and calculate suggested prices.
- Another problem with conventional vending machines is that customers are often improperly charged. For example, in some cases items in a vending machine have been incorrectly loaded. Thus, a customer requesting Coca-Cola may instead receive Dr Pepper. In other cases, the item may become lodged in the dispensing slot so as to be irretrievable by the customer. In still other cases, the customer may receive a food item which has passed its expiration date. In each of these cases, the customer has already made a payment to the vending machine and is left with no immediate means for refund. If a refund is desired, the customer is forced to pursue tedious steps of contacting the vending machine owner and follow the refund policy implemented by the owner. In the end, the efforts expended by the customer far outweigh the value of receiving a refund.
- Embodiments of the present invention generally provide methods, systems and articles of manufacture that facilitate solutions in the area of vending machine technology.
- a method of locating an item in a network of vending machines comprises receiving, at a vending machine of the network of vending machines, a purchase order for the item and transmitting, via a network connection, a request for the item at another vending machine in the network of vending machines. A response indicative of whether the item is available at at least one other vending machine is then received at the vending machine.
- a vending machine for dispensing items comprises a command input interface for receiving user commands, a network interface configured to support a network connection with a network of vending machines, a memory and a processor connected to the command input interface, the network interface and the memory.
- the processor is configured to process purchase orders for items and issue a request via the network interface to determine whether an item requested by a user is available at another vending machine in the network of vending machines.
- Yet another embodiment provides a signal bearing medium containing a program which, when executed by a processor, performs a method of locating an item in a network of vending machines.
- the method comprises receiving, at a vending machine of the network of vending machines, a purchase order for the item and transmitting, via a network connection, a request for the item at another vending machine in the network of vending machines.
- a response indicative of whether the item is available at at least one other vending machine is then received at the vending machine.
- Still another embodiment provides vending machines configured to provide refunds.
- Refunds are selectively provided under controlled conditions.
- a consumer may request a refund in cases where the consumer was improperly charged for goods or services that were not provided.
- a determination of whether to issue a refund may be made according to a refund history for a particular consumer. For example, if the consumer has requested more than a threshold number of refunds within a specified time period then subsequent refund requests may be denied.
- FIG. 1 is a diagram of one embodiment of a vending machine network.
- FIG. 2 is a diagram of another embodiment of a vending machine network.
- FIG. 3 is one embodiment of a vending machine configured to locate an item in a network of vending machines.
- FIG. 4 is a data structure exemplifying an inventory file.
- FIG. 5 is a data structure exemplifying a reply list.
- FIG. 6 is a flowchart illustrating the operation of a vending machine configured to process customer purchase orders as well as requests from other networked vending machines.
- FIG. 7 is a diagram of a networked vending machine environment.
- FIG. 8 is a flowchart illustrating the operation of a vending machine responding to a request received from a remotely located networked vending machine.
- FIG. 9 is a diagram of a reservation system for reserving items at a vending.
- FIG. 10 is a data structure illustrating a location table.
- FIG. 11 is a data structure illustrating a product table.
- FIG. 12 is a data structure illustrating a reserved item table.
- FIG. 13 is a data structure illustrating a missed sales table.
- FIG. 14 is a data structure illustrating a free money table.
- FIG. 15 is a data structure illustrating a non-refundable cost table.
- FIG. 16 is a graphical user interface configured to receive reservation information.
- FIG. 17 is a flowchart illustrating a method for handling reservation requests.
- FIG. 18 is a flowchart illustrating a method for purchasing items at a vending machine.
- FIG. 19 is a flowchart illustrating a method for processing data structures containing reservation information in a vending machine environment.
- FIG. 20 is one embodiment of a vending machine configured to refund a customer for a corrupted sale.
- FIG. 21 is a data structure illustrating a refund file.
- FIG. 22 is a flowchart illustrating a method for processing a refund request.
- a vending machine comprises a network interface configured to transmit a location request for a selected item to a network of vending machines, and to receive a response indicative of whether the selected item is available at another vending machine in the network of vending machines.
- a plurality of vending machines are nodes of a network. Each node is configured to send, receive and process signals carrying inventory, pricing, reservation and/or refund information. In particular, a first signal is sent to one or more nodes requesting inventory/price information from other nodes. Those nodes carrying the product may reply with a second signal. In this manner, the location of vending machines carrying one or more items specified by a customer may be determined.
- vending machine items may be reserved from a remote location.
- a vending machine is configured to receive a reservation request for a specified item.
- the request may be issued from one of a plurality of client devices (e.g., wireless telephones, desktop computers and the like) or from a reservation control system.
- vending machines may be configured to provide refunds.
- Refunds are selectively provided under controlled conditions.
- a consumer may request a refund in cases where the consumer was improperly charged for goods or services that were not provided.
- One embodiment of the invention is implemented as a program product for use with a computer system such as, for example, the vending network environment 100 shown in FIG. 1 and described below.
- the program(s) of the program product defines functions of the embodiments (including the methods described below with reference to FIGS. 6, 8 , 17 - 19 and 22 ) and can be contained on a variety of signal/bearing media.
- Illustrative signal/bearing media include, but are not limited to: (i) information permanently stored on non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive); (ii) alterable information stored on writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive); and (iii) information conveyed to a computer by a communications medium, such as through a computer or telephone network, including wireless communications. The latter embodiment specifically includes information downloaded from the Internet and other networks.
- Such signal-bearing media when carrying computer-readable instructions that direct the functions of the present invention, represent embodiments of the present invention.
- routines executed to implement the embodiments of the invention may be referred to herein as a “program”.
- the computer program typically is comprised of a multitude of instructions that will be translated by the native computer into a machine-readable format and hence executable instructions.
- programs are comprised of variables and data structures that either reside locally to the program or are found in memory or on storage devices.
- various programs described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature.
- FIG. 1 shows a vending network environment 100 comprising a plurality of vending machines 104 1 , 104 2 , . . . 104 N connected to a network 103 .
- the vending machines 104 may be configured to dispense any variety of goods such as food, drinks, tickets, toys, maps, stamps, etc.
- each vending machine 104 includes a magnetic credit/debit card reader 114 , a cash acceptor interface 116 , a dispensing slot 112 , an input interface 110 , and a display 108 .
- the input interface 110 is a keypad. However, any device configured to allow a customer to input information into the vending machine 104 may be used.
- the input interface 110 may be configured to receive voice commands from a customer.
- the dispensing slot 112 is primarily provided to dispense the purchasable goods contained within the vending machine 104 .
- the dispensing slot 112 may also output printed material containing, for example, inventory information, pricing information and vending machine location information.
- the network 103 may include wire, radio, fiber optic cable, or any other device or method adapted to support a network connection. As such, the network 103 facilitates communication between the vending machines 104 .
- each vending machine 104 is a node connected to the network 103 and is assigned a unique address. The unique addresses allow each of the vending machines 104 to identify one another and exchange information.
- FIG. 2 shows another embodiment of a network environment 200 in which the vending machines 104 are connected to a control system 202 .
- the control system 202 is any computerized device configured to receive/transmit control signals from/to the vending machines 104 .
- the control system 202 is implemented as a controller 204 and a memory/storage device 206 .
- the network environment 200 may in fact include multiple controllers.
- the memory device 206 provides a repository for information such as inventory, prices, vending machine locations and the like.
- the vending machines 104 are configured to transmit item requests and responses between one another.
- an item request may be transmitted in response to a purchase order made by a customer at one vending machine 104 that cannot satisfy the order.
- the failure to satisfy the purchase order may be due to, for example, a maintenance issue or the requested item being out of stock.
- the vending machine 104 at which the purchase order was made (the “requesting machine”) transmits a request to fill the purchase order to the other vending machines 104 via the network 103 .
- One or more vending machines capable of satisfying the order (the “responding machines”) may respond.
- the requesting machine may then notify the customer of the replies received from the responding machines.
- the customer is provided with location information pertaining to the responding machines having the requested item in stock.
- the vending machines 104 are configured for direct communication between one another (i.e., a peer-to-peer architecture).
- the network environment 200 of FIG. 2 illustrates a centralized implementation in which the control system 202 manages information exchange between the vending machines 104 . It is understood, however, that the embodiments shown in FIG. 1 and FIG. 2 are merely illustrative. The particular configuration by which information is exchanged between vending machines is not limiting of the present invention, and persons skilled in the art will recognize other embodiments.
- FIG. 3 shows one embodiment of a vending machine 300 which may be used to advantage as a vending machine 104 of the network environments 100 and 200 described above with reference to FIGS. 1 and 2 , respectively.
- the vending machine is particularly representative of a vending machine 104 in the network environment 100 of FIG. 1 .
- some or all of the programs and data structures described with reference to FIG. 3 may reside on the control system 202 .
- persons skilled in the art will readily appreciate such differences in the implementation and operation between the networks 100 and 200 . Accordingly, a more detailed description of network 200 is not necessary.
- the vending machine 300 includes a central processing unit (CPU) 302 , a memory 304 and a storage 306 , each connected by a bus 308 .
- the vending machine 300 may also include an interface 316 for external input/output devices.
- the CPU 302 is configured with an inventory monitor program 310 , which may be loaded from memory 304 for execution.
- the memory 304 contains data structures which may be utilized by the inventory monitor program 310 during execution.
- the memory 304 contains a reply list 312 and an inventory file 314 .
- the inventory file 314 comprises a plurality of records 402 containing item and price information.
- a record 402 is provided for each item carried by the vending machine 300 . Accordingly, each record 402 includes an item entry 404 .
- a default price for each item is contained in a price entry 406 .
- each record 402 also includes a maximum price entry 408 .
- An availability entry 410 indicates the number of items in stock at the vending machine. Entries 412 indicate that each record 402 may comprise additional information.
- the reply list 312 includes a plurality of records 502 each comprising a plurality of entries.
- each record 502 contains information received from a remotely located vending machine 300 (i.e., one of the other networked vending machines).
- each record 502 includes an identification (“ID”) entry 504 , a price entry 506 , a location entry 508 and a directions entry 510 .
- Entries 512 indicate that each record 502 may include additional information.
- the ID entry 504 is configured to contain information uniquely identifying a particular vending machine 300 in a network of vending machines.
- the machine designated by the information contained in a particular ID entry 504 may be referred to as a “responding machine”, because the ID information is typically received in response to a request from a requesting machine.
- the price entry 506 contains a price for an item carried by the responding machine identified by the information contained in ID entry 504 in the same record 502 .
- the location entry 508 specifies the location of the responding machine for the same record 502 .
- the direction entry 510 contains directions to the location (per the information in the location entry 508 ) of responding machine for the same record 502 .
- the directions may be in the form of a map and/or written directions.
- a customer may dictate the level of detail provided by the directions, e.g., by requesting alternate routes and specifying an origination point (in one embodiment, the default origination point is the vending machine with which the customer is currently interacting).
- a customer is given the option of downloading the directions onto, for example, a personal digital assistant (PDA).
- PDA personal digital assistant
- the vending machine with which the customer is interacting may provide the necessary hardware interface (e.g., interface 316 ) and supporting software to support the download.
- the inventory monitor program 310 processes customer purchase orders for vending machine items.
- the item availability and price is indicated by the inventory file 314 . If an item is available at a machine being interacted with a customer, the purchase order is processed in a normal manner and the item is dispensed accordingly. If the item is not available, steps are taken to locate the item at another machine. In addition, the price of the item may be adjusted.
- FIG. 6 shows a method 600 for operating a vending machine 104 / 300 in a network environment comprising a plurality of vending machines.
- the method 600 may be considered to represent the operation within either of the network environments 100 and 200 , described above with reference to FIGS. 1 and 2 , respectively.
- the vending machine executing the method 600 is configured to either process requests from a customer or from another machine, e.g. another vending machine or the control system 202 shown in FIG. 2 .
- a vending machine processing customer requests will be referred to as a “local” machine while a vending machine processing a request from another machine will be referred to as a “remote” machine.
- Method 600 is entered at step 602 which may represent a vending machine 104 / 300 being powered up and brought on-line with a network connection to a plurality of other vending machines. Method 600 then proceeds to step 604 to receive an event.
- step 606 the method 600 queries whether the event is an incoming request from another vending machine. If so, the request is processed at step 608 . The method 600 then returns to step 604 to wait for another event. If step 606 is answered negatively, the method 600 proceeds to step 610 .
- the method 600 queries whether the event is an item purchase order from a customer interacting with the local vending machine. If not, the event is handled at step 612 and the method 600 then returns to step 604 .
- the processing at step 612 may include, for example, issuing a service/maintenance request, updating item pricing information and the like. If step 610 is answered affirmatively, the method 600 proceeds to step 614 to determine the item availability at the local machine. To this end, the local machine references the availability entry 410 for the appropriate item (indicated by the item entry 404 ) in the inventory file 314 . If the item is available at the local machine, the purchase order is processed at step 612 in a conventional manner. Method 600 then returns to step 604 .
- a request for the item is transmitted to one or more remote vending machines at step 616 .
- the request is broadcast to all remote vending machines connected to a common local area network (LAN).
- the request is provided to selected vending machines connected to a LAN.
- the customer may be given the option to select one or more remote vending machines according to his or her preference.
- the customer may provide a proximity parameter to restrict recipients of the request. For example, the customer may specify that only those remote vending machines within a 50 meter radius receive the request.
- the method 600 initiates a timer.
- the timer defines some period of time during which replies received from remote machines are accepted by the local machine.
- the method 600 prepares to receive replies. Each reply received before the expiration of the timer is added to the reply list 312 , as indicated by step 622 .
- the method 600 proceeds to step 624 and queries whether the reply list 312 contains any entries (i.e., replies from remote machines). If so, the entries are processed at step 626 .
- the manner in which entries are processed may be determined, in part, by customer specified options. For example, if the customer specified a proximity parameter, only the requests received from remote machines satisfying that parameter are considered. Alternatively, the entries may be processed according to default parameters. For example, the local machine may be configured to select the closest remote machine having the item.
- the reply list entries are processed at step 626 , or if no replies where received at step 624 , the results are provided to the customer at step 628 . If the item was located at one or more remote machines, the customer may be provided with the item price and the location/direction of/to the remote machine(s).
- the reply list 312 is then cleared at step 630 and the method 600 returns to step 604 to receive additional events for processing.
- the item request may be broadcast to certain sectors of a vending machine network.
- the determination of which sectors to broadcast to may be dynamically determined according to whether the item has been located.
- FIG. 7 shows a network environment 700 comprising a plurality of sectors or clusters 702 1 , 702 2 , . . . 702 N (collectively referred to as 702 ).
- the clusters 702 may be representative of physical structures such as buildings or may simply be representative of a defined geographic area.
- the network environment is implemented in a stadium, concert hall, convention center or other large facility capable of holding a large capacity crowd.
- the clusters 702 are then areas of the facility each hosting at least one vending machine.
- each cluster 702 contains a plurality of vending machines 704 1 , 704 2 , . . . 704 N (collectively referred to as 704 ).
- Each individual vending machine of a given plurality of vending machines 704 is networked to one another as well as to each of the other pluralities of vending machines 704 .
- the scope of the search for a particular item may be restricted to the cluster 702 at which the purchase order originates. Consider, for example, a customer interfacing with one of the plurality of vending machines 704 1 , of a first cluster 702 1 .
- a request for the item may be broadcast to each of the other machines of the plurality of vending machines 704 1 , in the cluster 702 1 . If none of the other vending machines 704 1 in the cluster 702 1 can satisfy the purchase order, a request may be broadcast to one or more of the other clusters 702 . In a particular embodiment, the request is broadcast to the next closest cluster 702 (with respect to the local machine with which the customer is interfacing). This pattern may be repeated until the item is located at one of the clusters 702 or until all clusters have been exhausted unsuccessfully.
- an item request may simply be broadcast to all vending machines on a network.
- the customer may specify a proximity parameter that dictates the scope of the broadcast.
- FIG. 8 shows a method 800 representing one embodiment of step 608 for processing a request received from another vending machine.
- Method 800 is entered at step 802 and proceeds to step 804 to query whether the incoming request is to check for item availability. If not, the method 800 proceeds to step 805 to handle the request and then exits at step 806 , in which case processing returns to step 604 shown in FIG. 6 . If the request is to determine item availability, the method 800 proceeds to step 807 .
- the method 800 queries whether the item is in stock at the machine that is processing method 800 . If not, the method 800 exits at step 806 . In this case, the responding machine may also indicate to the requesting machine (i.e., the local machine) the item is not available at the responding machine. If the item is available at step 807 , then the method 800 proceeds to step 808 .
- the method 800 queries whether the price for the requested item is set at its maximum price.
- the maximum price for any given item is contained in the maximum price entry 408 of the inventory files 314 .
- the price of an item is specified either by the price contained in the default price entry 406 or the price contained in the maximum price entry 408 .
- the price to be charged for a particular item is specified by flagging the appropriate entry 406 or 408 . Accordingly, the determination at step 808 is made by identifying which entry 406 , 408 is flagged.
- the inventory file 314 shown in FIG. 4 provides only two possible prices, other embodiments include any number of prices in a range of prices.
- the price of the item may be raised (e.g., to the maximum price or any other price provided by the inventory file 314 ) at step 810 .
- the determination to raise a price may include, for example, an inventory assessment of all other vending machines on a common network. If the inventory assessment indicates a relatively low inventory for a particular item, then the price may be raised. In addition, each vending machine connected to a network may maintain the same price for any given item. Accordingly, if the price is raised at any single vending machine, the adjusted price is broadcast to each of the other machines on the network. In this manner, the prices of items carried by vending machines of a particular network reflect the real-time realities of supply and demand.
- the method 800 replies to the requesting machine at step 812 .
- the reply indicates that the responding machine carries the item and may also indicate the price of the item.
- the reply preferably includes a unique ID for the responding machine as well as location/directions for the responding machine. The method 800 then exits at step 806 .
- a customer is given the option of reserving an item carried by a vending machine.
- a customer may input a reservation command to the local machine in order to hold the item at the remote machine(s) for a period of time.
- Embodiments for reserving an item are described in more detail below.
- FIG. 9 shows a system 900 which is an exemplary embodiment of a reservation system.
- System 900 has a plurality of input devices 902 1 , 902 2 , . . . 902 N (collectively referred to as input devices 902 N ).
- the input devices 902 N include a vending machine 902 1 , a personal digital assistant (PDA) 902 2 , a wireless (“cell”) phone 902 3 , a laptop 902 4 , and a desktop 902 5 .
- PDA personal digital assistant
- Each input device 902 N may include a central processing unit (CPU) 904 , a number of peripheral components, such as a computer display 906 , a storage device 908 , a printer 914 , and various input devices (e.g., keyboard 910 and mouse 912 ). Each input device 902 N is connected to a network 916 .
- Network 916 may represent any type of networked and public networks (e.g., the Internet). Moreover, any number of computers and other devices may be networked through network 916 .
- the network 916 connects the input device 902 N to a central control system 920 .
- the central control system 920 may represent any type of computer, computer systems or other programmable electronic device, including a client computer (e.g., similar to input devices 902 N ), a server computer, a portable computer, a handheld computer, an embedded controller, a network of computers, etc.
- the control system 920 is an embodiment of the control system 202 described above with reference to FIG. 2 .
- the central control system 920 illustratively includes at least one processor 922 coupled to memory 924 and read only memory (ROM) 926 via a bus 925 .
- Processor 922 may represent one or more processors (e.g., microprocessors), and memory 924 may represent the random access memory (RAM) devices, comprising the main storage of the central control system 920 , as well as any supplemental levels of memory, e.g., cache memories nonvolatile or backup memories (e.g., programmable or flash memories), read only memories, etc.
- RAM random access memory
- memory 924 may be considered to include memory storage physically located elsewhere in central control system 920 , e.g., any cache memory in processor 922 , as well as any storage capacity used as a virtual memory, e.g., as stored on a mass storage device 932 or on another computer coupled to the central control system 920 via network 916 .
- Central control system 920 also illustratively receives a number of inputs and outputs for communicating information externally.
- central control system 920 includes one or more user input devices 930 (e.g., a keyboard, a mouse, a trackball, a joystick, a touch pad, and/or a microphone, among others).
- user input devices 930 e.g., a keyboard, a mouse, a trackball, a joystick, a touch pad, and/or a microphone, among others.
- central control system 920 may also include one or more mass storage devices 932 , e.g., a floppy or other removable disk drive, a hard disk, a direct access storage device (DASD), an optical drive (e.g., CD drive, a DVD drive, etc.) and/or a tape drive among others.
- central control system 920 may include and interface with one or more networks 940 (e.g., a LAN, a WAN, a wireless network, and/or the Internet, amongst others) to permit the communication of the information with other computers coupled to the network.
- networks 940 e.g., a LAN, a WAN, a wireless network, and/or the Internet, amongst others
- the central control system 920 may include suitable analog and/or digital interfaces between processor 922 and each of the other components of the central control system 920 and is well known in the art.
- Central control system 920 operates under the control of an operating system (“O/S”) 957 , and executes or otherwise relies upon various computer software applications, components, programs, objects, modules, data structures, etc.
- a plurality of data structures 942 include a location table 946 , a product table 948 , a reserved item table 950 , a missed sales table 952 , a free money table 954 , and non-refundable table 955 .
- One or more of the data structures 942 may be periodically updated with information from one or more of the client computers 902 N .
- the product table 948 may be updated with information from the vending machine 902 1 (e.g., with item availability/quantity information).
- Illustrative programs 944 include a batch reserve item processing program 958 , a reserve program 960 , and a purchase program 962 .
- various applications, components, programs, objects, modules, etc. may also execute on one or more processors in another computer coupled to the central control system 920 via a network 916 , in a distributed or client-server computing environment, whereby the processing required to implement the functions of a computer program may be allocated to multiple computers over the network.
- FIGS. 10-15 depict embodiments of the data structures 942 .
- Each data structure is organized as a plurality of rows and columns. The columns designate a particular category of information while each row comprises a record in the data structure. For simplicity only one row/record of each data structure is shown. However, it is understood that the data structures may each comprise a plurality of rows/records.
- FIG. 10 illustrates an embodiment of the location table 946 containing location records.
- Each location record comprises a location identification (“ID”) entry 1002 , a physical location entry 1004 , and a description entry 1006 .
- An entry 1008 is representative of other entries which may be included in other embodiments.
- the location ID entry 1002 contains a unique identifier for all vending machine locations in a collection of vending machines.
- the location ID entry 1002 contains a network address for a vending machine. In an Internet-based implementation the network address is an Internet Protocol (IP) number.
- IP Internet Protocol
- the physical location entry 1004 is a representation of the physical location of the vending machine.
- the physical location may be a longitude or latitude, a Global Polishing System (“GPS”) coordinate, a street address, a building address, a grid map coordinate used to map out the internals of a building, etc.
- Description entry 1006 is a brief description of the machine at the specified location (e.g., maintenance history, operator, manufacturer, etc.).
- FIG. 11 illustrates an embodiment of the product table 948 .
- the product table 948 is a central repository of all products found within all vending locations. Each record of the table 948 corresponds to a particular item type at a particular location.
- the table 948 comprises a location ID entry 1102 , an item ID entry 1104 , a quantity available entry 1106 , a quantity reserved entry 1108 , and a price entry 1110 .
- An entry 1112 is representative of other entries which may be included in other embodiments.
- the location ID entry 1102 contains an address provided from one of the location ID entries 1002 and corresponds to a location where the item specified by the record is available.
- the item ID entry 1104 is used as a unique identifier to differentiate amongst products.
- the quantity available entry 1106 is the number of items available at the specified location.
- the quantity reserved entry 1108 is the number of items that have been reserved at the specified location. The difference between the quantity reserved and the quantity available indicates how many available items are available for purchase.
- the price entry 1110 indicates the price of the specified item (item ID entry 1104 ) in the specified location (location entry 1102 ).
- FIG. 12 illustrates an embodiment of the reserved item table 950 .
- the reserved item table 950 identifies all items within all locations that have been reserved.
- the reserved item table 950 comprises a location ID entry 1202 , an item ID entry 1204 , a customer ID entry 1206 , a quantity entry 1208 , a payment form entry 1210 , a data and time entry 1212 , a non-fundable flag entry 1214 , a non-refundable cost entry 1216 , a pre-paid entry 1218 and a confirmation number entry 1220 .
- An entry 1222 is representative of other entries which may be included in other embodiments.
- the location ID entry 1202 is a unique identifier that represents the location of an item being reserved and may be any of the locations specified by the location ID entries 1002 .
- the item ID entry 1204 is a unique identifier that represents the item being reserved and corresponds to one of the identifiers contained in item ID entry 1104 .
- the customer ID entry 1204 is an optional column used to contain customer information such as a credit card number, a physical address, a social security number, etc.
- the quantity entry 1208 is the number of items (entry 1204 ) that are on reserve.
- the payment form entry 1210 is a representation of how the item was or will be paid for. The payment form can be any of cash, coin, credit card, debit card, charge via phone etc.
- the date and time entry 1212 is used to keep track of when the consumer is scheduled to pick up the reserved item.
- the data and time is specified by the consumer or a vending machine operator.
- an arbitrary grace period may be added to the date and time to allow the consumer some additional time to pick up the item.
- the non-refundable flag entry 1214 is used by an item distributor to charge the consumer a non-refundable processing fee if the item being reserved is not picked up by the time/date specified in the data and time entry 1212 .
- the non-refundable cost entry 1216 is an amount the customer is charged if the non-refundable flag is turned on (set to YES) and the specified time/date criteria are not satisfied by the customer.
- the pre-paid entry 1218 indicates whether the item has been pre-paid (i.e., paid for prior to item pickup). If so, then the non-refundable flag is set to NO.
- the confirmation number entry 1220 contains some value or values representative of a particular reservation request. In one embodiment, the confirmation number is some combination of the values contained in the other entries of the reserved item table record. The number is provided to a customer if the reservation request is accepted by the reservation control system 920 . The customer may then use the number to pickup the reserved item at a future time.
- reserving an item and prepaying for the item may result in a discount for the consumer, since this guarantees a sale to the distributor regardless of whether the item is picked up or not.
- Other incentive plans and features may also be provided.
- FIG. 13 illustrates an embodiment of the missed sales table 952 .
- the missed sales table 952 contains data used by a distributor to track items that could have been sold.
- the missed sales table 952 comprises a location ID entry 1302 , an item ID entry 1304 , a missed quantity entry 1306 , and a reason entry 1308 .
- An entry 1310 is representative of other entries which may be included in other embodiments.
- the location ID entry 1302 is the unique machine location identifier described with reference to the location ID entry 1002 of the location table 946 .
- the item ID entry 1304 is the unique item identifier described with reference to item ID entry 1104 of the product table and represents an item that could not be sold.
- the number of items that could not be sold is contained in the missed quantity entry 1306 .
- the reason description entry 1308 contains a brief description explaining why the item could not be sold. For example, the item may have been out of stock when a purchase request was made. This information may then be used for marketing and sales analysis.
- FIG. 14 illustrates one embodiment of the free money table 954 .
- the free money table 954 contains data used by a distributor to keep track of money the distributor makes without actually selling a product. An entry is added to this table for all non-refundable processing fees and all items that where pre-purchased and not picked up.
- the free money table 954 comprises a location ID entry 1402 , an item ID entry 1404 , a quantity entry 1406 and a price entry 1408 .
- An entry 1410 is representative of other entries which may be included in other embodiments.
- the location ID entry 1402 contains the unique location identifier described with reference to the location ID entry 1002 of the product table 946 .
- the item ID entry 1404 contains the unique item identifier (entry 1104 of the product table 948 ) that represents the item being reserved.
- the number of items that were not sold is contained in the quantity entry 1406 .
- the corresponding price of the unsold items, or the non-refundable processing fee associated with the item, is contained in price entry 1408 .
- FIG. 15 illustrates an embodiment of the non-refundable cost table 955 .
- the non-recoverable cost table 955 is used and maintained by a distributor to determine non-recoverable costs for given items.
- the non-refundable cost table comprises a location ID entry 1502 , an item ID entry 1504 , and a non-recoverable cost entry 1506 .
- the data structures 942 are used to facilitate reservation/purchase of items contained in the vending machines 902 1 .
- the data structures are used by the programs 958 , 960 and 962 .
- the data structures and the programs are described in more detail below.
- any of the client devices 902 N may be configured with a graphical user interface (GUI) adapted to facilitate reserving vending machine items.
- GUI graphical user interface
- the GUI enables a user to select a pickup location and one or more items via a menu interface.
- FIG. 16 is an exemplary graphical user interface (GUI) 1600 which may be used to advantage by a consumer to carry out a reservation operation.
- the GUI 1600 can be operated by any input device such as a keyboard, a mouse, a touchpad or voice recognition technology.
- the GUI 1600 includes a plurality of dropdown boxes each including one or more user selectable options.
- a location dropdown box 1620 contains all possible vending machine locations that are available. A user may then select one or more locations at which to reserve an item for purchase. It is contemplated that a more complex menu system may be provided; e.g., a map showing all locations could be provided and clicking the mouse over a location on the map would be equivalent as entering the location.
- a selection is provided for each location ID entry 1002 of the location table 946 .
- the location could also be defaulted to the nearest machine and/or the list contained with the dropdown box could be ordered by location.
- An item dropdown box 1640 will be populated once a location is selected from dropdown box 1620 . Until a location is selected from dropdown box 1620 the dropdown box 1640 is disabled. Once enabled, dropdown box 1640 provides a list of all available products available from the location(s) specified by the dropdown box 1620 . In other embodiments, the item dropdown box 1640 may be implemented as a screen with product images. A user then selects an item(s) for reservation by clicking on an image of the appropriate item. In one embodiment, the user may also be provided with product information such as return dates (in the case of video rentals), warranty information, rebate information and the like. In still another embodiment, the user selects an item from the item dropdown box 1620 and then selects a location from the location dropdown box 1620 wherein only the locations having the item available are shown.
- a quantity window 1650 is made available.
- the window 1650 allows the consumer to enter the number of items to be reserved.
- the window may indicate a number of the selected items currently available.
- a pre-pay check box 1660 will allow the user to prepay for the item(s). It is contemplated that by checking check box 1660 a discount may be provided to the consumer. In one embodiment, if check box 1660 is not checked, then the consumer is charged a processing fee if they do not pick up or purchase the reserved item within a specified time. The specified time may be entered using a date box 1665 and a time box 1667 are used to enter the data and time, respectively, of the intended pickup of the product(s) being reserved. In one embodiment, the date and time may be provided by the machine executing the GUI 1600 , rather than allowing the consumer to specify the date/time.
- a payment form window 1662 is made active.
- the window 1662 provides a list of possible payment forms including, for example, a selection of credit cards.
- entries may be provided within window 1662 in which to enter credit card information.
- the user After entering the reservation order information, the user then clicks an Enter button 1680 to accept the order or a Cancel button 1685 to cancel the order. In the event the Enter button is pressed, processing of the data is then performed and a result is returned in the message area 1690 . It is also contemplated that instead of a textual message form, the machine providing the GUI 1600 could print out the transaction in the form of a receipt or provide an auditory output.
- FIG. 17 depicts a method 1700 for handling input requests for reserving items.
- method 1700 is entered into at step 1702 when the consumer launches the reservation program 960 via, for example, the GUI 1600 .
- Initialization work is done by the program 960 at step 1705 .
- the program 960 proceeds to step 1710 where the reservation order information input to the GUI 1600 is received.
- method 1700 determines if the item (and quantity) being requested is available. Thus, a reference to entry 1106 of the product table 948 is made using the specified items and location IDs. If the item is available, method 1700 proceeds to step 1725 to query whether the consumer has elected to pre-purchase the item. If so, the item is added to the reserved item table 950 at step 1730 . At step 1731 , a message is output to the message area 1690 to inform the consumer that the item has been reserved. In addition, the message may include a confirmation number (stored to the confirmation number entry 1220 ) which the consumer may use to pick up the item at a future time. The method 1700 then exits at step 1732 .
- method 1700 proceeds to 1735 to get a non-refundable fee amount from the non-refundable cost table 955 .
- the non-refundable fee is retrieved from the non-refundable cost table 955 and will be charged to the customer if the consumer does not pick up the intended item within a specified time period (as indicated by date and time checkboxes 1665 and 1667 , respectively).
- the purchase order information e.g., location ID, item ID, item quantity, date/time information, pre-pay information, and payment form
- the purchase order information is included in a record and entered as a row in the reserved item table 950 . If the consumer has prepaid then the flag in entry 1214 of the record is set to “Y”.
- a message is output to the message area 1690 to inform the consumer that the item has been reserved.
- the method 1700 then terminates at step 1732 .
- step 1720 if the item is not available then the user is asked if they would like to process additional locations for the item. This may be done by outputting a message to the message area 1690 . If the user desires not to process more locations, e.g., by clicking the cancel button 1685 , method 1700 proceeds to step 1745 . At step 1745 a “thank you”message may be output to the message area 1690 and the method 1700 is exited at step 1732 .
- step 1750 the location table 946 is sorted by proximity of location relative to a current location (i.e., the location of the customer).
- Method 1700 then proceeds to loop through all locations at step 1760 , processing the data in order such that the first available item found will break the loop. Specifically, method 1700 loops by retrieving a location record at step 1645 and determining whether the item is available at the specified location at step 1770 (by checking the product table 948 ). If the item is not available, method 1700 returns to step 1760 . In this manner, the loop continues until all location records are exhausted.
- step 1785 a message is output to the consumer indicating that the item is not available. If at any time during the loop the product is found, then the method 1700 proceeds to step 1725 to query whether the consumer has elected to pre-pay (by activating checkbox 1660 ). Step 1725 and subsequent steps have been described above.
- FIG. 18 depicts a flow diagram of a method 1800 for handling purchases of items at a vending machine 902 1 .
- the purchases may be for reserved items (i.e., items reserved via method 1700 ) and unreserved items.
- method 1800 is an embodiment exemplifying the operation of the purchase program 962 .
- Method 1800 is entered at step 1802 and proceeds to step 1805 to wait on an event.
- method 1800 retrieves an event for processing.
- Method 1800 continues immediately to step 1815 to query whether the event is to purchase an item. If not, processing proceeds to step 1820 to perform normal machine operations. Method 1800 then returns to step 1805 to wait on another event.
- step 1815 If, at step 1815 , the event is a purchase event, then method 1800 proceeds to step 1825 to query whether the purchase event is a reserve purchase (i.e., a request to purchase an item previously reserved via method 1700 ). If not, method 1800 proceeds to step 1830 where it is determined if a sufficient quantity of the item is available for purchase. Thus, step 1830 includes a reference to the entry 1106 of the product table 948 for the machine being interfaced with (as determined by the location ID). If the item is not available, then at step 1835 a message is sent to the message area at 1690 stating that all remaining items (if any) are reserved and the product is not available to be purchased. If step 1830 is answered affirmatively, then method 1800 proceeds to step 1820 and a sale of the item is completed. Upon such a sale the method 1800 returns to step 1805 to wait on another event.
- a reserve purchase i.e., a request to purchase an item previously reserved via method 1700 . If not, method 1800 proceeds to step 1830
- step 1840 it is determined whether the item was pre-paid. If so, then processing continues at step 1845 where the appropriate entry is removed from the reserved item table 950 . The item is then dispensed at step 1850 . If the item was not pre-paid, processing continues from step 1840 to step 1855 where the consumer's purchase order is handled (e.g., money is accepted) and then to step 1845 where the appropriate entry is removed from the reserved item table 950 . Method 1800 then returns to step 1805 to wait on another event.
- FIG. 19 depicts a flow diagram of a method 1900 for cleaning up the reserve item table 950 and populating the free money table 954 with unhandled reserved item requests.
- Method 1900 may be understood as one embodiment exemplifying the operation of the batch reserve program 958 .
- Method 1900 is entered at step 1902 and then enters a loop at step 1905 .
- the loop is performed for each record in the reserved item table 950 .
- a record is read at step 1910 and at step 1915 it is determined if the time and date in the record (entry 1212 ) have passed. If not, then method 1900 returns to step 1905 to loop through the remaining records of the reserved item table 950 . If, at step 1915 , the time and date have passed then processing continues at step 1920 where the appropriate record is removed from the reserved item table 950 . Method 1900 then proceeds to step 1925 .
- the method 1900 queries whether the item was pre-paid. If so, an entry is added to the free money table 954 indicating that the item was not picked up at step 1930 and the method 1900 returns to step 1905 to process the next record. If the item was not a pre-paid, then processing continues at step 1935 where it is determined whether there will be non-refundable charge with reference to the flag at entry 1214 of the current reserved item table record. If a non-refundable charge exists then, at step 1940 , an entry is added to the free money table 954 reflecting the fact that a non-refundable charge was applied (e.g., against the consumer's credit card) in the amount specified by entry 1218 of the current reserved item table record. Method 1900 then returns to step 1905 to begin processing the next record. If, at step 1935 , there is no non-refundable charge, method 1900 returns to step 1905 . Once all records have been processed, then method 1900 proceeds to step 1950 where the program 958 waits by some pre-determined amount of time before processing the reserved item tables 950 again.
- the customer is typically expected to pay for the purchased item(s).
- the customer may insert bills into the cash acceptor interface 114 (shown in FIG. 1 ).
- the transaction is corrupted, such that the customer is charged for an item he/she never receives or for defective goods or services. In such instances, embodiments for recovery of funds paid are provided.
- FIG. 20 shows a refund processing machine 2000 .
- the refund processing machine 2000 is a vending machine illustrative of a machine such as the vending machines 104 1 , 104 2 , . . . 104 N described above with reference to FIGS. 1-2 .
- the machine 2000 is a refund processing computer remotely located from vending machines and accessible from a plurality of devices.
- the refund processing machine 2000 may be implemented similarly to the central control system 920 .
- the following discussion assumes that the machine 2000 is a vending machine.
- the components of the machine 2000 may be similar to those described above with reference to FIG. 3 . Accordingly, where possible, like numerals have been used to identify components previously discussed with reference to FIG. 3 .
- the CPU 302 of the vending machine 2000 is shown configured with a refund program 2002 , which may be loaded from memory 304 for execution.
- the memory 304 contains data structures which may be utilized by the refund program 2002 during execution.
- the memory 304 contains a refund file 2004 .
- FIG. 21 shows one embodiment of illustrative refund file 2004 .
- the refund file 2004 includes a record for each refund request processed by the vending machine 2000 .
- Each record comprises a number of entries corresponding to column designations.
- each record includes a customer ID entry 2102 , a payment form entry 2104 , an item entry 2106 , a quantity entry 2108 , a date entry 2110 , a total cost entry 2112 , and a refund flag entry 2114 .
- An entry 2116 is representative of other columns that may be included in other embodiments.
- the customer ID entry 2102 may contain any value or values that identify a customer. For example, a Social Security number may be used. Alternatively, a customer name and address may be used.
- the payment form entry 2104 indicates the means by which a customer paid for a particular item. Payment forms include, for example, credit cards, debit cards, checks, cash etc. In the case of credit cards and debit cards the payment form entry 2104 may also include card information such as a card number and expiration date.
- the item (or service) which a customer purchased or attempted to purchase, and for which a refund is being requested, is indicated by item entry 2106 .
- the quantity of items purchased is contained in the quantity entry 2108 .
- the date of the purchase transaction is contained in the date entry 2110 .
- the total cost of the transaction is contained in the total cost entry 2112 .
- the refund flag entry 2114 indicates whether the customer was refunded for the transaction represented by the record.
- FIG. 22 shows a method 2200 for handling a refund request.
- the method 2200 may be understood as one embodiment illustrating the execution of the refund program 2002 .
- Method 2200 is entered at step 2202 and then proceeds to step 2204 to wait on an event.
- the method 2200 proceeds to step 2206 and queries whether the event is a refund request.
- a refund request may be initiated by a refund requester (e.g., consumer) selecting a refund option provided on an output device (e.g., the display 108 shown in FIG. 1 ) following a purchase order.
- the purchase order may be for an item at the machine with which the customer is interfacing or an item at a remotely located machine on the network of machines.
- the refund option may only be provided when the vending machine 2000 detects a corrupted transaction. For example, the vending machine 2000 may detect that the purchased item is lodged in the dispensation slot 112 (shown in FIG.
- the refund option is provided after every transaction.
- the customer may required to agree to a charge (in the amount of the requested refund) to a credit card (or similar instrument) if a subsequent investigation indicates that the refund was not merited.
- the agreement of the customer to a possible charge may be attained via the input interface (e.g., the input interface 110 shown in FIG. 1 ) of the vending machine.
- only select customers are allowed refunds. For example, those customers who repeatedly purchase an item and have purchased a threshold number of items (i.e., loyal repeat customers) may receive refunds upon request.
- the historical purchase data of customers is maintained with reference to the customer ID described above. Thus, a record for each purchase by a given customer may exist.
- the database of records for the requesting customer is accessed to determine the customer's purchase history.
- Statistical algorithms may then be performed to determine the customer's eligibility for a refund.
- the refund approval may depend on such factors as the frequency with which the customer makes purchases for the item on which the refund is being requested, the total volume (in dollars) of sales to the customer at vending machines, the ratio of the refund to the sales, etc.
- the customer's credit history may be checked to determine financial responsibility, in much the same way credit history analysis is performed by lending institutions and credit card issuers.
- the event is handled at step 2208 and the method 2200 then returns to step 2204 to wait on another event. If the event is a refund request, the method 2200 proceeds from step 2206 to step 2210 and queries whether a refund is available.
- the determination at step 2210 includes a reference to the refund file 2004 to determine whether the customer qualifies for a refund. For example, a determination may be made as to whether the customer requesting the refund has requested refunds in the past. If the customer has previously requested refunds, steps may be taken to restrict the number of refunds and/or the amount of money refunded in a given time period.
- a customer who repeatedly requested refunds is prevented from making additional purchases at the vending machine 2000 , or any other networked vending machine.
- this latter embodiment assumes payment forms (e.g., credit cards) which allow the vending machine 2000 to identify the customer before completing the purchase order.
- a network of vending machines may collectively have an upper limit on refunds. When the limit is reached, no vending machine on the network will issue any more refunds.
- each vending machine 2000 may be configured with its own upper limit.
- step 2210 If a refund is not available at step 2210 , the method 2200 proceeds to step 2212 where a message is issued to the customer indicating that a refund is not available. A reason for the refund unavailability may also be provided to the customer.
- step 2210 the method 2200 proceeds to step 2214 where the refund is applied.
- the manner in which the refund is applied may depend upon the payment forms selected by the customer. For example, in the case of a credit card purchase, the refund may be applied to the customer's credit card. In the case of a check purchase, the check is returned to the customer. The method 2200 then returns to step 2204 to wait on another event.
- the vending machine with which the customer is interfacing may attempt to locate the item for which the refund is requested at another vending machine. This attempt may be made automatically by the vending machine with which the customer is interfacing in response to the refund request or may be made at the option of the customer. Embodiments for locating a vending machine item have been described above. If the item can be located at another machine, the user is provided with the option to retrieve the item at the other machine. If more than one machine carries the item, the user may elect which machine to retrieve the item from. Retrieval of the item may be facilitated by issuing the customer a retrieval identification number which may be input to any networked vending machine carrying the item.
- the information made available by the refund file 2004 is used for maintenance purposes and failure analysis.
- a vending machine at which numerous refunds are requested may be indicative of a defective machine. Accordingly, the machine may be evaluated and, if necessary, repaired before returning the machine to operation.
- a vending machine is configured with both programs 310 , 2002 to support both their respective features. More generally, a network of vending machines may support any combination of the item location embodiments, the reservation embodiments, and the refund embodiments.
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Embodiments of the present invention provide for a method, system and article of manufacture for operating vending machines. In general, a plurality of vending machines are nodes of a network. Each node is configured to send, receive and process signals carrying inventory, pricing, reservation and/or refund information. In particular, a first signal is sent to one or more nodes requesting inventory/price information from other nodes. Those nodes carrying the product may reply with a second signal. In this manner, the location of vending machines carrying one or more items specified by a customer may be determined. In another embodiment, vending machine items may be reserved from a remote location. In still another embodiment, vending machines may be configured to provide refunds under controlled conditions. A consumer may request a refund in cases where the consumer was improperly charged for goods are services that were not provided.
Description
- This is a divisional application of U.S. patent application Ser. No. 09/848,573, filed May 3, 2001, entitled “SYSTEMS AND METHODS FOR OPERATING VENDING MACHINES”, which is herein incorporated by reference.
- 1. Field of the Invention
- Embodiments of the present invention relate generally to vending machines. More particularly, embodiments relate to a method and apparatus for communicating inventory information between vending machines within a network.
- 2. Description of the Related Art
- Vending machines are well known. Conventionally, vending machines have facilitated storage and dispensation of items such as cigarettes, postcards, drinks, candy, frozen deserts, snacks, video tapes, toys and the like. Such items are periodically loaded into a vending machine and then dispensed in response to a purchase order received from a user interfacing with a selection panel of the machine.
- Traditionally, vending machines are located in factories, office buildings, bowling alleys and other high traffic locations. Vending machine operators have found that strategic location of vending machines in high traffic areas regularly frequented by the same customers, promote habitual sales and brand loyalty. As a result, vending machines have proved successful automated devices for sales of goods to customers.
- Despite the success of vending machines, problems remain which jeopardize the effectiveness of such machines. One such problem is maintaining adequate inventory in the vending machines. Failure to keep machines stocked often results in loss of customer loyalty, thereby detrimentally affecting sales. In effort to maintain desired levels of inventory, vending machine management software has been implemented. One such software product is “Windows for Vending PRO with Inventory” produced by VendMaster. This product enables a vending machine operator to report and analyze various historical sales data. VendMaster's product is intended to enhance a vending machine operator's ability to identify high-demand inventory, determine times to stock the machine, and calculate suggested prices.
- However, despite advances in vending machine management software, low inventory problems persist. As a result, customers are often unable to locate a particular item at any given vending machine. The customer is then forced to check other vending machines for the item, or must resort to a different venue altogether, e.g., a grocery store.
- Another problem with conventional vending machines is that customers are often improperly charged. For example, in some cases items in a vending machine have been incorrectly loaded. Thus, a customer requesting Coca-Cola may instead receive Dr Pepper. In other cases, the item may become lodged in the dispensing slot so as to be irretrievable by the customer. In still other cases, the customer may receive a food item which has passed its expiration date. In each of these cases, the customer has already made a payment to the vending machine and is left with no immediate means for refund. If a refund is desired, the customer is forced to pursue tedious steps of contacting the vending machine owner and follow the refund policy implemented by the owner. In the end, the efforts expended by the customer far outweigh the value of receiving a refund.
- Accordingly, what is needed is a method, system and article of manufacture for mitigating or eliminating the problems of the prior art in the area of vending machine technology.
- Embodiments of the present invention generally provide methods, systems and articles of manufacture that facilitate solutions in the area of vending machine technology. In one embodiment, a method of locating an item in a network of vending machines is provided. The method comprises receiving, at a vending machine of the network of vending machines, a purchase order for the item and transmitting, via a network connection, a request for the item at another vending machine in the network of vending machines. A response indicative of whether the item is available at at least one other vending machine is then received at the vending machine.
- In another embodiment, a vending machine for dispensing items comprises a command input interface for receiving user commands, a network interface configured to support a network connection with a network of vending machines, a memory and a processor connected to the command input interface, the network interface and the memory. In operation, the processor is configured to process purchase orders for items and issue a request via the network interface to determine whether an item requested by a user is available at another vending machine in the network of vending machines.
- Yet another embodiment provides a signal bearing medium containing a program which, when executed by a processor, performs a method of locating an item in a network of vending machines. The method comprises receiving, at a vending machine of the network of vending machines, a purchase order for the item and transmitting, via a network connection, a request for the item at another vending machine in the network of vending machines. A response indicative of whether the item is available at at least one other vending machine is then received at the vending machine.
- Still another embodiment provides vending machines configured to provide refunds. Refunds are selectively provided under controlled conditions. A consumer may request a refund in cases where the consumer was improperly charged for goods or services that were not provided. A determination of whether to issue a refund may be made according to a refund history for a particular consumer. For example, if the consumer has requested more than a threshold number of refunds within a specified time period then subsequent refund requests may be denied.
- So that the manner in which the above recited features and embodiments are attained and can be understood in detail, a more particular description of embodiments of the invention, briefly summarized above, may be had by reference to the embodiments described below and which are illustrated in the appended drawings.
- It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
-
FIG. 1 is a diagram of one embodiment of a vending machine network. -
FIG. 2 is a diagram of another embodiment of a vending machine network. -
FIG. 3 is one embodiment of a vending machine configured to locate an item in a network of vending machines. -
FIG. 4 is a data structure exemplifying an inventory file. -
FIG. 5 is a data structure exemplifying a reply list. -
FIG. 6 is a flowchart illustrating the operation of a vending machine configured to process customer purchase orders as well as requests from other networked vending machines. -
FIG. 7 is a diagram of a networked vending machine environment. -
FIG. 8 is a flowchart illustrating the operation of a vending machine responding to a request received from a remotely located networked vending machine. -
FIG. 9 is a diagram of a reservation system for reserving items at a vending. -
FIG. 10 is a data structure illustrating a location table. -
FIG. 11 is a data structure illustrating a product table. -
FIG. 12 is a data structure illustrating a reserved item table. -
FIG. 13 is a data structure illustrating a missed sales table. -
FIG. 14 is a data structure illustrating a free money table. -
FIG. 15 is a data structure illustrating a non-refundable cost table. -
FIG. 16 is a graphical user interface configured to receive reservation information. -
FIG. 17 is a flowchart illustrating a method for handling reservation requests. -
FIG. 18 is a flowchart illustrating a method for purchasing items at a vending machine. -
FIG. 19 is a flowchart illustrating a method for processing data structures containing reservation information in a vending machine environment. -
FIG. 20 is one embodiment of a vending machine configured to refund a customer for a corrupted sale. -
FIG. 21 is a data structure illustrating a refund file. -
FIG. 22 is a flowchart illustrating a method for processing a refund request. - Embodiments of the present invention provide for a method and system for operating vending machines. In one embodiment, a vending machine comprises a network interface configured to transmit a location request for a selected item to a network of vending machines, and to receive a response indicative of whether the selected item is available at another vending machine in the network of vending machines. In another embodiment, a plurality of vending machines are nodes of a network. Each node is configured to send, receive and process signals carrying inventory, pricing, reservation and/or refund information. In particular, a first signal is sent to one or more nodes requesting inventory/price information from other nodes. Those nodes carrying the product may reply with a second signal. In this manner, the location of vending machines carrying one or more items specified by a customer may be determined.
- In another embodiment, vending machine items may be reserved from a remote location. In such embodiments, a vending machine is configured to receive a reservation request for a specified item. The request may be issued from one of a plurality of client devices (e.g., wireless telephones, desktop computers and the like) or from a reservation control system.
- In still another embodiment, vending machines may be configured to provide refunds. Refunds are selectively provided under controlled conditions. A consumer may request a refund in cases where the consumer was improperly charged for goods or services that were not provided.
- One embodiment of the invention is implemented as a program product for use with a computer system such as, for example, the
vending network environment 100 shown inFIG. 1 and described below. The program(s) of the program product defines functions of the embodiments (including the methods described below with reference toFIGS. 6, 8 , 17-19 and 22) and can be contained on a variety of signal/bearing media. Illustrative signal/bearing media include, but are not limited to: (i) information permanently stored on non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive); (ii) alterable information stored on writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive); and (iii) information conveyed to a computer by a communications medium, such as through a computer or telephone network, including wireless communications. The latter embodiment specifically includes information downloaded from the Internet and other networks. Such signal-bearing media, when carrying computer-readable instructions that direct the functions of the present invention, represent embodiments of the present invention. - In general, the routines executed to implement the embodiments of the invention, whether implemented as part of an operating system or a specific application, component, program, module, object, or sequence of instructions may be referred to herein as a “program”. The computer program typically is comprised of a multitude of instructions that will be translated by the native computer into a machine-readable format and hence executable instructions. Also, programs are comprised of variables and data structures that either reside locally to the program or are found in memory or on storage devices. In addition, various programs described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature.
-
FIG. 1 shows avending network environment 100 comprising a plurality of vending machines 104 1, 104 2, . . . 104 N connected to anetwork 103. The vending machines 104 may be configured to dispense any variety of goods such as food, drinks, tickets, toys, maps, stamps, etc. Illustratively, each vending machine 104 includes a magnetic credit/debit card reader 114, acash acceptor interface 116, a dispensingslot 112, aninput interface 110, and adisplay 108. Illustratively, theinput interface 110 is a keypad. However, any device configured to allow a customer to input information into the vending machine 104 may be used. For example, in one embodiment, theinput interface 110 may be configured to receive voice commands from a customer. The dispensingslot 112 is primarily provided to dispense the purchasable goods contained within the vending machine 104. However, in some embodiments, the dispensingslot 112 may also output printed material containing, for example, inventory information, pricing information and vending machine location information. - The
network 103, as well as the connection between the vending machines 104 and thenetwork 103, may include wire, radio, fiber optic cable, or any other device or method adapted to support a network connection. As such, thenetwork 103 facilitates communication between the vending machines 104. In one embodiment, each vending machine 104 is a node connected to thenetwork 103 and is assigned a unique address. The unique addresses allow each of the vending machines 104 to identify one another and exchange information. -
FIG. 2 shows another embodiment of anetwork environment 200 in which the vending machines 104 are connected to acontrol system 202. In general, thecontrol system 202 is any computerized device configured to receive/transmit control signals from/to the vending machines 104. In a particular embodiment, thecontrol system 202 is implemented as acontroller 204 and a memory/storage device 206. Although only onecontroller 204 is shown, thenetwork environment 200 may in fact include multiple controllers. Thememory device 206 provides a repository for information such as inventory, prices, vending machine locations and the like. - In operation, the vending machines 104 are configured to transmit item requests and responses between one another. In general, an item request may be transmitted in response to a purchase order made by a customer at one vending machine 104 that cannot satisfy the order. The failure to satisfy the purchase order may be due to, for example, a maintenance issue or the requested item being out of stock. Accordingly, the vending machine 104 at which the purchase order was made (the “requesting machine”) transmits a request to fill the purchase order to the other vending machines 104 via the
network 103. One or more vending machines capable of satisfying the order (the “responding machines”) may respond. The requesting machine may then notify the customer of the replies received from the responding machines. In particular, the customer is provided with location information pertaining to the responding machines having the requested item in stock. - In the case of the
network environment 100 shown inFIG. 1 , the vending machines 104 are configured for direct communication between one another (i.e., a peer-to-peer architecture). In contrast to the distributed approach of thenetwork environment 100, thenetwork environment 200 ofFIG. 2 illustrates a centralized implementation in which thecontrol system 202 manages information exchange between the vending machines 104. It is understood, however, that the embodiments shown inFIG. 1 andFIG. 2 are merely illustrative. The particular configuration by which information is exchanged between vending machines is not limiting of the present invention, and persons skilled in the art will recognize other embodiments. -
FIG. 3 shows one embodiment of avending machine 300 which may be used to advantage as a vending machine 104 of thenetwork environments FIGS. 1 and 2 , respectively. The vending machine is particularly representative of a vending machine 104 in thenetwork environment 100 ofFIG. 1 . In the case of a vending machine 104 in thenetwork environment 200 ofFIG. 2 , some or all of the programs and data structures described with reference toFIG. 3 may reside on thecontrol system 202. However, persons skilled in the art will readily appreciate such differences in the implementation and operation between thenetworks network 200 is not necessary. - In general, the
vending machine 300 includes a central processing unit (CPU) 302, amemory 304 and astorage 306, each connected by abus 308. Thevending machine 300 may also include aninterface 316 for external input/output devices. TheCPU 302 is configured with aninventory monitor program 310, which may be loaded frommemory 304 for execution. Thememory 304 contains data structures which may be utilized by theinventory monitor program 310 during execution. Illustratively, thememory 304 contains areply list 312 and aninventory file 314. - One embodiment of the
inventory file 314 is shown inFIG. 4 . Theinventory file 314 comprises a plurality ofrecords 402 containing item and price information. Arecord 402 is provided for each item carried by thevending machine 300. Accordingly, each record 402 includes an item entry 404. A default price for each item is contained in aprice entry 406. In one embodiment, each record 402 also includes amaximum price entry 408. Anavailability entry 410 indicates the number of items in stock at the vending machine.Entries 412 indicate that each record 402 may comprise additional information. - One embodiment of the
reply list 312 is shown inFIG. 5 . Thereply list 312 includes a plurality ofrecords 502 each comprising a plurality of entries. In general, each record 502 contains information received from a remotely located vending machine 300 (i.e., one of the other networked vending machines). Illustratively, each record 502 includes an identification (“ID”)entry 504, a price entry 506, alocation entry 508 and adirections entry 510.Entries 512 indicate that each record 502 may include additional information. - The
ID entry 504 is configured to contain information uniquely identifying aparticular vending machine 300 in a network of vending machines. The machine designated by the information contained in aparticular ID entry 504 may be referred to as a “responding machine”, because the ID information is typically received in response to a request from a requesting machine. The price entry 506 contains a price for an item carried by the responding machine identified by the information contained inID entry 504 in thesame record 502. Thelocation entry 508 specifies the location of the responding machine for thesame record 502. Thedirection entry 510 contains directions to the location (per the information in the location entry 508) of responding machine for thesame record 502. Illustratively, the directions may be in the form of a map and/or written directions. In some embodiments, a customer may dictate the level of detail provided by the directions, e.g., by requesting alternate routes and specifying an origination point (in one embodiment, the default origination point is the vending machine with which the customer is currently interacting). In another embodiment, a customer is given the option of downloading the directions onto, for example, a personal digital assistant (PDA). In this case, the vending machine with which the customer is interacting may provide the necessary hardware interface (e.g., interface 316) and supporting software to support the download. - During operation, the
inventory monitor program 310 processes customer purchase orders for vending machine items. The item availability and price is indicated by theinventory file 314. If an item is available at a machine being interacted with a customer, the purchase order is processed in a normal manner and the item is dispensed accordingly. If the item is not available, steps are taken to locate the item at another machine. In addition, the price of the item may be adjusted. -
FIG. 6 shows amethod 600 for operating a vending machine 104/300 in a network environment comprising a plurality of vending machines. Illustratively, themethod 600 may be considered to represent the operation within either of thenetwork environments FIGS. 1 and 2 , respectively. In general, the vending machine executing themethod 600 is configured to either process requests from a customer or from another machine, e.g. another vending machine or thecontrol system 202 shown inFIG. 2 . For clarity, a vending machine processing customer requests will be referred to as a “local” machine while a vending machine processing a request from another machine will be referred to as a “remote” machine. -
Method 600 is entered atstep 602 which may represent a vending machine 104/300 being powered up and brought on-line with a network connection to a plurality of other vending machines.Method 600 then proceeds to step 604 to receive an event. - At
step 606 themethod 600 queries whether the event is an incoming request from another vending machine. If so, the request is processed atstep 608. Themethod 600 then returns to step 604 to wait for another event. Ifstep 606 is answered negatively, themethod 600 proceeds to step 610. - At
step 610, themethod 600 queries whether the event is an item purchase order from a customer interacting with the local vending machine. If not, the event is handled atstep 612 and themethod 600 then returns to step 604. In this case, the processing atstep 612 may include, for example, issuing a service/maintenance request, updating item pricing information and the like. Ifstep 610 is answered affirmatively, themethod 600 proceeds to step 614 to determine the item availability at the local machine. To this end, the local machine references theavailability entry 410 for the appropriate item (indicated by the item entry 404) in theinventory file 314. If the item is available at the local machine, the purchase order is processed atstep 612 in a conventional manner.Method 600 then returns to step 604. - If the requested item is not available at the local machine, steps are taken to determine item availability at remote networked vending machines. As such, a request for the item is transmitted to one or more remote vending machines at
step 616. In one embodiment, the request is broadcast to all remote vending machines connected to a common local area network (LAN). Alternatively, the request is provided to selected vending machines connected to a LAN. For example, the customer may be given the option to select one or more remote vending machines according to his or her preference. In some cases, the customer may provide a proximity parameter to restrict recipients of the request. For example, the customer may specify that only those remote vending machines within a 50 meter radius receive the request. - At
step 618, themethod 600 initiates a timer. The timer defines some period of time during which replies received from remote machines are accepted by the local machine. Atstep 620, themethod 600 prepares to receive replies. Each reply received before the expiration of the timer is added to thereply list 312, as indicated bystep 622. Once the timer expires, themethod 600 proceeds to step 624 and queries whether thereply list 312 contains any entries (i.e., replies from remote machines). If so, the entries are processed atstep 626. The manner in which entries are processed may be determined, in part, by customer specified options. For example, if the customer specified a proximity parameter, only the requests received from remote machines satisfying that parameter are considered. Alternatively, the entries may be processed according to default parameters. For example, the local machine may be configured to select the closest remote machine having the item. - Once the reply list entries are processed at
step 626, or if no replies where received atstep 624, the results are provided to the customer atstep 628. If the item was located at one or more remote machines, the customer may be provided with the item price and the location/direction of/to the remote machine(s). Thereply list 312 is then cleared atstep 630 and themethod 600 returns to step 604 to receive additional events for processing. - In one embodiment, the item request may be broadcast to certain sectors of a vending machine network. The determination of which sectors to broadcast to may be dynamically determined according to whether the item has been located. This approach may be illustrated with reference to
FIG. 7 .FIG. 7 shows anetwork environment 700 comprising a plurality of sectors orclusters clusters 702 may be representative of physical structures such as buildings or may simply be representative of a defined geographic area. In a particular embodiment, the network environment is implemented in a stadium, concert hall, convention center or other large facility capable of holding a large capacity crowd. Theclusters 702 are then areas of the facility each hosting at least one vending machine. Illustratively, eachcluster 702 contains a plurality ofvending machines vending machines 704 is networked to one another as well as to each of the other pluralities ofvending machines 704. In one embodiment, the scope of the search for a particular item may be restricted to thecluster 702 at which the purchase order originates. Consider, for example, a customer interfacing with one of the plurality ofvending machines 704 1, of afirst cluster 702 1. If the vending machine being interfaced with does not to have the item requested, a request for the item may be broadcast to each of the other machines of the plurality ofvending machines 704 1, in thecluster 702 1. If none of theother vending machines 704 1 in thecluster 702 1 can satisfy the purchase order, a request may be broadcast to one or more of theother clusters 702. In a particular embodiment, the request is broadcast to the next closest cluster 702 (with respect to the local machine with which the customer is interfacing). This pattern may be repeated until the item is located at one of theclusters 702 or until all clusters have been exhausted unsuccessfully. - The foregoing embodiment is merely illustrative and persons skilled in the art will readily recognize other embodiments. In particular, it is understood that an item request may simply be broadcast to all vending machines on a network. Alternatively, and as previously discussed, the customer may specify a proximity parameter that dictates the scope of the broadcast.
-
FIG. 8 shows amethod 800 representing one embodiment ofstep 608 for processing a request received from another vending machine.Method 800 is entered atstep 802 and proceeds to step 804 to query whether the incoming request is to check for item availability. If not, themethod 800 proceeds to step 805 to handle the request and then exits atstep 806, in which case processing returns to step 604 shown inFIG. 6 . If the request is to determine item availability, themethod 800 proceeds to step 807. - At
step 807, themethod 800 queries whether the item is in stock at the machine that is processingmethod 800. If not, themethod 800 exits atstep 806. In this case, the responding machine may also indicate to the requesting machine (i.e., the local machine) the item is not available at the responding machine. If the item is available atstep 807, then themethod 800 proceeds to step 808. - At
step 808, themethod 800 queries whether the price for the requested item is set at its maximum price. The maximum price for any given item is contained in themaximum price entry 408 of the inventory files 314. In the present embodiment, the price of an item is specified either by the price contained in thedefault price entry 406 or the price contained in themaximum price entry 408. Illustratively, the price to be charged for a particular item is specified by flagging theappropriate entry step 808 is made by identifying whichentry inventory file 314 shown inFIG. 4 provides only two possible prices, other embodiments include any number of prices in a range of prices. - If
query 808 is answered negatively, the price of the item may be raised (e.g., to the maximum price or any other price provided by the inventory file 314) atstep 810. The determination to raise a price may include, for example, an inventory assessment of all other vending machines on a common network. If the inventory assessment indicates a relatively low inventory for a particular item, then the price may be raised. In addition, each vending machine connected to a network may maintain the same price for any given item. Accordingly, if the price is raised at any single vending machine, the adjusted price is broadcast to each of the other machines on the network. In this manner, the prices of items carried by vending machines of a particular network reflect the real-time realities of supply and demand. - Once the price for an item has been raised at
step 810, or if the item price is already at its maximum price atstep 808, themethod 800 replies to the requesting machine atstep 812. Illustratively, the reply indicates that the responding machine carries the item and may also indicate the price of the item. In addition, the reply preferably includes a unique ID for the responding machine as well as location/directions for the responding machine. Themethod 800 then exits atstep 806. - In some embodiments, a customer is given the option of reserving an item carried by a vending machine. For example, in the foregoing embodiments in which an item was located at one or more remote machines, a customer may input a reservation command to the local machine in order to hold the item at the remote machine(s) for a period of time. Embodiments for reserving an item are described in more detail below.
-
FIG. 9 shows asystem 900 which is an exemplary embodiment of a reservation system.System 900 has a plurality ofinput devices input devices 902 N include avending machine 902 1, a personal digital assistant (PDA) 902 2, a wireless (“cell”)phone 902 3, alaptop 902 4, and adesktop 902 5. Eachinput device 902 N may include a central processing unit (CPU) 904, a number of peripheral components, such as a computer display 906, astorage device 908, aprinter 914, and various input devices (e.g.,keyboard 910 and mouse 912). Eachinput device 902 N is connected to anetwork 916.Network 916 may represent any type of networked and public networks (e.g., the Internet). Moreover, any number of computers and other devices may be networked throughnetwork 916. - The
network 916 connects theinput device 902 N to acentral control system 920. Thecentral control system 920 may represent any type of computer, computer systems or other programmable electronic device, including a client computer (e.g., similar to input devices 902 N), a server computer, a portable computer, a handheld computer, an embedded controller, a network of computers, etc. In one embodiment, thecontrol system 920 is an embodiment of thecontrol system 202 described above with reference toFIG. 2 . - The
central control system 920 illustratively includes at least oneprocessor 922 coupled tomemory 924 and read only memory (ROM) 926 via abus 925.Processor 922 may represent one or more processors (e.g., microprocessors), andmemory 924 may represent the random access memory (RAM) devices, comprising the main storage of thecentral control system 920, as well as any supplemental levels of memory, e.g., cache memories nonvolatile or backup memories (e.g., programmable or flash memories), read only memories, etc. In addition,memory 924 may be considered to include memory storage physically located elsewhere incentral control system 920, e.g., any cache memory inprocessor 922, as well as any storage capacity used as a virtual memory, e.g., as stored on amass storage device 932 or on another computer coupled to thecentral control system 920 vianetwork 916. -
Central control system 920 also illustratively receives a number of inputs and outputs for communicating information externally. For interface with a user or operator,central control system 920 includes one or more user input devices 930 (e.g., a keyboard, a mouse, a trackball, a joystick, a touch pad, and/or a microphone, among others). - For additional storage,
central control system 920 may also include one or moremass storage devices 932, e.g., a floppy or other removable disk drive, a hard disk, a direct access storage device (DASD), an optical drive (e.g., CD drive, a DVD drive, etc.) and/or a tape drive among others. Furthermore,central control system 920 may include and interface with one or more networks 940 (e.g., a LAN, a WAN, a wireless network, and/or the Internet, amongst others) to permit the communication of the information with other computers coupled to the network. It should be appreciated that thecentral control system 920 may include suitable analog and/or digital interfaces betweenprocessor 922 and each of the other components of thecentral control system 920 and is well known in the art. -
Central control system 920 operates under the control of an operating system (“O/S”) 957, and executes or otherwise relies upon various computer software applications, components, programs, objects, modules, data structures, etc. Illustratively, a plurality ofdata structures 942 include a location table 946, a product table 948, a reserved item table 950, a missed sales table 952, a free money table 954, and non-refundable table 955. One or more of thedata structures 942 may be periodically updated with information from one or more of theclient computers 902 N. In particular, the product table 948 may be updated with information from the vending machine 902 1 (e.g., with item availability/quantity information).Illustrative programs 944 include a batch reserveitem processing program 958, areserve program 960, and apurchase program 962. Moreover, various applications, components, programs, objects, modules, etc. may also execute on one or more processors in another computer coupled to thecentral control system 920 via anetwork 916, in a distributed or client-server computing environment, whereby the processing required to implement the functions of a computer program may be allocated to multiple computers over the network. - Those skilled in the art will recognize that the exemplary environments illustrated in
FIG. 9 are not intended to limit the present invention. Indeed, those skilled in the art will recognize that other alternate hardware and/or software environments may be used without departing from the scope of the invention. -
FIGS. 10-15 depict embodiments of thedata structures 942. Each data structure is organized as a plurality of rows and columns. The columns designate a particular category of information while each row comprises a record in the data structure. For simplicity only one row/record of each data structure is shown. However, it is understood that the data structures may each comprise a plurality of rows/records. -
FIG. 10 illustrates an embodiment of the location table 946 containing location records. Each location record comprises a location identification (“ID”)entry 1002, aphysical location entry 1004, and adescription entry 1006. Anentry 1008 is representative of other entries which may be included in other embodiments. Thelocation ID entry 1002 contains a unique identifier for all vending machine locations in a collection of vending machines. In one embodiment, thelocation ID entry 1002 contains a network address for a vending machine. In an Internet-based implementation the network address is an Internet Protocol (IP) number. Thephysical location entry 1004 is a representation of the physical location of the vending machine. Illustratively, the physical location may be a longitude or latitude, a Global Polishing System (“GPS”) coordinate, a street address, a building address, a grid map coordinate used to map out the internals of a building, etc.Description entry 1006 is a brief description of the machine at the specified location (e.g., maintenance history, operator, manufacturer, etc.). -
FIG. 11 illustrates an embodiment of the product table 948. The product table 948 is a central repository of all products found within all vending locations. Each record of the table 948 corresponds to a particular item type at a particular location. The table 948 comprises alocation ID entry 1102, anitem ID entry 1104, a quantityavailable entry 1106, a quantity reservedentry 1108, and aprice entry 1110. Anentry 1112 is representative of other entries which may be included in other embodiments. Thelocation ID entry 1102 contains an address provided from one of thelocation ID entries 1002 and corresponds to a location where the item specified by the record is available. Theitem ID entry 1104 is used as a unique identifier to differentiate amongst products. The quantityavailable entry 1106 is the number of items available at the specified location. The quantity reservedentry 1108 is the number of items that have been reserved at the specified location. The difference between the quantity reserved and the quantity available indicates how many available items are available for purchase. Theprice entry 1110 indicates the price of the specified item (item ID entry 1104) in the specified location (location entry 1102). -
FIG. 12 illustrates an embodiment of the reserved item table 950. The reserved item table 950 identifies all items within all locations that have been reserved. Illustratively, the reserved item table 950 comprises alocation ID entry 1202, anitem ID entry 1204, acustomer ID entry 1206, aquantity entry 1208, apayment form entry 1210, a data andtime entry 1212, anon-fundable flag entry 1214, anon-refundable cost entry 1216, apre-paid entry 1218 and aconfirmation number entry 1220. Anentry 1222 is representative of other entries which may be included in other embodiments. Thelocation ID entry 1202 is a unique identifier that represents the location of an item being reserved and may be any of the locations specified by thelocation ID entries 1002. Theitem ID entry 1204 is a unique identifier that represents the item being reserved and corresponds to one of the identifiers contained initem ID entry 1104. Thecustomer ID entry 1204 is an optional column used to contain customer information such as a credit card number, a physical address, a social security number, etc. Thequantity entry 1208 is the number of items (entry 1204) that are on reserve. Thepayment form entry 1210 is a representation of how the item was or will be paid for. The payment form can be any of cash, coin, credit card, debit card, charge via phone etc. The date andtime entry 1212 is used to keep track of when the consumer is scheduled to pick up the reserved item. In general, the data and time is specified by the consumer or a vending machine operator. In one embodiment, an arbitrary grace period may be added to the date and time to allow the consumer some additional time to pick up the item. Thenon-refundable flag entry 1214 is used by an item distributor to charge the consumer a non-refundable processing fee if the item being reserved is not picked up by the time/date specified in the data andtime entry 1212. Thenon-refundable cost entry 1216 is an amount the customer is charged if the non-refundable flag is turned on (set to YES) and the specified time/date criteria are not satisfied by the customer. Thepre-paid entry 1218 indicates whether the item has been pre-paid (i.e., paid for prior to item pickup). If so, then the non-refundable flag is set to NO. Theconfirmation number entry 1220 contains some value or values representative of a particular reservation request. In one embodiment, the confirmation number is some combination of the values contained in the other entries of the reserved item table record. The number is provided to a customer if the reservation request is accepted by thereservation control system 920. The customer may then use the number to pickup the reserved item at a future time. - In one embodiment, reserving an item and prepaying for the item may result in a discount for the consumer, since this guarantees a sale to the distributor regardless of whether the item is picked up or not. Other incentive plans and features may also be provided.
-
FIG. 13 illustrates an embodiment of the missed sales table 952. The missed sales table 952 contains data used by a distributor to track items that could have been sold. Illustratively, the missed sales table 952 comprises a location ID entry 1302, an item ID entry 1304, a missed quantity entry 1306, and a reason entry 1308. Anentry 1310 is representative of other entries which may be included in other embodiments. The location ID entry 1302 is the unique machine location identifier described with reference to thelocation ID entry 1002 of the location table 946. The item ID entry 1304 is the unique item identifier described with reference toitem ID entry 1104 of the product table and represents an item that could not be sold. The number of items that could not be sold is contained in the missed quantity entry 1306. The reason description entry 1308 contains a brief description explaining why the item could not be sold. For example, the item may have been out of stock when a purchase request was made. This information may then be used for marketing and sales analysis. -
FIG. 14 illustrates one embodiment of the free money table 954. In general, the free money table 954 contains data used by a distributor to keep track of money the distributor makes without actually selling a product. An entry is added to this table for all non-refundable processing fees and all items that where pre-purchased and not picked up. Illustratively, the free money table 954 comprises alocation ID entry 1402, anitem ID entry 1404, aquantity entry 1406 and aprice entry 1408. Anentry 1410 is representative of other entries which may be included in other embodiments. Thelocation ID entry 1402 contains the unique location identifier described with reference to thelocation ID entry 1002 of the product table 946. Theitem ID entry 1404 contains the unique item identifier (entry 1104 of the product table 948) that represents the item being reserved. The number of items that were not sold is contained in thequantity entry 1406. The corresponding price of the unsold items, or the non-refundable processing fee associated with the item, is contained inprice entry 1408. -
FIG. 15 illustrates an embodiment of the non-refundable cost table 955. The non-recoverable cost table 955 is used and maintained by a distributor to determine non-recoverable costs for given items. Illustratively, the non-refundable cost table comprises alocation ID entry 1502, anitem ID entry 1504, and anon-recoverable cost entry 1506. - In operation, the
data structures 942 are used to facilitate reservation/purchase of items contained in thevending machines 902 1. In particular, the data structures are used by theprograms - In one embodiment, any of the
client devices 902 N may be configured with a graphical user interface (GUI) adapted to facilitate reserving vending machine items. In general, the GUI enables a user to select a pickup location and one or more items via a menu interface.FIG. 16 is an exemplary graphical user interface (GUI) 1600 which may be used to advantage by a consumer to carry out a reservation operation. TheGUI 1600 can be operated by any input device such as a keyboard, a mouse, a touchpad or voice recognition technology. - Illustratively, the
GUI 1600 includes a plurality of dropdown boxes each including one or more user selectable options. Alocation dropdown box 1620 contains all possible vending machine locations that are available. A user may then select one or more locations at which to reserve an item for purchase. It is contemplated that a more complex menu system may be provided; e.g., a map showing all locations could be provided and clicking the mouse over a location on the map would be equivalent as entering the location. A selection is provided for eachlocation ID entry 1002 of the location table 946. The location could also be defaulted to the nearest machine and/or the list contained with the dropdown box could be ordered by location. - An
item dropdown box 1640 will be populated once a location is selected fromdropdown box 1620. Until a location is selected fromdropdown box 1620 thedropdown box 1640 is disabled. Once enabled,dropdown box 1640 provides a list of all available products available from the location(s) specified by thedropdown box 1620. In other embodiments, theitem dropdown box 1640 may be implemented as a screen with product images. A user then selects an item(s) for reservation by clicking on an image of the appropriate item. In one embodiment, the user may also be provided with product information such as return dates (in the case of video rentals), warranty information, rebate information and the like. In still another embodiment, the user selects an item from theitem dropdown box 1620 and then selects a location from thelocation dropdown box 1620 wherein only the locations having the item available are shown. - Once an item has been selected, a
quantity window 1650 is made available. Thewindow 1650 allows the consumer to enter the number of items to be reserved. In one embodiment, the window may indicate a number of the selected items currently available. - A
pre-pay check box 1660 will allow the user to prepay for the item(s). It is contemplated that by checking check box 1660 a discount may be provided to the consumer. In one embodiment, ifcheck box 1660 is not checked, then the consumer is charged a processing fee if they do not pick up or purchase the reserved item within a specified time. The specified time may be entered using adate box 1665 and atime box 1667 are used to enter the data and time, respectively, of the intended pickup of the product(s) being reserved. In one embodiment, the date and time may be provided by the machine executing theGUI 1600, rather than allowing the consumer to specify the date/time. - If the consumer indicates a desire to pre-pay, then a
payment form window 1662 is made active. Thewindow 1662 provides a list of possible payment forms including, for example, a selection of credit cards. In addition, entries may be provided withinwindow 1662 in which to enter credit card information. - After entering the reservation order information, the user then clicks an
Enter button 1680 to accept the order or a Cancelbutton 1685 to cancel the order. In the event the Enter button is pressed, processing of the data is then performed and a result is returned in themessage area 1690. It is also contemplated that instead of a textual message form, the machine providing theGUI 1600 could print out the transaction in the form of a receipt or provide an auditory output. -
FIG. 17 depicts a method 1700 for handling input requests for reserving items. Illustratively, method 1700 is entered into atstep 1702 when the consumer launches thereservation program 960 via, for example, theGUI 1600. - Initialization work is done by the
program 960 atstep 1705. When theuser executing program 960 clicks theenter button 1680 theprogram 960 proceeds to step 1710 where the reservation order information input to theGUI 1600 is received. - At
step 1720, method 1700 determines if the item (and quantity) being requested is available. Thus, a reference toentry 1106 of the product table 948 is made using the specified items and location IDs. If the item is available, method 1700 proceeds to step 1725 to query whether the consumer has elected to pre-purchase the item. If so, the item is added to the reserved item table 950 atstep 1730. Atstep 1731, a message is output to themessage area 1690 to inform the consumer that the item has been reserved. In addition, the message may include a confirmation number (stored to the confirmation number entry 1220) which the consumer may use to pick up the item at a future time. The method 1700 then exits atstep 1732. - If, at
step 1725, the item was not pre-purchased then method 1700 proceeds to 1735 to get a non-refundable fee amount from the non-refundable cost table 955. The non-refundable fee is retrieved from the non-refundable cost table 955 and will be charged to the customer if the consumer does not pick up the intended item within a specified time period (as indicated by date andtime checkboxes step 1730, the purchase order information (e.g., location ID, item ID, item quantity, date/time information, pre-pay information, and payment form) is included in a record and entered as a row in the reserved item table 950. If the consumer has prepaid then the flag inentry 1214 of the record is set to “Y”. Atstep 1731, a message is output to themessage area 1690 to inform the consumer that the item has been reserved. The method 1700 then terminates atstep 1732. - Referring back to 1720, if the item is not available then the user is asked if they would like to process additional locations for the item. This may be done by outputting a message to the
message area 1690. If the user desires not to process more locations, e.g., by clicking the cancelbutton 1685, method 1700 proceeds to step 1745. At step 1745 a “thank you”message may be output to themessage area 1690 and the method 1700 is exited atstep 1732. - If the user desires to process more locations the
ENTER button 1680 is pressed and method 1700 continues to step 1750 where the location table is copied. Atstep 1755, the location table 946 is sorted by proximity of location relative to a current location (i.e., the location of the customer). Method 1700 then proceeds to loop through all locations atstep 1760, processing the data in order such that the first available item found will break the loop. Specifically, method 1700 loops by retrieving a location record at step 1645 and determining whether the item is available at the specified location at step 1770 (by checking the product table 948). If the item is not available, method 1700 returns to step 1760. In this manner, the loop continues until all location records are exhausted. - If the item is not located, then the loop eventually ends by exiting to step 1785 where a message is output to the consumer indicating that the item is not available. If at any time during the loop the product is found, then the method 1700 proceeds to step 1725 to query whether the consumer has elected to pre-pay (by activating checkbox 1660).
Step 1725 and subsequent steps have been described above. -
FIG. 18 depicts a flow diagram of amethod 1800 for handling purchases of items at avending machine 902 1. The purchases may be for reserved items (i.e., items reserved via method 1700) and unreserved items. Illustratively,method 1800 is an embodiment exemplifying the operation of thepurchase program 962.Method 1800 is entered atstep 1802 and proceeds to step 1805 to wait on an event. Atstep 1810method 1800 retrieves an event for processing.Method 1800 continues immediately to step 1815 to query whether the event is to purchase an item. If not, processing proceeds to step 1820 to perform normal machine operations.Method 1800 then returns to step 1805 to wait on another event. - If, at
step 1815, the event is a purchase event, thenmethod 1800 proceeds to step 1825 to query whether the purchase event is a reserve purchase (i.e., a request to purchase an item previously reserved via method 1700). If not,method 1800 proceeds to step 1830 where it is determined if a sufficient quantity of the item is available for purchase. Thus,step 1830 includes a reference to theentry 1106 of the product table 948 for the machine being interfaced with (as determined by the location ID). If the item is not available, then at step 1835 a message is sent to the message area at 1690 stating that all remaining items (if any) are reserved and the product is not available to be purchased. Ifstep 1830 is answered affirmatively, thenmethod 1800 proceeds to step 1820 and a sale of the item is completed. Upon such a sale themethod 1800 returns to step 1805 to wait on another event. - Referring back to
step 1825, if the purchase is a reserve purchase,method 1800 proceeds to step 1840 where it is determined whether the item was pre-paid. If so, then processing continues atstep 1845 where the appropriate entry is removed from the reserved item table 950. The item is then dispensed atstep 1850. If the item was not pre-paid, processing continues fromstep 1840 to step 1855 where the consumer's purchase order is handled (e.g., money is accepted) and then to step 1845 where the appropriate entry is removed from the reserved item table 950.Method 1800 then returns to step 1805 to wait on another event. -
FIG. 19 depicts a flow diagram of amethod 1900 for cleaning up the reserve item table 950 and populating the free money table 954 with unhandled reserved item requests.Method 1900 may be understood as one embodiment exemplifying the operation of thebatch reserve program 958. -
Method 1900 is entered atstep 1902 and then enters a loop atstep 1905. The loop is performed for each record in the reserved item table 950. A record is read atstep 1910 and atstep 1915 it is determined if the time and date in the record (entry 1212) have passed. If not, thenmethod 1900 returns to step 1905 to loop through the remaining records of the reserved item table 950. If, atstep 1915, the time and date have passed then processing continues atstep 1920 where the appropriate record is removed from the reserved item table 950.Method 1900 then proceeds to step 1925. - At
step 1925, themethod 1900 queries whether the item was pre-paid. If so, an entry is added to the free money table 954 indicating that the item was not picked up atstep 1930 and themethod 1900 returns to step 1905 to process the next record. If the item was not a pre-paid, then processing continues atstep 1935 where it is determined whether there will be non-refundable charge with reference to the flag atentry 1214 of the current reserved item table record. If a non-refundable charge exists then, atstep 1940, an entry is added to the free money table 954 reflecting the fact that a non-refundable charge was applied (e.g., against the consumer's credit card) in the amount specified byentry 1218 of the current reserved item table record.Method 1900 then returns to step 1905 to begin processing the next record. If, atstep 1935, there is no non-refundable charge,method 1900 returns to step 1905. Once all records have been processed, thenmethod 1900 proceeds to step 1950 where theprogram 958 waits by some pre-determined amount of time before processing the reserved item tables 950 again. - In each of the foregoing embodiments the customer is typically expected to pay for the purchased item(s). For example, the customer may insert bills into the cash acceptor interface 114 (shown in
FIG. 1 ). However, as described above, in some cases the transaction is corrupted, such that the customer is charged for an item he/she never receives or for defective goods or services. In such instances, embodiments for recovery of funds paid are provided. -
FIG. 20 shows arefund processing machine 2000. In one embodiment, therefund processing machine 2000 is a vending machine illustrative of a machine such as the vending machines 104 1, 104 2, . . . 104 N described above with reference toFIGS. 1-2 . In another embodiment, themachine 2000 is a refund processing computer remotely located from vending machines and accessible from a plurality of devices. For example, therefund processing machine 2000 may be implemented similarly to thecentral control system 920. For simplicity, the following discussion assumes that themachine 2000 is a vending machine. Further, the components of themachine 2000 may be similar to those described above with reference toFIG. 3 . Accordingly, where possible, like numerals have been used to identify components previously discussed with reference toFIG. 3 . - The
CPU 302 of thevending machine 2000 is shown configured with arefund program 2002, which may be loaded frommemory 304 for execution. Thememory 304 contains data structures which may be utilized by therefund program 2002 during execution. Illustratively, thememory 304 contains arefund file 2004. -
FIG. 21 shows one embodiment ofillustrative refund file 2004. Therefund file 2004 includes a record for each refund request processed by thevending machine 2000. Each record comprises a number of entries corresponding to column designations. Illustratively, each record includes acustomer ID entry 2102, apayment form entry 2104, anitem entry 2106, aquantity entry 2108, adate entry 2110, atotal cost entry 2112, and arefund flag entry 2114. Anentry 2116 is representative of other columns that may be included in other embodiments. - The
customer ID entry 2102 may contain any value or values that identify a customer. For example, a Social Security number may be used. Alternatively, a customer name and address may be used. Thepayment form entry 2104 indicates the means by which a customer paid for a particular item. Payment forms include, for example, credit cards, debit cards, checks, cash etc. In the case of credit cards and debit cards thepayment form entry 2104 may also include card information such as a card number and expiration date. The item (or service) which a customer purchased or attempted to purchase, and for which a refund is being requested, is indicated byitem entry 2106. The quantity of items purchased is contained in thequantity entry 2108. The date of the purchase transaction is contained in thedate entry 2110. The total cost of the transaction is contained in thetotal cost entry 2112. Therefund flag entry 2114 indicates whether the customer was refunded for the transaction represented by the record. -
FIG. 22 shows amethod 2200 for handling a refund request. Themethod 2200 may be understood as one embodiment illustrating the execution of therefund program 2002. -
Method 2200 is entered atstep 2202 and then proceeds to step 2204 to wait on an event. When an event is received, themethod 2200 proceeds to step 2206 and queries whether the event is a refund request. A refund request may be initiated by a refund requester (e.g., consumer) selecting a refund option provided on an output device (e.g., thedisplay 108 shown inFIG. 1 ) following a purchase order. The purchase order may be for an item at the machine with which the customer is interfacing or an item at a remotely located machine on the network of machines. In some embodiments, the refund option may only be provided when thevending machine 2000 detects a corrupted transaction. For example, thevending machine 2000 may detect that the purchased item is lodged in the dispensation slot 112 (shown inFIG. 1 ) or that the customer's money is lodged in the coin acceptor. In another embodiment, the refund option is provided after every transaction. In still another embodiment, the customer may required to agree to a charge (in the amount of the requested refund) to a credit card (or similar instrument) if a subsequent investigation indicates that the refund was not merited. In this latter embodiment, the agreement of the customer to a possible charge may be attained via the input interface (e.g., theinput interface 110 shown inFIG. 1 ) of the vending machine. - In yet another embodiment, only select customers are allowed refunds. For example, those customers who repeatedly purchase an item and have purchased a threshold number of items (i.e., loyal repeat customers) may receive refunds upon request. The historical purchase data of customers is maintained with reference to the customer ID described above. Thus, a record for each purchase by a given customer may exist. When a refund is requested, the database of records for the requesting customer is accessed to determine the customer's purchase history. Statistical algorithms may then be performed to determine the customer's eligibility for a refund. The refund approval may depend on such factors as the frequency with which the customer makes purchases for the item on which the refund is being requested, the total volume (in dollars) of sales to the customer at vending machines, the ratio of the refund to the sales, etc. In some cases, the customer's credit history may be checked to determine financial responsibility, in much the same way credit history analysis is performed by lending institutions and credit card issuers.
- If the event is not a refund request, the event is handled at
step 2208 and themethod 2200 then returns to step 2204 to wait on another event. If the event is a refund request, themethod 2200 proceeds fromstep 2206 to step 2210 and queries whether a refund is available. In one embodiment, the determination atstep 2210 includes a reference to therefund file 2004 to determine whether the customer qualifies for a refund. For example, a determination may be made as to whether the customer requesting the refund has requested refunds in the past. If the customer has previously requested refunds, steps may be taken to restrict the number of refunds and/or the amount of money refunded in a given time period. In some embodiments, a customer who repeatedly requested refunds is prevented from making additional purchases at thevending machine 2000, or any other networked vending machine. Of course, this latter embodiment assumes payment forms (e.g., credit cards) which allow thevending machine 2000 to identify the customer before completing the purchase order. In another embodiment, a network of vending machines may collectively have an upper limit on refunds. When the limit is reached, no vending machine on the network will issue any more refunds. Alternatively or additionally, eachvending machine 2000 may be configured with its own upper limit. - If a refund is not available at
step 2210, themethod 2200 proceeds to step 2212 where a message is issued to the customer indicating that a refund is not available. A reason for the refund unavailability may also be provided to the customer. - If a refund is available at
step 2210, themethod 2200 proceeds to step 2214 where the refund is applied. The manner in which the refund is applied may depend upon the payment forms selected by the customer. For example, in the case of a credit card purchase, the refund may be applied to the customer's credit card. In the case of a check purchase, the check is returned to the customer. Themethod 2200 then returns to step 2204 to wait on another event. - In another embodiment, instead of issuing a refund, the vending machine with which the customer is interfacing may attempt to locate the item for which the refund is requested at another vending machine. This attempt may be made automatically by the vending machine with which the customer is interfacing in response to the refund request or may be made at the option of the customer. Embodiments for locating a vending machine item have been described above. If the item can be located at another machine, the user is provided with the option to retrieve the item at the other machine. If more than one machine carries the item, the user may elect which machine to retrieve the item from. Retrieval of the item may be facilitated by issuing the customer a retrieval identification number which may be input to any networked vending machine carrying the item.
- In some embodiments, the information made available by the
refund file 2004 is used for maintenance purposes and failure analysis. For example, a vending machine at which numerous refunds are requested may be indicative of a defective machine. Accordingly, the machine may be evaluated and, if necessary, repaired before returning the machine to operation. - It should be noted that while the
refund program 2002 and the inventory program 310 (and their associated data structures) are shown separately (inFIG. 20 andFIG. 3 , respectively), in some embodiments a vending machine is configured with bothprograms - While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
Claims (11)
1. A method of requesting a refund for a purchase order of a vending machine item, comprising:
receiving, at a vending machine, a payment amount for the vending machine item;
receiving an electronic refund request for at least a portion of the payment amount; and
determining whether to refund the portion.
2. The method of claim 1 , wherein determining whether to refund the portion comprises:
transmitting by the vending machine via a network connection with a network of vending machines, a request for the item at another vending machine in the network of vending machines; and
receiving, at the vending machine, a response indicative of whether the item is available at at least one other vending machine;
if the item is available at at least one other vending machine, providing an option to a refund requestor to retrieve the item at the at least one other vending machine.
3. The method of claim 1 , wherein the electronic refund request is received at the vending machine.
4. The method of claim 1 , wherein the electronic refund request is received at a refund processing computer networked to the vending machine.
5. The method of claim 1 , further comprising refunding the portion of the payment amount.
6. The method of claim 1 , wherein determining whether to refund the portion comprises determining whether a requestor of the refund is a repeat customer.
7. The method of claim 1 , wherein determining whether to refund the portion comprises determining whether a requestor of the refund has previously requested a vending machine refund within a predetermined time period.
8. The method of claim 1 , further comprising receiving, at the vending machine, the purchase order for the vending machine item.
9. The method of claim 1 , further comprising refunding the portion if customer information stored in a database satisfies refund conditions.
10. The method of claim 9 , wherein the refund conditions comprise a threshold number of purchases made by a requester of the refund.
11. A method for deploying computing infrastructure, comprising integrating computer readable code into a computing system, wherein the code in combination with the computing system is capable of performing a method of requesting a refund for a purchase order of a vending machine item, comprising:
receiving, at a vending machine, a payment amount for the vending machine item;
receiving an electronic refund request for at least a portion of the payment amount; and
determining whether to refund the portion.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/003,876 US20050080510A1 (en) | 2001-05-03 | 2004-12-03 | Determining the availability of purchasable items in a network environment |
US12/025,074 US20080125906A1 (en) | 2001-05-03 | 2008-02-04 | Determining the availability of purchasable items in a network environment |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/848,573 US7870029B2 (en) | 2001-05-03 | 2001-05-03 | Determining the availability of purchasable items in a network environment |
US11/003,876 US20050080510A1 (en) | 2001-05-03 | 2004-12-03 | Determining the availability of purchasable items in a network environment |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/848,573 Division US7870029B2 (en) | 2001-05-03 | 2001-05-03 | Determining the availability of purchasable items in a network environment |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/025,074 Division US20080125906A1 (en) | 2001-05-03 | 2008-02-04 | Determining the availability of purchasable items in a network environment |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050080510A1 true US20050080510A1 (en) | 2005-04-14 |
Family
ID=25303671
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/848,573 Expired - Fee Related US7870029B2 (en) | 2001-05-03 | 2001-05-03 | Determining the availability of purchasable items in a network environment |
US11/003,876 Abandoned US20050080510A1 (en) | 2001-05-03 | 2004-12-03 | Determining the availability of purchasable items in a network environment |
US12/025,074 Abandoned US20080125906A1 (en) | 2001-05-03 | 2008-02-04 | Determining the availability of purchasable items in a network environment |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/848,573 Expired - Fee Related US7870029B2 (en) | 2001-05-03 | 2001-05-03 | Determining the availability of purchasable items in a network environment |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/025,074 Abandoned US20080125906A1 (en) | 2001-05-03 | 2008-02-04 | Determining the availability of purchasable items in a network environment |
Country Status (1)
Country | Link |
---|---|
US (3) | US7870029B2 (en) |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064347A1 (en) * | 2002-09-26 | 2004-04-01 | Vanorman Stacy L. | Movie rental and notification system |
WO2006050563A1 (en) * | 2004-11-12 | 2006-05-18 | Barista Holdings Pty Ltd | Liquid beverage dispensing machine including management and operation intelligence |
US20060272922A1 (en) * | 2005-04-22 | 2006-12-07 | Eric Hoersten | System and method for offline vending of a media product |
US20090089187A1 (en) * | 2007-09-28 | 2009-04-02 | Redbox Automated Retail, Llc | Article Vending Machine And Method for Auditing Inventory While Article Vending Machine Remains Operational |
US8060247B2 (en) | 2005-04-22 | 2011-11-15 | Redbox Automated Retail, Llc | System and method for communicating secondary vending options |
US8538581B2 (en) | 2010-09-03 | 2013-09-17 | Redbox Automated Retail, Llc | Article vending machine and method for authenticating received articles |
US8712872B2 (en) | 2012-03-07 | 2014-04-29 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US8768789B2 (en) | 2012-03-07 | 2014-07-01 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US8996162B2 (en) | 2009-09-05 | 2015-03-31 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US9104990B2 (en) | 2009-09-05 | 2015-08-11 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
CN105324714A (en) * | 2013-04-08 | 2016-02-10 | 罗尼·哈伊 | Computer controlled, unattended, automated checkout retail store |
US9286617B2 (en) | 2011-08-12 | 2016-03-15 | Redbox Automated Retail, Llc | System and method for applying parental control limits from content providers to media content |
US9349238B2 (en) | 2013-03-13 | 2016-05-24 | Pantry Retail, Inc. | Vending kit and method |
US9348822B2 (en) | 2011-08-02 | 2016-05-24 | Redbox Automated Retail, Llc | System and method for generating notifications related to new media |
US9495465B2 (en) | 2011-07-20 | 2016-11-15 | Redbox Automated Retail, Llc | System and method for providing the identification of geographically closest article dispensing machines |
US9569911B2 (en) | 2010-08-23 | 2017-02-14 | Redbox Automated Retail, Llc | Secondary media return system and method |
US9747253B2 (en) | 2012-06-05 | 2017-08-29 | Redbox Automated Retail, Llc | System and method for simultaneous article retrieval and transaction validation |
US9785996B2 (en) | 2011-06-14 | 2017-10-10 | Redbox Automated Retail, Llc | System and method for substituting a media article with alternative media |
US10083430B2 (en) | 2012-06-08 | 2018-09-25 | Ronny Hay | Computer-controlled, unattended, automated checkout store outlet system and related method |
US20190244465A1 (en) * | 2018-02-05 | 2019-08-08 | Romaine Empire, Inc. | Systems and methods for reservations at a vending machine |
US10810822B2 (en) | 2007-09-28 | 2020-10-20 | Redbox Automated Retail, Llc | Article dispensing machine and method for auditing inventory while article dispensing machine remains operable |
US20220292577A1 (en) * | 2021-03-10 | 2022-09-15 | T-Mobile Usa, Inc. | Multi-user support and multi-node coordination for automated retail systems |
US11468468B2 (en) | 2015-01-30 | 2022-10-11 | PayRange Inc. | Method and system for providing offers for automated retail machines via mobile devices |
US11475454B2 (en) | 2013-12-18 | 2022-10-18 | PayRange Inc. | Intermediary communications over non-persistent network connections |
US11481772B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Method and system for presenting representations of payment accepting unit events |
US11481780B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Method and system for asynchronous mobile payments for multiple in-person transactions conducted in parallel |
US11481781B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Processing interrupted transaction over non-persistent network connections |
US11488174B2 (en) | 2013-12-18 | 2022-11-01 | PayRange Inc. | Method and system for performing mobile device-to-machine payments |
US11494751B2 (en) | 2013-12-18 | 2022-11-08 | PayRange Inc. | Systems and methods for determining electric pulses to provide to an unattended machine based on remotely-configured options |
US11935051B2 (en) | 2013-12-18 | 2024-03-19 | Payrange, Inc. | Device and method for providing external access to multi-drop bus peripheral devices |
US11966926B2 (en) | 2013-12-18 | 2024-04-23 | PayRange Inc. | Method and system for asynchronous mobile payments for multiple in-person transactions conducted in parallel |
US11966895B2 (en) * | 2013-12-18 | 2024-04-23 | PayRange Inc. | Refund centers for processing and dispensing vending machine refunds via an MDB router |
US11983692B2 (en) | 2013-12-18 | 2024-05-14 | PayRange Inc. | Mobile payment module with dual function radio transmitter |
US12086811B2 (en) | 2013-12-18 | 2024-09-10 | PayRange Inc. | Processing interrupted transactions over non-persistent network connections |
US12093962B2 (en) | 2013-12-18 | 2024-09-17 | PayRange Inc. | Intermediary communications over non-persistent network connections |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6644495B2 (en) * | 1997-04-22 | 2003-11-11 | Distributed Vending Company | Processing method for vending machine with substitutable magazines |
US7690495B1 (en) | 2001-03-26 | 2010-04-06 | Usa Technologies, Inc. | Card reader assembly |
US8596529B1 (en) | 2001-03-26 | 2013-12-03 | Usa Technologies, Inc. | Interactive interface effectuated vending |
US7076329B1 (en) | 2002-04-12 | 2006-07-11 | Usa Technologies, Inc. | Cashless vending transaction management by a vend assist mode of operation |
US7593897B1 (en) | 2001-06-19 | 2009-09-22 | Usa Technologies, Inc. | Wireless system for communicating cashless vending transaction data and vending machine audit data to remote locations |
US7865430B1 (en) | 2001-03-26 | 2011-01-04 | Usa Technology, Inc. | Cashless transaction payment module |
US8386323B1 (en) * | 2001-07-30 | 2013-02-26 | Amazon Technologies, Inc. | Determining item availability |
IL155095A (en) | 2003-03-26 | 2004-09-27 | Shmuel Poliner | Interactive automated article dispensing system |
US7627496B2 (en) * | 2004-12-09 | 2009-12-01 | Walker Digital, Llc | Systems and methods for vending machine customer account management |
US7739181B2 (en) | 2003-12-09 | 2010-06-15 | Walker Digital, Llc | Products and processes for establishing multi-transaction relationships with customers of vending machines |
US7788595B2 (en) * | 2004-03-08 | 2010-08-31 | Sap Ag | Method and system for switching among management system applications |
US7813961B2 (en) * | 2004-03-08 | 2010-10-12 | Sap Ag | System and method for planning, allocation, and purchasing |
US8620722B2 (en) * | 2004-03-08 | 2013-12-31 | Sap Aktiengesellschaft | System and method for organizing an enterprise |
US7455223B1 (en) | 2005-08-29 | 2008-11-25 | Bob Jones University | RFID-based method for a networked cashless vending system |
US20100262280A1 (en) * | 2009-04-13 | 2010-10-14 | Miller Michael A | Display-Based Vending Apparatus and Method |
US10242394B2 (en) * | 2010-01-19 | 2019-03-26 | Amir Dabiri | Vending machine with user id/age verification system and associated method |
US11017395B2 (en) * | 2010-01-19 | 2021-05-25 | Amir Dabiri | Vending machine with user ID/age verification system and associated method |
US9466082B1 (en) * | 2010-01-19 | 2016-10-11 | Amir Dabiri | Vending machine with user ID/age verification system and associated method |
US20140148946A1 (en) * | 2010-11-08 | 2014-05-29 | Junfang Zhang | Sales kiosk |
US20120158545A1 (en) * | 2010-12-20 | 2012-06-21 | Ebay, Inc. | Mobile on-the-spot shopping and payments |
US8498738B2 (en) * | 2010-12-21 | 2013-07-30 | Ncr Corporation | Methods to broadcast status of a self-service dispensing device |
US20110238296A1 (en) * | 2011-04-29 | 2011-09-29 | Connor Kent Purks | Computer order handling system providing transferrable order delivery through networked electronic kiosks |
ES2373904B1 (en) * | 2011-08-05 | 2012-12-21 | Francisco Javier Cruz Abreu | DISPENSING SYSTEM OF ITEMS OF EXPENDING MACHINES. |
US20130275237A1 (en) * | 2012-04-16 | 2013-10-17 | Wal-Mart Stores, Inc. | Processing Online Transactions |
WO2015048496A1 (en) * | 2013-09-26 | 2015-04-02 | Amazon Technologies, Inc. | Mobile transactions with a kiosk management system |
US9984352B2 (en) | 2013-09-26 | 2018-05-29 | Amazon Technologies, Inc. | Kiosk network in a kiosk management system |
US10600095B2 (en) * | 2013-09-26 | 2020-03-24 | Amazon Technologies, Inc. | Kiosk management system |
US9972046B2 (en) | 2013-09-26 | 2018-05-15 | Amazon Technologies, Inc. | Mobile transactions with a kiosk management system |
WO2015060875A1 (en) * | 2013-10-25 | 2015-04-30 | Empire Technology Development Llc | Associating user activities with communication connection services |
CN107251063A (en) | 2014-12-24 | 2017-10-13 | 斯威夫特有限公司 | System and method for promoting goods to provide |
WO2017049220A1 (en) | 2015-09-17 | 2017-03-23 | Laundry 2.0, LLC | System for commercial laundry services and facilities |
US10275975B2 (en) * | 2016-08-19 | 2019-04-30 | Walmart Apollo, Llc | Apparatus and method for mobile vending |
CN108831012B (en) * | 2018-05-09 | 2021-03-30 | 北京京东尚科信息技术有限公司 | Vending method and device of vending machine |
WO2020014608A1 (en) | 2018-07-12 | 2020-01-16 | Walmart Apollo, Llc | Automated storage retrieval system connection and communication protocol |
US20200019929A1 (en) | 2018-07-12 | 2020-01-16 | Walmart Apollo, Llc | Autonomous storage and retrieval tower |
US20200172337A1 (en) | 2018-10-31 | 2020-06-04 | Walmart Apollo, Llc | Systems and Methods for Object Storage and Retrieval |
CN109887162A (en) * | 2018-11-15 | 2019-06-14 | 安徽点为科技有限公司 | A kind of automatic vending machine with multi-functional payment and intelligent temperature control effect |
CN109816853A (en) * | 2018-11-15 | 2019-05-28 | 安徽点为科技有限公司 | A kind of automatic vending machine with network savvy |
WO2020118227A1 (en) * | 2018-12-06 | 2020-06-11 | Walmart Apollo, Llc | Systems and methods for object storage and retrieval |
CN109767286A (en) * | 2018-12-12 | 2019-05-17 | 合肥美的智能科技有限公司 | Order processing method and system, unmanned retail equipment and terminal |
US11514745B1 (en) * | 2019-08-01 | 2022-11-29 | Tech Friends, Inc. | Remote purchase and automated delivery system for controlled access facilities |
US11734987B2 (en) * | 2020-07-28 | 2023-08-22 | Rakuten Group, Inc. | Vending machine control system, vending machine, and information output method |
Citations (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3703229A (en) * | 1969-12-10 | 1972-11-21 | Gkn Sankey Ltd | Coin-operated vending machines |
US3826344A (en) * | 1969-04-16 | 1974-07-30 | E Wahlberg | Apparatus for transacting business |
US3841456A (en) * | 1973-07-23 | 1974-10-15 | H R Electronics Co | Control circuit for vending and other coin controlled devices |
US4690263A (en) * | 1983-11-08 | 1987-09-01 | Fuji Electric Co., Ltd. | Coin refund signal generator |
US5084845A (en) * | 1990-12-12 | 1992-01-28 | Coin Acceptors, Inc. | Selection control and indication means |
US5445295A (en) * | 1992-01-17 | 1995-08-29 | Brown; Graham | Automated vending machine system for recorded goods |
US5450938A (en) * | 1994-05-02 | 1995-09-19 | Xcp, Inc. | Card or cash actuated vending machine assembly |
US5615264A (en) * | 1995-06-08 | 1997-03-25 | Wave Systems Corp. | Encrypted data package record for use in remote transaction metered data system |
US5648906A (en) * | 1995-07-31 | 1997-07-15 | Amirpanahi; Fardosht | Networked computerized parking system of networked computerized parking meters and a method of operating said system |
USRE35649E (en) * | 1992-06-05 | 1997-11-04 | Kaspar Wire Works, Inc. | Method and apparatus for the control of a multiple of door accessible newspaper vending cabinets with a single vend control mechanism operating remote door latches |
US5799281A (en) * | 1996-01-23 | 1998-08-25 | E.L.M.S., Llc | Computer control and management system for laundry installation |
US5884807A (en) * | 1997-03-11 | 1999-03-23 | Kwangju Electronics Co., Ltd. | Vending machine for a sequential purchase of goods |
US5914886A (en) * | 1996-07-11 | 1999-06-22 | Kwangju Electronics Co., Ltd. | Goods selecting apparatus and method for automatic vending machine |
US5924081A (en) * | 1995-11-14 | 1999-07-13 | Audit Systems Co. | Vending machine audit monitoring system with matrix interface |
US5933814A (en) * | 1994-07-14 | 1999-08-03 | Rosenberg; Andreas | Automatic goods ordering process and device for sale facilities |
US5943423A (en) * | 1995-12-15 | 1999-08-24 | Entegrity Solutions Corporation | Smart token system for secure electronic transactions and identification |
US5947328A (en) * | 1997-03-26 | 1999-09-07 | Parkway Machine Corporation | Electronic bulk vending machine system |
US6039250A (en) * | 1995-07-06 | 2000-03-21 | Hitachi, Ltd. | Electronic money sending system |
US6056194A (en) * | 1995-08-28 | 2000-05-02 | Usa Technologies, Inc. | System and method for networking and controlling vending machines |
US6068183A (en) * | 1998-04-17 | 2000-05-30 | Viztec Inc. | Chip card system |
US6070156A (en) * | 1997-09-26 | 2000-05-30 | Gilbarco Inc. | Providing transaction estimates in a fueling and retail system |
US6073840A (en) * | 1997-09-26 | 2000-06-13 | Gilbarco Inc. | Fuel dispensing and retail system providing for transponder prepayment |
US6089284A (en) * | 1998-09-24 | 2000-07-18 | Marconi Commerce Systems Inc. | Preconditioning a fuel dispensing system using a transponder |
US6098879A (en) * | 1997-09-26 | 2000-08-08 | Gilbarco, Inc. | Fuel dispensing system providing customer preferences |
US6131085A (en) * | 1993-05-21 | 2000-10-10 | Rossides; Michael T | Answer collection and retrieval system governed by a pay-off meter |
US6151588A (en) * | 1994-10-13 | 2000-11-21 | Tradecard, Inc. | Full service trade system |
US6186308B1 (en) * | 1999-04-21 | 2001-02-13 | Can & Bottle Systems, Inc. | Reverse vending machine |
US6212262B1 (en) * | 1999-03-15 | 2001-04-03 | Broadpoint Communications, Inc. | Method of performing automatic sales transactions in an advertiser-sponsored telephony system |
US6249578B1 (en) * | 1998-04-06 | 2001-06-19 | Ameritech Corporation | Interactive electronic ordering for telecommunications products and services |
US6304796B1 (en) * | 1999-12-07 | 2001-10-16 | Linda Ding | Vending machine operated by a chip card |
US6308887B1 (en) * | 1997-12-02 | 2001-10-30 | Cash Technologies, Inc. | Multi-transactional architecture |
US20020004690A1 (en) * | 1999-10-12 | 2002-01-10 | Paulucci Jeno F. | Vending machine |
US6339731B1 (en) * | 1999-09-03 | 2002-01-15 | Mars Incorporated | Configurable vending machine audit module |
US6367696B1 (en) * | 1999-02-05 | 2002-04-09 | Hitachi, Ltd. | IC card processing device, automatic vending device, and selling method |
US6430711B1 (en) * | 1998-01-06 | 2002-08-06 | Seiko Epson Corporation | System and method for monitoring the state of a plurality of machines connected via a computer network |
US6439345B1 (en) * | 1996-05-22 | 2002-08-27 | Sears, Roebuck And Co. | Item pick-up system |
US6450407B1 (en) * | 1998-04-17 | 2002-09-17 | Viztec, Inc. | Chip card rebate system |
US6546373B1 (en) * | 1999-01-18 | 2003-04-08 | Mastercard International Incorporated | System and method for recovering refundable taxes |
US6794634B2 (en) * | 1998-04-29 | 2004-09-21 | Automated Merchandising Systems, Inc. | Optical vend-sensing system for control of vending machine |
US6807532B1 (en) * | 1998-07-20 | 2004-10-19 | Usa Technologies, Inc. | Method of soliciting a user to input survey data at an electronic commerce terminal |
US6941285B2 (en) * | 2000-04-14 | 2005-09-06 | Branko Sarcanin | Method and system for a virtual safe |
US6957186B1 (en) * | 1999-05-27 | 2005-10-18 | Accenture Llp | System method and article of manufacture for building, managing, and supporting various components of a system |
US6959230B1 (en) * | 2001-10-03 | 2005-10-25 | Coin Acceptors, Inc. | Vending machine system and method |
US7003501B2 (en) * | 2000-02-11 | 2006-02-21 | Maurice Ostroff | Method for preventing fraudulent use of credit cards and credit card information, and for preventing unauthorized access to restricted physical and virtual sites |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3275342A (en) * | 1964-06-15 | 1966-09-27 | Layton Mfg Co | Mechanism for attaching trailing and lead vehicles |
US3691527A (en) * | 1965-07-10 | 1972-09-12 | Omron Tateisi Electronics Co | Credit card actuated vending machine system |
US3401830A (en) * | 1967-01-19 | 1968-09-17 | San Francisco Bay Area Rapid T | Vending machine for credit card purchasing |
US3838885A (en) * | 1973-02-05 | 1974-10-01 | Challenge Cook Bros Inc | Hydraulic system for controlling truck carried apparatus |
US3880393A (en) * | 1973-06-04 | 1975-04-29 | Conco Inc | Load balancer with balance override control |
US4766581A (en) * | 1984-08-07 | 1988-08-23 | Justin Korn | Information retrieval system and method using independent user stations |
US5207784A (en) * | 1989-03-09 | 1993-05-04 | Wilbur Schwartzendruber | Vending machine with monitoring system |
US5080924A (en) * | 1989-04-24 | 1992-01-14 | Drexel University | Method of making biocompatible, surface modified materials |
US5091713A (en) * | 1990-05-10 | 1992-02-25 | Universal Automated Systems, Inc. | Inventory, cash, security, and maintenance control apparatus and method for a plurality of remote vending machines |
US5159560A (en) * | 1990-06-25 | 1992-10-27 | Newell William C | Automated merchandise dispensing and retrieval system |
JP3124074B2 (en) * | 1991-09-30 | 2001-01-15 | 富士通株式会社 | Information vending machine |
AUPM461094A0 (en) * | 1994-03-21 | 1994-04-14 | Imaging Technologies Pty Limited | Electronic ordering system |
US5794207A (en) * | 1996-09-04 | 1998-08-11 | Walker Asset Management Limited Partnership | Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers |
BR9507545A (en) * | 1994-04-28 | 1997-08-05 | Music Vending Inc | Music selling system |
US6193154B1 (en) * | 1994-08-24 | 2001-02-27 | The Coca-Cola Company | Method and apparatus for vending goods in conjunction with a credit card accepting fuel dispensing pump |
US5637845A (en) * | 1994-12-12 | 1997-06-10 | Usa Technologies, Inc. | Credit and bank issued debit card operated system and method for controlling a prepaid card encoding/dispensing machine |
US5619024A (en) * | 1994-12-12 | 1997-04-08 | Usa Technologies, Inc. | Credit card and bank issued debit card operated system and method for controlling and monitoring access of computer and copy equipment |
US5823629A (en) * | 1994-12-29 | 1998-10-20 | Brooks Strong | Articulating trailing tag axle |
WO1996028278A1 (en) * | 1995-03-13 | 1996-09-19 | Super Marketing, Inc. | An apparatus for retrieving randomly organized articles |
US5620194A (en) * | 1995-06-07 | 1997-04-15 | The Boler Company | Self-steering suspension lockout mechanism |
US5718443A (en) * | 1995-12-12 | 1998-02-17 | St. Onge; Daniel R. | Longitudinally and vertically adjustable axle assembly |
US6306038B1 (en) * | 1996-09-27 | 2001-10-23 | Multimedia Games, Inc. | Gaming system for remote players |
US5959869A (en) * | 1996-12-03 | 1999-09-28 | The Coca-Cola Company | Vending machine controller and system |
US5930771A (en) * | 1996-12-20 | 1999-07-27 | Stapp; Dennis Stephen | Inventory control and remote monitoring apparatus and method for coin-operable vending machines |
US6312332B1 (en) * | 1998-03-31 | 2001-11-06 | Walker Digital, Llc | Method and apparatus for team play of slot machines |
US6397193B1 (en) * | 1997-08-26 | 2002-05-28 | Walker Digital, Llc | Method and apparatus for automatically vending a combination of products |
CA2240791A1 (en) * | 1997-07-16 | 1999-01-16 | Neway Anchorlok International, Inc | Trailing arm suspension |
EP1025552B1 (en) * | 1997-10-23 | 2006-08-23 | Cash Technologies, Inc. | Multi-transaction coin machine |
US5988346A (en) * | 1997-11-10 | 1999-11-23 | Tedesco; Daniel E. | Method and apparatus for establishing and managing vending machine subscriptions |
US6038491A (en) * | 1997-11-26 | 2000-03-14 | Mars, Incorporated | Monitoring and reporting system using cellular carriers |
US6457038B1 (en) * | 1998-03-19 | 2002-09-24 | Isochron Data Corporation | Wide area network operation's center that sends and receives data from vending machines |
US6116505A (en) * | 1998-07-21 | 2000-09-12 | Gilbarco Inc. | Fuel transaction system for enabling the purchase of fuel and non-fuel items on a single authorization |
AUPQ216799A0 (en) * | 1999-08-12 | 1999-09-02 | Canon Kabushiki Kaisha | Apparatus and method for distributing audio content |
US6575363B1 (en) * | 1999-12-29 | 2003-06-10 | David Leason | Vending machine |
US6527176B2 (en) * | 2000-03-31 | 2003-03-04 | Robert Baric | Collective payment and control system |
US6460163B1 (en) * | 2000-04-05 | 2002-10-01 | International Business Machines Corporation | Software and method for digital content vending and transport |
JP3962824B2 (en) * | 2000-05-12 | 2007-08-22 | カシオ計算機株式会社 | Multi-rental bending machine system |
US6529801B1 (en) * | 2000-06-08 | 2003-03-04 | Mendota Healthcare, Inc. | Automatic prescription drug dispenser |
US6293570B1 (en) * | 2000-06-15 | 2001-09-25 | The Boler Company. | Self-steering, caster-adjustable suspension system |
US6748296B2 (en) * | 2002-04-25 | 2004-06-08 | International Business Machines Corporation | Automated vending |
-
2001
- 2001-05-03 US US09/848,573 patent/US7870029B2/en not_active Expired - Fee Related
-
2004
- 2004-12-03 US US11/003,876 patent/US20050080510A1/en not_active Abandoned
-
2008
- 2008-02-04 US US12/025,074 patent/US20080125906A1/en not_active Abandoned
Patent Citations (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3826344A (en) * | 1969-04-16 | 1974-07-30 | E Wahlberg | Apparatus for transacting business |
US3703229A (en) * | 1969-12-10 | 1972-11-21 | Gkn Sankey Ltd | Coin-operated vending machines |
US3841456A (en) * | 1973-07-23 | 1974-10-15 | H R Electronics Co | Control circuit for vending and other coin controlled devices |
US4690263A (en) * | 1983-11-08 | 1987-09-01 | Fuji Electric Co., Ltd. | Coin refund signal generator |
US5084845A (en) * | 1990-12-12 | 1992-01-28 | Coin Acceptors, Inc. | Selection control and indication means |
US5445295A (en) * | 1992-01-17 | 1995-08-29 | Brown; Graham | Automated vending machine system for recorded goods |
USRE35649E (en) * | 1992-06-05 | 1997-11-04 | Kaspar Wire Works, Inc. | Method and apparatus for the control of a multiple of door accessible newspaper vending cabinets with a single vend control mechanism operating remote door latches |
US6131085A (en) * | 1993-05-21 | 2000-10-10 | Rossides; Michael T | Answer collection and retrieval system governed by a pay-off meter |
US5450938A (en) * | 1994-05-02 | 1995-09-19 | Xcp, Inc. | Card or cash actuated vending machine assembly |
US5933814A (en) * | 1994-07-14 | 1999-08-03 | Rosenberg; Andreas | Automatic goods ordering process and device for sale facilities |
US6151588A (en) * | 1994-10-13 | 2000-11-21 | Tradecard, Inc. | Full service trade system |
US5615264A (en) * | 1995-06-08 | 1997-03-25 | Wave Systems Corp. | Encrypted data package record for use in remote transaction metered data system |
US6039250A (en) * | 1995-07-06 | 2000-03-21 | Hitachi, Ltd. | Electronic money sending system |
US5648906A (en) * | 1995-07-31 | 1997-07-15 | Amirpanahi; Fardosht | Networked computerized parking system of networked computerized parking meters and a method of operating said system |
US6056194A (en) * | 1995-08-28 | 2000-05-02 | Usa Technologies, Inc. | System and method for networking and controlling vending machines |
US5924081A (en) * | 1995-11-14 | 1999-07-13 | Audit Systems Co. | Vending machine audit monitoring system with matrix interface |
US5943423A (en) * | 1995-12-15 | 1999-08-24 | Entegrity Solutions Corporation | Smart token system for secure electronic transactions and identification |
US5799281A (en) * | 1996-01-23 | 1998-08-25 | E.L.M.S., Llc | Computer control and management system for laundry installation |
US6439345B1 (en) * | 1996-05-22 | 2002-08-27 | Sears, Roebuck And Co. | Item pick-up system |
US5914886A (en) * | 1996-07-11 | 1999-06-22 | Kwangju Electronics Co., Ltd. | Goods selecting apparatus and method for automatic vending machine |
US5884807A (en) * | 1997-03-11 | 1999-03-23 | Kwangju Electronics Co., Ltd. | Vending machine for a sequential purchase of goods |
US5947328A (en) * | 1997-03-26 | 1999-09-07 | Parkway Machine Corporation | Electronic bulk vending machine system |
US6070156A (en) * | 1997-09-26 | 2000-05-30 | Gilbarco Inc. | Providing transaction estimates in a fueling and retail system |
US6098879A (en) * | 1997-09-26 | 2000-08-08 | Gilbarco, Inc. | Fuel dispensing system providing customer preferences |
US6073840A (en) * | 1997-09-26 | 2000-06-13 | Gilbarco Inc. | Fuel dispensing and retail system providing for transponder prepayment |
US6422464B1 (en) * | 1997-09-26 | 2002-07-23 | Gilbarco Inc. | Fuel dispensing system providing customer preferences |
US6308887B1 (en) * | 1997-12-02 | 2001-10-30 | Cash Technologies, Inc. | Multi-transactional architecture |
US6681349B2 (en) * | 1998-01-06 | 2004-01-20 | Seiko Epson Corporation | System and method for monitoring the state of a plurality of machines connected via a computer network |
US6430711B1 (en) * | 1998-01-06 | 2002-08-06 | Seiko Epson Corporation | System and method for monitoring the state of a plurality of machines connected via a computer network |
US6249578B1 (en) * | 1998-04-06 | 2001-06-19 | Ameritech Corporation | Interactive electronic ordering for telecommunications products and services |
US6450407B1 (en) * | 1998-04-17 | 2002-09-17 | Viztec, Inc. | Chip card rebate system |
US6068183A (en) * | 1998-04-17 | 2000-05-30 | Viztec Inc. | Chip card system |
US6794634B2 (en) * | 1998-04-29 | 2004-09-21 | Automated Merchandising Systems, Inc. | Optical vend-sensing system for control of vending machine |
US6807532B1 (en) * | 1998-07-20 | 2004-10-19 | Usa Technologies, Inc. | Method of soliciting a user to input survey data at an electronic commerce terminal |
US6089284A (en) * | 1998-09-24 | 2000-07-18 | Marconi Commerce Systems Inc. | Preconditioning a fuel dispensing system using a transponder |
US6546373B1 (en) * | 1999-01-18 | 2003-04-08 | Mastercard International Incorporated | System and method for recovering refundable taxes |
US6367696B1 (en) * | 1999-02-05 | 2002-04-09 | Hitachi, Ltd. | IC card processing device, automatic vending device, and selling method |
US6212262B1 (en) * | 1999-03-15 | 2001-04-03 | Broadpoint Communications, Inc. | Method of performing automatic sales transactions in an advertiser-sponsored telephony system |
US20010052445A1 (en) * | 1999-04-21 | 2001-12-20 | Coyne John A. | Reverse vending machine |
US6186308B1 (en) * | 1999-04-21 | 2001-02-13 | Can & Bottle Systems, Inc. | Reverse vending machine |
US6957186B1 (en) * | 1999-05-27 | 2005-10-18 | Accenture Llp | System method and article of manufacture for building, managing, and supporting various components of a system |
US6339731B1 (en) * | 1999-09-03 | 2002-01-15 | Mars Incorporated | Configurable vending machine audit module |
US20020004690A1 (en) * | 1999-10-12 | 2002-01-10 | Paulucci Jeno F. | Vending machine |
US6304796B1 (en) * | 1999-12-07 | 2001-10-16 | Linda Ding | Vending machine operated by a chip card |
US7003501B2 (en) * | 2000-02-11 | 2006-02-21 | Maurice Ostroff | Method for preventing fraudulent use of credit cards and credit card information, and for preventing unauthorized access to restricted physical and virtual sites |
US6941285B2 (en) * | 2000-04-14 | 2005-09-06 | Branko Sarcanin | Method and system for a virtual safe |
US6959230B1 (en) * | 2001-10-03 | 2005-10-25 | Coin Acceptors, Inc. | Vending machine system and method |
Cited By (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064347A1 (en) * | 2002-09-26 | 2004-04-01 | Vanorman Stacy L. | Movie rental and notification system |
US7085727B2 (en) * | 2002-09-26 | 2006-08-01 | Vanorman Stacy L | Movie rental and notification system |
US9558316B2 (en) | 2004-04-15 | 2017-01-31 | Redbox Automated Retail, Llc | System and method for vending vendible media products |
US20090005905A1 (en) * | 2004-04-15 | 2009-01-01 | Redbox Automated Retail, Llc | System and method for communicating vending information |
US9524368B2 (en) | 2004-04-15 | 2016-12-20 | Redbox Automated Retail, Llc | System and method for communicating vending information |
US9865003B2 (en) | 2004-04-15 | 2018-01-09 | Redbox Automated Retail, Llc | System and method for vending vendible media products |
US7787987B2 (en) | 2004-04-15 | 2010-08-31 | Redbox Automated Retail, Llc | System and method for communicating vending information |
WO2006050563A1 (en) * | 2004-11-12 | 2006-05-18 | Barista Holdings Pty Ltd | Liquid beverage dispensing machine including management and operation intelligence |
US7797077B2 (en) | 2005-04-22 | 2010-09-14 | Redbox Automated Retail, Llc | System and method for managing vending inventory |
US10402778B2 (en) | 2005-04-22 | 2019-09-03 | Redbox Automated Retail, Llc | System and method for vending vendible media products |
US7988049B2 (en) | 2005-04-22 | 2011-08-02 | Redbox Automated Retail, Llc | System and method for calibrating a vending apparatus |
US8060247B2 (en) | 2005-04-22 | 2011-11-15 | Redbox Automated Retail, Llc | System and method for communicating secondary vending options |
US8155784B2 (en) | 2005-04-22 | 2012-04-10 | Redbox Automated Retail, Llc | System and method for regulating vendible media products |
US8412374B2 (en) | 2005-04-22 | 2013-04-02 | Redbox Automated Retail, Llc | System and method for communicating vending information |
US8417380B2 (en) | 2005-04-22 | 2013-04-09 | Redbox Automated Retail, Llc | System and method for communicating vending information |
US7853354B2 (en) | 2005-04-22 | 2010-12-14 | Redbox Automated Retail, Llc | System and method for communicating vending information |
US20060272922A1 (en) * | 2005-04-22 | 2006-12-07 | Eric Hoersten | System and method for offline vending of a media product |
US7747346B2 (en) | 2005-04-22 | 2010-06-29 | Redbox Automated Retail, Llc | System and method for regulating vendible media products |
US10810822B2 (en) | 2007-09-28 | 2020-10-20 | Redbox Automated Retail, Llc | Article dispensing machine and method for auditing inventory while article dispensing machine remains operable |
US20090089187A1 (en) * | 2007-09-28 | 2009-04-02 | Redbox Automated Retail, Llc | Article Vending Machine And Method for Auditing Inventory While Article Vending Machine Remains Operational |
US9104990B2 (en) | 2009-09-05 | 2015-08-11 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US8996162B2 (en) | 2009-09-05 | 2015-03-31 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US9830583B2 (en) | 2009-09-05 | 2017-11-28 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US9489691B2 (en) | 2009-09-05 | 2016-11-08 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US9542661B2 (en) | 2009-09-05 | 2017-01-10 | Redbox Automated Retail, Llc | Article vending machine and method for exchanging an inoperable article for an operable article |
US9569911B2 (en) | 2010-08-23 | 2017-02-14 | Redbox Automated Retail, Llc | Secondary media return system and method |
US9582954B2 (en) | 2010-08-23 | 2017-02-28 | Redbox Automated Retail, Llc | Article vending machine and method for authenticating received articles |
US8538581B2 (en) | 2010-09-03 | 2013-09-17 | Redbox Automated Retail, Llc | Article vending machine and method for authenticating received articles |
US9785996B2 (en) | 2011-06-14 | 2017-10-10 | Redbox Automated Retail, Llc | System and method for substituting a media article with alternative media |
US9495465B2 (en) | 2011-07-20 | 2016-11-15 | Redbox Automated Retail, Llc | System and method for providing the identification of geographically closest article dispensing machines |
US9348822B2 (en) | 2011-08-02 | 2016-05-24 | Redbox Automated Retail, Llc | System and method for generating notifications related to new media |
US9286617B2 (en) | 2011-08-12 | 2016-03-15 | Redbox Automated Retail, Llc | System and method for applying parental control limits from content providers to media content |
US9615134B2 (en) | 2011-08-12 | 2017-04-04 | Redbox Automated Retail, Llc | System and method for applying parental control limits from content providers to media content |
US8712872B2 (en) | 2012-03-07 | 2014-04-29 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US9390577B2 (en) | 2012-03-07 | 2016-07-12 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US9916714B2 (en) | 2012-03-07 | 2018-03-13 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US8768789B2 (en) | 2012-03-07 | 2014-07-01 | Redbox Automated Retail, Llc | System and method for optimizing utilization of inventory space for dispensable articles |
US9747253B2 (en) | 2012-06-05 | 2017-08-29 | Redbox Automated Retail, Llc | System and method for simultaneous article retrieval and transaction validation |
US11087298B2 (en) | 2012-06-08 | 2021-08-10 | Ronny Hay | Computer-controlled, unattended, automated checkout store outlet system and related method |
US10083430B2 (en) | 2012-06-08 | 2018-09-25 | Ronny Hay | Computer-controlled, unattended, automated checkout store outlet system and related method |
US9349238B2 (en) | 2013-03-13 | 2016-05-24 | Pantry Retail, Inc. | Vending kit and method |
CN105324714A (en) * | 2013-04-08 | 2016-02-10 | 罗尼·哈伊 | Computer controlled, unattended, automated checkout retail store |
US11481781B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Processing interrupted transaction over non-persistent network connections |
US11501296B2 (en) | 2013-12-18 | 2022-11-15 | PayRange Inc. | Method and system for presenting representations of payment accepting unit events |
US12106299B2 (en) | 2013-12-18 | 2024-10-01 | PayRange Inc. | Method and system for presenting representations of payment accepting unit events |
US11475454B2 (en) | 2013-12-18 | 2022-10-18 | PayRange Inc. | Intermediary communications over non-persistent network connections |
US11481772B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Method and system for presenting representations of payment accepting unit events |
US11481780B2 (en) | 2013-12-18 | 2022-10-25 | PayRange Inc. | Method and system for asynchronous mobile payments for multiple in-person transactions conducted in parallel |
US12093963B2 (en) | 2013-12-18 | 2024-09-17 | PayRange Inc. | Method and system for performing mobile device-to-machine payments |
US11488174B2 (en) | 2013-12-18 | 2022-11-01 | PayRange Inc. | Method and system for performing mobile device-to-machine payments |
US11494751B2 (en) | 2013-12-18 | 2022-11-08 | PayRange Inc. | Systems and methods for determining electric pulses to provide to an unattended machine based on remotely-configured options |
US12086811B2 (en) | 2013-12-18 | 2024-09-10 | PayRange Inc. | Processing interrupted transactions over non-persistent network connections |
US11935051B2 (en) | 2013-12-18 | 2024-03-19 | Payrange, Inc. | Device and method for providing external access to multi-drop bus peripheral devices |
US12093962B2 (en) | 2013-12-18 | 2024-09-17 | PayRange Inc. | Intermediary communications over non-persistent network connections |
US11966926B2 (en) | 2013-12-18 | 2024-04-23 | PayRange Inc. | Method and system for asynchronous mobile payments for multiple in-person transactions conducted in parallel |
US11966898B2 (en) | 2013-12-18 | 2024-04-23 | PayRange Inc. | Systems and methods for determining electric pulses to provide to an unattended machine based on remotely-configured options |
US11966920B2 (en) | 2013-12-18 | 2024-04-23 | PayRange Inc. | Method and system for presenting representations of payment accepting unit events |
US11966895B2 (en) * | 2013-12-18 | 2024-04-23 | PayRange Inc. | Refund centers for processing and dispensing vending machine refunds via an MDB router |
US11983692B2 (en) | 2013-12-18 | 2024-05-14 | PayRange Inc. | Mobile payment module with dual function radio transmitter |
US11961107B2 (en) | 2015-01-30 | 2024-04-16 | PayRange Inc. | Method and system for providing offers for automated retail machines via mobile devices |
US11468468B2 (en) | 2015-01-30 | 2022-10-11 | PayRange Inc. | Method and system for providing offers for automated retail machines via mobile devices |
US20190244465A1 (en) * | 2018-02-05 | 2019-08-08 | Romaine Empire, Inc. | Systems and methods for reservations at a vending machine |
US12125043B2 (en) * | 2018-02-05 | 2024-10-22 | Romaine Empire, Inc. | Systems and methods for reservations at a vending machine |
US12056754B2 (en) * | 2021-03-10 | 2024-08-06 | T-Mobile Usa, Inc. | Multi-user support and multi-node coordination for automated retail apparatuses, one or more non-transitory computer-readable media, and systems |
US20220292577A1 (en) * | 2021-03-10 | 2022-09-15 | T-Mobile Usa, Inc. | Multi-user support and multi-node coordination for automated retail systems |
Also Published As
Publication number | Publication date |
---|---|
US20080125906A1 (en) | 2008-05-29 |
US7870029B2 (en) | 2011-01-11 |
US20020165788A1 (en) | 2002-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7870029B2 (en) | Determining the availability of purchasable items in a network environment | |
US7236946B2 (en) | Operation of control system for ensuring availability of purchasable items in networked machines | |
US8892453B2 (en) | Apparatus, system and method for electronic ticket management and electronic ticket distribution authentication | |
US20020004760A1 (en) | Online settlement system, method thereof and storage medium | |
US20080033594A1 (en) | Method of outputting offers at a vending machine | |
EP1693795A2 (en) | Computerized payment system for purchasing information products by electronic transfer on the internet | |
US20020077973A1 (en) | Method and apparatus for issuing prepaid e-cash and calling cards and method of using the same | |
AU1931400A (en) | Dynamic quality control conditional purchase offer (cpo) management system | |
US7904390B2 (en) | Management system and management method for charging object apparatus, management apparatus and charging object apparatus | |
US7577571B2 (en) | Electronic apparatus, time period charging system, time period charging method, and charging management system for electronic apparatus | |
JP2002352308A (en) | Payment system using automatic vending machine | |
US20050043963A1 (en) | Product recycle fee payment method and system | |
JP4326165B2 (en) | IC card and electronic money deposit system | |
EP1321875A1 (en) | Commodity order acceptance and transportation system, method and recording medium | |
US6856966B1 (en) | Product delivery methods | |
JP2005071081A (en) | Sales server, sales method, and sales program | |
JP2004318535A (en) | System and method for managing game account, and computer program | |
KR20010067790A (en) | Method For Lending Article Being Type of Central Management Based on Member Store, and Computer Readable Medium Having Thereon Computer Executable Instruction For Performing The Same | |
KR980004191A (en) | Data vending machine and its management method | |
JP7132498B2 (en) | Information processing device and digital content trading method | |
JP2005317040A (en) | Ic card, and electronic money receiving system | |
KR20030068701A (en) | System for Converting Received Payments from Business Transactions to New Investment and Sharing Investment Returns | |
JP2022173282A (en) | Settlement system for amusement facility and settlement control method of the same | |
CN1447947A (en) | Information recorded medium and system using same | |
JP2002259853A (en) | Device, system, and method for auctioning rental merchandise and program therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |