Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberCA2451176 C
Publication typeGrant
Application numberCA 2451176
PCT numberPCT/US2002/020683
Publication date10 Feb 2015
Filing date28 Jun 2002
Priority date6 Jul 2001
Also published asCA2451176A1, EP1407408A2, EP1407408A4, US6917922, US7672874, US8027884, US8165923, US20050154651, US20050154652, US20100138319, US20120016768, WO2003005151A2, WO2003005151A3
Publication numberCA 2451176, CA 2451176 C, CA 2451176C, CA-C-2451176, CA2451176 C, CA2451176C, PCT/2002/20683, PCT/US/2/020683, PCT/US/2/20683, PCT/US/2002/020683, PCT/US/2002/20683, PCT/US2/020683, PCT/US2/20683, PCT/US2002/020683, PCT/US2002/20683, PCT/US2002020683, PCT/US200220683, PCT/US2020683, PCT/US220683
InventorsJeffrey P. Bezos, Maryam S. Mohit, Walker L. Lockhart, Ericka N. Lock, William W. Allocca, Suguna Subramaniam
ApplicantJeffrey P. Bezos, Maryam S. Mohit, Walker L. Lockhart, Ericka N. Lock, William W. Allocca, Suguna Subramaniam, Amazon.Com, Inc., Amazon.Com Holdings, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: CIPO, Espacenet
Contextual presentation of information about related orders during browsing of an electronic catalog
CA 2451176 C
Abstract
An online store system, which may be implemented as a web site or another type of interactive system, presents context-sensitive information (212) to customers about their prior orders during browsing of an electronic catalog of products. In one embodiment, when a customer accesses a detail page (220) for a particular product, the detail page (220) is supplemented with information (212), such as status information, about a related order placed by the customer. The related order may be an order for the product represented in the detail page (220) or may be for a treated product. Information about related orders may additionally or alternatively be added to other types of pages, such as product category pages (220) and shopping cart part pages.
Claims(84)
THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A server system that provides online access to a browsable electronic catalog of items, and provides functionality for users to order items from the electronic catalog using computing devices that communicate with the server system over a network, the server system comprising a database that stores user-specific data descriptive of orders previously placed by users from the electronic catalog, the server system characterised by:
a cache that temporarily stores data descriptive of said orders previously placed by users that are currently browsing the electronic catalog, including data retrieved from the database;
wherein the server system is programmed to respond to a request from an online user for a catalog page that describes a catalog item by at least (1) checking the cache for information about an order, previously placed by the user, that is related to the catalog item, and (2) if the cache contains information about such a related order, dynamically incorporating the information about the related order into the catalog page for presentation to the user;
whereby users are provided with personal, context-dependent information about previously placed orders during browsing of the electronic catalog.
2. The server system of claim 1, wherein the server system automatically updates the cache in response to orders placed by users, such that the cache is updated throughout a user's browsing session to reflect user actions performed during the browsing session.
3. The server system of any one of claims 1 or 2, wherein the server system is programmed to automatically retrieve order history information of a given user from the database, and load the order history information into the cache, in response to an online action performed by the given user.
4. The server system of any one of claims 1 to 3, wherein the server system is programmed to flush a given user's data from the cache if the user is no longer browsing the electronic catalog.
5. The server system of any one of claims 1 to 4, wherein the catalog page is an item detail page that provides a user option to select the catalog item for purchase.
6. The server system of any one of claims 1 to 4, wherein the catalog page is a category page that lists catalog items falling within a common category.
7. The server system of any one of claims 1 to 4, wherein the catalog page is a search results page generated in response to submission by the user of a search query.
8. The server system of any one of claims 1 to 7, wherein the information about the related order comprises an indication of whether the catalog item is compatible with an item previously ordered by the user.
9. The server system of any one of claims 1 to 8, wherein the information about the related order comprises an indication that the user has already purchased the catalog item.
10. The server system of any one of claims 1 to 9, wherein the information about the related order comprises information about an order fulfillment status of the related order.
11. The server system of any one of claims 1 to 10, wherein the related order is an order previously placed by the user for an item that is different from but related to the catalog item.
12. The server system of any one of claims 1 to 11, wherein the server system is programmed to check the cache for related order information each time a user accesses any one of a plurality of catalog pages of the electronic catalog.
13. The server system of any one of claims 1 to 12, wherein the server system is programmed to incorporate related order information into a plurality of different types of catalog pages of the electronic catalog.
14. A computer-implemented method of providing context-dependent account information to users of an electronic catalog, the method comprising:
maintaining, in a database, a user order history reflective of orders placed by a user for items in an electronic catalog;
copying at least a portion of the user order history from the database into a cache during a browsing session in which the user browses the electronic catalog;
during the browsing session, receiving a request from the user for a page of the electronic catalog, said page being a page that describes at least one item in the electronic catalog;
in response to the request, retrieving from the cache, and incorporating into the page, information about a prior order placed by the user, said prior order being related to the at least one item described by the page;
and transmitting the page, with the incorporated information about the prior order, to the user.
15. The method of claim 14, further comprising automatically updating the cache in response to placement of an order by the user during the browsing session.
16. The method of any one of claims 14 or 15, wherein the step of copying at least a portion of the user order history from the database into the cache is performed in response to a request by the user for a catalog page that qualifies for the display of information about related orders.
17. The method of any one of claims 14 to 16, wherein the page is an item detail page that provides a user option to select an item for purchase.
18. The method of any one of claims 14 to 16, wherein the catalog page is a category page that lists multiple items falling within an item category.
19. The method of any one of claims 14 to 16, wherein the page is a search results page generated in response to submission by the user of a search query.
20. The method of any one of claims 14 to 19, wherein the information about the prior order comprises an indication of whether an item described by the page is compatible with an item previously ordered by the user.
21. The method of any one of claims 14 to 20, wherein the information about the prior order comprises an indication that the user has already purchased an item described by the page.
22. The method of any one of claims 14 to 21, wherein the information about the prior order comprises information about an order fulfillment status of the prior order.
23. The method of any one of claims 14 to 22, wherein the prior order is an order placed by the user for an item that is different from but related to an item featured on the page.
24. The method of any one of claims 14 to 23, further comprising, in response to the request, checking the cache to determine whether any prior orders represented therein are related to the at least one item.
25. The method of any one of claims 14 to 24, wherein the information about the prior order is provided to the user in said page without requiring the user to explicitly request order history information.
26. An electronic catalog system, comprising:
a electronic catalog of products represented within a computer memory, the electronic catalog including product detail pages that provide information about specific products, and provide functionality for selecting such products for purchase; and a server system that provides online access to the electronic catalog of products and provides functionality for users to purchase selected products from the electronic catalog, said server system programmed to maintain order histories for users of the electronic catalog;
the server system being responsive to a request from a user for a product detail page of the electronic catalog by (1) determining whether the user previously placed an order that is related to the product represented within the product detail page, and (2) if the user placed such a related order, supplementing the product detail page with information about the related order for presentation to the user, whereby a likelihood that the user will place an unnecessary or undesirable order for said product is reduced.
27. The electronic catalog system of claim 26, wherein the server system supplements the product detail page with the information about the related order without requiring the user to request order history information.
28. The electronic catalog system of any one of claims 26 or 27, wherein the information about the related order comprises an indication of whether the product represented within the product detail page is compatible with a product previously purchased by the user.
29. The electronic catalog system of any one of claims 26 to 28, wherein the information about the related order comprises an indication that the user has already purchased the product represented within the product detail page.
30. The electronic catalog system of any one of claims 26 to 29, wherein the information about the related order further comprises a link to a page containing detailed information about the order.
31. A method of customizing pages of an electronic catalog for individual users, the method comprising:
providing a server system that provides online access to an electronic catalog of items, and provides functionality for users to purchase items from the electronic catalog;
receiving, at the server system, a request for a page of the electronic catalog that displays a subset of the items in the electronic catalog and provides an option to select an item for purchase, said request generated by a client program in response to selection of the subset by an online user for viewing; and in response to the request, (a) identifying a related order previously placed by the user, said related order being related to the subset, (b) supplementing the page of the electronic catalog with information about the related order, and (c) returning the page of the electronic catalog, as supplemented with the information about the related order, from the server system to the client program for presentation to the user;
whereby information about a previous order is presented to the user contextually during browsing of the electronic catalog without requiring the user to explicitly request order history information.
32. The method as in claim 31, wherein supplementing the page of the electronic catalog comprises supplementing the page with information about a current processing status of the related order.
33. The method as in any one of claims 31 or 32, wherein the page is an item detail page for a first item selected by the online user for viewing, and the detail page provides an option to select the first item for purchase.
34. The method as in any one of claims 31 to 33, wherein the related order is an order previously placed by the user for the first item.
35. The method as in any one of claims 31 to 33, wherein the related order is a previous order placed by the user for a second item that is related to the first item.
36. The method as in any one of claims 31 to 35, wherein supplementing the page of the electronic catalog comprises adding to the page a notification that an item represented therein is incompatible with a related item previously purchased by the user.
37. The method as in any one of claims 31 to 36, wherein the page corresponds to an item category selected by the online user.
38. The method as in any one of claims 31 to 37, wherein identifying a related order comprises identifying an order for an item that falls within the item category.
39. The method as in any one of claims 31 to 38, wherein the page provides an option to initiate placement of an order for an item.
40. A computer-implemented method of providing account-specific information to users of an online store, the method comprising:
providing online access to an electronic catalog of products in which users may navigate to product detail pages that display detailed information about specific products and provide controls for selecting such products for purchase;
maintaining user-specific order histories representing orders placed by users for products in the electronic catalog;
receiving a request from a user for a product detail page of a first product that was previously ordered by the user; and in response to the request, supplementing the product detail page with at least an indication that the user previously ordered the first product.
41. The method as in claim 40, wherein supplementing the product detail page comprises displaying information within the product detail page about a current status of an order for the first product.
42. The method as in claim 41, wherein supplementing the product detail page further comprises presenting an option to the user to track shipment of the order.
43. The method as in claim 41, wherein supplementing the product detail page further comprises presenting an option to the user to cancel or modify the order.
44. The method as in claim 40, further comprising supplementing the product detail page with information about an order placed by the customer for a second product that is related to the first product.
45. The method as in claim 40, further comprising, when the user accesses a category page associated with a category of the products in the electronic catalog, supplementing the category page with information about an order placed by the user for a product that falls within the category.
46. The computer-implemented method of any one of claims 40 45, wherein the product detail page is supplemented with said information without requiring the user to explicitly request order history information.
47. A server system that provides account-specific information to users of an online store according to the method of claim 40.
48. A supplemented product detail page generated according to the method of claim 40, and represented within a computer.
49. A computer readable medium having stored thereon codes for directing a processor to execute the method of any one of claims 40 - 46.
50. An electronic catalog system, comprising:
an electronic catalog of products represented within a computer memory, the electronic catalog including product detail pages that provide information about specific products, and provide functionality for selecting such products for purchase; and a server system that provides online access to the electronic catalog of products and provides functionality for users to purchase selected products from the electronic catalog, said server system programmed to maintain order histories for users of the electronic catalog;
the server system being responsive to a request from a user for a product detail page of the electronic catalog by (1) determining whether the user previously placed an order that is related to the product represented within the product detail page, and (2) if the user placed such a related order, supplementing the product detail page with information about the related order for presentation to the user, whereby the server system reduces a likelihood that the user will place an unnecessary or undesirable order for said product.
51. The electronic catalog system of claim 50, wherein the server system supplements the product detail page with the information about the related order without requiring the user to request order history information.
52 The electronic catalog system of claim 50, wherein the information about the related order comprises an indication of whether the product represented within the product detail page is compatible with a product previously purchased by the user.
53. The electronic catalog system of claim 50, wherein the information about the related order comprises an indication that the user has already purchased the product represented within the product detail page.
54. The electronic catalog system of claim 53, wherein the information about the related order further comprises a link to a page containing detailed information about the order.
55. A method of customizing pages of an electronic catalog for individual users, the method comprising:
providing a server system that provides online access to an electronic catalog of items, and provides functionality for users to purchase items from the electronic catalog;
receiving, at the server system, a request for a page of the electronic catalog that displays a subset of the items in the electronic catalog and provides an option to select an item for purchase, said request generated by a client program in response to selection of the subset by an online user for viewing; and in response to the request, (a) identifying a related order previously placed by the user, said related order being related to the subset, (b) supplementing the page of the electronic catalog with information about the related order, and (c) returning the page of the electronic catalog, as supplemented with the information about the related order, from the server system to the client program for presentation to the user;

whereby information about a previous order is presented to the user contextually during browsing of the electronic catalog without requiring the user to explicitly request order history information.
56. The method as in claim 55, wherein supplementing the page of the electronic catalog comprises supplementing the page with information about a current processing status of the related order.
57. The method as in claim 55, wherein the page is an item detail page for a first item selected by the online user for viewing, and the detail page provides an option to select the first item for purchase.
58. The method as in claim 57, wherein the related order is an order previously placed by the user for the first item.
59. The method as in claim 57, wherein the related order is a previous order placed by the user for a second item that is related to the first item.
60. The method as in claim 55, wherein supplementing the page of the electronic catalog comprises adding to the page a notification that an item represented therein is incompatible with a related item previously purchased by the user.
61. The method as in claim 55, wherein the page corresponds to an item category selected by the online user.
62. The method as in claim 61, wherein identifying a related order comprises identifying an order for an item that falls within the item category.
63. The method as in claim 55, wherein the page provides an option to initiate placement of an order for an item.
64. The method as in claim 55, further comprising supplementing the page with information about at least one additional order that is related to the subset.
65. A computer readable medium encoded with codes for directing a processor to execute the method of any one of claims 55 - 64.
66. A method of providing contextual information to customers on pages of an electronic catalog, the method comprising:
receiving, from a computing device associated with a customer, a request for an item detail page of an electronic catalog, said item detail page corresponding to a first catalog item, and providing functionality for selecting the first catalog item for purchase;
determining, in response to the request, that the customer previously placed an order for a second catalog item that is related to the first catalog item;
supplementing the item detail page with information reflective of the previously placed order, said information including an identification of the second catalog item; and sending the item detail page, as supplemented with the information reflective of the previously placed order, to the computing device in response to the request;
wherein the method is performed by a system that comprises one or more servers.
67. The method of claim 66, wherein the information reflective of the previously placed order comprises an indication of whether the first catalog item is interoperable with the second catalog item.
68. The method of claim 67, wherein the first and second catalog items are electronics products.
69. The method of claim 66, wherein the information reflective of the previously placed order comprises an indication of whether the first catalog item is compatible with the second catalog item.
70. The method of claim 66, wherein the information reflective of the previously placed order comprises an indication that the first catalog item is not compatible with the second catalog item.
71. The method of claim 70, wherein the indication that the first catalog item is not compatible with the second catalog item is included on the item detail page in response to a determination by said system that the customer has not purchased a catalog item that is compatible with the first catalog item.
72. The method of claim 70, wherein the method comprises accessing a data repository of information regarding item incompatibilities to determine whether the first and second items are incompatible.
73. The method of claim 66, wherein the information reflective of the previously placed order comprises a date on which the customer placed said order.
74. The method of claim 66, wherein the method comprises, in response to the request, accessing item relationship data to identify a plurality of related catalog items that are related to the first catalog item, and accessing order data of the customer to determine whether the customer has ordered any of said related catalog items.
75. The method of claim 66, wherein the method comprises accessing cached customer data to determine whether the customer has placed an order for a catalog item that is related to the first catalog item.
76. An interactive system, comprising:
a computing system that provides user access to an electronic catalog of items, said electronic catalog comprising item detail pages that correspond to particular items, said item detail pages providing functionality for selecting corresponding items for purchase, said computing system comprising one or more servers;
a data repository that stores customer-specific order information regarding orders placed by computers for particular items represented in the electronic catalog; and a data repository that stores item relationship data identifying particular items that are related to each other;
said computing system programmed to respond to a request, from a computing device associated with a customer, for an item detail page corresponding to a first item by at least (a) using said order information and item relationship data to determine whether the customer previously placed an order for a second item that is related to the first item, and (b) when such a previously placed order is identified, supplementing the item detail page with information reflective of said order, said information identifying the second item.
77. The interactive system of claim 76, wherein the computing system is additionally programmed to access item incompatibility information to determine whether the first and second items are incompatible with each other, and when the first and second items are determined to be incompatible, to supplement the item detail page with an indication that the first and second items are incompatible.
78. The interactive system of claim 76, wherein the information reflective of the previously placed order comprises an indication that the first and second items are incompatible with each other.
79. The interactive system of claim 78, wherein the computing system is programmed to supplement the item detail page with said indication in response to determining that the customer has not purchased an item that is compatible with the first item.
80. The interactive system of claim 76, wherein the information reflective of the previously placed order comprises an indication of whether the first and second items are interoperable with each other.
81. The interactive system of claim 76, wherein the information reflective of the previously placed order comprises a date on which the customer placed said order.
82. The interactive system of claim 76, wherein the computing system is operative to respond to the request by accessing the item relationship data to identify a plurality of related items that are related to the first item, and to use the order information to determine whether the customer has ordered any of said related items.
83. The interactive system of claim 76, wherein the computing system is programmed to cache order history information associated with said customer during a browsing session of the customer, and to access the cached order history information during the browsing session to determine whether the customer has ordered any items that are related to those selected for viewing during the session.
84. Computer readable media encoded with codes for directing a processor system comprising one or more servers to execute the method of any one of claims 66
75.
Description  (OCR text may contain errors)

CONTEXTUAL PRESENTATION OF INFORMATION ABOUT
RELATED ORDERS DURING BROWSING OF AN ELECTRONIC CATALOG
FIELD OF THE INVENTION
This invention relates to information filtering and retrieval systems. More specifically, this invention relates to data processing methods for assisting users in accessing account-specific information associated with items in an electronic catalog.
BACKGROUND OF THE INVENTION
With the increasing popularity of computer networks, it has become common for merchants to set up online stores for marketing and selling products. These stores typically include electronic catalogs that can be browsed interactively by potential customers via the Internet, an online services network, or another type of system that supports interactive browsing.
Many online stores provide services for customers to access information about their pending and past transactions. The transaction information may include, for example, descriptions of orders placed, the fulfillment status of such orders, and other details of the underlying transaction (payment method, delivery method, etc.). Typically, the online store also permits each customer to create and edit a personal profile, which may include such information as a shipping address, an email address, an electronic wish list, and information about the customer's preferences.
Customers typically may access their account information by choosing to enter an "accounts" section of the online store (e.g., by selecting a "My Account" or "My Profile"
link) wherein the customers may track orders, alter contact information, change preferences, sign up for new promotions, and so forth. While an accounts section provides customers with detailed information about their accounts, accessing the accounts section while using the online store is sometimes inconvenient and disruptive of the online shopping experience. Further, the task of locating a particular transaction may be tedious and time consuming if the customer's transaction history is large.

SUMMARY OF THE INVENTION
The present invention involves presenting context-sensitive information to customers about their prior orders during browsing of an online, electronic catalog of products. In accordance with one aspect of the invention, when a customer accesses a portion of the electronic catalog associated with a particular subset of products (e.g., a specific product or product category), information about related orders previously placed by the customer, if any, is automatically retrieved and presented to the customer (e.g., within a web page). This information is presented without requiring the customer to access an "accounts" area (although such an area may be provided), and without requiring the user to separately request information about the previous orders. Customers are thus presented with information about their previous orders during ordinary browsing of the electronic catalog. In addition, this information is presented in conjunction with the catalog items to which it pertains. Any of a variety of other types of account-specific information associated with the subset of products may additionally or alternatively be presented. For example, a customer may be presented with order fulfillment information so the customer does not have to contact customer service to find out whether an ordered product has been shipped.
In one embodiment, when a customer visits a product detail page associated with a particular product, the detail page is customized with information about orders the customer has placed for that product, and/or with a link to such information.
This information may include, for example, the number of units purchased, the order date, and the fulfillment status of each such order. The detail page may also be supplemented with links or controls for allowing the user to track shipment of the order, cancel or modify the order, or perform another appropriate action. Other types of account-specific information associated with the product may also be included. For example, a product detail page may be supplemented with information about whether the displayed product (a) is on the customer's wish list, (b) was recently purchased for the customer as a gift, (c) is on the wish list of an "affiliated" customer, such as someone for whom the customer has previously purchased a gift, (d) is compatible with, interoperable with, or a substitute for a product previously purchased by that customer, or (e) is in stock at the customer's favorite local, physical store that has an affiliation with the online merchant.
The foregoing and other types of account-specific information may also be incorporated into other types of pages that display information about specific products. For

-2-example, when a user conducts an online search and one of the search result items is a product that was previously ordered by the customer, the search results page may be supplemented with a message indicating that the product was previously ordered. This message may also include selected transaction details as indicated above, or a link to such details. In addition, information about prior, related orders may be presented within a shopping cart page or checkout page that lists the items currently selected for purchase -in addition to or as an alternative to presenting such information in product detail pages.
Account-specific information may be incorporated into any web page. In addition, the information may range from general information, such as "you have an order that needs attention" to more specific information, such as "your Compaq iPAQ-1 audio player was shipped on August 27, 2001."
Further, some or all of the aforementioned types of account-specific information may be presented on pages dedicated to specific categories or groups of products. For instance, when a user enters an "electronics" area of the online store, a listing may be presented of orders placed for products falling within the electronics category. Further, in embodiments in which the online store provides a browse tree for navigating the product offerings by category, each browse node page may be supplemented, where applicable, with information about orders for products falling within or below the selected browse node.
The invention may be implemented within substantially any type of online store that provides interactive browsing capabilities. For example, the invention may be implemented within a web site (or group of affiliated web sites), an online services network, an interactive television system, or a system that supports interactive browsing by voice (e.g., a voiceXML based system). Further, the invention may be embodied within systems in which purchases are made at point-of-sale terminals within physical stores.
In accordance with one aspect of the invention, there is provided a server system that provides online access to a browsable electronic catalog of items, and provides functionality for users to order items from the electronic catalog using computing devices that communicate with the server system over a network. The server system comprises a database that stores user-specific data descriptive of orders previously placed by users

3 from the electronic catalog. The server system is characterised by a cache that temporarily stores data descriptive of said orders previously placed by users that are currently browsing the electronic catalog, including data retrieved from the database. The server system is programmed to respond to a request from an online user for a catalog page that describes a catalog item by at least (I) checking the cache for information about an order, previously placed by the user, that is related to the catalog item, and (2) if the cache contains information about such a related order, dynamically incorporating the information about the related order into the catalog page for presentation to the user, whereby users are provided with personal, context-dependent information about previously placed orders during browsing of the electronic catalog.
In accordance with another aspect of the invention, there is provided a computer-implemented method of providing context-dependent account information to users of an electronic catalog. The method involves maintaining, in a database, a user order history reflective of orders placed by a user for items in an electronic catalog, copying at least a portion of the user order history from the database into a cache during a browsing session in which the user browses the electronic catalog and during the browsing session, receiving a request from the user for a page of the electronic catalog, the page being a page that describes at least one item in the electronic catalog. The method further involves in response to the request, retrieving from the cache, and incorporating into the page, information about a prior order placed by the user, the prior order being related to the at least one item described by the page, and transmitting the page, with the incorporated information about the prior order, to the user.
In accordance with another aspect of the invention, there is provided an electronic catalog system. The system includes an electronic catalog of products represented within a computer memory, the electronic catalog including product detail pages that provide information about specific products, and that provide functionality for selecting such products for purchase. The system also includes a server system that provides online access to the electronic catalog of products and provides functionality for users to purchase selected products from the electronic catalog. The server system is programmed to maintain order histories for users of the electronic catalog. The server system is responsive to a request from a user for a product detail page of the electronic catalog by

4 (1) determining whether the user previously placed an order that is related to the product represented within the product detail page, and (2) if the user placed such a related order, supplementing the product detail page with information about the related order for presentation to the user, whereby the likelihood that the user will place an unnecessary or undesirable order for the product is reduced.
In accordance with another aspect of the invention, there is provided a method of customizing pages of an electronic catalog for individual users. The method involves providing a server system that provides online access to an electronic catalog of items, and that provides functionality for users to purchase items from the electronic catalog.
The method also involves receiving, at the server system, a request for a page of the electronic catalog that displays a subset of the items in the electronic catalog and provides an option to select an item for purchase, the request having been generated by a client program in response to selection of the subset by an online user for viewing. The method also involves, in response to the request, (a) identifying a related order previously placed by the user, the related order being related to the subset, (b) supplementing the page of the electronic catalog with information about the related order, and (c) returning the page of the electronic catalog, as supplemented with the information about the related order, from the server system to the client program for presentation to the user, whereby information about a previous order is presented to the user contextually during browsing of the electronic catalog without requiring the user to explicitly request order history information.
In accordance with another aspect of the invention, there is provided a computer-implemented method for providing account-specific information to users of an online store. The method involves providing online access to an electronic catalog of products in which users may navigate to product detail pages that display detailed information about specific products and provide controls for selecting such products for purchase and maintaining user-specific order histories representing orders placed by users for products in the electronic catalog. The method further involves receiving a request from a user for a product detail page of a first product that was previously ordered by the user, and in response to the request, supplementing the product detail page with at least an indication that the user previously ordered the first product.
4a In accordance with another aspect of the invention, there is provided a server system that provides account-specific information to users of an online store according to the method described above.
In accordance with another aspect of the invention, there is provided a supplemented product detail page generated according to the method described above, and represented within a computer.
In accordance with another aspect of the invention, there is provided a computer readable medium having stored thereon codes for directing a processor to execute any of the methods described above.
In accordance with another aspect of the invention, there is provided an electronic catalog system. The system includes an electronic catalog of products represented within a computer memory. The electronic catalog includes product detail pages that provide information about specific products, and provide functionality for selecting such products for purchase. The system further includes a server system that provides online access to the electronic catalog of products and provides functionality for users to purchase selected products from the electronic catalog, the server system programmed to maintain order histories for users of the electronic catalog. The server system is responsive to a request from a user for a product detail page of the electronic catalog by (1) determining whether the user previously placed an order that is related to the product represented within the product detail page, and (2) if the user placed such a related order, supplementing the product detail page with information about the related order for presentation to the user, whereby the server system reduces a likelihood that the user will place an unnecessary or undesirable order for said product.
In accordance with another aspect of the invention, there is provided a method of customizing pages of an electronic catalog for individual users. The method involves providing a server system that provides online access to an electronic catalog of items, and provides fimetionality for users to purchase items from the electronic catalog. The method further involves receiving, at the server system, a request for a page of the electronic catalog that displays a subset of the items in the electronic catalog and provides an option to select an item for purchase, the request generated by a client program in response to selection of the subset by an online user for viewing. The method further 4b involves in response to the request, (a) identifying a related order previously placed by the user, the related order being related to the subset, (b) supplementing the page of the electronic catalog with information about the related order, and (c) returning the page of the electronic catalog, as supplemented with the information about the related order, from the server system to the client program for presentation to the user.
Information about a previous order is presented to the user contextually during browsing of the electronic catalog without requiring the user to explicitly request order history information.
In accordance with another aspect of the invention, there is provided a computer readable medium encoded with codes for direction of a processor to execute any of the methods described above.
In accordance with another aspect of the invention, there is provided a computer-implemented method of providing account-specific information to users of an electronic catalog. The method involves receiving a request for a product detail page of an electronic catalog of products, the request generated by a computing device in response to selection, by a user of the computing device, of a product to which the product detail page corresponds. The product detail page provides functionality for the user to select the product for purposes of initiating a transaction in which the product is shipped to the user by a business entity associated with the electronic catalog. The method further involves in response to the request: programmatically accessing account information associated with the user to determine, at least, a date that the product was shipped to the user, generating a message indicating that the product was shipped to the user, the message additionally indicating at least one of: (a) said date on which the product was shipped, and (b) an estimated delivery date, and transmitting the product detail page with said message to the computing device for presentation to the user. The method further involves receiving the request, accessing the account information, generating the message and transmitting the product detail page, all performed by a computerized system that comprises a server.
In accordance with another aspect of the invention, there is provided a computer memory having stored therein a representation of a product detail page, the product detail page generated according to the any of the methods described above.
4c In accordance with another aspect of the invention, there is provided physical computer storage storing executable code for instructing a computerized system to execute any of the methods described above.
In accordance with another aspect of the invention, there is provided a method of providing contextual information to customers on pages of an electronic catalog. The method involves receiving, from a computing device associated with a customer, a request for an item detail page of an electronic catalog, the item detail page corresponding to a first catalog item, and providing functionality for selecting the first catalog item for purchase. The method further involves determining, in response to the request, that the customer previously placed an order for a second catalog item that is related to the first catalog item, supplementing the item detail page with information reflective of the previously placed order, the information including an identification of the second catalog item, and sending the item detail page, as supplemented with the information reflective of the previously placed order, to the computing device in response to the request; wherein the method is performed by a system that comprises one or more servers.
In accordance with another aspect of the invention, there is provided an interactive system. The system includes a computing system that provides user access to an electronic catalog of items, the electronic catalog comprising item detail pages that correspond to particular items, the item detail pages providing functionality for selecting corresponding items for purchase. The computing system comprises one or more servers, a data repository that stores customer-specific order information regarding orders placed by computers for particular items represented in the electronic catalog, and a data repository that stores item relationship data identifying particular items that are related to each other. The computing system is programmed to respond to a request, from a computing device associated with a customer, for an item detail page corresponding to a first item by at least (a) using the order information and item relationship data to determine whether the customer previously placed an order for a second item that is related to the first item, and (b) when such a previously placed order is identified, supplementing the item detail page with information reflective of the order, the information identifying the second item.
4d In accordance with another aspect of the invention, there is provided computer readable media encoded with codes for directing a processor system comprising one or more servers to execute any of the methods described above.
For purposes of summarizing the invention, certain aspects, advantages, and novel features of the invention are described herein. It is to be understood that not necessarily all such advantages may be achieved in accordance with any particular embodiment of the invention. Thus, for example, those skilled in the art will recognize that the invention may be embodied or carried out in a manner that achieves one advantage or group of advantages 4e as taught herein without necessarily achieving other advantages as may be taught or suggested herein.
BRIEF DESCRIPTION OF THE DRAWINGS
A general architecture that implements the various features of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention. Throughout the drawings, reference numbers are re-used to indicate correspondence between referenced elements. In addition, the first digit of each reference number indicates the figure in which the element first appears.
Figure 1 illustrates one embodiment of an example product detail web page of the merchant web site.
Figure 2 illustrates one embodiment of an example store web page of the merchant web site.
Figure 3 illustrates a general architecture of one embodiment of an inline account information system.
Figure 4 illustrates a flow diagram of one embodiment of a store customer account information process.
Figure 5 illustrates a flow diagram of one embodiment of a retrieve customer account information process.
Figure 6 illustrates a flow diagram of one embodiment of an inline account presentation process.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
I. Overview The present invention provides a customer with context-sensitive account or account-specific information as the customer accesses a product catalog of an online merchant or store. The products may be physical products that are shipped to the customer, digital products (e.g., music files or viewable content) that are downloaded or transmitted to a customer's computing device, tickets for travel or events, services provided to the customer, or a combination thereof. The context-sensitive information presented to the customer is referred to herein generally as "inline account information."

-5-In the embodiment illustrated in the drawings, the invention is implemented within a merchant web site system that may be accessed using a conventional web browser program. As is conventional, the merchant web site includes tools for browsing, searching, and purchasing products from the online catalog of products. In other embodiments, the invention may be embodied within a system in which customers access the catalog via an interactive television system, an online services network, a voice interface, a point-of-sale terminal within a store, wireless systems, or another type of system that supports interactive browsing. Further, the invention may be embodied within an "electronic mall"
system in which the electronic catalog includes the product offerings of many different online merchants.
In the illustrated embodiment, when a customer browses or navigates to a product detail page (a page dedicated primarily to a particular product), the detail page is dynamically supplemented with inline account information about any orders that have been placed by the customer for that product. This information may include selected transaction details associated with each such order (e.g., the number of units ordered, the order date, and the fulfillment status), and/or a link to such information. The types of details displayed may, but need not, be dependent upon the status and/or the age of the order.
For pending orders, the page is also preferably supplemented with controls for allowing the user to perform such actions as cancel the order or track shipment.
In .addition, the detail page may optionally be supplemented with information about orders for products that are related or "similar" to the displayed product as well as "alerts"
for when an order needs attention. For example, in one embodiment, when a user accesses a product detail page, a table of related products is accessed to identify any related products, and a determination is then made whether the customer has ordered any of the related products. Information is then displayed about these orders for related products.
An important benefit of displaying the order information within the catalog pages to which the order information pertains is that the customer is notified of prior purchases that may affect the customer's need or desire to order the displayed product.
Unnecessary orders are thereby avoided. Another benefit is that the customer can efficiently determine the status of an order by conducting a search for, or otherwise navigating to, the detail page for the ordered product, without having to access and navigate an "accounts"
area (although an accounts area may also be provided).

-6-In addition to displaying information about prior orders, the product detail pages may be supplemented with one or more additional types of inline account information.
This information may include, for example, information about whether the displayed product (a) is on the customer's wish list, (b) was recently purchased for the customer as a gift, (c) is on the wish list of an "affiliated" customer, such as someone for whom the customer has previously purchased a gift, (d) is in stock at the customer's favorite local, physical store that has an affiliation with the online merchant. Further, the product detail pages may be supplemented with information about whether the displayed product is compatible with, interoperable with, or a substitute for a product previously purchased by that customer. For instance, as described below, a product detail page may be supplemented with a notification message such as "this laptop battery does not work with the XJ7 Laptop you recently purchased," or "you previously purchased Drug ABC, which should not be taken in combination with this medication."
Some or all of the foregoing types of inline account information may also be dynamically incorporated into other types of pages that display information about specific products. For example, when a user conducts an online search and one of the search result items is a product that was previously ordered by the customer, the search results page may be supplemented with a message indicating that the product was previously ordered. This message may also include selected transaction details as indicated above, or a link to such details. In addition, information about related orders may be incorporated into shopping cart pages (pages that display the contents of a shopping cart) and check-out pages
instead of or in addition to displaying such information in product detail pages. For instance, when one of the products represented in a customer's shopping cart was previously ordered by the customer, the shopping cart page may be supplemented with an indication that the customer previously ordered the product.
Further, some or all of the aforementioned types of information may be presented on pages that correspond or are dedicated to specific categories of products.
For instance, when a user enters an "electronics" area of the online store, a listing may be presented of orders placed for products falling within the electronics category. Further, in embodiments in which the online store provides a browse tree for navigating the product offerings by category, each browse node page may be supplemented with information about orders for products falling within or below the selected browse node. Customers can thus

-7-interactively filter or categorize their account information for viewing by navigating the browse tree.
In one embodiment, the merchant's web site stores customer information in a customer database and may also utilize a temporary customer cache to store portions of the customer database, such as customer order data for customers currently interacting with the web site. After the customer first requests a web page that includes inline account information, the merchant web site may retrieve the inline account information from the customer database, incorporate the relevant portions of the information into the requested web page, and store a copy of the inline account information in the customer cache. This cache may thereafter be used to supply inline account information for other pages accessed by the customer during the same browsing session. The customer's inline account information may also be stored in the cache as soon as the customer begins a session with the merchant web site. Further, in other embodiments, the inline account information may be retrieved directly from a database on each page request, without use of a cache.
If the customer's account information is updated, the merchant web site may update the customer database and the customer cache as well. When the customer makes a subsequent request for a web page that includes inline account information, the merchant web site preferably retrieves the inline account information from the customer cache, providing fast access to the requested data without overburdening the customer database.
After the customer has finished a session with the merchant web site (e.g., by logging out or not accessing any data within a time T, that is timing out), the customer's data may be flushed from the customer cache. Thus, the merchant web site provides the customer with real-time (up-to-date), inline account information and immediate responses during the customer's interaction with the merchant's web site without exhausting system resources.
To facilitate an understanding of one practical application, systems and methods for providing an inline account information service are described primarily in the context of an example system for assisting customers of a merchant web site in locating and evaluating products within an electronic catalog. The products may include, for example, book titles, music titles, digital video disc ("DVD") titles, electronics, and video titles. It is recognized, however, that the system may be used in other environments such as the marketing and sales of other types of items. For example, in other embodiments, the items may be cars sold by an online car dealer, movies titles rented by an online video store, computer programs or informational content electronically downloaded to customer computers, or stock and mutual

-8-fund shares sold to online investors. Further, it should be understood that the "purchases"
referred to herein need not involve an actual transfer of ownership, but may involve leases, licenses, rentals, subscriptions, and other types of business transactions.
The merchant web site may provide various services for enabling customers to browse, search, and make purchases from the online catalog. In addition, information about existing customers of the web site may be stored in a customer database and may include profile and transaction information, such as the names, shipping addresses, email addresses, payment information, preferences, and browsing activity histories of the customers. The merchant web site may also include functionality or services for enabling customers to do one or more of the following: (a) create, and purchase products from, personal wish lists, (b) purchase products as gifts for other customers, (c) explicitly establish affiliations with other customers (e.g., for purposes of sharing purchase histories or other account information), (d) purchase products from, or arrange for delivery of items to, a local store that has an affiliation with the online merchant. Further, the merchant web site may include functionality for creating customer affiliations based on actions performed by customers. For example, when Customer A purchases a gift for Customer B, an association may automatically be formed between Customers A and B for purposes of displaying inline account information.
Various embodiments of providing inline account information will now be described in further detail. The illustrated screen displays, data structures, architectures, and processing methods used to implement the disclosed functions are largely a matter of design choice, and may be varied without departing from the scope of the invention. Accordingly, the scope of the invention is defined only by the appended claims.
11. Sample Web Pages The following provides a brief description of a sample product detail page and a store web page. It is recognized that the inline account information may be included in a variety of other types of pages, including search results pages, browse node pages, pages with personalized lists of recommended items, shopping cart and check out pages, help pages, home pages, and gateway home pages. Further, the inline account information service may be utilized by other services of the online store such as, for example, personalization, recommendations, customer service, order forms, and other services that

-9-use customer order information to make decisions for or suggestions to customers. In addition, as mentioned above, the web site may also provide a conventional "accounts"
area for accessing account information. A wide variety of web pages and/or other electronic doduments may be used; thus, the sample web pages are meant only to illustrate specific embodiments of the invention.
A. Product Detail Page Figure 1 illustrates a sample product detail page 110 of the merchant web site. The product detail page 110 provides detailed information about a particular product. In one embodiment, each product detail page 110 typically includes a description, picture, price, customer reviews, lists of related products, and information about the product's availability.
Some or all of this information is preferably retrieved from a products database when the page is rendered, although some or all of the information could be statically coded within the web page. The detail page 110 also provides an option for the user to initiate placement of an order for the product. In the illustrated embodiment, the user may initiate placement of an order either by adding the product to a shopping cart or by purchasing the product using a single action (1-Click) service.
The merchant web site is preferably arranged such that, in order to access the product detail page 110 of a product, a customer either selects a link associated with that product (e.g., from a browse node page or search results page) or submits a search query uniquely identifying the product. Thus, the customer's accessing of a product detail page 110 generally represents an affirmative request by the customer for information about that product. In some cases, a product detail page may encompass a number of variations or formats of the same product. For instance, a single product detail page may be provided for a particular book title, even though the book title may be sold in a variety of media formats (e.g., hardcover, paperback, audio tape, electronic, etc.). In one embodiment, a user must access a product's detail page in order to place an order for that product.
The exemplary product detail page 110 includes a photo of the featured product, a Compaq iPAQ Personal Audio Player, as well as the selling price, the rebate price, and availability information. The product detail page 110 also includes an example set of inline account information 112 for "Angela," a customer of the merchant web site.
From the inline account information 112, Angela can see that she ordered the item in August 2001, and the item's estimated delivery date is between September 3, 2001 and September 5, 2001. The inline account infoimation 112 also enables Angela to check the status of other

-10-orders as well as track the shipment of and return her Compaq iPAQ Personal Audio Player.
In one embodiment (not illustrated), the detail pages also display information about orders placed by the customer for related products. For instance, in the example of Figure 1, if Angela had also placed an order for another personal audio player product, the web page would be further supplemented with information about that order. In yet another embodiment, information about orders for related products is displayed only if no orders have been placed for the product being viewed.
Although the product detail pages in the illustrated embodiment are browser-1 0 compatible web pages, other types of page displays may be used. For instance, in an online services network or an interactive television implementation, the product detail pages may be in the form of screens or pages in a proprietary format.
B. Store Page Figure 2 illustrates a sample store home web page ("store page") 220. The 1 5 exemplary store page 220 includes featured products and promotions of a "Book Store" which includes browsable subject groups that relate to the store, as well as a variety of other services. Other stores corresponding to other major product categories of the merchant web site may be accessed by selecting the tabs at the top of the page.
The store page 220 also includes a set of inline account information 212 for the 20 customer "Angela." From the inline account information 212, Angela can see that she has ordered three books from the Book Store and that the items were shipped on August 27, 2001. This list may be generated by filtering out from Angela's order history all orders of products that fall within other product categories (e.g., music, electronics, etc.). Angela can also see that her "friend" Taylor has put the book 25 "Dreamcatcher" on her wish list. The inline account information 212 enables Angela to access more information on the books she ordered, view shipping details on her book orders, return one or more of the items, track shipment of the items, purchase the wish list book for Taylor, and check the status of other orders.
The store page is one type of product category page in which inline account 30 information may be displayed in accordance with the invention. Other types of category pages include browse node pages, author pages that lists books by a

-11-particular author, artist pages that list music titles by a particular artist, and pages associated with sub-categories of products (e.g., "MP3 players") Figures 1 and 2 illustrate sample sets of inline account information 112, 212, and it is recognized that other types of information may also be included. For example, the inline account information may indicate discounts available for a particular customer (or set of customers) as well as contact information for "friends" who have already purchased the product. Various systems and methods for notifying customers interested in particular products of other customers that have purchased the same or similar products are disclosed in U.S. Patent Application No. 09/377,322 filed August 19, 1999, published as issued U.S. Patent No. 7,082,407. Some additional types of inline account information are discussed below in the section entitled "Types of Inline Account Information."
The inline account information 112, 212 may be incorporated into the web pages using a variety of user interface tools, such as, for example, tables, embedded frames, static frames, pop-up windows, scrollable frames, and so forth. The web page and accompanying interface objects which include the inline account information are passed to the customer's web browser from the merchant web site.
III. System Architecture Figure 3 illustrates one embodiment of a general architecture of an electronic commerce system that provides inline account information. The system includes a customer computer 310 and a merchant web site 320 that communicate via a communication medium 330, such as the Internet 332.
A. Customer Computer The customer computer 310 may be implemented using any type of computing device that enables a customer to interactively browse a remote web site or online catalog through the communication medium 330 using, for example, a web browser 312, such as Netscape Navigator or Microsoft Internet Explorer. The customer computer 310 may be, for example, an interactive television, a cellular phone, a personal digital assistant, an interactive wireless communications device, a telephone that connects with an Automated Voice Recognition ("AVR") system, a handheld computer, or the like, which interacts with the communication medium 330.

-12-=
B. Merchant Web Site The merchant web site 320 is an electronic commerce web site that provides various functionality for enabling customers to purchase products. Typically, the merchant web site 320 is operated by a business entity ("merchant") that handles the various order processing, shipping, collections, and customer service tasks associated with the sale of goods. The merchant web site 320 may identify customers using any appropriate method, such as cookie retrieval or a log-in procedure. In some embodiments, the online store may include multiple, distinct web sites or systems associated with a group of affiliated merchants Figure 3 illustrates one embodiment of a sample merchant web site 320 that includes components that may be used to implement the above-described features.
The exemplary merchant web site 320 includes a web server 321 which accesses a database of web documents and related content 322. The web documents 322 may include standard HTML documents as well as other types of documents. The web server 321 processes requests for the documents 323, retrieves the documents 323, performs any necessary processing, and sends the documents 323 to the requesting computer via the communication medium 330. The documents may be used to generate the merchant web pages, such as those illustrated in Figures 1 and 2, as well as a variety of documents, such as account pages, search pages, program sign-up pages, and so forth.
The merchant web site 320 also includes a database collection 323 which includes a customer database 324, an inline information database 325, and a product database 326 of product data. In addition, the merchant web site 320 may include a customer cache 327 for temporarily storing information that corresponds to customers interacting with the merchant web site 320, tough use of a customer cache 327 is optional. The exemplary web site 320 includes a set of web site code 328 that interacts with the web server 321, the database collection 323, and the customer cache 327.

-13-, 1. Database Collection a. Customer Database The customer database 324 or user database stores inforrnation about existing customers of the merchant web site 320. This information, sometimes referred to as the customer's "user profile," may include the name, shipping address, e-mail address, payment information, login identifier, password, and one-click settings of the customer. The information may also include information about customers' accounts, such as order information, shipping information, payment information, cancellation information, wish list -13a-contents, shopping cart contents, information about affiliations established with other customers, and other information.
b. Inline Information Database The inline information database 325 stores information about the inline account information to be included in the web documents. The inline information database 325 may indicate, for example, which web pages include inline information as well as the type of information that may be included in the inline information section. It is recognized that in other embodiments such information may be explicitly or implicitly specified within the web page's coding or by the location of the web page within a directory structure.
The inline information database 325 may also include rules that govern the level of confidence needed before presenting information to the customer. For example, one rule may require that the customer's operating system match the "default" operating system specified in the customer's profile. Another rule may request a login/password pair from the customer. Other rules may include looking at the customer's ID in the cookie, which indicates that the customer has logged onto the web site at some time in the past, and verifying that the customer has an authentication session, that is that the customer has logged onto the site in the last X minutes where X is an integer. In other embodiments, once the customer has been authenticated, all types of inline account information may be presented without regard to levels of confidence. Further, customers may be given an option to inhibit the display of inline account information, and/or to specify the types of inline account information to be displayed.
It is recognized that, in other embodiments, part or all of the data in the inline information database 325 may be stored in other locations. For example, information as to which web pages may include inline information may be stored as part of the database of web documents 322, and rules relating to levels of confidence may be stored in the customer database 324.
c. Product Database The product database 326 stores information about the various products that customers may purchase through the merchant web site 320. This information may include, for example, the titles, authors, publishers, subject descriptions, and ISBNs (International Standard Book Numbers) of book titles, and the titles, artists, labels, and music classifications of music titles. The information for each item is arranged within fields, such as an "author" field, a "title" field, a "general book" field, enabling the product

-14-.

database 326 to be searched on a field-restricted basis. The product database 326 may consist of two or more separate databases.
The various product offerings may be arranged within a browse tree in which each node represents a category/group or subcategory/subgroup of products. Browse nodes at the same level of the tree need not be mutually exclusive.
d. Alternative Implementations In connection with the database collection 323, in one embodiment, there may be several processes (not shown) such as ID generators, number generators, statistic generators, session generators, and temporary storage units that work with the database collection 323.
Furthermore, it is recognized that the database collection may be implemented using a variety of different databases such as relational databases, flat file databases, or object-oriented databases. Moreover, while the database collection 323 shown in Figure 3 is comprised of several separate databases, it is recognized that in other embodiments, the database collection 323 may include other databases and/or that two or more of the databases may be combined. In addition, the database collection 323 may be implemented as a single database with separate tables or as other data structures that are well know in the art such as linked lists, stacks, binary trees, and so forth.
2. Customer Cache The customer cache 327 illustrated in Figure 3 stores information about customers interacting with the merchant web site 320. In one embodiment, the customer cache 327 stores order-related data or raw data relating to the customers, such as, for example, items purchased, shipment information, discounts, payment methods, shipping address, gift wrapping services, message services, shipping fees, as well as other information related to a given order.
The customer cache 327 may be implemented in a variety of technology, such as, for example, polling technology or publish-subscribe technology. By using publish-subscribe technology, one server may "publish" data to a server and/or the customer cache 327 and then notify the subscribing servers and/or customer caches 327 that the data has been published. Publish-subscribe technology may be used to enable event-driven cache updates and to permit communication among multiple servers. For example, publish-subscribe technology may be used to initiate the loading of the cache with one customer's

-15-data such that while one server is displaying a web page to the customer, the load request may be published to another server.
The customer cache 327 may be implemented using a high-speed storage mechanism, such as a static RAM device, a dynamic RAM device, an internal cache, a disk cache, as well as a variety of other types of storage devices. Typically, data is accessed from a cache faster than the time it takes to access a database stored in a mass storage system. The customer cache 327 stores data such that if the merchant web site 320 needs to access customer data from the customer database 324, the customer cache 327 may be checked first to see if the data is available. Thus, use of the customer cache 327 may improve the merchant web site's perfoimance in providing inline account information to customers.
In one embodiment, a session begins when a customer enters the merchant web site 320. If the customer is recognized, the web server 321 retrieves the customer's corresponding data from the customer database 324 and places a copy in the customer cache 327 for N minutes or seconds, where in N is a number. N may be adjusted or reset if the customer stays on the merchant web site 320 longer or if other applications of the merchant web site 320 request access to the data stored in the customer cache 327. For example, N may be set to P, wherein P equals the length of time the customer has been in the merchant web site 320 (as known in real-time) multiplied by a fixed number X making P easily configurable.
It is recognized that in other embodiments, P may be of various lengths, such as, for example, predetermined times (e.g., 1/2 hour, 1 hour, 2 hours, etc.) or varying times that depend on a variety of factors such as particular customer, web site traffic, time of day, and so forth.
Unrecognized or unregistered customers may be assigned temporary IDs such that the merchant web site 320 may track activity of the customers.
3. Web Site Code The web site code 328 illustrated in Figure 3 includes a store customer data process, a retrieve customer data process, and a presentation process. For more information on the processes, please refer to the section below entitled Merchant Web Site Processes.
D. Communication Medium The presently preferred communication medium 330 includes the Internet 332, though a wide range of communication mediums may be employed.

-16-IV. Merchant Web Site Processes A. Store Data Process One embodiment of the store customer data process ("store data process") is illustrated in Figure 4. The merchant web site typically executes the store data process in real-time in response to a change of data in a customer's account or to the creation of a new customer account.
The store data process receives update information (block 420). The update information may include new customers to be added to the customer database as well as updates to existing customer infolination, such as shipment information, payment information, credit card information, email address, and so forth. Proceeding to the next state, the store data process stores the update information in the customer database (block 430) and sends an update message to the customer cache 327 (block 440). The update message notifies the customer cache 327 that the customer database 324 has been modified and that the customer cache 327 may need to be updated as well. In one embodiment, the update message may include the update information, whereas, in other embodiments, the update message may include a code instructing the customer cache 327 to perform a read from the customer database 324.
Proceeding to the next state, the store data process receives the update message in the customer cache 327 (block 450) and stores the update information in the customer cache 327 (block 460). As previously discussed, the customer cache 327 may perform a read from the customer database 324 to retrieve the update information, or the update information may be included in the update message.
While one embodiment of a store data process is illustrated in Figure 4, it is recognized that other embodiments may be used. For example, the update message may be sent to the customer database 324 and the customer cache 327 at the same time.
Further, the customer database 324 and/or the customer cache 327 may queue the update messages before storing them.
B. Retrieve Customer Data Process One embodiment of a retrieve customer data process ("retrieve data process") is illustrated in Figure 5. The merchant web site 320 typically executes the retrieve data process in real-time in response to a request for customer account information. The retrieve data process receives a request for customer data (block 520).
Proceeding to the next state, the retrieve data process retrieves the customer data from the customer cache

-17-327 (block 530). If the customer data is not in the customer cache 327 (block 540), the retrieve data process retrieves the customer data from the customer database 324 (block 550) and stores a copy of the customer data in the customer cache 327 (block 560). In other embodiments, after retrieving the customer data from the customer database 324, the retrieve data process may send an update message to the customer cache 327 along with the customer data or instructions to have the customer cache 327 retrieve the customer data.
Next, the retrieve data process returns the customer data (block 570). If the customer data is found in the customer cache 327, then the retrieve data process returns the customer data (block 570).
While one embodiment of a retrieve data process is illustrated in Figure 5, it is recognized that other embodiments may be used. For example, the customer data may be sent to the customer cache 327 and stored for a later update. In addition, the customer data may be processed and/or formatted before it is returned. Further, the data may be retrieved from the customer database 324 without querying the customer cache 327.
C. Presentation Process One embodiment of a presentation process that provides inline account information in a web page is illustrated in Figure 6. The presentation process is typically executed by the merchant web site 320 in real-time in response to a request for a web page. The presentation process receives a request for a web page (block 620). Proceeding to the next state, the presentation process retrieves the requested web page (block 630) from, for example, the database of web documents 322. It is recognized that various types of web pages or electronic documents may be used such as email, video messages, and so forth.
Proceeding to the next state, the presentation process determines whether the web page includes inline account information (block 640). In one embodiment, the type of web page requested and/or the section of the merchant web site from which the request was made determines whether inline account information may be included, as well as the type of information that may be included in the web page. The type of inline account information included may be based upon the customer and the recent order information (e.g., unrecognized customer, recognized customer with recent order and no shipments, recognized customer with recent order with pending shipments, etc.). Rules specifying whether to include inline account infoimation and what information to include may be incorporated into the web site code 328 that generates the web pages, and/or into the coding of the web pages themselves.

-18-=
If inline account information is included, the presentation process retrieves the corresponding customer data (block 650) from the customer database 324 and/or the customer cache 327. One embodiment of a process for retrieving customer data is illustrated in Figure 5 and is discussed above. Proceeding to the next state, the presentation process processes the customer data (block 660). The processing may include determining which data should be presented in the web page, formatting the data, determining whether or not there is a high enough level of confidence that the requesting party has permission to access such data, and so forth. In one embodiment, the type of web page requested and/or the section of the merchant web site from which the request was made determines how the data should be formatted.
It is also recognized that in some embodiments, rather than displaying the inline account information with the product description, a link may be provided to the related account information stating, for example, "Click here to view the status of your order for this product." In addition, it is recognized that other types of web page display methods may be used and that the information may be displayed in a variety of formats. Further, in systems that provide a voice interface, the inline account information may be presented audibly using synthesized or prerecorded voice.
Proceeding to the next state, the presentation process incorporates the processed customer data as inline account information into the web page (block 670) and returns the web page (block 680). If the web page does not include inline account information, the presentation process just returns the web page (block 680).
While one embodiment of a presentation process is illustrated in Figure 6, it is recognized that other embodiments may be used. For example, the web page may not be retrieved until after the customer data has been retrieved. In addition, the request for the web page may include a code that alerts the presentation process as to whether or not customer data needs to be retrieved. Further, the inline account information may be incorporated into a separate electronic document that is associated with the web page, such as a popup window.
V. Types of Inline Account Information As will be apparent from the foregoing, a variety of types of context-sensitive, account-specific information may also be incorporated into product detail pages (and other types of pages) using the methods set forth above.

-19-For example, as indicated above, the product detail pages may also be supplemented with information about a customer's prior orders of "related" products. In one embodiment, this is accomplished by maintaining a table of products that are related. When a customer accesses a product detail page, the customer's order history and the related products table are accessed to determine whether the customer has previously purchased one or more related products. If any such previous purchases were made, the detail page is supplemented with an appropriate message notifying the customer of each such order (and optionally its status). As mentioned above, the display of orders of related products may be made contingent upon whether any orders have been placed for the displayed product itself.
In one embodiment, the related products table is generated automatically by periodically analyzing browsing histories of customers to identify products that are frequently viewed during the same browsing session. For example, products A
and B may be deemed related because a large percentage of users who viewed A also viewed B
during the same session. An important attribute of this method is that the related products reflected in the table tend to be substitutes (because customers tend to view like or substitute products during individual browsing sessions). Thus, customers are notified before potentially making unnecessary purchases. Example methods for identifying related products using product viewing histories are described in U.S. Appl. No. 09/821,712, filed March 29, 2001 and titled "USE OF PRODUCT VIEWING HISTORIES TO IDENTIFY RELATED PRODUCTS,"
(Publication No. 2002-0019763). The task of identifying related products may alternatively be performed using other sources of information, such as product descriptions and/or product classifications.
Another type of inline account information that may be displayed is information about whether the viewed product is compatible with a related product previously purchased by the customer. For instance, if a customer purchases a Kodak digital camera that uses CompactFlash memory cards, and thereafter views the detail page of a non-CompactFlash memory card, a warning message may be displayed such as "Please note that this memory card does not work with the Kodak camera you recently purchased." Before displaying such a message, the system may first confirm that the customer has not purchased another device which does use the displayed memory card. Information about incompatibilities may be maintained in the products database, a product compatibility table, the coding of the product detail pages, or another type of data repository.

-20-In addition, the displayed inline account information may include information associated with the accounts of affiliated customers. For example, a product detail page may be customized to indicate that the displayed product is on a wish list of an affiliated customer. As indicated above, the affiliation may be explicit (e.g., Customer A explicitly added Customer B to a list of "friends") or implicit (e.g., Customer A
purchased a gift or a gift certificate for Customer B).
Further, in embodiments in which the online merchant has established partnerships with physical stores, the displayed infoiniation may include information pertaining to such stores. For instance, if the online merchant provides an option for customers to pick up purchased items from local, physical stores, information about the delivery or pick up status of such items may be incorporated into the online merchant's web pages associated with such items. The following are examples of the types of personalized messages that may be displayed in such embodiments: "You ordered this product from us last Friday, and it is currently available for pick up at ABC Store on Elm Street;" "This item is currently in stock at ABC Store on Elm Street in your city of residence would you like to reserve it?"
To implement this feature, the inventory and order databases of the various merchants may be linked using methods that are well known in the art.
The inline account infoiniation may also include alerts to notify the customer that an order needs attention. The alert may occur, for example, if a customer's credit card payment did not clear, an ordered product has been recalled or discontinued, an estimated shipping date has been delayed, and so forth. These alerts may be presented to the customer in various web pages of the customer's browsing session.
VI. Conclusion Although this invention has been described in terms of certain embodiments and applications, other embodiments and applications that are apparent to those of ordinary skill in the art, including embodiments which do not provide all of the features and advantages set forth herein, are also within the scope of this invention. Accordingly, the scope of the present invention defined only by reference to the appended claims.
=

-21-=

Legal Events
DateCodeEventDescription
16 Mar 2005EEERExamination request