CROSS-REFERENCE TO RELATED APPLICATIONSThe present application is a Divisional Application of U.S. patent application Ser. No. 12/286,361 filed on Sep. 30, 2008.
BACKGROUND1. Field of the Invention
Embodiments of the present disclosure relate generally to handheld electronic devices and, more particularly, to systems and methods for conducting shopping-related transactions with a handheld electronic device.
2. Description of the Related Art
This section is intended to introduce the reader to various aspects of art that may be related to various aspects of the present disclosure, which are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
Modern technology offers today's consumers a wide range of tools for interacting in the marketplace. From mail-order catalogs to online shopping, consumers have access to a wide range of information and a broad array of shopping tools for purchasing anything from automobiles to simple groceries. Savy consumers may be able use these shopping tools to get the best deal possible for any number of items. Often times, however, there is so much information available that it may be difficult to separate the useful information from the irrelevant. At other times, a particular shopping tool may not be conveniently accessible at the time the consumer intends to make a purchase. Therefore, despite the wide range of tools and information available, consumers may not always be willing to invest the time and effort required to get the best possible deal.
SUMMARYCertain aspects of embodiments disclosed herein by way of example are summarized below. It should be understood that these aspects are presented merely to provide the reader with a brief summary of certain forms an invention disclosed and/or claimed herein might take and that these aspects are not intended to limit the scope of any invention disclosed and/or claimed herein. Indeed, any invention disclosed and/or claimed herein may encompass a variety of aspects that may not be set forth below.
The present disclosure generally relates to techniques for executing various shopping related transactions on a mobile electronic device. For example, in some embodiments a mobile electronic device may be used to identify a product and obtain pricing information relevant to retailers of the product within a specified geographical location. In another embodiment, a mobile electronic device may be used to acquire pricing information for a shopping list of products. Embodiments may also include a variety of features that make the shopping experience quick and efficient while allowing the consumer to hunt for a better bargain. Furthermore, several embodiments also allow the product manufacturers and/or retailers to distribute relevant product information to targeted consumers who are known to be, or who may be, interested in buying a particular product.
BRIEF DESCRIPTION OF THE DRAWINGSThese and other features, aspects, and advantages of the present invention will become better understood when the following detailed description of certain exemplary embodiments is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
FIG. 1 is a front view of an electronic device in accordance with one embodiment;
FIG. 2 is a back view of an electronic device in accordance with one embodiment;
FIG. 3 is a simplified block diagram of the device inFIGS. 1 and 2 in accordance with one embodiment;
FIG. 4 is a diagrammatical representation of a data transfer system in accordance with one embodiment;
FIG. 5 is a front view of the device inFIG. 1, illustrating a method of generating retailer preference lists in accordance with one embodiment;
FIGS. 6-10 are front views of the device inFIG. 1, illustrating methods of identifying a consumer product in accordance with embodiments;
FIG. 11 is a front view of the device inFIG. 1, illustrating a method of comparing retailer's prices for a single product in accordance with one embodiment;
FIG. 12 is a front view of the device inFIG. 1, illustrating various features of the device in accordance with embodiments;
FIGS. 13A and 13B are front views of the device inFIG. 1, illustrating various methods of acquiring consumer information regarding a product in accordance with one embodiment;
FIG. 14 is a front view of the device inFIG. 1, illustrating a method of generating product information in accordance with one embodiment;
FIGS. 15,16A, and16B are front views of the device inFIG. 1, illustrating methods of generating and editing a shopping list in accordance with embodiments; and
FIGS. 17-20 are front views of the device inFIG. 1, illustrating methods of comparing retailer prices for several products in a shopping list in accordance with embodiments;
FIGS. 21 and 22 are diagrammatical representations of an in-store data transfer system in accordance with one embodiment;
FIGS. 23-25 are front views of the device inFIG. 1, illustrating methods of providing in-store shopping features through the in-store data transfer system shown inFIGS. 21 and 22.
DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTSOne or more specific embodiments of the present invention will be described below. These described embodiments are only exemplary of the present invention. Additionally, in an effort to provide a concise description of these exemplary embodiments, all features of an actual implementation may not be described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure.
It may be advantageous to provide a system and method that allows consumers to quickly and easily obtain highly relevant shopping data, while also allowing retailers and manufacturers to send targeted advertising or other relevant product data to interested consumers. More specifically, it may be advantageous to provide a system and method of using a mobile electronic device to distribute and receive shopping-related information.
FIG. 1 illustrates anelectronic device10 that may include one or more shopping applications for providing the shopping related techniques briefly mentioned above. As illustrated inFIG. 1, theelectronic device10 may be a handheld device incorporating the functionality of one or more portable devices, such as a media player, a cellular phone, a personal data organizer, and so forth. Depending on the functionalities provided by theelectronic device10, the user may listen to music, play games, record video, take pictures, and place telephone calls, while moving freely with thedevice10. In addition, theelectronic device10 may allow a user to connect to and communicate through the Internet or through other networks, such as local or wide area networks. For example, theelectronic device10 may allow a user to communicate using e-mail, text messaging, instant messaging, or other forms of electronic communication. Theelectronic device10 also may communicate with other devices using short-range connections, such as Bluetooth and near field communication. By way of example, theelectronic device10 may be a model of an iPhone® available from Apple Inc. of Cupertino, Calif.
In the depicted embodiment, thedevice10 is enclosed by acasing12 that protects the interior components from physical damage and shields them from electromagnetic interference. The casing may be formed from any suitable material such as plastic, metal, or a composite. The casing allows access touser input structures14,16,18,20, and22 through which a user may interface with the device. Eachuser input structure14,16,18,20, and22 may be configured to control a device function when actuated. For example, theinput structure14 may include a button that when pressed causes a “home” screen or menu to be displayed on the device. Theinput structure16 may include a button for toggling thedevice10 between a sleep mode and a wake mode. Theinput structure18 may include a two-position slider that silences a ringer for the cell phone application. Theinput structures20 and22 may include buttons for increasing and decreasing the volume output of thedevice10. In general, theelectronic device10 may include any number of user input structures existing in various forms including buttons, switches, control pads, keys, knobs, scroll wheels, or other suitable forms.
Thedevice10 also includes adisplay24 which may display various images generated by the device. For example, thedisplay24 may show photos, movies, album art, and/or data, such as text documents, spreadsheets, text messages, and email, among other things. Thedisplay24 also may displaysystem indicators26 that provide feedback to a user, such as power status, signal strength, call status, external device connection, or the like. Thedisplay24 may be any type of display such as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, or other suitable display. Additionally, thedevice10 may include a touch screen disposed adjacent to thedisplay24, such that a user may select elements of thedisplay24 by touching them with the finger or a stylus.
Thedisplay24 may be used to display aGUI28 that allows a user to interact with the device. TheGUI28 may include various layers, windows, screens, templates, elements, or other components that may be displayed in all of or areas of thedisplay24. In certain embodiments, theuser input structures14,16,18,20, and22, may be used to navigate through theGUI28. For example, the user input structures may include a wheel that allows a user to select graphical elements, shown here asicons30, of theGUI28. Theicons30 also may be selected via the touch screen.
Theicons30 may represent various layers, windows, screens, templates, elements, or other components that may be displayed in some or all of the areas of thedisplay24 upon selection by the user. Furthermore, selection of anicon30 may lead to a hierarchical navigation process, such that selection of anicon30 leads to a screen that includes one or more additional icons or other GUI elements.Textual indicators32 may be displayed on or near thegraphical elements30 to facilitate user interpretation of eachgraphical element30. It should be appreciated that theGUI30 may include various components arranged in hierarchical and/or non-hierarchical structures.
When anicon30 is selected, thedevice10 may be configured to open an application associated with that icon and display a corresponding screen. For example, when theshopping icon34 is selected, thedevice10 may open a shopping program and display a shopping menu displaying the various tools and features available in the shopping program. For each application, screens may be displayed on thedisplay24 that include various user interface elements.
Theelectronic device10 also may include various input/output ports36,38, and40 that allow connection of thedevice10 to external devices. For example, the input/output port36 may be a proprietary connection port for transmitting and receiving data files, such as media files. The input/output port38 may be a connection slot for receiving a subscriber identify module (SIM) card. The input/output port40 may be a headphone jack that provides for connection of audio headphones. In other embodiments, thedevice10 may include any number of input/output ports configured to connect to a variety of external devices, including but not limited to a power source, a printer, and a computer. In other embodiments, multiple ports may be included on a device. The ports may be any interface type such as a universal serial bus (USB) port, serial connection port, Firewire port, IEEE-1394 port, or AC/DC power connection port.
Theelectronic device10 may also include various audio input and output elements. For example,input receivers42 may include one or more microphones that receive user audio input such as a user's voice. Additionally, the electronic device may include one ormore output transmitters44. Theoutput transmitters44 may include one or more speakers for transmitting audio signals to a user. Theinput receivers42 and theoutput transmitters44 may operate together as audio elements of a telephone.
Turning now toFIG. 2, a back view of thedevice10 is illustrated. As seen from the back view, thedevice10 may include abar code scanner46. Thebar code scanner46 may be used to obtain product identifying information, which may then be used by the shopping program(s) of thedevice10, embodiments of which will be described below. One of ordinary skill in the art will recognize various devices and techniques for implementing thebar code scanner46 within thedevice10.
Thedevice10 may also include acamera48. Thecamera48 may be used to shoot pictures and/or video. Moreover, as with the bar-code scanner, thecamera48 may also be used to identify certain consumer products. For example, thecamera48 may be used to capture an image of a bar code, which may then be processed by thedevice10 to extract the encoded product-identifying information. Techniques for processing a video image to extract coded information will also be known by those of ordinary skill in the art.
Thedevice10 may further include a near field communication (NFC)interface50. TheNFC interface50 may be located within thecasing12 and a mark or symbol on the exterior of thecasing12 may identify its location within thecasing12. TheNFC interface50 may allow for close range communication at relatively low data rates (424 kb/s), and may comply with such standards as ISO 18092 or ISO 21481, or it may allow for close range communication at relatively high data rates (560 Mbps), and may comply with the TransferJet® protocol. TheNFC interface50 may have a range of approximately 2 to 4 cm, for example. The close range communication with theNFC interface50 may take place via magnetic field induction, allowing theNFC interface50 to communicate with other NFC devices such as radio frequency identification (RFID) tags, for example. In this way, theNFC interface50 may be used to identify a consumer product that contains an NFC compatible device such as an RFID tag.
Turning now toFIG. 3, a block diagram of circuitry that may be used in thedevice10 is provided. As stated above, thedevice10 may include ascanner46, acamera48, and anNFC interface50. The operation of thedevice10 may be controlled by one or more processor(s)52 that provide the processing capability required to execute the operating system, programs,graphical user interface28, and any other functions of thedevice10. The processor(s)52 may include a single processor or a plurality of processors. For example, the processor(s)52 may include “general purpose” microprocessors, a combination of general and special purpose microprocessors, instruction set processors, graphics processors, video processors, and/or related chips sets, and/or special purpose microprocessors. The processor(s)52 also may include on board memory for caching purposes.
The processor(s)52 may be coupled to adata bus54 and configured to transmit PIO instructions to the various devices coupled to thedata bus54 or to initiate DMA transfers. As such, thedata bus54 may facilitate both DMA transfers and direct read and write instructions from the processor(s)52. In embodiments, thedata bus54 may be an Advanced Microcontroller Bus Architecture (AMBA) compliant data bus.
Theelectronic device10 may also include a random access memory (RAM)56 electrically coupled todata bus54. TheRAM56 may include any type of RAM, such as dynamic RAM and/or synchronous double data rate RAM, for example, and may also include non-volatile memory devices, such as ROM, EPROM and EEPROM or some combination of volatile and non-volatile memory. Additionally, theRAM56 may also include a memory controller that controls the flow of data to and from theRAM56.
Information used by the processor(s)52 may be located withinstorage memory58. Thestorage memory58 ofelectronic device10 may be used for storing data required for the operation of the processor(s)52 as well as other data required by thedevice10. For example, thestorage memory58 may store the firmware for theelectronic device10 usable by the processor(s)52, such as an operating system, other programs that enable various functions of theelectronic device10, GUI functions, and/or processor functions. Thestorage memory58 also may store components for theGUI28, such asgraphical elements30, screens, and templates. Additionally, thestorage memory58 may store data files such as media (e.g., music and video files), image data, software, preference information (e.g., media playback preferences), wireless connection information (e.g., information that may enable thedevice10 to establish a wireless connection, such as a telephone connection), subscription information (e.g., information that maintains a record of podcasts, television shows or other media to which a user subscribes), telephone information (e.g., telephone numbers), and any other suitable data. Thestorage memory58 may be non-volatile memory such as read only memory, flash memory, a hard drive, or any other suitable optical, magnetic, or solid-state computer readable media, as well as a combination thereof.
A user may navigate through the GUI28 (FIG. 1) usinguser input devices60 coupled to input structures located at external surfaces of thedevice10. Theuser input devices60 may interface with theinput structures14,16,18,20, and22 shown inFIG. 1 and may communicate with the processor(s)52 through an I/O controller (not shown.)
As noted above, a user may also control thedevice10 by touching the graphical elements within theGUI28. As such, atouch screen62 may be positioned in front of or behind thedisplay24 and may be used to selectgraphical elements30 shown on thedisplay24. Thetouch screen62 is configured to receive input from a user's or object's touch and to send the information to the processor(s)52, which interprets the touch event and performs a corresponding action. Thetouch screen62 may employ any suitable type of touch screen technology such as resistive, capacitive, infrared, surface acoustic wave, electromagnetic, or near field imaging, and may be used in conjunction with or independently of theuser input device60 to select inputs for thedevice10.
Thedevice10 may also include one ormore network devices64 for receiving and transmitting information over one or more broadband communications channels. As such, thenetwork device64 may include one or more network interface cards (NIC) or a network controller. In some embodiments, thenetwork device64 may include a local area network (LAN) interface for connecting to a wired Ethernet-based network and/or a wireless LAN, such as an IEEE 802.11x wireless network (i.e., WiFi). In certain embodiments, theNFC interface44 may be used to receive information, such as the service set identifier (SSID), channel, and encryption key, used to connect to the LAN.
Thenetwork device64 also may include a wide area network (WAN) interface that permits connection to the Internet via a cellular communications network, such as an Enhanced Data rates for GSM Evolution (EDGE) network, or a Universal Mobile Telecommunications System (UMTS) network. Further, thenetwork device64 may include a personal area network (PAN) interface for connecting to a PAN such as a Bluetooth® network, an IEEE 802.15.4 (ZigBee) network, or an ultra wideband (UWB) network. Thenetwork device64 may interact with an antenna to transmit and receive radio frequency signals of the network. Thenetwork device64 may include any number and combination of network interfaces. Among other things, thenetwork device64 may allow thedevice10 to send and receive a broad range of shopping related information, as will be described below.
Thedevice10 may also includevideo processing circuitry66 coupled to thedata bus54. Thevideo processing circuitry66 may be configured to process video data, such as images received fromcamera48, and send the processed video data to other parts of the system. For example, thevideo processing circuitry66 may be configured to compress video data obtained fromcamera48 into a JPEG or MPEG format and send the compressed video data to RAM56 orstorage memory58. For another example, thevideo processing circuitry66 may be configured to send uncompressed or decompressed video data to theRAM56 or thedisplay24. For yet another example, the video processing circuitry may be used to extract textual or encoded information from an image, such as numbers, letters, and/or bar code information.
Thedevice10 may also include a positioning device70 used to determine a user's geographical position on a map, such as a street map or building map. The positioning device may utilize the global positioning system (GPS) or a regional or site-wide positioning system that uses cell tower positioning technology or WiFi technology, for example.
FIG. 4 illustrates a data transfer system in accordance with certain embodiments. Thedata transfer system76 allows a user of theelectronic device10 to acquire shopping related information related to aproduct78. In some embodiments, theproduct78 may be NFC enabled so that theelectronic device10 may acquire information aboutproduct78 through NFC communications. As such, theproduct78 may include anNFC device80 such as an RFID tag, which may be passive or active and may be included in the product packaging or the product itself. TheNFC device80 may contain information that may be used to identify theproduct78. The information, herein referred to as a “product identifier,” may be any information that can be used to identify a product, such as a UPC code, model number, serial number, a product name, product description, etc. In other embodiments, which will be described below, a product may be identified via barcode scanner, camera, or by entering a product identifier manually.
To begin NFC communications theNFC interface50 may send anoutput signal82 to theNFC device80. Theoutput signal82 powers theNFC device80 and triggers theNFC device80 to transmit areturn signal84, which is received by theNFC interface50. Thereturn signal84 carries the product identifier and may also carry other relevant information, such as a product description or a media file, depending on the capacity of theNFC device80.
In some embodiments, thereturn signal84 may transmit only a limited amount of information toelectronic device10. Therefore, in order to obtain more extensive information about theproduct78, theelectronic device10 may communicate over abroadband communication system86. Thebroadband communication system86 may include acellular communications network88,local area network89, orpersonal area network90, as described above.
Through thebroadband communications system86, theelectronic device10 may be coupled to theInternet91. Through theInternet91, theelectronic device10 may be directed to a website related to a particular product such as a retailer's website or a consumer information website.
Moreover, through thebroadband communication system86 theelectronic device10 may communicate with thedata manager92. For example, to obtain shopping related information, theelectronic device10 may send an information request packet to thedata manger92. The substance of the information request packet may vary depending on the information being sought. As will be explained further below, the information request packet may include one or more product identifiers, a request ID which informs thedata manager92 regarding the type of information sought byelectronic device10, the geographical location of theelectronic device10, a user ID, personal preference information, etc. In response to the information request packet, thedata manager92 may compile the information sought into one or more data packets to be sent back to theelectronic device10.
To assemble the information for the data packet(s), thedata manager92 may be communicatively coupled to one or more databases. For example, thedata manager92 may be coupled to amanufacturer database94. Themanufacturer database94 may hold manufacturer related information for a wide variety of products. For example, themanufacturer database94 may hold information such as brand name, model number, serial number, UPC code, product types or classifications, product descriptions, suggested retail prices, stores where the product may be available, a media file regarding the product, a web page address for obtaining more information about the product or purchasing the product, among other things. To obtain the appropriate manufacturer related data for theproduct78, thedata manager92 may cross reference the product identifier with data in themanufacturer database94. To be included in the manufacturer database, a manufacturer may pay a fee to the manufacturer of thedevice10, for example, to upload the relevant product information related to themanufacturer database94.
Thedata manager92 may also be coupled to aretailer database96 which may hold retailer specific product information. As with the manufacturer database, theretailer database96 may hold information that pertains to the product itself. Moreover, theretailer database96 may hold retailer specific product information such as the name of the retailer, store locations, the actual retail price of a product, a retailer webpage address, a retailer telephone number(s), etc. Additionally, some database entries may be flagged to indicate some feature of the entry, such as whether the data applies to in-store or Internet purchases and whether a special promotion exists in relation to the product, etc. Thedata manager92 may obtain appropriate retailer-related data for theproduct78 by cross-referencing the product identifier with data in theretailer database94. In some embodiments, a retailer may pay a fee to the manufacturer of thedevice10, for example, to be included in theretailer database94.
In some embodiments, both themanufacturer database94 and theretailer database96 may contain advertisements that may be sent to theelectronic device10 in response to the information request packet. Such advertisements may include product related data, and/or media files such as picture, video, and audio files.
Thedata manager92 may also be communicatively coupled to aconsumer database98 which may hold information related to the user of theelectronic device10. For example, theconsumer database98 may include a preference profile of the user of theelectronic device10. The preference profile may include such information as specific retailers that the user prefers and/or specific brands of products that the user prefers. Theconsumer database98 may be populated based on information exchanges between thedata manger92 and theelectronic device10 which may indicate the shopping habits of the user. Additionally, theconsumer database98 may also be populated by personal preferences identified by the user, an embodiment of which is described in relation toFIG. 5. In other embodiments, the information contained in theconsumer database98 may also included in the memory of theelectronic device10 itself.
In some embodiments, thedata manager92 and thedatabases94,96, and98 may be a part of a system owned and operated by a single entity, such as a manufacturer of the handheldelectronic device10. In this embodiment, the operator may populate themanufacturer database94 and theretailer database96 with information provided to the operator by various product manufacturers and retailers in exchange for a fee.
The content of the data packets compiled bydata manager92 may depend on the information provided by theelectronic device10 in the information request packet. For example, if the user is requesting information regarding a product per se, such as specifications, suggested retail price, warrantee information, etc., the information request packet may include a single product identifier and request ID that indicates a request for manufacturer-specific product information. In response, the data packet may include information from themanufacturer database94 for the one product identified.
For another example, if the user requests retail pricing information for a particular product, theelectronic device10 may send a product identifier, a geographical location of theelectronic device10, retailer preferences, and/or a request ID indicating a request for pricing information for various retailers. In response, the data packet may include retail prices for one or more preferred retailers within a specified travel distance from theelectronic device10.
Examples of data exchanges between theelectronic device10 and thedata manager92 will be further described in relation to the shopping features of theelectronic device10, as illustrated inFIGS. 5-20. It will be appreciated that the information exchanged between theelectronic device10 and thedata manager92 will depend on the way that processing tasks are divided between theelectronic device10 and thedata manager92. For example, if the retailer preferences are stored in theconsumer database98, theelectronic device10 may send a user ID that allows the data manager to retrieve the proper retailer preferences. However, if the retailer preferences are stored on theelectronic device10, theelectronic device10 may send all of the retailer preference data to thedata manager92 instead of or in addition to the user ID. It is intended that embodiments are not limited to a particular division of processing tasks between theelectronic device10 and thedata manager92.
Furthermore, in some embodiments, the data retrieved by thedata manager92 may be used to derive secondary information that may be useful to a user. For example, product pricing data may be used to calculate a total price for several products. For another example, retailer locations may be used to calculate distances between the user and the retailer. For yet another example, the product pricing data may be used to generate priority or relevance information, which may effect how the data is presented to a user. It is important to note that the secondary information, which will be described further below, may be derived by thedata manager92 and included in the data packet or may be derived byelectronic device10. Therefore, it will be appreciated that although certain information may be described below as being calculated by either theelectronic device10 or thedata manager92, the present embodiments are not intended to be limited by whether a particular calculation is performed by theelectronic device10 or thedata manager92.
FIGS. 5-20 further detail the capabilities of theelectronic device10 and thedata transfer system76 by illustrating various screens that the user of theelectronic device10 may encounter while using the various shopping related features of theelectronic device10. The functionality described may be achieved with a wide variety graphical elements and visual schemes. Therefore, the present embodiments are not intended to be limited to the precise user interface conventions adopted herein. Rather, embodiments may include a wide variety of user interface styles. Indeed, the presently disclosed user interface conventions are based on Apple's iPhone for the convenience of the reader, although other user interface conventions could readily be used to carry out the present techniques.
FIG. 5 illustrates a method of using theelectronic device10 to specify one or more preferred retailers. In some embodiments, selection of the shopping icon34 (FIG. 1) may advance the user to ashopping screen100, which may serve as a gateway to the shopping features of theelectronic device10. Theshopping screen100 may include several graphical elements such asbuttons102,104 and106 and107, all of which allow the user to access the shopping feature indicated. As will be explained further below, embodiments allow the user to compare product prices between various retailers. To narrow the search, the user may be prompted to specify a particular retailer or group of retailers that the user prefers. To provide the user a quick way to specify one or more retailers when prompted, theelectronic device10 may allow the user to create and save one or more lists of preferred retailers ahead of time. To access this feature the user may select theretailer preferences button106 from theshopping screen100.
Upon selection of theretailer preferences button106, the user may be advanced to a retailer preferences screen108. The retailer preferences screen108 may include aretailer category list110 that includesseveral retailer categories112 pertaining to any type of retail product, such as groceries, sporting goods, clothing, electronics, home appliances, furniture, office supplies, automobiles, etc. As shown in the edit category screen120, theretailer categories112 may include a list of retailers that carry items within that particular category. In some embodiments, one or more of theretailer categories112 may be preloaded by a manufacturer of theelectronic device10, and one or more categories may be custom created by the user. Categories may be deleted by selecting an individual category within theretailer category list110 and touching thedelete category button114. New categories may be created by selecting thenew category button118. Categories may be edited and customized by selecting theretailer category112 in theretailer category list110 and pressing the “edit category”button116.
The “edit category” screen120 includes aretailer list122 which includesseveral retailer listings124. In addition to the name of the retailer, each retailer listing124 also includes one or more icons. For example, aretailer listing124 may include abuilding icon126 that indicates that the retailer listing pertains to a physical store location. Theretailer listing124 may also include an on-line icon128 that indicates that theretailer listing124 pertains to on-line shopping. The presence of abuilding icon126 or an on-line icon128 may indicate the preference of the user regarding whether they wish to purchase items from that particular retailer on-line or at the store. Theretailer listings124 included within aretailer category110 may be preloaded by the manufacturer of theelectronic device10, possibly in exchange for a fee from the retailers, and may also be edited by the user to include only those retailers that the user frequents.
The user may remove a retailer by selecting aretailer listing128 in theretailer list122 and selecting theremove retailer button130. To add a retailer the user may by select the “add retailer”button132, which may advance the user to theadd retailer screen134 and may also cause theelectronic device10 to send an information request to thedata manger92, requesting a list of retailers from theretailer database96.
Theadd retailer screen134 may include aretailer list122, which may include all the retailers contained within theretailer database96 or may be narrowed to provide a more focused set of relevant retailers. For example, theretailer list122 may narrowed to include only those stores within a specified radius, geographic region, zip code, etc. For example, the radius may be relative to the geographical location of theelectronic device10 or a geographical location specified by the user. Accordingly, theadd retailer screen134 may include asearch radius indicator136 by which the user may specify the search radius used to acquire theretailer list122. Theadd retailer screen134 may also includebuttons138 for increasing or decreasing the search radius.
As in the edit category screen120, theadd retailer screen134 may also include thebuilding icon126 and the on-line icon128. However, in theadd retailer screen134, thebuilding icon126 and the on-line icon128 indicate whether the retailer exists as a physical store and/or whether it has an on-line shopping presence. To add one of the retailers from theretailer list122 to theretailer category112, the user may select the retailer in the list and press theadd button140, which advances the user to theadd screen142, which includes a message to the user requesting confirmation that the user would like to add the selected retailer to the retailer list. Theadd screen142 may also includecheck boxes144 which are adjacent to and correspond with thebuilding icon126 and the on-line icon128. The user may select or de-select thecheck boxes144 to indicate whether the user wishes to add the retailer as a “brick-n-mortar” retailer and/or an on-line retailer.
Selection of one of theconfirmation buttons146 may add the retailer selected to theretailer category112 and return the user back to the edit category screen120 or theadd retailer screen134. The significance of the retailer preferences will be better understood with reference to the price comparison features of theelectronic device10 described further below in relation to FIGS.11 and18-20.
Turning first toFIGS. 6-10 various techniques for using theelectronic device10 to identify a product are illustrated. In some embodiments, the GUI of thedevice10 may include ascan item screen150, which a user may access from theshopping screen100 by selecting thescan item button102. From thescan item screen150, the user may select a method of identifying a product. As described above, the user may identify a product using theNFC interface50, thebar code scanner46,camera48. Additionally, the user may enter a product identifier manually or may select a previously scanned item from a list of recent scans. It is noted that a product identified manually may nevertheless be referred to as a scanned item.
By selectingtouch scan button152, the user may advance to thetouch scan screen162, which allows the user to read a product identifier from theNFC device78 as described above. To reserve battery life, theNFC interface50 may be powered down when not in use. Therefore, selection of thetouch scan button152 may cause theNFC interface50 to be turned on. Thetouch scan screen162 may include auser instruction message164 informing the user that theNFC interface50 has been turned on and is ready to communicate with theNFC device80. Thetouch scan screen162 may also include asuccess indicator166. Thesuccess indicator166 may indicate to the user that a successful read of theNFC device80 has occurred and that the product identifier has been obtained. Thetouch scan screen162 may also include aproduct description element168, which may contain a brief description of the information received by the NFC scan and may serve as an indication to the user that the scan was successful at acquiring the correct product information.
After thesuccess indicator166 informs the user that a successful scan has occurred, the user may evaluate theproduct description element168 and may decide to re-scan the product by selecting there-scan button170 if the user believes that the scan did not acquire the correct information. If the user is satisfied with the scan, the user may continue to the next screen by selecting the continuebutton172.
If the user continues to the next screen, theelectronic device10 may then acquire more extensive product information by sending an information request packet to thedata manager92, as described above in relation toFIG. 4. In response to the information request packet, thedata manager92 may access the manufacturer'sdatabase94 and cross-reference the product identifier with the information in themanufacturer database94 to acquire the appropriate product information. Thedata manager92 may then send a data packet to theelectronic device10 containing the product information. After receiving the data packet, theelectronic device10 may also advance to the scanneditem screen174 where more extensive product information may be displayed.
The product information displayed in the scanneditem screen174 may include any product information that may be provided by a manufacturer, such as product specifications, suggested retail price, a product picture, retailer's where the product may be available, special promotions such as manufacturer rebates, for example. Accordingly, the scanneditem screen174 may include aproduct picture element176 and one or moreproduct information elements178. The scanneditem screen174 may also include one ormore buttons180 and182 which allow the user to access additional shopping features of theelectronic device10, which will be explained further below.
Turning toFIG. 7 and returning to thescan item screen150, a method of using thebar code scanner46 to identify a product is shown. From thescan item screen150, the user may select abar code button154 to advance to abar code screen184. Thebar code screen184 may include auser instruction message164 indicating to the user that thebar code scanner46 is enabled and ready to scan. As with thetouch scan screen162, thebar code screen184 also includes asuccess indicator166 and aproduct description element168 which may provide feedback to the user regarding the success of the bar code scan. By selecting the continuebutton172 the user may advance to the scanneditem screen174, as described above.
Turning toFIG. 8 and returning to thescan item screen150, a method of using thecamera48 to identify a product is shown. From thescan item screen150, the user may select thecamera button156 to advance to the camera screen186. The camera screen186 may allow a user to take a picture of a bar code located on the product packaging or the product itself. This information may then be processed by theelectronic device10 to identify the product, in accordance with known digital image processing techniques. To capture a desired image, the camera screen186 may include acamera view window188 withalignment brackets192 for aligning the desired image, such as abar code190, within an operative portion of the camera view window. The camera screen186 may also include auser instruction message164 instructing the user to align thebar code190 with thealignment brackets192. After aligning thebar code190 with thealignment brackets192, the user may then select thecapture button194 to advance to the scanneditem screen174.
Turning toFIG. 9 and returning to thescan item screen150, a method for allowing a user to manually enter an product identifier is shown. From thescan item screen150, the user may select themanual button158 to advance the manual screen196. Manual screen196 may include atext entry box198 and akeyboard interface200 for typing in the product identifier. Theuser instruction message164 may instruct the user to enter the appropriate product information. In some embodiments, the user may be asked to enter a UPC code. After entering the product identifier in thetext entry box198, the user may continue to the scanneditem screen174 by selecting the continuebutton202.
Turning toFIG. 10 and returning to thescan item screen150, a method of allowing the user to access recently scanned items is shown. From thescan item screen150, the user may select therecent scans button160 to advance to arecent scans screen204. Therecent scans screen204 may include arecent scan list206 with a list ofrecent scan entries208. Therecent scan entries208 may be loaded into thestorage memory58 of theelectronic device10 each time that the user scans an item. In this way, the user will have a running history of all scanned items and may return to them at any time. The user may remove items from the list by selecting the “remove from list”button210. By selecting arecent scan entry208, the user may then advance to the scanneditem screen174.
As mentioned above, once a product identifier has been obtained, theelectronic device10 may be used to obtain product information that may help a user to make the best possible purchase. Turning toFIG. 11, and the scanneditem screen174, a method of using theelectronic device10 to compare product prices for several retailers is depicted in accordance with an embodiment. From the scanneditem screen174, the user may select the “compare prices”button182 to advance to the consumer prices screen212. The consumer prices screen212 may include auser instruction message164 requesting the user to select one ormore retailer categories112. As discussed above in relation toFIG. 5, each of theretailer categories112 corresponds with a list of retailers that have been pre-selected by the user or pre-set at the factory. In selecting one or more retailer categories, the user selects the retailers that will be included in the price comparison.
After the user has selected one or more of theretailer categories112, the user may advance to the prices screen218 by selecting the “prices”button216, at which time, theelectronic device10 may send an information request packet to thedata manager92, as discussed above. The information request packet may include the product identifier, a user identifier, the geographical location of the user, and/or the list of retailers corresponding with the selectedretailer categories112. Thedata manager92 may then compile one or more data packets to send back to theelectronic device10 by cross-referencing the product identifier with the information in theretailer database96. In some embodiments, the data manager may also cross-reference the user identification with theconsumer database98 to obtain preferences of the user.
The data packets compiled by thedata manager92 may include a list of retailers that sell the scanned item, along with one or more retailer information packets associated with each retailer. The retailer information packets may include such information as the store location, the price of the item at that retailer, the address of the retailer, a picture or icon or a segment of video pertaining to the retailer, an audio file pertaining to the retailer, a phone number of the retailer, an indication of whether the data applies to in-store purchases or on-line purchases, an indication of whether a special promotion may exist with regard to the item or similar items, and any other information that may be useful to the user.
If a large number of relevant retailers are found by thedata manager92, thedata manager92 may select a limited number of retailers to include in the data packets, depending on the likelihood of user interest in a particular retailer. The user may, therefore, specify a maximum number of hits that the user wishes to receive. The likelihood of user interest may be determined by thedata manager92 by using various criteria, such as retailer prices, location of the retailer, and/or user preferences. For example, thedata manager92 may select a number of retailers with the lowest prices available for the selected item. For another example, thedata manager92 may select a number of retailers which are closest to the geographical location of the user. For yet another example, thedata manager92 may select retailers for which the consumer has previously requested information, according to records stored in theconsumer database98. In one embodiment, the user may select or pre-select the manner in which retailers are displayed to the user.
Additionally, depending on the request ID sent by theelectronic device10, the data packets may include only a select portion of the retailer information available in theretailer database96. For example, the data packets may include only the information that will be displayed in the prices screen218, such as retailer name, retailer price and store location.
After thedevice10 receives the data packet(s) from thedata manager92, thedevice10 may advance the user to the prices screen218. As in the scanneditem screen174, the prices screen218 may include aproduct picture176 andproduct information elements178. The prices screen218 may also include a retailer prices list220 with one or moreretailer price entries222. Each of theretailer price entries222 may include the name of the retailer as well as one or moreretailer information elements224. For example,retailer information elements224 may include an indication of the distance between the current location of the user to the location of the retailer, and/or the distance from the retailer to a home location specified by the user. Theretailer information element224 may also include the retail price offered by the retailer for the scanneditem78. The prices screen218 may also include one or more “sort”buttons226 which may allow the user to alter the appearance of the retailer prices list220. For example, the user may use thesort buttons226 to sort the retailer prices list according to the retailer's distance or according to price.
By selecting aretailer price entry222, the user may advance to theretail information screen228. As discussed above, in some embodiments, theelectronic device10 may send another information request to thedata manager92 to obtain more detailed information pertaining to the selected retailer. In other embodiments, the more detailed information may have already been obtained during the previous information request. Theretailer information screen228 may include abuilding icon126 and/or an on-line icon128 indicating, as stated above, whether the particular retailer selected is a brick-and-mortar retailer and/or whether the retailer provides on-line shopping capabilities. Theretailer information screen228 may also include aretailer picture230, which may be downloaded from theretailer database system96. Theretailer database screen228 may also include a segment of video pertaining to the particular retailer. Theretailer information screen228 may also include aretail information window232, which may hold a variety of information of interest to the user, such as the distance between the retailer and the user and/or the price offered by the retailer for the scanneditem78.
Theretailer information screen228 may also provide additional shopping-related features, as illustrated inFIG. 12. For example, by selecting a “map”button234, the user may advance to a map screen240. The map screen240 may be created by a mapping application included in theelectronic device10 or may be an on-line mapping website running in the web browser of theelectronic device10. The mapping screen240 may include anaddress indication element242 as well as a “get directions”button244, which allows the user to obtain turn-by-turn directions from his or her current location to the selected retailer. Moreover, the map screen240 may also include amap element246, showing a retailer location with adestination icon248 and showing the current location of the user with acurrent location icon250. In some embodiments, themap element246 may also include a trace depicting a route between the user's current location and the selected retailer. Additional features of a mapping application may also be included, such as route guidance.
As another example of a feature available at theretailer information screen228, the user may also select a “promotions”button236 to advance to thepromotions screen252. The promotions screen252 may serve as a medium by which the selected retailer may inform the consumer about special deals that the retailer is featuring. The promotions screen252 may be a part of the shopping application of theelectronic device10, in which case, the promotional information may be stored in theretailer database96 and sent to thedevice10 by thedata manager92. Alternatively, selection of the “promotions”button236 may direct the user to an on-line webpage of the retailer through a web application of theelectronic device10, in which case, the web address may be stored in the retailer database. The promotions screen252 may include anadvertisement window254 which may display any type of media, including still pictures or video. The promotions screen252 may also include apromotions list256 with listings of special deals available from the retailer. Entries within thepromotions list256 may be product entries within theretailer database96 that have been flagged as special promotions. In some embodiments, an audio and/or video file uploaded from theretailer database96 may be played in conjunction with the promotions screen252 or in conjunction with a selection of the user within thepromotion screen252.
The promotions screen252 may also provide the option of retrieving an “electronic coupon” to be used at a particular retailer location or online. For example, thepromotions list256 may include a listing for a coupon, which the user may select to download the coupon to theelectronic device10. Upon purchasing the featured item, the user may upload the coupon from theelectronic device10 to the retailer to realize the savings advertised. If the user uses the coupon in the store, the retailer may have a corresponding electronic device at the cash register for communicating with theelectronic device10, such as through NFC communications, for example, so that the coupon may be transferred from theelectronic device10 to the retailer.
As another example of a feature that may be available from theretailer information screen228, the user may also select the “buy now”button238 to advance to the on-line shopping screen260. The on-line shopping screen260 may be created by the shopping application of theelectronic device10. Alternatively, user selection of the “buy now”button238 may direct the user to an on-line shopping webpage of the retailer through a web application of theelectronic device10. In addition to theproduct picture176 andproduction information elements178, the on-line shopping screen260 may also offer the user another on-line shopping feature. For example, the user may add the scanned item to a shopping cart by selecting the “add to cart”button262. For another example, the user may advance to a purchasing window by selecting the “check out”button264. For yet another example, the user may view other available products by selecting the “more shopping”button266. Selection of the “more shopping”button266 may advance the user to a home page of the retailer's on-line shopping website. Alternatively, selection of the “more shopping”button266 may advance the user to another screen within the shopping application that features additional items available from that retailer, in which case, theelectronic device10 may send another information request to thedata manager92, requesting a list of other products available from the selected retailer.
Turning now toFIGS. 13A,13B, and14 methods of using anelectronic device10 to acquire and generate consumer information for a selected product are shown. Turning specifically toFIG. 13A and returning to the scanneditem screen174, a user may select the “consumer information” button to advance to theconsumer information screen268. Theconsumer information screen268 may serve as a gateway to the consumer information features of theelectronic device10. For example, theconsumer information screen268 may allow a user to receive extensive information about product features by selecting the “features”button270 and to obtain product ratings by selecting the “ratings”button272 or the “consumer guide”button274.
Regarding the “features”button270, the user may select this button to advance to the product featuresscreen276. The product featuresscreen276 may include a product featureslist278 that includesproduct feature entries280. Selection of the “features”button270 may initiate an information request by theelectronic device10. In accordance with the information request, thedata manager92 may assemble a data packet containing information obtained from themanufacturer database94, such as product type, product dimensions, product weight, product pricing and other product specifications. The information included in the data packet may be product-type specific, such as screen size in the case of a television.
Turning toFIG. 13B and returning to theconsumer information screen268, a user may select the “consumer guides”button274 to advance to a consumer guidesselection screen308. The consumer guidesselection screen308 may allow the user to acquire information from professional consumer guide organizations. Accordingly, the consumerguides selection screen308 provides aconsumer guide list310 that includes one or moreconsumer guide entries312. Selection of a particularconsumer guide entry312 will provide the user with the quality or rating information available from that particular organization for the scanned item. Theconsumer guide entries312 may be preloaded into thedevice10 at the factory and the user may also customize theconsumer guide list310 by using either the “add guide”button314 or the “remove guide”button316.
Selection of aconsumer guide entry312 may advance the user to aconsumer guide screen318, which details the consumer guide information available for the scanned item. Theconsumer guide screen318 may include adata window320 that provides any information that the consumer guide may provide for the scanned item. For example, thedata window320 may include such things as an overall rating of the product, an average retail price, and/or an indication of whether the consumer guide considers the product to be a worthwhile purchase. Theconsumer guide screen318 may include arating information list322 withrating information entries324. Therating information entries324 may provide detailed information related to features of the product that have been tested or for which repair information or consumer opinions have been compiled. The consumer guide screen may also include a “read review”button326 which may allow a user to read a professional review of the product.
Turning now toFIG. 14 and returning to theconsumer information screen268, the user may select the “ratings”button272 to advance to the consumer ratings screen282. The consumer ratings screen282 may be used to access consumer ratings that have been compiled by other users of other electronic devices. Therefore, the consumer ratings screen282 may include a consumer ratings list284 which includesconsumer ratings entries286. Theconsumer rating entries286 may identify a rater by displaying a unique user name and may show a segment of the rater's comments as well as an overall rating given by the rater.
In some embodiments, theelectronic device10 may also include a tool for users to submit a product rating. As shown inFIG. 14, selection of the “rate this item”button288 will send the user to arate item screen290. Therate item screen290 may include arating selection element294, such as a slider bar, and arating indicator292 for indicating the selected rating. To enter a comment, therate item screen290 may also include acomment window296 and akeyboard298. After submission of the rating and comment, the submission may be saved to a database that is accessible by other users, such as theconsumer database98, or some other database communicatively coupled to thedata manger92. In some embodiments, a user of theelectronic device10 may incur a small fee for obtaining a product rating, and/or may obtain a credit by submitting a product rating.
Furthermore, in some embodiments, the product information features described above may also include a side-by-side comparison of similar products. For example, in theconsumer guide screen318, consumer guide ratings for the scanned product may be displayed along with consumer guide ratings for products comparable to the scanned product. For another example, in the product featuresscreen276, product features for the scanned product may be displayed along with product features of similar products. By providing information on more than one product, the user may make a quick side-by-side comparison of similar products.
In addition to obtaining information for a single product, theelectronic device10 may also include methods of adding a product to a shopping list. Methods of generating and using a shopping list within theelectronic device10 are shown inFIGS. 15-20. As will be described further below, shopping lists may be entered into theelectronic device10 manually or by scanning a product as described above. Additionally, items in the shopping list may be associated with a product identifier or may simply be a generic or shorthand product name created by the user. The shopping lists may be used, in some embodiments, to remind the user to acquire certain items while at a store. Moreover, if a shopping list includes at least one shopping list entry that is associated with a product identifier, the shopping list may also be used to determine which retailer provides the best deal on certain items or the best overall deal on all of the items in the shopping list. In some embodiments, the shopping list may be used to schedule a regular delivery of products, such as groceries, through a delivery service. In some embodiments, a shopping list may be shared between several users and edited collaboratively.
Turning toFIGS. 15,16A, and16B, methods of organizing, creating, and editing a shopping list are depicted in accordance with embodiments. Turning specifically toFIG. 15 and returning toshopping screen100, a user may select a “shopping list”button104 to advance to the shopping lists screen330. Included in the shopping lists screen330 may be alist332 of shopping lists that the user has created. Selecting ashopping list entry334 may advance the user to theshopping list screen338. Theshopping list screen338 may include ashopping list340 which includesproduct entries342. Theproduct entries342 may include an indication of the product name or product type as well as other useful information. For example, aproduct entry342 may include anattainment indicator344 that indicates whether the user has purchased the item or placed the item within a shopping cart, for example. The user may toggle theattainment indicator344 by selecting it. In addition, theattainment indicator344 may toggle automatically upon buying the item through purchasing features of theelectronic device10.
The shopping list may be populated with various types of product entries, such as product-specific entries, type-specific entries, and generic entries, for example. A generic entry may be added to the shopping list by manually typing a generic name for a particular product and may serve as a reminder to purchase the item. However, because a product identifier is not specified, product information services may not be available for that product entry.
A product-specific entry may be added to the shopping list by scanning the product or manually entering a product identifier such as UPC code. By identifying a specific product, the user may use the product information services, such as the price comparison features, which will be described below. To differentiate between product-specific entries and generic entries, anentry type indicator346 may be included in theproduct entries342. Theentry type indicator346 may, therefore, remind the user about whether product information services are available for that item.
A type-specific entry is a product entry that is associated with a product identifier, when, in fact, the user is not committed to buying the specific product identified, but rather only a product of the same type. For example, a user may scan a bottle of salad dressing to conveniently add it to theshopping list340 when, in fact, the user may willing to buy a different brand if it is cheaper. The brand flexibility of the user may have a significant effect in the outcome of the price comparison features of theelectronic device10, which will be explained further below. Therefore, the user may indicate this brand flexibility by identifying the scanned product as type-specific. Therefore, in some embodiments, theentry type indicator346 may also serve to indicate whether the user desires to buy the specific product identified, or only products of the same type. In such embodiments, the user may toggle theentry type indicator346 by selecting it after the scanned product has been entered into the shopping list.
Various features of theelectronic device10 may be available to the user from theshopping list screen338. For example, by selecting the “shop” button, the user may access the product information services of theelectronic device10, which will be explained below. Additionally, the user may delete ashopping list340 by selecting the “delete list”button350 or edit a list by selecting the “edit list”button352. As shown inFIG. 15, the user may advance to the edit list screen in two ways. First, the user may select the “edit list”button352 from the shopping list screen339, in which case, the user is advanced to theedit list screen354. Secondly, the user may select the “new list”button336 from the shopping lists screen330, in which case, the user is advanced to thenew list screen355, where the user is prompted to enter a name for the new shopping list by theuser instruction message164. Thenew list screen355 may also include thetext entry box198 and thekeyboard interface200 for entering the name of the new list. Selection of the “ok”button356 then advances the user to theedit list screen354.
Turning toFIG. 16A, a method for editing a new or existing shopping list by scanning items is shown. As described above, the user may advance to theedit list screen354 by selecting the “edit list”button352 while in theshopping list screen338. Within theedit list screen354, the user may add items to or delete items from the shopping list. Theedit list screen354 may include theshopping list340 withproduct entries342 shown substantially as they appear in theshopping list screen338. The user may deleteproduct entries342 from theshopping list340 by selecting the “delete”button358 positioned adjacent to theproduct entry342.
Theedit list screen354 may also include anadd items window360 which provides a variety of methods for addingproduct entries342 to theshopping list340. For example, a user may wish to add aproduct entry342 to theshopping list340 by scanning the product in accordance with the methods described inFIGS. 5-10 above. Accordingly, the user may advance to thescan item screen150 by selecting the “scan”button362. The user may then utilize all the methods included inelectronic device10 for identifying a product. In the example shown inFIG. 16, the user selects the “touch scan”button152, advances to thetouch scan screen162 and scans the desired product. When the user is satisfied with the results of the scan, the user may select the “add”button368, which adds the scanned item to theshopping list340 and returns the user back to theedit list screen354.
Turning toFIG. 16B, methods of adding items to a shopping list by browsing through a list of recent scans or entering an item manually are shown. The user may browse recent scans by selecting therecent scans button160 from thescan screen150. Additionally, to allow the user to access this feature with fewer button presses, theedit list screen354 may also include arecent scans button364. The user may then select the “recent scans”button364 and advance to therecent scans screen204, described above in relation toFIG. 10. When accessing the recent scans screen204 from theedit list screen354, therecent scans entries208 may include “add”buttons370, which allow the user to add the selected item to the shopping list. In some embodiments, selection of the “add”button370 may also return the user back to theedit list screen354.
To add a product name to theshopping list340 manually, the user may select the “manual entry”button366 to advance to themanual entry screen372. Themanual entry screen372 may include user ainstruction message164, atext entry box198, andkeyboard interface200 for typing the product type name. Selection of the “ok”button374 adds the product name to the list and returns the user to theedit list screen354. As discussed above, when a product name is added manually, theproduct entry342 may include an indicator, such as theentry type indicator346 that indicates that the product information services of thedevice10 may not be available for thatproduct entry342.
Shopping lists may be saved in thestorage memory58 of theelectronic device10. Additionally, some or all shopping lists accessible to theelectronic device10 may be stored remotely, such as on theInternet91. Furthermore, shopping lists stored on theInternet91 may be shared between several users. A shared shopping list may be accessible on-line to a small group of users such as family members, room-mates, or co-workers allowing all of the users to edit the list. Because the shared list is stored on-line the shopping list may be edited through any web accessible device, such as theelectronic device10 or a personal computer.
Turning now toFIGS. 17 through 20, various product information services of thedevice10 are shown in accordance with embodiments. Specifically, methods of bargain hunting for items in the shopping list are shown. Theelectronic device10 may facilitate bargain hunting by allowing the user to search one or more retailers to obtain pricing information for each item in the shopping list. This information may then be presented to the user so that the user may make an informed decision regarding which retailer or retailers to visit to acquire the items on the list. Furthermore, embodiments may include any form of data presentation that helps a user to make an informed shopping decision. For example, theelectronic device10 may present the prices for individual products at a specific retailer, the total price for all of the products on the shopping list at a specific retailer, the travel distance to a retailer, the number of items that a retailer carries, special offers available through a retailer, the address or telephone number of a retailer, store hours, etc.
Turning specifically toFIG. 17, a method of initiating a retailer search is shown. Before a retailer search is conducted, the device may use information regarding the search parameters or the type of data presentation that the user desires. Therefore, selecting the “shop”button348 in theshopping list screen338 may advance the user to ashop list screen378 that prompts the user to enter the information. For example, the user may be prompted to select one or more retailers from theretailer categories list110. As described above, in relation toFIG. 5, selection of one ormore retailer categories112 will identify the retailers that the user wishes to search. For another example, theshop list screen378 may also include anindicator380 by which the user may indicate the number of stops that the user is willing to make to obtain the items on the shopping list. The user may specify the desired number of stops by selecting thedata entry elements382. To initiate the search of retailers, the user may select the “shop now”button384, which will advance the user to a screen that may vary according to the number of stops that the user indicated.
Turning now toFIGS. 18 and 19, methods of bargain hunting a shopping list wherein the user specifies one stop are shown. As shown in theshop list screen378 ofFIG. 18, the user has indicated a desire to make one stop, i.e. to visit one retailer, to obtain the items on the user's list. After selecting the “shop now”button384, theelectronic device10 may initiate an information request to thedata manager92.
As part of the information request, theelectronic device10 may send a broad range of information to thedata manager92, including product identifiers for all items in the shopping list, the current location of the user, a home location specified by the user, retailer preferences as selected in theretailer category list110, and a request ID that corresponds with the one-stop shopping feature of theelectronic device10. Using some or all of this information, thedata manager92 may then compile an array of retailer information by searching theretailer database96 for retailers that fit within the search criteria specified. The retailer information may include pricing information for each retailer and each item in the shopping list.
The pricing information obtained by thedata manager92 may vary depending on how the product was entered into theshopping list340. As stated above, theshopping list340 may include a mix of product-specific entries, type-specific entries, and generic entries. For a product-specific entry, thedata manager92 obtains a product price that matches the identified product. However, for a type-specific entry, thedata manager92 may obtain the lowest price available for comparable items of the same type as the identified product. Additionally, if a price for aproduct entry342 is unavailable, then a manufacturer recommended price may be substituted for an actual retail price in calculating the total price. In this way, the user will be able to make a meaningful price comparison between retailers that carry different items. For a generic entry, i.e. a shopping list entry that is not associated with a product identifier, pricing information may not be obtained.
In addition to obtaining pricing information, thedata manager92 may also derive secondary information, such as the total price for all of the items in the list at each retailer and/or the travel distance to the retailer, for example. The data manager may then send some or all of this information to theelectronic device10. In some embodiments, thedata manager92 may send only information pertaining to a limited number of retailers. For example, thedata manager92 may select retailers based on proximity to the user, lowest total price, availability of the greatest number of items on the user's shopping list, or other useful criteria, such as user preferences. Furthermore, user preferences may be provided by the user, or thedata manager92 ordevice10 may include software designed to “learn” user preferences based on past product queries or online purchases, for example. Based on of these criteria or combinations thereof, thedata manager92 may then send only the most relevant retailer information back to theelectronic device10.
After the retailer information is received by theelectronic device10, the user may be advanced to the one-stop shopping screen386. The one-stop shopping screen386 may include aretailer list388 with one ormore retailer entries390. Each of theretailer entries390 may include one or more information elements for presenting useful information about the retailer. For example, aretailer entry390 may include aretailer indicator392 listing the particular retailer to which the information applies. Theretailer entry390 may also include adistance indicator394, which may indicate a distance from the user's current geographical location to the geographical location of the retailer or a distance between the retailer and a home location specified by the user. Theretailer entry390 may also include anavailability indicator398, which may serve to indicate the number of items in the shopping list that are available through the retailer. Moreover, theretailer entry390 may include atotal price indicator396 that may indicate the total price of all the products included in the shopping list.
The user may also acquire additional details about the list by selecting aparticular retailer entry390 and selecting the “show list”button402, which will advance the user to theshopping list screen404. Theshopping list screen404 may include a modifiedshopping list406 withlist entries408. The modifiedshopping list406 may provide different information compared to the original, user-specifiedshopping list340 shown in theshopping list screen338. For example, thelist entries408 may provide product information that pertains to the particular retailer selected, such as the retailer's listed price for the item. For another example, some of the items in theoriginal shopping list340 may be substituted with different products of the same product type. This product substitution may occur when, as stated above, the user creates a type-specific entry by toggling theentry type indicator346 to indicate a lack of brand preference.
In some embodiments, theshopping list screen404 may serve as a gateway to other shopping related features of theelectronic device10, which have been described hereinabove. For example, theshopping list screen404 may include a “map”button234, which allows the user to access the mapping features of theelectronic device10, as described in relation toFIG. 12. For another example, theshopping list screen404 may also include a “view promotions”button236 which allows the user to view special promotions from the retailer or download coupons, as also described in relation toFIG. 12. In addition, selection of alist entry404 may advance the user to the scanneditem screen174, which allows the user to acquire product information for the selected item, as described above in relation toFIG. 11.
In some embodiments, theshopping list screen404 may allow a user to purchase all of the items in the shopping list remotely. For example, theshopping list screen404 may provide an option for directing the user to an on-line shopping webpage of the retailer through a web application of theelectronic device10, as shown inFIG. 12. Alternatively, theelectronic device10 may allow a user to send the shopping list to a delivery service, such as a grocery delivery service, for example. Additionally, the shopping list may pertain to consumable items that are to be replenished on a regular basis, such as food, household supplies, or office supplies, and the user may schedule regular deliveries of the items in the shopping list. The shopping list may be communicated to the delivery service and may include information regarding requested delivery dates. In some embodiments, the shopping list may be automatically communicated to the delivery service at a time interval specified by the user.
In some cases, after viewing the information available at the one-stop shopping screen386, the user may wish to visit more than one of the retailers in theretailer list388. Therefore, in some embodiments, theelectronic device10 may provide a tool for splitting the shopping list between two or more retailers and creating a multiple-stop shopping trip. In one embodiment, as shown inFIG. 19, the user may create a multiple-stop shopping trip by selecting two or more retailers from theretailer list388 and then selecting the “create trip”button400. After the user selects the “create trip”button400, two or more partial shopping lists may be created by dividing the shopping list between the two or more retailers selected, according to which retailer offers the lowest price for each product in the shopping list, for example. The division of the shopping list may be carried out by thedata manager92, or by theelectronic device10.
After the division of the shopping list is accomplished, the user may be advanced to theshopping trip screen410. Theshopping trip screen410 may include adestination list412 withdestination entries414 that correspond with the retailers selected by the user at the one-stop-shopping screen386. The order in which the retailers appear in thedestination list412 may be based on obtaining a short round trip distance between the retailers. Thedestination entries414 may include a number of information elements, such as adistance indicator394 that displays a distance between the retailer and the user of theelectronic device10 or between two retailers in thedestination list412. Thedestination entries414 may also include atotal price indicator396 that shows the total price of the items in the partial shopping list for that retailer. Thedestination entries414 may also include anavailability indicator398 that shows the number of items included in the partial shopping list for that retailer.
Upon selecting adestination entry414, the user may advance to thedestination screen416, which includes thepartial shopping list418. As with theshopping list screen338, thepartial shopping list418 may includeproduct entries342 and theattainment indicator344. When visiting the retailer, the user may use thepartial shopping list418 as a reminder to purchase the items, and may select theattainment indicator344 to mark certain items as having been obtained. If the user returns to theshopping list screen338, the attainment indicator information specified by the user at thedestination screen416 may carry back to theshopping list screen338.
At both theshopping trip screen410 and thedestination screen416, the user may select the “map”button234 to engage the map features of theelectronic device10, as described inFIG. 12. The information displayed on the map screen240 may depend on which screen was active when the user selected the “map”button234. For example, if the user selects the “map”button234 from theshopping trip screen410, themap element246 may display each of the retailers included in thedestination list412, including a trace following the preferred route between the retailers to minimize travel time and/or distance. Alternatively, If the user selects the “map”button234 from thedestination screen416, themap element246 may show only the retailer displayed in thedestination screen416.
In some cases, the user may want to create a multiple-stop shopping trip without specifying which retailers should be included in the shopping trip, thereby allowing theelectronic device10 ordata manager92 greater flexibility to obtain the lowest total price. Turning toFIG. 20, another method of creating a multiple-stop shopping trip is shown, in accordance with embodiments. As shown inFIG. 20, the user may, from theshop list screen378, input a number of stops greater than one before selecting the “shop now”button384.
In some embodiments, selection of the “shop now”button384 with a number of stops greater than one causes theelectronic device10 to send an information request packet to thedata manager92 that includes the complete shopping list, the selected retailers, and the maximum number of stops. Thedata manager92 may then create one or more suggested shopping trips by dividing the list among two or more of the selected retailers, with the number of retailers per shopping trip not to exceed the number of stops that the user specified. In some embodiments, thedata manager92 may create a shopping trip for every possible combination of retailers selected by the user at theshop list screen378. Thedata manager92 may also calculate the total price for the items in the shopping list and the total distance that the user would travel in completing each suggested shopping trip. If the data manager creates a large number of shopping trips, the data manager may rank the shopping trips, according to total price, for example, and send only a certain number of higher ranked shopping trips back to theelectronic device10.
After thedata manager92 sends the shopping trip information to theelectronic device10, theelectronic device10 may then advance the user to themulti-stop shopping screen420. Themulti-stop shopping screen420 may include a suggested tripslist422 withtrip entries424 for some or all of the shopping trips created by thedata manager92. Thetrip entries424 may include various information elements that may be useful to the user. For example, thetrip entries424 may include adistance indicator394 and/or atotal price indicator396. Furthermore, thetrip entries424 may be organized according to a criteria specified by the user, such as lowest total price. Upon selecting aparticular trip entry424, the user may advance to theshopping trip screen410, which was described above in relation toFIG. 19. The user may then select adestination entry414 to advance to thedestination screen416, which displays thepartial shopping list418.
While many of the shopping features described herein are controlled by the user, other features of theelectronic device10 may allow a manufacturer, retailer, or other advertiser to send shopping related information to theelectronic device10 without a specific request by the user for the information. In some embodiments, theelectronic device10 may briefly interject an advertisement window, such as thepromotion screen252, in response to a related selection of the user. For example, upon selection of the “buy now”button238, as shown in theretailer information screen228, theelectronic device10 may advance to promotions screen252 or some other advertisement window before advancing to theonline shopping screen260. For another example, an advertisement window may also appear upon the identification of a particular product at thescan item screen150. In various embodiments, the advertising window may appear at any time that a user makes a selection that identifies a particular product or retailer and may provide the advertiser an opportunity to attract the consumer's attention to its own related products or promotions. The advertisement window may include a message from the advertiser, which may be presented in the form of text, a picture, video, or audio.
Accordingly, thedata manager92 may store advertisement information within themanufacturer database94 and/or theretailer database96. The information stored in these databases may include the full advertisement as shown in the advertisement window or the database may include a web address to an on-line webpage, in which case thedata manager92 may send the web address to theelectronic device10 and link the user to the web address through the web application of theelectronic device10.
Embodiments are also directed to systems and methods wherein an individual store may create an enhanced in-store shopping experience for users of theelectronic device10.FIGS. 21-25 illustrate a system and methods for using anelectronic device10 to facilitate in-store shopping. In embodiments, the user may create a shopping list of store merchandise while browsing the store and may place an order and check out using theelectronic device10, as described further below.
Turning specifically toFIG. 21, a store-widedata transfer system426 is shown in accordance with embodiments. The store-widedata transfer system426 may allow a user of theelectronic device10 to access the shopping features offered by the store. To gain access to the store-widedata transfer system426 theelectronic device10 may first communicate with theNFC device428, which may be passive or active and may be controlled by a greeter, as shown inFIG. 21, or may be included in a customer information kiosk. In some embodiments, theNFC device428 may be a model of an iPhone® available from Apple Inc. of Cupertino, Calif.
Using information acquired from theNFC device428, theelectronic device10 may connect to aserver430 through theLAN89. Theserver430 may be coupled to one or more databases, including astore database432. The store database may hold product information regarding merchandise available in the store, such as brand name, model number, serial number, SKU number, UPC code, product descriptions, store prices, locations in the store where products are located, the number of items in stock, media files related to specific products, etc. The store database may also include other store specific information such as a map of the store.
Theserver430 may also be coupled to aconsumer data base434 that holds consumer related information such as billing information, contact information, shipping addresses, purchase orders and records regarding previous purchases, etc. Furthermore, the server may also be coupled to adisplay436 that allows a purchase order of a customer to be displayed so that a store employee may process the order.
Turning toFIG. 22, a system for allowing a user to create a shopping list with theelectronic device10 is shown. To facilitate the addition of items to a shopping list, eachproduct78 throughout the store may be associated with anNFC device80, such as an RFID tag. TheNFC device80 may be coupled directly to theproduct78 or may be coupled to a product display element, such as a sign located in front of the product as shown inFIG. 22. The NFC communications between theelectronic device10 and theNFC device80 may allow a user to acquire a product identifier related to theproduct78, as previously described in relation toFIG. 4.
Turning toFIG. 23, a method of providing in-store shopping through the store-widedata transfer system426 is shown in accordance with embodiments. As shown inFIG. 23, the user may access on the in-store shopping features of theelectronic device10 by selecting the “in-store”shopping button107 from theshopping screen100. Selection of the “in-store”shopping button107 may turn on theNFC interface50 of theelectronic device10 and advance the user to themessage screen438.
Themessage screen438 may include a series ofprogress indicators440. Thefirst progress indicator440 may instruct the user to touch theelectronic device10 to the store'sNFC device428. As shown inFIG. 21, theNFC interface50 may then send anoutput signal82 to theNFC device428, requesting a connection to the store'sLAN89. In response, theNFC device428 may transmit areturn signal84, which may carry networking information used to connect to theelectronic device10 to the store'sLAN89, such as a service set identifier (SSID), channel, and encryption key.
After acquiring the networking information, thefirst progress indicator440 may provide feedback, informing the user of the success of the NFC communication, and theelectronic device10 may connect to theserver430. Once connected to theserver430, theelectronic device10 may provide information used to identify theelectronic device10 and distinguish it from other electronic devices of other customers in the store. Furthermore, theserver430 may load specialized software that includes the shopping tools offered by the store, as described below. Because theelectronic device10 communicates with theserver430 wirelessly, the user may move about the store while the software is downloaded. Meanwhile, themessage screen438 may display aprogress indicator440 informing the user that software is being downloaded.
After downloading the software from theserver430, themessage screen438 may provide appropriate feedback through theprogress indicators440 before advancing the user to the in-store shopping screen442. In some embodiments, the in-store shopping screen442 may include aretailer picture230 and ashopping list340 withproduct entries342. After advancing to the in-store shopping screen442, the user is then ready to start adding items to theshopping list340.
When the user finds an item that he wishes to purchase, the user may select the “add item”button444. Selection of the “add item”button444 may turn on theNFC interface50 and advance the user to thetouch scan screen162, which was described above in relation toFIG. 6. The user may then acquire a product identifier by touching theNFC interface50 to theNFC device80.
After the successful scan of the selected item, the item may be added to theshopping list340 and the user returned to the in-store shopping screen442. Scanning the item may also cause theelectronic device10 to initiate a request for product related information from the server. Such product related information may include a product description, product price, product picture, the number of products in stock, or any other information that may be obtained from thestore database432 for the product.
Turning now toFIG. 24, and returning to the in-store shopping screen442, methods of purchasing the items in theshopping list340 are shown in accordance with embodiments. From the in-store shopping screen442 the user may select the “checkout”button446, which may advance the user to thecheckout screen450. The checkout screen may provide various options by which the user may purchase the items in theshopping list340. In some cases, the user may which to purchase items in the shopping list electronically. In that case, the user may select the “buy now”button452, which causes the items to be purchased electronically.
After selecting the “buy now”button452 the user may be prompted to enter payment information such as credit card information, debit card information, prepaid card information, or electronic check information, for example. In other embodiments, theconsumer database434 may already contain the required billing information. In yet other embodiments, the payment information may be stored on the electronic device and accessible to the shopping application, enabling a one-click checkout functionality. As such, the shopping application may display a list of payment options corresponding with payment information previously entered by the user into theelectronic device10. The payment information may be managed by a shared application that enables one-click checkout functionality regardless of the particular retailer. Methods of conducting an electronic purchasing transaction are described in the commonly assigned patent application titled, “Portable Point of Purchase Devices and Methods,” by Gloria lin et al., filed on Sep. 30, 2008, application Ser. No. ______, which is hereby incorporated by reference for all purposes.
In some cases, the user may wish to proceed to a cashier to checkout in person, which may be useful if the user wishes to pay in cash, for example. In that case, the user may select the “cashier checkout”button454, in which case the user may be prompted to proceed to a checkout station.
Upon selection of the “cashier checkout”button454 or the “buy now button”452, theelectronic device10 may send a purchase request to theserver430. The purchase request may include product identifiers for each of the products in theshopping list340. Theserver430 may then create a purchase order and may send a list of the purchased items to thedisplay436. A store employee may then retrieve the products from stock and deliver the products to a pickup area.
Meanwhile, if the user selected the “buy now”button452, the user may be advanced to the buy now screen456, which may inform the user that the user's order is being processed and that the user will be notified when the order is ready for pickup. If the user selected the “cashier checkout” button, however, the user may be advanced to the “in-store checkout”screen458, which instructs the user to proceed to a checkout station while the order is being processed.
When the order is ready for pickup, theserver430 may send a message to theelectronic device10. In response to the incoming message the user may be advanced to an in-comingmessage screen460. In some embodiments, the in-comingmessage screen460 may be a part of the text messaging application of theelectronic device10, in which case the message may be delivered through SMS text messaging. In other embodiments, the in-comingmessage screen460 may be generated by the in-store shopping software. The in-comingmessage screen460 may include a message informing the user that the user's order is ready for pickup.
Turning now toFIG. 25 and returning to the in-store shopping screen438, another feature of the in-store shopping application is shown in accordance with an embodiment. As shown inFIG. 25, various store related information may be accessible to the user from the in-store shopping screen438. For example, in one embodiment, the in-store shopping screen may include a “store map” button, selection of which advances the user to astore map screen462 that includes astore map464. The store map may show the location of various items within the store. Additionally, the store map may be searchable. As such, the user may enter a product name into thetext box466 and the store map may identify the store location for the product with thelocation icon468.
While the invention may be susceptible to various modifications and alternative forms, specific embodiments have been shown by way of example in the drawings and will be described in detail herein. However, it should be understood that the invention is not intended to be limited to the particular forms disclosed. Rather, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the following appended claims.