Routing order lookups from retail systems
First Claim
1. A method performed by a computer system, using one or more processors and non-transitory system memory, the method comprising:
- receiving, with the computer system communicatively coupled to an order database for a retailer and to an order database cache, the order database comprising order data for a plurality of customer orders, the order database cache comprising the order data synchronized from the order database, the order database communicatively coupled to a plurality of communication channels that can modify the order data of the order database, the plurality of communication channels comprising one or more in-store retail system channels, an order lookup from an in-store retail system channel of the one or more in-store retail system channels, wherein the order lookup further comprises;
a database command type;
a data indicator comprising a status of the order data; and
a portion of the order data associated with a customer order of the plurality of customer orders;
determining, with the computer system, the database command type, wherein the database command type either;
impacts a state of the order database comprising a modification to the portion of the order data or the order data;
ordoes not impact the state of the order database without a request for a modification of the portion of the order data or the order data;
determining, with the computer system, a data source to service the order lookup based at least in part on characteristics of the order lookup, the characteristics of the order lookup comprising the database command type, the data indicator, and the portion of the order data associated with the customer order, the data source selected from at least the order database and the order database cache, wherein determining the data source comprises;
determining the data source based at least in part on a timestamp of the portion of the order data associated with the customer order, when the order data in the order database cache has been synchronized from the order database; and
determining whether the database command type of the order lookup will impact the state of the order database;
routing, with the computer system, the order lookup to the data source in response to determining the data source;
when the database command type impacts the state of the order database, modifying, with the computer system, the data indicator of the order data in the order lookup;
receiving, with the computer system, the portion of the order data associated with the customer order back from the data source, the portion of the order data associated with the customer order responsive to the order lookup; and
returning, with the computer system, the portion of the order data to the in-store retail system channel of the one or more in-store retail system channels with at least the data indicator of the order look up.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention is generally directed to methods, systems, and computer program products for routing order lookups from retail systems. Order data from order management system database is synchronized to an order cache. When an order lookup is received (e.g., from a retail kiosk or POS terminal), a business layer determines if the cache can appropriately service the order lookup. If so (e.g., if the order lookup does not change order state), the business layer routes the order lookup to the cache. Otherwise (e.g., if the order lookup does change order state), the business layer routes the order lookup to the order management system database. In-store retail systems can be used to lookup orders previously submitted through other channels, such as, a website or mobile application. Knowing order details for other orders can assist the customer with in-store purchasing decisions.
51 Citations
20 Claims
-
1. A method performed by a computer system, using one or more processors and non-transitory system memory, the method comprising:
-
receiving, with the computer system communicatively coupled to an order database for a retailer and to an order database cache, the order database comprising order data for a plurality of customer orders, the order database cache comprising the order data synchronized from the order database, the order database communicatively coupled to a plurality of communication channels that can modify the order data of the order database, the plurality of communication channels comprising one or more in-store retail system channels, an order lookup from an in-store retail system channel of the one or more in-store retail system channels, wherein the order lookup further comprises; a database command type; a data indicator comprising a status of the order data; and a portion of the order data associated with a customer order of the plurality of customer orders; determining, with the computer system, the database command type, wherein the database command type either; impacts a state of the order database comprising a modification to the portion of the order data or the order data;
ordoes not impact the state of the order database without a request for a modification of the portion of the order data or the order data; determining, with the computer system, a data source to service the order lookup based at least in part on characteristics of the order lookup, the characteristics of the order lookup comprising the database command type, the data indicator, and the portion of the order data associated with the customer order, the data source selected from at least the order database and the order database cache, wherein determining the data source comprises; determining the data source based at least in part on a timestamp of the portion of the order data associated with the customer order, when the order data in the order database cache has been synchronized from the order database; and determining whether the database command type of the order lookup will impact the state of the order database; routing, with the computer system, the order lookup to the data source in response to determining the data source; when the database command type impacts the state of the order database, modifying, with the computer system, the data indicator of the order data in the order lookup; receiving, with the computer system, the portion of the order data associated with the customer order back from the data source, the portion of the order data associated with the customer order responsive to the order lookup; and returning, with the computer system, the portion of the order data to the in-store retail system channel of the one or more in-store retail system channels with at least the data indicator of the order look up. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product comprising a non-transitory computer readable tangible storage media containing instructions that when executed cause a computer system to perform:
-
receiving, with the computer system communicatively coupled to an order database for a retailer and to an order database cache, the order database containing order data for a plurality of customer orders, the order database cache comprising the order data synchronized from the order database, the order database communicatively coupled to a plurality of communication channels that can modify the order data of the order database, the plurality of communication channels comprising one or more in-store retail system channels, the computer program product for implementing a method for routing an order lookup, the computer program product comprising one or more computer storage devices having stored thereon computer-executable instructions, the order lookup from an in-store retail system channel of the one or more in-store retail system channels, wherein the order lookup further comprises; a database command type; a data indicator comprising a status of the order data; and portion of the order data associated with a customer order; determining, with the computer system, the database command type, wherein the database command type either; impacts a state of the order database comprising a modification to the portion of the order data or the order data;
ordoes not impact the state of the order database without a request for a modification of the portion of the order data or the order data; determining a data source to service the order lookup based at least in part on characteristics of the order lookup, the characteristics of the order lookup comprising the database command type, the data indicator, and the portion of the order data associated with the customer order, the data source selected from at least the order database and the order database cache, wherein determining the data source comprises; determining the data source based at least in part on a timestamp of the portion of the order data associated with the customer order, when the order data in the order database cache has been synchronized from the order database; and determining whether the database command type of the order lookup will impact the state of the order database; routing the order lookup to the data source in response to the determining the data source; when the database command type impacts the state of the order database, modifying the data indicator of the order data in the order lookup;
receiving the portion of the order data associated with the customer order back from the data source, the portion of the order data associated with the customer order responsive to the order lookup; andreturning the portion of the order data associated with the customer order to the in-store retail system channel of the one or more in-store retail system channels with at least the data indicator of the order look up. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system, the system comprising:
-
one or more processors; system memory; a plurality of communication channels that can access and modify a state of an order database, the plurality of communication channels comprising one or more in-store retail system channels and one or more other channels, the one or more in-store retail system channels comprising at least one of; a retail kiosk channel;
ora Point-Of-Sale (“
POS”
) terminal channel;the one or more other channels comprising at least one of; an electronic commerce channel; a mobile commerce channel;
ora social commerce channel; and one or more computer storage devices having stored thereon computer-executable instructions representing a business layer, the business layer configured to; receive an order lookup from an in-store retail system channel of the one or more in-store retail system channels, wherein the order lookup further comprises; a database command type; a data indicator comprising a status of order data; and a portion of the order data associated with a customer order of a plurality of customer orders; determine the database command type, wherein the database command type either; impacts the state of the order database comprising a modification to the portion of the order data or the order data;
ordoes not impact the state of the order database without a request for a modification of the portion of the order data or the order data; determine a data source to service the order lookup based at least in part on characteristics of the order lookup, the characteristics of the order lookup comprising the database command type, the data indicator, and the portion of the order data, the data source selected from at least the order database and an order database cache, wherein determining the data source comprises; determining the data source based at least in part on a timestamp of the portion of the order data associated with the customer order, when the order data in the order database cache has been synchronized from the order database; and determining whether the database command type of the order lookup will impact the state of the order database; route the order lookup to the data source in response to determining the data source; when the database command type impacts the state of the order database, modifying the data indicator of the order data in the order lookup; receive the portion of the order data back from the data source, the portion of the order data responsive to the order lookup; and return the portion of the order data to the in-store retail system channel of the one or more in-store retail system channels with at least the data indicator of the order lookup.
-
Specification