US 12,001,653 B1
Integrated backend and dynamic interface system for handling multiple transaction channels across different devices
Jeremy S. Graham, Snoqualmie, WA (US); Felicia I. Bacon, College Station, TX (US); Mehdi M. Benabdalah, Renton, WA (US); Lyndsay Jayne Buban, North Bend, WA (US); Jeremy M. Cabrido, Seattle, WA (US); Daniel Cerda, Bothell, WA (US); Owen A. Flannigan, Bothell, WA (US); Dana Gould, Syracuse, NY (US); Sharone Gorla, Stoneham, MA (US); David Arthur Hull, Seattle, WA (US); Ashok Jayavijayan, Bellevue, WA (US); Aditya Jhamb, Seattle, WA (US); Ram P. Kaligatla, Seattle, WA (US); Hyungku Sean Kim, Bellevue, WA (US); Santoshsubha Krishnan, Redmond, WA (US); Morayo S. Labisi, Indio, CA (US); Richard P. Lichkus, Charlestown, MA (US); Jesus E. Mendoza, Seattle, WA (US); Chadwick C. Meyer, Seattle, WA (US); Katherine E. Reinhart, Seattle, WA (US); and Stephanie Victoria Vasquez-Soltero, Mountlake Terrace, WA (US)
Assigned to Starbucks Corporation, Seattle, WA (US)
Filed by STARBUCKS CORPORATION, Seattle, WA (US)
Filed on May 25, 2023, as Appl. No. 18/201,804.
Int. Cl. G06F 3/0482 (2013.01); G06Q 20/10 (2012.01); G06Q 20/32 (2012.01)
CPC G06F 3/0482 (2013.01) [G06Q 20/102 (2013.01); G06Q 20/3276 (2013.01)] 21 Claims
OG exemplary drawing
 
1. A method comprising:
providing, by a client device operated by a user, a channel identifier to a backend server system indicating a transaction channel associated with the client device, wherein the channel identifier uniquely identifies one of a plurality of transaction channels, wherein each transaction channel of the plurality of transaction channels is a different type of modality through which a plurality of client devices can submit object orders to the backend server system, and wherein the backend server system is configured to:
determine, based on the channel identifier, that the transaction channel is associated with the client device; and
based on determining that the transaction channel is associated with the client device, determine one or more graphical features to include in a first graphical user interface based on the transaction channel;
outputting, by the client device, the first graphical user interface with the one or more graphical features determined by the backend server system;
subsequent to outputting the first graphical user interface, receiving, by the client device, a unique identification code corresponding to a customer of an entity, the unique identification code being different from the channel identifier;
forwarding, by the client device, the unique identification code to the backend server system, the backend server system being configured to analyze a history of the customer to determine a customized object previously obtained by the customer from the entity;
receiving, by the client device, information from the backend server system about the customized object previously obtained by the customer from the entity;
displaying, by the client device, a second graphical user interface indicating the customized object associated with the customer in addition to the one or more graphical features determined by the backend server system;
receiving, by the client device, a selection by the user of a graphical option associated with the customized object;
in response to receiving the selection from the user, adding, by the client device, the customized object to an object order for the customer; and
in response to detecting a transaction completion for the customer, reverting to displaying, by the client device, the first graphical user interface;
wherein the backend server system is further configured to:
in response to determining that a rule change did not occur within a first time window:
identify a previous order that also includes the customized object;
based on identifying the previous order, determine variable information associated with the previous order by receiving the variable information from a database that is separate from a remote system, wherein the variable information is different than the customized object; and
based on receiving the variable information from the database, forego communicating with the remote system to determine the variable information; and
in response to determining that the rule change occurred within a second time window that is different from the first time window, determine the variable information related to the customized object by communicating with the remote system; and
apply the variable information to the object order.