Language selection

Search

Patent 3038958 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 3038958
(54) English Title: DYNAMICALLY MODIFIABLE USER INTERFACE
(54) French Title: INTERFACE UTILISATEUR MODIFIABLE DE MANIERE DYNAMIQUE
Status: Allowed
Bibliographic Data
(51) International Patent Classification (IPC):
  • G06Q 30/06 (2023.01)
  • G06Q 50/12 (2012.01)
  • H04W 4/021 (2018.01)
  • G06F 3/04817 (2022.01)
(72) Inventors :
  • BELL, BRUCE (United States of America)
  • KURSMARK, MATTHEW T. (United States of America)
  • JOHNSON, LOGAN (United States of America)
  • PARTRIDGE, BRIAN (United States of America)
  • LINTERN, JAMES (United States of America)
  • ABU-GHAIDA, GHASSAN (United States of America)
(73) Owners :
  • BLOCK, INC. (United States of America)
(71) Applicants :
  • SQUARE, INC. (United States of America)
(74) Agent: BENNETT JONES LLP
(74) Associate agent:
(45) Issued:
(86) PCT Filing Date: 2017-07-18
(87) Open to Public Inspection: 2018-04-05
Examination requested: 2019-03-29
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/US2017/042537
(87) International Publication Number: WO2018/063474
(85) National Entry: 2019-03-29

(30) Application Priority Data:
Application No. Country/Territory Date
15/279,650 United States of America 2016-09-29
15/279,705 United States of America 2016-09-29
15/279,782 United States of America 2016-09-29
15/279,854 United States of America 2016-09-29

Abstracts

English Abstract

Techniques and arrangements for dynamically modifying a user interface on a computing device of a point-of-sale (POS) system based on a location of the computing device. The location can be associated with a functionality of the user interface. The user interface can include one or more icons corresponding to selectable items that correspond to the functionality. A modification to the user interface can include an adjustment to a visual appearance of an icon and/or a replacement of an icon with another icon.


French Abstract

La présente invention concerne des techniques et des systèmes qui permettent de modifier dynamiquement une interface utilisateur sur un dispositif informatique d'un système de point de vente (POS) en fonction d'un emplacement du dispositif informatique. L'emplacement peut être associé à une fonctionnalité de l'interface utilisateur. L'interface utilisateur peut comprendre une ou plusieurs icônes correspondant à des éléments sélectionnables qui correspondent à la fonctionnalité. Une modification de l'interface utilisateur peut comprendre un réglage d'un aspect visuel d'une icône et/ou un remplacement d'une icône par une autre icône.

Claims

Note: Claims are shown in the official language in which they were submitted.


CLAIMS
WHAT IS CLAIMED IS:
1. A system comprising:
one or more processors; and
one or more non-transitory computer-readable media storing instructions
executable by
the one or more processors, wherein the instructions program the one or more
processors to
perform acts comprising:
determining a first location of a service computing device, wherein the first
location of
the service computing device is based at least in part on a first distance
from a base station
computing device;
determining that the first location of the service computing device is
associated with a
first area of a merchant location, wherein the first area is associated with a
first functionality of
the service computing device;
generating a set of icons for presentation on a user interface of the service
computing
device, wherein the set of icons corresponds to the first functionality of the
user interface;
determining a second location of the service computing device, wherein the
second
location of the service computing device is based at least in part on a second
distance from the
base station computing device;
determining that the second location of the service computing device is
associated with a
second area of the merchant location, wherein the second area is associated
with a second
functionality of the service computing device; and
dynamically modifying the user interface to display a second set of icons
based at least in
part on the second functionality.
2. The system as claim 1 recites, the acts further comprising:
determining that the service computing device is within a threshold distance
of the base
station computing device; and
automatically uploading data to the base station computing device.
3. The system as claim 1 recites, the acts further comprising:
determining that the service computing device is within a threshold distance
of the base
station computing device; and
automatically downloading data from the base station computing device.
48

4. The system as any of claims 1-3 recite, wherein:
determining that the first distance is associated with the first area
comprises analyzing a
map of the merchant location to determine that the first distance is within
the first area; and
determining that the second distance is associated with the second area
comprises
analyzing the map of the merchant location to determine that the second
distance is within the
second area.
5. The system as any of claims 1-4 recite, the acts further comprising:
determining that the service computing device remains at the second location
for a pre-
determined amount of time,
wherein the dynamically modifying the one or more icons of the set of icons is
based at
least in part on determining that the service computing device remains at the
second location for
the pre-determined amount of time.
6. A method comprising:
determining a first location of a service computing device;
determining that the first location is associated with a first functionality
of the service
computing device;
presenting a set of icons on a user interface of the service computing device
based at
least in part on the first functionality;
determining a second location of the service computing device;
determining that the second location is associated with a second functionality
of the
service computing device; and
dynamically modifying the user interface to display a second set of icons
based at least in
part on the second functionality.
49

7. The method as claim 6 recites, further comprising:
determining that the second location is within a threshold distance of a
customer
computing device;
accessing a customer profile associated with the customer computing device;
identifying one or more customer preferences in the customer profile; and
identifying the second set of icons based at least in part on the one or more
customer
preferences.
8. The method as either claim 6 or claim 7 recites, further comprising:
receiving a notification that a customer has checked-in to a merchant
location, wherein
the notification includes a sub-section of an area of the merchant location in
which the customer
is located;
determining that the second location is proximate to the sub-section of the
area;
accessing a customer profile associated with the customer;
identifying one or more customer preferences in the customer profile; and
identifying the second set of icons based at least in part on the one or more
customer
preferences.
9. The method as any of claims 6-8 recite, further comprising:
determining that the second location is associated with a meal order;
accessing a history associated with the meal order; and
determining, based on the history, that the meal order is complete;
wherein the second set of icons comprises a bill for the meal order.
10. The method as any of claims 6-9 recite, wherein the first location and the
second
location are determined based on data from a sensor of the service computing
device or a signal
processed by a global positioning system receiver on the service computing
device.

11. A service computing device comprising:
one or more processors; and
one or more non-transitory computer-readable media storing instructions
executable by
the one or more processors, wherein the instructions program the one or more
processors to
perform acts comprising:
determining a first location of a service computing device;
determining that the first location is associated with a first functionality
of the service
computing device;
presenting a set of icons on a user interface of the service computing device
based at
least in part on the first functionality;
determining a second location of the service computing device;
determining that the second location is associated with a second functionality
of the
service computing device; and
dynamically modifying the user interface to display a second set of icons
based at least in
part on the second functionality.
12. The service computing device as claim 11 recites, wherein the first
functionality and
the second functionality comprises at least one of:
an ordering processing system;
a payment processing system;
a recipe display system;
a kitchen management system;
a seating management system; or
an order preparation notification system.
13. The service computing device as either of claims 11 or 12 recite, the acts
further
comprising:
determining that the service computing device is within a threshold distance
of a base
station computing device; and
automatically transferring data between the service computing device and the
base
station computing device.
51

14. The service computing device as any of claims 11-13 recite, the acts
further
comprising:
determining that the second location is within a threshold distance of a
customer
computing device;
accessing a customer profile associated with the customer computing device;
identifying one or more customer preferences in the customer profile; and
identifying the second set of icons based at least in part on the one or more
customer
preferences.
15. The service computing as any of claims 11-14 recite, the acts further
comprising
prior to dynamically modifying the user interface, determining that the
service computing device
has been at the second location for a predetermined period of time.
52

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
DYNAMICALLY MODIFIABLE USER INTERFACE
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Patent Application No.
15/279,650, filed September
29, 2016, titled "DYNAMICALLY MODIFIABLE USER INTERFACE," U.S. Patent
Application No.
15/279,705, filed September 29, 2016, titled "DYNAMICALLY MODIFIABLE USER
INTERFACE,"
U.S. Patent Application No. 15/279,782, filed September 29, 2016, titled
"CENTRALIZED
RESTAURANT MANAGEMENT," and U.S. Patent Application No. 15/279,854, filed
September 29,
2016, titled "DYNAMICALLY MODIFIABLE USER INTERFACE," the entire contents of
which are
incorporated herein by reference.
BACKGROUND
[0002] Mobile devices are ubiquitous in society today. Typically, mobile
devices contain applications
with user interfaces that allow users to conduct various activities on the
mobile devices. For instance, a
merchant may use a point-of-sale (POS) application on a mobile device, such as
a mobile POS device, to
engage in transactions with customers at various locations. In cases in which
the merchant is a restaurant,
the transactions may be orders for food, drinks, and the like. However, the
user interfaces on applications
are typically fixed, based on the application. For example, a merchant waiter
may view the same user
interface when taking an order at a bar or at a table in a dining room.
Because of the fixed user interface,
a processing time of each order may be significant due to a need to search
through multiple layers of the
user interface to find particular items relevant to the area or customer.
BRIEF DESCRIPTION OF THE DRAWINGS
[0003] The detailed description is set forth with reference to the
accompanying figures. In the figures,
the left-most digit(s) of a reference number identifies the figure in which
the reference number first appears.
The use of the same reference numbers in different figures indicates similar
or identical items or features.
[0004] FIG. 1 illustrates an example environment including a service
computing device of a POS
system configured with a dynamically modifiable user interface.
[0005] FIG. 2 illustrates an example environment with a merchant
operating a service computing
device configured with a dynamically modifiable user interface.
[0006] FIG. 3 illustrates an example process of a service computing device
dynamically modifying
icons of a user interface based on contextual data.
[0007] FIG. 4 illustrates an example process of a service computing
device dynamically modifying a
functionality of a user interface based on contextual data.
[0008] FIG. 5 illustrates an example process of a service computing
device dynamically modifying a
theme of a user interface based on contextual data.
1

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0009] FIG. 6 illustrates a flow diagram of an example process for
dynamically modifying icons a
user interface of a service computing device based on contextual data.
[0010] FIG. 7 illustrates a flow diagram of an example process for
dynamically modifying a
functionality of a user interface of a service computing device based on
contextual data.
[0011] FIG. 8 illustrates a flow diagram of an example process for
dynamically modifying icons on a
user interface of a service computing device based on a merchant inventory.
[0012] FIG. 9 illustrates a flow diagram of an example process for
processing an order from a delivery
application.
[0013] FIG. 10 illustrates select components of an example service
computing device configured with
.. the dynamically modifiable user interface system.
[0014] FIG. 11 illustrates select components of an example base station
computing system a POS
system may use to process orders from one or more other computing devices.
DETAILED DESCRIPTION
[0015] Some implementations described herein include techniques and
arrangements for dynamically
modifying a user interface on a computing device of a point-of-sale (POS)
system based on contextual
data. The contextual data can include a location of the service computing
device (e.g., a point-of-sale
(POS) device), a time of day, a day of the week, merchant inventory, merchant
preferences, customer
preferences, items that are deemed upsell items, items that deemed cross-sell
items, a sale and/or special
offered by the merchant, and various other contextual factors corresponding to
the use of the computing
device.
[0016] In various examples, a service computing device can analyze the
contextual data and
dynamically modify icons (e.g., text and/or images corresponding to selectable
items) of the user interface
based on one or more contextual factors. A modification to the icons can
include replacing icons with
other icons and/or changing the size, shape, order, image, etc., of various
icons. For example, a service
computing device at a restaurant can determine that a current time corresponds
to an adjustment to a lunch
menu. Based on the determination, the service computing device can modify the
icons on the user interface
from icons associated with a breakfast menu to icons associated with a lunch
menu.
[0017] In some examples, the modification to the icons can include an
adjustment to a functionality
of the user interface. The functionality can include one or more functions the
user interface is capable of
performing, such as data input, processing input, determining a status of
previous inputs, automatically
uploading data, automatically downloading data, and other functions relevant
to the particular use of the
user interface. For example, a computing device located in a restaurant dining
area may display icons
related to items on a menu, and when moved to a kitchen area of the
restaurant, the computing device may
display order information for multiple tables.
[0018] Additionally or alternatively, the computing device can modify a
theme of the user interface
based on contextual data. The theme can include background and/or icon hue
(e.g., color and/or shading),
2

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
background images, animations, lighting, sounds, and/or other sensory outputs.
For example, a computing
device located in a dimly lit dining area may present icons in a dark color on
a dimly lit background.
However, as the computing device is moved toward an outdoor patio area, the
computing device may
dynamically modify the icons to a lighter color, and may automatically
increase a volume of the computing
device.
[0019] In various examples, the modification to the user interface can
be based on a location and/or
distance of the service computing device relative to a base station computing
device. The base station
computing device can include a central computing device for one or more
service computing devices. The
central computing device can process orders, track customer and/or employee
location, track order
preparation times, monitor inventory, push updates to the one or more service
computing devices, process
payments, and/or perform other functions based on the implementation. For
example, a service computing
device can receive an order for a table in a restaurant dining area. After
receiving the order, the waiter can
deliver the service computing device to an area within a threshold distance of
the base station. Based on a
determination that the service computing device is within the threshold
distance of the base station, the
user interface on the service computing device can be modified to upload order
information to the base
station computing device. The base station computing device can then process
the order information with
other orders.
[0020] The dynamic modification to the user interface can result in a
faster processing speed of each
input. For example, a relevant menu to a particular customer can be surfaced
automatically based on an
indication of proximity to the particular customer. Due to the automatic
surfacing of the relevant menu,
the user of the device can quickly and efficiently input an order. The
increased speed of the order input
can result in excess processing power being available to the service computing
device to perform other
functions. Therefore, the dynamic modification to the user interface can
improve the functioning of the
service computing device itself
[0021] Additionally or alternatively, the base station computing device can
include a central
computing device for one or more external ordering applications (e.g.,
delivery applications, such as food-
delivery applications). In such examples, the base station computing device
can process orders, track order
preparation times, send order preparation times, promotions and/or specials to
the external ordering
applications, monitor inventory, update menus based on the inventory and/or
order preparation times,
process payments, and perform other functions based on the implementation.
Traditionally, a designated
computing device has been required to process information from a particular
external ordering application.
In many instances, the designated computing device is provided to the merchant
from the particular external
ordering application, to assist in processing orders. The base station
computing device described herein
can provide an improvement to the conventional processing of multiple orders
from multiple external
ordering applications by at least centralizing the order system and decreasing
a number of computing
devices required to processes the orders. Additionally, the base station
computing device can receive the
3

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
multiple orders and communicate the orders and/or a sequence thereof directly
to a preparation computing
device, thereby relieving the service computing device from processing the
orders, and improving the
amount of processing power available to the service computing device. The
increase in processing power
available can result in an increased processing speed of the service computing
device. Thus, the
employment of the base station computing device as the central computing
device can include the technical
benefit of improving the function of the base station computing device and/or
the service computing device.
[0022] For discussion purposes, example implementations, such as a POS
service computing device,
are described below with reference to the corresponding figures. However,
implementations herein are not
limited to the POS service computing device. The techniques discussed herein
may be extended to other
environments, other system architectures, other types of applications, and so
forth, as will be apparent to
those of skill in the art in light of the disclosure herein. For example, the
techniques discussed herein may
be extended to use in hospitals, retail stores, warehouses, bowling alleys,
museums, and/or any other
implementation which could benefit from a dynamically modifiable user
interface.
[0023] FIG. 1 illustrates an example environment 100 including a service
computing device 102 (e.g.,
a point-of-sale (POS) device) of a POS system configured with a dynamically
modifiable user interface.
The POS system can include one or more service computing devices 102 and/or a
base station computing
device 104. The service computing device 102 and/or the base station computing
device 104 can include
any sort of mobile or non-mobile device operated by a merchant 106 (e.g.
owner, employee, contractor,
etc.) or a customer of the merchant 106 that includes an instance of a user
interface modification framework
to analyze contextual data and modify a user interface based on the contextual
data. Contextual data can
include a location of the service computing device, a time of day, a day of
the week, time of year (e.g.,
season), weather, merchant inventory, merchant preferences, customer
preferences, items that are deemed
upsell items, items that are deemed cross-sell items, a sale and/or special
offered by the merchant, and/or
various other contextual factors corresponding to the use of the service
computing device.
[0024] In various examples, the base station computing device 104 can
analyze the contextual data,
and can send updates to the service computing device 102 as necessary. For
example, the base station
computing device 104 can determine that an inventory of hamburger buns is
running low. Based on the
determination, the base station computing device 104 can send an update to the
service computing
device 102 to de-emphasize (e.g., understate by: adjusting placement on
display, adjusting the icon to a
smaller size, changing icon colors and/or hue, removing the icon from a main
page, etc.) hamburgers on a
menu user interface.
[0025] In some examples, the service computing device 102 can analyze
the contextual data and
modify the user interface accordingly. For example, the service computing
device can determine that a
block of time associated with a happy hour menu has started (e.g., 4 pm for a
happy hour of 4-6 pm, etc.).
Based on the determination, the service computing device can adjust the user
interface to emphasize or
4

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
highlight (e.g., adjust placement on display to a higher location, enlarge
icon size, adjust icon colors and/or
hue, adjust placement of icons in the menu, etc.) the happy hour menu.
[0026] In various examples, modifications to the user interface can
include an adjustment to one or
more icons (e.g., text and/or images corresponding to selectable items) of the
user interface. The
adjustment to the one or more icons can include replacing icons with other
icons and/or changing the size,
shape, order, image, color, hue, etc., of various icons. For example, a
service computing device at a
restaurant can determine that a current time corresponds to an adjustment to a
lunch menu. Based on the
determination, the service computing device can modify the icons on the user
interface from icons
associated with a breakfast menu to icons associated with a lunch menu. For
another example, the service
computing device at the restaurant can determine that a current day of the
week corresponds to a menu
special, such as Taco Tuesday. Based on the determination, the service
computing device can modify the
user interface to emphasize (e.g., highlight, etc.) the icons associated with
Taco Tuesday items (e.g., tacos,
chips and salsa, guacamole, margaritas, etc.).
[0027] In some examples, the modifications to the user interface can
include an adjustment to a
functionality associated with the user interface. As will be discussed in
further detail below with regard to
FIG. 4, the functionality can include surfacing different menus,
notifications, selectable icons, and the like
corresponding to different functions of the user interface (e.g., a menu item
ordering system, a payment
processing system, a recipe display system, a kitchen management system, a
seating management system,
an order preparation notification system, and the like). For example, a
computing device located proximate
to a table in a dining area of a restaurant may determine that an order
associated with the table is complete
(e.g., menu items associated with the order delivered and a pre-determined
amount of time has passed since
delivery to allow for item consumption). Based on the determination of order
completion, the service
computing device can automatically adjust the functionality of the user
interface to process payment for
the order, such as by modifying icons from those related to food menu items to
those related to processing
payment.
[0028] In some examples, the modifications to the user interface can
include an adjustment to a theme
associated with user interface. As will be discussed in further detail below
with regard to FIG. 5, the theme
can include background and/or icon hue (e.g., color and/or shading),
background images, animations,
lighting, sounds, and/or other sensory outputs. For example, a volume in a bar
area of a restaurant may be
greater than the volume in a dining area of the restaurant. Based on the
environmental volume increase,
the service computing device may increase a volume associated with the user
interface upon entering the
bar area, to ensure an operator of the service computing device can hear
sounds associated with the user
interface.
[0029] In various examples, the service computing device 102 can be
configured to modify the user
interface based on a location of the service computing device 102. In the
illustrative example shown in
FIG. 1, a merchant location can include a base station area 106, a dining area
108, and a kitchen area 110.
5

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
In other examples, the merchant location can include a greater or lesser
number of areas, including sub-
sections of each area (e.g., dining area 1, dining area 2, table 1, table 2,
etc.). For example, a retail store
merchant location can include a storage area, a base station area, a shoe
department area, a men's clothing
area, a women's clothing area, and the like. Based on a determination that the
service computing
device 102 is located in a particular area, the service computing device 102
can adjust the user interface
accordingly.
[0030] In some examples, the service computing device 102 can determine
an area and/or sub-section
of the area (e.g., particular location) in which it is located based on data
from a sensor of the service
computing device 102. The sensor can include a camera, a laser scanner, or
another sensor. For example,
the service computing device 102 can capture an image at the location via a
camera, and can compare the
image with stored images at various known locations. Based on a match of the
image to an image of a
known location, the service computing device 102 can identify a current
location. For another example,
the service computing device 102 can scan a code at a particular location via
a laser scanner, and can
identify the particular location based on the code.
[0031] In some examples, the service computing device 102 can determine an
area and/or sub-section
of the area in which it is located based on a location component of the
service computing device 102. The
location component can be a global positioning system (GPS) receiver, a beacon
and/or components
configured to receive beacon signals, a light detection and ranging system
(LIDAR), a radio detection and
ranging system (RADAR), a mobile communications triangulation subsystem, and
the like. In various
examples, the area and/or sub-section of the area can be defined by a
geographic radius from a position in
the area and/or sub-section of the area, a geo-fence around the area and/or
sub-section of the area, or
determining whether the service computing device can communicate with another
device, such as the base
station computing device 104, using a specified wireless technology, e.g.,
Bluetooth0 or Bluetooth0 low
energy (BLE).
[0032] In some examples, the service computing device 102 can determine
that it is located in a sub-
section of the area (e.g., in proximity to a Table, such as Table 1) based on
a signal from an external location
component 114, such as a beacon. In such examples, the service computing
device can receive the signal
from the external location component 114, and based on the signal, determine
that the service computing
device 102 is proximate to the external location component 114. The
determination can be based on a
distance calculation, a signal strength, or other means by which the service
computing device can determine
a proximity to the external location component 114.
[0033] In various examples, the service computing device 102 may receive
one or more signals from
one or more external location components 114. In such examples, the service
computing device 102 can
determine a closest external location component 114 to a current location of
the service computing
device 102. The determination can be based on a comparison of a distance from
each external location
6

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
component, a ranking of the signal strength from each external location
component, or other means by
which the service computing device 102 can determine a closest external
location component.
[0034] In some examples, the service computing device 102 can determine
an area and/or a sub-
section of the area in which it is located based on a signal from the base
station computing device 104. In
various examples, the service computing device 102 may receive the signal, and
may calculate a horizontal
distance X and/or a vertical distance Y from the base station computing device
104. In some examples,
the base station computing device 104 may calculate the horizontal distance X
and/or a vertical distance Y,
and may provide the distance(s) to the service computing device 102. In some
examples, the service
computing device 102 and/or the base station computing device 104 may
determine the area and/or sub-
section of the area in which the service computing device 102 is located based
on the horizontal distance X
and/or a vertical distance Y. For example, the service computing device 102
may determine that the
horizontal distance X and the vertical distance Y is associated with the
dining area 110. Based on a
determination that the service computing device 102 is located in the dining
area 110, the service
computing device may modify the user interface to display icons related to
food and/or beverage menu
items. For another example, the service computing device 102 may determine
that the horizontal
distance X and the vertical distance Y is associated with a particular table,
such as Table 1, in the dining
area 108. Based on a determination that the service computing device 102 is
proximate to Table 1, the
service computing device 102 may modify the user interface to surface icons
relevant to Table 1, such as
icons related to dessert menu items after the customers located at Table 1
have consumed entrées.
[0035] In various examples, the service computing device 102 can be
configured to modify the user
interface based on merchant inventory. In some examples, the service computing
device 102 can store and
track inventory data, such as in a data store of the service computing device
102. In some examples, the
service computing device can receive inventory data from the base station
computing device 104. In such
examples, the base station computing device 104 can push updates to the
service computing device
continuously or periodically (e.g., at a certain time each day, every two
hours, etc.). In some examples,
the base station computing device 104 can push an update to the service
computing device 102 based on a
determination that a particular item in the inventory has traversed (e.g.,
crossed over, etc.) an overstock
threshold level. A traversal of an overstock level can include an exceedance
of the overstock threshold
level or a reduction below the overstock threshold level. The overstock
threshold level may be set by the
merchant, such as in merchant preferences, and/or by the POS system. For
example, the service computing
device 102 may determine that a particular item is overstocked. Based on the
overstock determination, the
service computing device 102 may modify the user interface to emphasize the
overstocked item in an
attempt to sell more of that item.
[0036] In some examples, the base station computing device 104 can push
an update to the service
computing device 102 based on a determination that a particular item in the
inventory has traversed an
understock threshold level. A traversal of an understock level can include an
exceedance of the understock
7

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
threshold level, reaching the understock threshold level (e.g., if the
understock threshold level is zero), or
a reduction below the understock threshold level. The understock threshold
level could be zero remaining
items, or a limited quantity (e.g., number) of remaining items, as determined
by the merchant 106 and/or
the POS system. For example, the service computing device 102 may determine
that a particular item is
understocked (e.g., a limited amount or none remaining). Based on the
understock determination, the
service computing device 102 may modify the user interface to de-emphasize
(e.g., understate, etc.) the
understocked item in an attempt to discourage the sale of the item.
[0037] In various examples, the service computing device 102 can be
configured to modify the user
interface based on an attempt to cross-sell an item (e.g., sell a different
item than the customer expressed
an interest in). In such examples, the service computing device 102 may
emphasize the one or more items
to cross-sell on the user interface. In some examples, a modification based on
an attempt to cross-sell can
be based on the inventory, such as if the inventory of an item has decreased
below the threshold level.
[0038] In various examples, the service computing device 102 can be
configured to modify the user
interface based on an attempt to upsell an item. In such examples, the
merchant 106 can attempt to persuade
the customer to purchase something additional or more expensive than another
option. For example, the
service computing device 102 can adjust a size, color, and/or position of an
icon to upsell. In some
examples, the service computing device 102 can determine what item to attempt
to upsell based on known
popular combinations of items. In such examples, the known popular
combinations can be stored in a data
store of the service computing device 102, the base station computing device
104, and/or provided by the
POS system service provider. For example, a customer may order a burrito for
an entrée. The service
computing device 102 may analyze the popular combinations and determine that
many customers also
order chips and salsa with the burrito. Based on the determination of a
popular combination, the service
computing device may modify the user interface to display a large icon
associated with chips and salsa in
the center of the user interface.
[0039] In some examples, the service computing device 102 can be configured
to modify the user
interface based on merchant preferences. The merchant preferences can be
stored in a merchant profile on
the service computing device 102, the base station computing device 104,
and/or a POS system service
provider device. The merchant preferences can include scheduled sales and/or
specials (e.g., happy hour
dates and times, food and/or beverage specials, etc.), user interface
adjustments based on time of day and/or
day of week, inventory management information (e.g., overstock threshold
level, understock threshold
level, etc.), merchant location area information (e.g., specified areas at the
merchant location, information
about external location component 114 signals, etc.), area specific data
(e.g., functionality, theme, icons,
etc., associated with each area), employee preferences (e.g., settings
associated with a particular employee
of the merchant operating the service computing device, such as most commonly
sold items by the
employee, handedness of employee, desired font size, etc.), and the like.
8

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0040] As will be discussed in greater detail below with regard to FIG.
2, the service computing
device 102 can additionally or alternatively be configured to modify the user
interface based on customer
preferences.
[0041] FIG. 2 illustrates an example environment 200 with a merchant
202, such as merchant 106,
operating a service computing device 204, such as service computing device
106, configured with a
dynamically modifiable user interface 206. Although illustrated as being
operated by the merchant 202, in
some examples, the service computing device 204 may additionally or
alternatively be operated by a
customer. In various examples, the user interface 206, such as that discussed
above with regard to FIG. 1,
can include one or more icons, such as icons 208 and/or 210. The one or more
icons 208 and/or icons 210
can be modifiable, such as in size, placement, color and/or hue, image, text,
and the like, to emphasize
and/or de-emphasize corresponding items.
[0042] In the illustrative example, the icon 208(1) is emphasized by the
size of the icon and placement
on the top left corner of the user interface 206. As discussed above, the icon
208(1) can be modified (e.g.,
emphasized or de-emphasized) based a location of the service computing device
204, merchant inventory,
merchant preferences, an attempt to upsell, an attempt to cross-sell, a sale
and/or special (e.g., a discount
on the corresponding item) offered by the merchant, a time of day, a day of
the week, and/or various other
contextual factors corresponding to the merchant 202 associated with the
service computing device 204.
For example, the merchant 202 may have a Taco Tuesday special from 5pm-lOpm
every Tuesday. The
service computing device 204 can determine that a current date and time
correspond to the Taco Tuesday
special. Based on the determination that the date and time correspond to the
special, the service computing
device 204 can dynamically modify the user interface 206 to emphasize Taco
Tuesday items, such as
icons 208.
[0043] In various examples, the icons 208 and icons 210 to be presented
can be pre-defined by the
merchant, such as in merchant preferences. In some examples, the icons 208 and
icons 210, can be based
on known popular items. In such examples, the known popular items can be
determined based on a
merchant transaction history. The merchant transaction history can be a
history of transactions while a sale
and/or special is ongoing, on a given day, over a week, a month, and/or over
another period of time. In
various examples, the merchant transaction history can be a history of
transactions with a particular
customer. In some examples, the merchant transaction history can be stored in
a data store of the service
computing device 204. In some examples, the merchant transaction history can
be stored in a base station
computing device, and/or a POS system service provider computing device, and
provided to the service
computing device 204.
[0044] In some examples, the merchant transaction history can include
known popular combinations
of items (e.g., items that are complementary to one another, pair well
together, etc.). For example, it can
be determined that a large quantity (e.g., number) of customers who select
icon 208(1) and order tacos also
select icon 208(2) and order chips and salsa. Based on the known combination,
the service computing
9

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
device can modify a size and/or placement of the icon 208(2), to emphasize the
chips and salsa in an attempt
to upsell the customer (e.g., persuade the customer to purchase an additional
item). In various examples,
based on the known combination, the icon 208(2) corresponding to chips and
salsa can be surfaced on the
user interface 206 responsive to a taco selection via the icon 208(1)
(represented by a bold border
surrounding the icon 208(1)). In such examples, the icon 208(2) corresponding
to the complementary item
to the item selected can replace one or more other icons 208, or it can be
presented as a notification 216
responsive to selection of the icon 208(1).
[0045] In various examples, the merchant transaction history can also
include popular alternative food
options, presented as icons 210. Using the above Taco Tuesday example, the
transaction history can track
purchases outside of the Taco Tuesday menu, and determine the most popular
alternate food options,
illustrated as icons 210. In some examples, the size and/or shape of the most
popular alternate food item
may be modified for emphasis. As an illustrative example, the burgers and
sides, displayed as the largest
alternate food option icon 210, is the most popular alternate food item,
followed by pizza.
[0046] Still further, the transaction history may be based on one or
more other merchants utilizing the
same payment processing system. For instance, transaction history associated
with merchants having
similar classification code and location may be used to determine popular
items for a given merchant at a
given time of day.
[0047] Additionally or alternatively, the merchant transaction history
can include a status of a current
transaction with a particular customer. In various examples, the service
computing device can determine
that the particular customer is currently on at a second stage of the current
transaction (e.g., a second
course). In some examples, the service computing device 204 can identify an
elapsed time since the
merchant was proximate to the particular customer (e.g., a last time the
merchant checked-in at the
customer's table). In various examples, based on a determination that the
elapsed time has exceeded a
threshold amount of time (e.g., 10 minutes, 20 minutes, etc.), the service
computing device 204 can cause
a notification 216 to display and remind the merchant to check-in with the
particular customer. In such
examples, the threshold amount of time may be set based on the status of the
current transaction. For
example, a threshold amount of time set for a customer to consume an entrée
may be longer than the
threshold amount of time set for the customer to consume an hors d'oeuvre. The
threshold amount of time
could also vary given the actual food item ordered (e.g., steak may longer to
consume than small piece of
salmon), size of the party, and/or age profile associated with the customers
in the party.
[0048] In various examples, the service computing device 204 can modify
the user interface 206
based on customer preferences. In some examples, the customer preferences can
be stored in a customer
profile on the service computing device 204. In other examples, the customer
preferences can be stored in
a customer profile on a remote device, such as the base station computing
device, the POS system service
provider computing device, and/or a customer computing device 212, and
communicated to the service
computing device via a network. The customer computing device 212 can include
any type of mobile

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
computing device (e.g., mobile phones, tablet computers, mobile phone tablet
hybrids, personal data
assistants (PDAs), laptop computers, media players, personal video recorders
(PVRs), cameras, and any
other mobile computers or any other mobile telecommunication devices),
embedded devices (e.g., wearable
computers, implanted computing devices, automotive computers, computer
navigation type devices, such as
satellite-based navigation systems including global positioning system (GPS)
devices and other satellite-
based navigation system devices, appliances, and integrated components for
inclusion in a computing device),
and/or any other type of computing device configured to communicate via a
network.
[0049] The network can include any type of wired and/or wireless
network, such as local area networks
(LANs), wide area networks (WANs), personal area networks (PANs) (e.g.,
Bluetooth0, etc.), body area
networks (BANs), near field communication (NFC), satellite networks, cable
networks, Wi-Fi networks,
WiMax networks, mobile communications networks (e.g., 3G, 4G, and so forth) or
any combination thereof
The network can utilize communications protocols, including packet-based
and/or datagram-based protocols
such as internet protocol (IP), transmission control protocol (TCP), user
datagram protocol (UDP), or other
types of protocols. Moreover, the network can also include a number of devices
that facilitate network
communications and/or fonn a hardware basis for the networks, such as
switches, routers, gateways, access
points, firewalls, base stations, repeaters, backbone devices, and the like.
[0050] In various examples, the service computing device 202 can
determine that it is in proximity to
the customer computing device 212 associated with a customer 214. In some
examples, the service
computing device 204 can determine a proximity to the customer computing
device 212 based on a
customer check-in at a particular location associated with the merchant 202.
In some examples, the
customer check-in can be performed automatically by an application running on
a background of the
customer computing device 204 when the customer computing device 204 is within
a predetermined
distance of a merchant location, and/or an area/sub-section of the area
associated with the merchant
location. In such examples, the customer computing device 204 may access a
location component on the
device, and determine that the customer 214 has entered the merchant location,
and/or an area/sub-section
of the area associated with the merchant location. The customer computing
device 204 can then
automatically send an indication of proximity and/or a check-in notification
to the merchant 202, via an
automatic check-in. In some examples, the automatic check-in can also be
performed by the application
running as a background process on the customer computing device 212. In some
examples, the application
running as a background process removes the need to run the application on a
main thread of the processor
of the customer computing device 212, thereby saving processing speed and
increasing efficiency on the
main thread of the customer computing device 212 processor.
[0051] In various examples, the customer check-in can be performed by
the customer 214 deliberately
checking-in via an application on the customer computing device 212. In some
examples, the customer
can check-in to the service computing device 204, such as by inputting a
customer identification code into
the service computing device 204 or sending a message via the network from the
customer computing
11

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
device 212 to the service computing device 204. For example, the customer 214
can check-in at Table 1
at the merchant location. The service computing device 204 can determine that
it is within a threshold
distance to Table 1, and consequently within proximity to the customer 214
and/or customer computing
device 212. For another example, a customer 214 could check-in to a hospital,
and could be placed in a
particular room within the hospital. The service computing device 204 could
determine a proximity to the
customer 214 responsive to crossing a threshold into the particular room.
[0052] In some examples, the service computing device 204 can determine
a proximity to the
customer computing device 212 based on a signal from the customer computing
device 212. In such
examples, the customer computing device can emit a signal identifying the
customer computing
device 212. In some examples, the signal may include customer profile data,
such as a code specific to the
customer 214. In various examples, the service computing device 204 may
determine a proximity based
on signal strength. In some examples, the service computing device 204 may
determine a proximity based
on positioning data embedded in the signal, such as a particular position in
an area and/or sub-section of
the area of the merchant location.
[0053] In various examples, based on a determination of proximity between
the service computing
device 204 and the customer 214 and/or the customer computing device 212, the
service computing
device 204 can modify the user interface 206 according to one or more customer
preferences. In some
examples, the customer preferences can be based on a customer transaction
history with the merchant. In
such examples, the customer preferences can be determined based on commonly
purchased items,
commonly purchased combinations, etc.
[0054] In various examples, the customer preferences can be defined by
the customer 214. Customer
preferences can include favorite items, most commonly purchased items,
allergies, dietary restrictions (e.g.,
vegetarian, vegan, etc.), customer transaction history, desired icon size
(e.g., increased font size for
customer with bad eyesight), and the like. For example, the customer 214 may
prefer TexMex food items
prepared by the merchant 202. As such, the service computing device 204 may
dynamically modify the
restaurant menu to prominently display the TexMex items, such as icons 208.
Using the hospital example
above, the customer 214 may have a severe allergy to penicillin. Based on the
allergy, the service
computing device 204 can prominently display in a large icon, similar to icon
208(1), the allergy, to ensure
penicillin is not administered to the patient.
[0055] In various examples, one or more icons corresponding to customer
preferences can be
emphasized on the user interface 206. In such examples, the emphasis can
include a different size, shape,
color and/or hue of the icon as compared to other icons. In the illustrative
example, icon 208(3) represents
a peanut allergy of the customer, emphasized by a different color than the
other icons 208 and 210.
[0056] In some examples, the customer preferences can include preferred
conversation topics. In such
examples, the merchant 202 may be able to refer to the icon 208(4) to
facilitate a conversation between the
merchant and the customer 214, thereby enhancing the customer's overall
experience with the merchant.
12

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
In some examples, the icon 208(4) and/or another icon 208 or icon 210 may
include customer information,
such as a customer name, birthday, and the like. In such examples, the
merchant 202 may access the
customer's information, and refer to the customer by name, further enhancing
the customer's overall
experience with the merchant. In various examples, the icon 208(4) and/or
another icon 208 or icon 210
can include previously submitted feedback regarding the customer's experience.
In such examples, the
merchant 202 may be able to access and address the feedback with the customer
214, to further enhance
the customer experience.
[0057] In some examples, based on a determination of proximity between
the service computing
device 204 and the customer 214 and/or the customer computing device 212, the
service computing
device 204 can modify the user interface 206 according to a current ongoing
transaction (e.g., a particular
meal the customer is consuming, etc.). In such examples, the service computing
device 204 can determine
that the customer 214 has completed a first stage of the ongoing transaction,
and can modify one or more
icons to reflect items for a second stage of the ongoing transaction. For
example, the service computing
device 204 can determine that the customer has consumed an entrée. The
determination that the entrée has
been consumed can be based on a pre-determined amount of time that has passed
since the entrée was
ready for delivery and/or delivered to the customer. Based on the
determination of entrée consumption
and proximity to the particular customer, the service computing device 204 can
dynamically modify
icons 208 and/or icons 210 to icons corresponding to dessert menu items.
[0058] FIG. 3 illustrates an example process of an example service
computing device 300, such as
service computing device 102 and 204, dynamically modifying icons 302 of a
user interface 304, such as
user interface 206, based on contextual data. Contextual data can include a
location of the service
computing device 300, a time of day, a day of the week, time of year (e.g.,
season), weather, merchant
inventory, merchant preferences, customer preferences, items that are deemed
upsell items, items that are
deemed cross-sell items, a sale and/or special offered by the merchant, and
various other contextual factors
corresponding to the use of the service computing device 300.
[0059] At 306, the service computing device 300 determines first
contextual data and displays first
icons 302(1) based on the contextual data. The first contextual data can be
determined based on an analysis
of one or more factors corresponding to the use of the service computing
device 300. In the illustrative
example, the analysis can include a determination that a time of day
corresponds to a breakfast menu.
Based on this determination, the service computing device 300 can display a
first set of icons 302(1)
corresponding to the breakfast menu. In some examples, the analysis can
include an analysis of customer
preferences, and a determination that the customer prefers particular menu
items, such as the breakfast
menu.
[0060] In various examples, the analysis can include a determination to
emphasize one or more items.
The emphasis can be presented by increasing a size, shape, color and/or hue of
the icon 302, changing a
placement of the icon 302, or any other adjustments to make the icon 302 stand
out on the display. The
13

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
emphasis can be based on merchant inventory, current weather, an attempt to
upsell an item, an attempt to
cross-sell an item, sales and/or specials offered by the merchant, transaction
history of the merchant (e.g.,
known popular items sold at a time of day, a day of the week, time of year
(e.g., season), known popular
combinations of items sold, etc.
[0061] In some examples, the analysis can include a determination to de-
emphasize one or more items.
A de-emphasis of an item can be based on merchant inventory, current weather,
an attempt to cross-sell,
and/or other factors in which the merchant may discourage the sale of a
particular item. The de-emphasis
can be presented by removing the icon 302 corresponding to the one or more
items from the display page.
In various examples, the user interface 304 can include multiple display
pages. In some examples, the de-
emphasis can be presented by including the icon corresponding to the one or
more items on a display page
other than a main display page. For example, the de-emphasis can include
presenting the icon on a last
page of the multiple display pages.
[0062] In various examples, the service computing device 300 can
dynamically determine to
emphasize and/or de-emphasize one or more items based on contextual factors.
For example, if a customer
orders the last muffin, the service computing device 300 can dynamically
modify the user interface 304 by
removing the muffin icon from the user interface, and replace it with a pastry
icon.
[0063] At 308, the service computing device 300 determines second
contextual data and displays
second icons 302(2) based on the contextual data. In various examples, the
second contextual data can
include a change in the time of day from a time corresponding to the breakfast
menu to a time corresponding
to a lunch menu. In some examples, the second contextual data can include a
determination of an event
nearby the merchant location, or displayed on a screen at the merchant
location, which could affect menu
items most likely to be ordered by customers. In such examples, the service
computing device 300 could
dynamically modify the icons 302(1) to a second set of icons 302(2) to cater
to the customer preferences
or external environment (e.g., cold/hot day recommend hot/cold beverage
items). For example, a merchant
may typically adjust from a breakfast to a lunch menu at 11 am. However, the
service computing
device 300 may determine that a football game starts at 10 am, and during
football games, the customers
prefer to consume items on the lunch menu. Accordingly, the service computing
device 300 may adjust
one or more of the icons 302 to those corresponding to lunch menu items.
[0064] In some examples, the service computing device 300 may determine
that an event is taking
place nearby the merchant or will be presented on a display screen at the
merchant location, and may
generate one or more sales and/or specials (e.g., discounts, etc.) based on
the event. In such examples, the
service computing device 300 can emphasize the icons 302 corresponding to the
one or more specials. For
example, the merchant may offer hamburgers and alcoholic beverages on special
during the event.
Accordingly, the service computing device 300 can modify the icons
corresponding to the hamburgers and
alcoholic beverages to make them stand out. Additionally or alternatively, the
service computing device
14

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
may display a notification 310 that the particular items are offered at a
discounted price to further
incentivize the purchase.
[0065] FIG. 4 example process of an example service computing device
400, such as service
computing device 300, dynamically modifying a functionality of a user
interface 402, such as user
interface 304, based on contextual data (e.g., one or more contextual
factors). A functionality can include
one or more functions the user interface 402 is capable of performing, such as
data input (e.g., order entry,
etc.), data display (e.g., recipe display, discount notifications, order
status notifications, etc.), status of
previous inputs (e.g., order management, order status, etc.), data processing
(e.g., payment processing,
order processing, order sequencing, etc.), automatically uploading data (e.g.,
from a base station computing
device based on a determination of proximity (e.g., order upload in order
processing system, etc.), from a
customer computing device based on a determination of proximity (e.g.,
uploading customer preference
data, etc.)), automatically downloading data (e.g., to a base station
computing device based on a
determination of proximity, to a customer computing device based on a
determination of proximity), and/or
other functions relevant to the particular use of the user interface 402. In
various examples, the
modification to the functionality can be illustrated as a modification to the
icons 404 corresponding to the
functionality. In such examples, the modification to the functionality can
include surfacing icons 404
related to the functionality, surfacing notifications 406 relevant to the
functionality, and the like.
[0066] At 408, the service computing device 400 can determine first
contextual data and display
icons 404(1) corresponding to a first functionality. In various examples, the
first contextual data can
include a location of the service computing device. The location can be a
merchant location, an area and/or
a sub-section of an area of the merchant location. In various examples, the
location can be determined by
one or more sensors of the service computing device 400. In some examples, the
location can be
determined by a location component of the service computing device 400. The
location component can be
a global positioning system (GPS) receiver, a beacon and/or components
configured to receive beacon
signals, a light detection and ranging system (LIDAR), a radio detection and
ranging system (RADAR), a
mobile communications triangulation subsystem, and the like. In various
examples, the area and/or sub-
section of the area can be defined by a geographic radius from a position in
the area and/or sub-section of
the area, a geo-fence around the area and/or sub-section of the area, or
determining whether the service
computing device can communicate with another device, such as the base station
computing device, using
a specified wireless technology, e.g., Bluetooth0 or Bluetooth0 low energy
(BLE).
[0067] In some examples, the service computing device 400 can determine
that it is located in a sub-
section of the area (e.g., in proximity to a Table, such as Tables 1-5) based
on a signal from an external
location component, such as a beacon. In such examples, the service computing
device 400 can receive
the signal from the external location component, and based on the signal,
determine that the service
computing device 400 is proximate to the external location component. The
determination can be based

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
on a distance calculation, a signal strength, or other means by which the
service computing device can
determine a proximity to the external location component.
[0068] In various examples, the service computing device 400 can
determine that it is in proximity to
a customer computing device associated with a customer. In some examples, the
service computing
device 400 can determine a proximity to the customer computing device based on
a customer check-in at
a particular location associated with the merchant. In some examples, the
customer check-in can be
performed automatically by an application running on a background of the
customer computing device
when the customer computing device 204 is within a predetermined distance of a
merchant location, and/or
an area/sub-section of the area associated with the merchant location. In such
examples, the customer
computing device determines that it has entered the merchant location, and/or
an area/sub-section of the
area associated with the merchant location based on a location component. The
customer computing device
can then automatically send an indication of proximity and/or a check-in
notification to the merchant, via
an automatic check-in. In some examples, the automatic check-in can also be
performed by the application
running as a background process on the customer computing device. In some
examples, the application
running as a background process removes the need to run the application on a
main thread of the processor
of the customer computing device, thereby saving processing power and/or
speed, and increasing efficiency
on the main thread of the customer computing device processor.
[0069] In various examples, the customer check-in can be performed by
the customer deliberately
checking-in via an application on the customer computing device. For example,
the customer can check-
in at Table 1 at the merchant location. The service computing device 400 can
determine that it is within a
threshold distance to Table 1, and consequently within proximity to the
customer and/or customer
computing device. For another example, a customer can check-in to a hospital,
and be placed in a particular
room within the hospital. The service computing device 400 can determine a
proximity to the customer
responsive to crossing a threshold into the particular room.
[0070] In some examples, the service computing device 400 can determine a
proximity to the
customer computing device based on a signal from the customer computing
device. In such examples, the
customer computing device can emit a signal identifying the customer computing
device. In some
examples, the signal may include customer profile data, such as a code
specific to the customer. In various
examples, the service computing device may determine a proximity based on
signal strength. In some
examples, the service computing device 400 may determine a proximity based on
positioning data
embedded in the signal, such as a particular position in an area and/or sub-
section of the area of the
merchant location.
[0071] In various examples, based on a determination of proximity
between the service computing
device 400 and the customer computing device, the service computing device 400
can display icons 404
corresponding to a first functionality, based on one or more customer
preferences. In some examples, the
customer preferences can be based on a customer transaction history with the
merchant. In such examples,
16

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
the customer preferences can be determined based on commonly purchased items,
commonly purchased
combinations, previously used payment instrument information, etc. For
example, the service computing
device 400 may determine a proximity to a particular customer corresponding to
a customer profile. The
service computing device 400 may access the customer preferences in the
customer profile and determine
that the customer prefers to order alcoholic beverages from the merchant.
Based on the determination of
the customer preferences, the service computing device 400 may display icons
corresponding to a bar menu
functionality, including instructions on how to mix particular beverages.
[0072] In some examples, the customer preferences can be defined by the
customer. In such
examples, the customer can input one or more preferences into a customer
profile. For example, the
customer can input preferred payment instrument information, to allow for
automatic payment processing.
[0073] In various examples, the first contextual data can include a
status of a particular customer
and/or a customer in a particular area and/or sub-section of the area. The
status of the customer can include
an order history (e.g., what the customer has ordered, consumed, etc.),
completion of a transaction (e.g.,
the particular customer has paid for the meal, etc.), and the like. In various
examples, the service computing
device 400 can first determine that it is located proximate to a particular
sub-section. Responsive to the
location determination, the service computing device 400 can display icons
corresponding to a first
functionality based on the customer status at the particular location. For
example, the service computing
device 400 can determine that it is proximate to Table 1 and the customer at
Table 1 has consumed the
ordered items (e.g., a predetermined period of time has passed since order
delivery). Based on the
determination of the contextual factors of location and customer status, the
service computing device 400
can automatically and dynamically modify the functionality of the user
interface 402 to display icons
corresponding to a bill for the customer and/or process payment for the bill.
In examples in which the
service computing device 400 identifies a proximity to a customer associated
with a customer profile, the
service computing device 400 can automatically process payment based on stored
payment instrument
information, and display icons corresponding to the processed payment. In such
examples, the service
computing device 400 can provide a seamless payment experience for the
customer, and improve an overall
experience between the customer and the merchant.
[0074] In various examples, the first functionality can include the
function of displaying
notifications 406 relevant to the first contextual data. In the illustrative
example, the first contextual data
includes a location of the service computing device in a dining area of a
restaurant, such as dining area 110.
The first functionality, therefore, can include a display of a menu of
selectable icons 404(1), to enable the
merchant to take an order from a table. As illustrated, the service computing
device 400 may receive a
notification from the kitchen including an indication that a particular order
is ready for pick-up. Based on
the indication, the merchant can adjust a next action, and retrieve the order
from the kitchen to deliver to
the table.
17

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0075] In some examples, the user interface 402 can be configured to
process and display notifications
when operating in multiple functionalities. In such examples, the user
interface 402 can alert the merchant
of important information regardless of the current contextual data and/or
current task being performed by
the merchant.
[0076] In various examples, the first contextual data can include a current
time component. The time
component can include a time of day, a day of the week, a month of the year, a
season, or other time-based
component. In such examples, the service computing device can determine the
time component, and adjust
the functionality of the user interface based at least in part on the time
component. In some examples, the
time component may be pre-defined, such as in merchant preferences stored in a
merchant profile. For
example, a particular merchant may pre-define a kitchen closing time as lOpm.
Based on a determination
that the time is 1 Opm, the service computing device 400 may adjust the
functionality of the user
interface 402 to display and process the bar menu, regardless of a location of
the service computing device
in the restaurant.
[0077] At 410, the service computing device 400 can determine second
contextual data and
dynamically modify icons 404 based on a second functionality corresponding to
the second contextual
data. The second contextual data, similar to the first contextual data, can be
based on a location of the
service computing device 400, a status of a customer at a particular location,
a proximity to a particular
customer, and/or other contextual factors related to the functionality of the
service computing device 400.
[0078] In the illustrative example, the second contextual data includes
a location of the service
computing device in a kitchen area of the restaurant. Responsive to a location
determination, the service
computing device 400 can modify icons 404 from the dining area icons 404(1) to
the kitchen area
icons 404(2), based on the second functionality.
[0079] In various examples, the second contextual data can include a
threshold amount of time (e.g.,
5 seconds, 10 seconds, 1 minute, etc.) the service computing device 400 is
located in an area and/or a sub-
.. section of the area. In such examples, the service computing device 400
determines that the threshold time
has been exceeded prior to modifying the icons 404 to those corresponding to
the second functionality.
For example, a merchant carrying a service computing device 400 into the
kitchen area to quickly retrieve
an order may not exceed the threshold time required to modify the icons 404.
[0080] In various examples, the first and/or second functionality can
include one or more icons
404(2A)-404(2D) that are selectable, non-selectable, or include selectable
components. For example, icons
404(2A) and 404(2B) include non-selectable icons 404, informing the merchant
that particular orders are
ready to be delivered to particular tables. For another example, icon 404(2D),
includes a selectable
component 412. In some examples, the selectable component 412 can include a
notification 406 setting.
In the illustrative example, the second functionality can include an estimated
time in which a particular
order will be ready. Based on the estimated time, the icons 404(2) can be
modified to include a reminder
notification query. In some examples, the reminder notification query can be
presented based on the
18

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
estimated time exceeding a threshold (e.g., 5 minutes, 10 minutes, 15 minutes,
etc.). As illustrated, the
merchant can receive a notification 406 from the kitchen responsive to
answering the reminder notification
query of the selectable component 412 in the affirmative.
[0081] FIG. 5 illustrates an example process of a service computing
device 500, such as service
computing device 400, dynamically modifying a theme 502 of a user interface
504, such as user
interface 402, based on contextual data (e.g., one or more contextual
factors). The theme 502 can include
background and/or icon hue (e.g., color and/or shading), background images,
animations, lighting, sounds,
and/or other sensory outputs.
[0082] In various examples, the contextual data can include a location
of the service computing
device 500. As discussed above, the service computing device 500 can determine
that it is located in an
area and/or a sub-section of the area (e.g., in proximity to a Table, such as
Table 1) based on data from one
or more sensors, an internal location component and/or an external location
component.
[0083] In some examples, the contextual data can include proximity to a
particular customer. In such
examples, the service computing device 500 can determine that it is within a
threshold distance of the
customer based on a customer check-in to an area and/or sub-section of the
area associated with the
merchant, a signal received from a customer computing device, and/or other
ways of determining proximity
between devices. In various examples, based on a determination of proximity to
a particular customer, the
service computing device can modify a theme 502 based on customer information
and/or customer
preferences. In such examples, the customer information and/or customer
preferences can be stored in the
customer profile. The customer information and/or customer preferences can
include customer name,
birthday, handedness (e.g., right-handed or left-handed), hobbies, preferred
seasons, preferred holidays,
preferred sports teams, meal preferences, and other information pertinent to
the customer. For example, a
customer can update a profile to reflect that the customer is a Mariners fan.
Based on the update and a
determination that the customer and the service computing device are in
proximity to one another, the
service computing device 500 can present a Mariners theme 502 on the user
interface 504.
[0084] In some examples, the contextual data can include a time
component. The time component
can include a time of day, a day of the week, time of year (e.g., season), a
holiday period, and the like. In
various examples, the service computing device 500 can determine the time
component, and present a
theme 502 on the user interface 504 based at least in part on the time
component. In some examples, the
time component may be pre-defined, such as in merchant preferences stored in a
merchant profile. For
example, a particular merchant may include a preference to present snowflakes
on the background of the
user interface 504 during the winter. Based on a determination that the
current season is winter, the service
computing device 500 may adjust the theme 502 to include snowflakes in the
background.
[0085] In some examples, the contextual data can include environmental
factors. The environmental
factors can include lighting, weather, volume, etc. In various examples, the
service computing device 500
can user one or more sensors (e.g., light sensor, volume sensor, etc.) to
determine the environmental factors.
19

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
In such examples, based on the environmental factors, the service computing
device 500 can present a
particular theme 502. For example, in a dimly lit area, the service computing
device 500 may adjust a
background of the user interface 504 to a darker color. For another example,
in a loud area, the service
computing device 500 may increase a volume of the user interface 504.
[0086] At 506, the service computing device 500 can determine first
contextual data and can present
a corresponding theme 502. In the illustrative example, the first contextual
data can include a location in
a dimly lit dining room. Based on the first contextual data, the service
computing device 500 can present
theme 502(1) including an image 508(1) corresponding to the dining room, and
dark colors for the user
interface 504 and icon backgrounds corresponding to the area lighting.
[0087] At 510, the service computing device 500 can determine second
contextual data and can
dynamically modify the theme 502 based on the second contextual data. In the
illustrative example, the
second contextual data includes a location in a brightly lit patio. Based on
the second contextual data, the
service computing device 500 can present theme 502(2), including an image
508(2) corresponding to the
patio, and bright colors for the user interface 504 and icon backgrounds
corresponding to the brightly lit
area.
[0088] FIGS. 6-9 illustrate flow diagrams of processes for generating
multi-merchant loyalty
programs and enrolling customers therein. Processes 600, 700, 800, and 900 are
illustrated as collections
of blocks in logical flow diagrams, which represent a sequence of operations,
some or all of which can be
implemented in hardware, software or a combination thereof. In the context of
software, the blocks may
represent computer-executable instructions stored on one or more computer-
readable media that, when
executed by one or more processors, program the processors to perform the
recited operations. Generally,
computer-executable instructions include routines, programs, objects,
components, data structures and the
like that perform particular functions or implement particular data types. The
order in which the blocks
are described should not be construed as a limitation. Any number of the
described blocks can be combined
in any order and/or in parallel to implement the process, or alternative
processes, and not all of the blocks
need be executed. For discussion purposes, the processes are described with
reference to the environments,
architectures and systems described in the examples herein, although the
processes may be implemented
in a wide variety of other environments, architectures and systems.
[0089] FIG. 6 illustrates a flow diagram of an example process 600 for
dynamically modifying icons
on a user interface of a service computing device based on contextual data.
[0090] At 602, the service computing device can present icons on the
user interface of a service
computing device. In some examples, the icons can include selectable
representations of items provided
and/or offered by a merchant via the user interface. In various examples, the
icons can correspond to a
functionality of the user interface. For example, a user interface can be used
to manage a seating chart in
a restaurant. The icons can thus correspond to different tables in a dining
area. For another example, the

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
user interface can be used to process orders in a restaurant. The icons can
thus correspond to selectable
menu items.
[0091] In various examples, the icons and/or the size, shape, color,
hue, placement, etc., thereof can
be determined based on an initial setting of the service computing device. For
example, a merchant can
turn the service computing device on, and the service computing device can
present a standard menu
display with equally sized icons ordered alphabetically.
[0092] At 604, the service computing device can analyze contextual data
of the service computing
device. The contextual data can include a location of the service computing
device, a time component
(e.g., a time of day, a day of the week, time of year (e.g., season)),
weather, merchant inventory, merchant
preferences, customer preferences, items that are deemed upsell items, items
that are deemed cross-sell
items, a sale and/or special offered by the merchant, and/or various other
contextual factors corresponding
to the use of the service computing device.
[0093] In various examples, the service computing device can receive
contextual data from a remote
computing device, such as a base station computing device and/or a POS system
service provider. For
example, the service computing device can receive merchant preferences from a
base station computing
device, and can determine the icons to present based on the merchant
preferences.
[0094] At 606, the service computing device can dynamically modify one
or more icons based on the
contextual data. In various examples, a modification to the one or more icons
can include replacing an
icon with another icon and/or changing the size, shape, order, image, color,
hue, placement, etc., of an icon
(e.g., adjusting a visual appearance of the icon). For example, a service
computing device at a restaurant
can determine that a current time corresponds to an adjustment to a lunch
menu. Based on the
determination, the service computing device can modify the icons on the user
interface from icons
associated with a breakfast menu to icons associated with a lunch menu. For
another example, the service
computing device at the restaurant can determine that a current day of the
week corresponds to a menu
special, such as Thirsty Thursday. Based on the determination that it is
Thirsty Thursday, the service
computing device can modify the user interface to emphasize the icons
associated with Thirsty Thursday
items (e.g., discounted beer, rum, tequila, whiskey, etc.).
[0095] In various examples, the modifications to the one or more icons
can include an adjustment to
a functionality associated with the user interface. The functionality can
include surfacing different menus,
notifications, selectable icons, and the like. In some examples, the
modifications to the one or more icons
can include an adjustment to a theme associated with user interface. The theme
can include background
and/or icon hue (e.g., color and/or shading), icon animation, background
lighting, sounds, and/or other
sensory outputs.
[0096] FIG. 7 illustrates a flow diagram of an example process 700 for
dynamically modifying a
functionality of a user interface of a service computing device based on
contextual data.
21

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0097] At 702, the service computing device can determine a first
location. In various examples, the
first location can be determined based on a location component of the service
computing device. In some
examples, the first location can include a location relative to a base station
computing device. In such
examples, the first location can be a distance from a base station computing
device of a point-of-sale (POS)
system, such as a two-dimensional distance (e.g., X/Y distance) from the base
station computing device.
In some examples, the first location can include an area and/or a sub-section
of an area corresponding to a
merchant location.
[0098] In various examples, the service computing device can also
determine one or more contextual
factors associated with a use of the service computing device. The one or more
contextual factors can
include a time of day, a day of the week, time of year (e.g., season),
weather, merchant inventory, merchant
preferences, customer preferences, items that are deemed upsell items, items
that are deemed cross-sell
items, a sale and/or special offered by the merchant, and/or various other
contextual factors corresponding
to the use of the service computing device.
[0099] In various examples, the service computing device can receive the
one or more contextual
factors from a remote computing device, such as a base station computing
device and/or a POS system
service provider.
[0100] At 704, the service computing device can present icons
corresponding to a first functionality
on a user interface of a service computing device. The functionality can
include one or more functions or
capabilities of the service computing device at the first location and/or at a
given time. For example, for a
service computing device in a restaurant, the functions can include surfacing
menus, displaying
notifications, receiving orders, processing payment, managing customer flow at
tables, managing a kitchen
ordering system, automatically uploading data, automatically downloading data,
and the like.
[0101] At 706, the service computing device can determine a second
location. In various examples,
the first location can be determined based on a location component of the
service computing device. In
some examples, the second location can include a location relative to a base
station computing device. In
such examples, the second location can be a distance from a base station
computing device of a point-of-
sale (POS) system, such as a two-dimensional distance (e.g., X/Y distance)
from the base station computing
device. In some examples, the second location can include an area and/or a sub-
section of an area
corresponding to a merchant location.
[0102] In various examples, the service computing device can also determine
one or more contextual
factors associated with a use of the service computing device. The one or more
contextual factors can
include a time of day, a day of the week, time of year (e.g., season),
weather, merchant inventory, merchant
preferences, customer preferences, items that are deemed upsell items, items
that are deemed cross-sell
items, a sale and/or special offered by the merchant, and/or various other
contextual factors corresponding
to the use of the service computing device.
22

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0103] In various examples, the service computing device can receive the
one or more contextual
factors from a remote computing device, such as a base station computing
device and/or a POS system
service provider.
[0104] At 708, the service computing device can identify a second
functionality based on the second
location. The second functionality can include one or more functions or
capabilities of the service
computing device relevant to the context of use. In various examples, the
second functionality can also be
based, at least in part, on the one or more contextual factors.
[0105] At 710, the service computing device can dynamically modify one
or more icons of the user
interface based on the second functionality. A modification to the one or more
icons can include replacing
an icon with another icon and/or changing the size, shape, order, image,
color, hue, placement, etc. of an
icon. For example, a service computing device at a restaurant can be relocated
from a host station with a
first functionality of managing a seating chart, to a dining area with a
second functionality of receiving
orders from customers. Based on the recognition of the change in contextual
data and consequently
functionality, the service computing device may modify the icons to display
icons corresponding to a
restaurant menu.
[0106] FIG. 8 illustrates a flow diagram of an example process 800 for
dynamically modifying icons
on a user interface of a service computing device based on a merchant
inventory.
[0107] At 802, the service computing device can determine a context
corresponding to the use of the
device. In various examples, the context can include one or more contextual
factors, such as a location of
the service computing device, a time component (e.g., a time of day, a day of
the week, time of year (e.g.,
season)), weather, merchant inventory, merchant preferences, customer
preferences, items that are deemed
upsell items, items that are deemed cross-sell items, a sale and/or special
offered by the merchant, and/or
various other contextual factors corresponding to the use of the service
computing device.
[0108] In various examples, the service computing device can receive
contextual data from a remote
computing device, such as a base station computing device and/or a POS system
service provider. For
example, the service computing device can receive merchant preferences from a
base station computing
device, and can determine the icons to present based on the merchant
preferences.
[0109] At 804, the service computing device can present a set of icons
in an order based at least in
part on the context. In some examples, the icons can include selectable
representations of items provided
and/or offered by a merchant via the user interface. In various examples, the
icons can correspond to a
functionality of the user interface. For example, a user interface can be used
to manage a seating chart in
a restaurant. The icons can thus correspond to different tables in a dining
area. For another example, the
user interface can be used to process orders in a restaurant. The icons can
thus correspond to selectable
menu items.
[0110] In various examples, the icons and/or the size, shape, color, hue,
placement, etc., thereof can
be determined based on an initial setting of the service computing device. For
example, a merchant can
23

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
turn the service computing device on, and the service computing device can
present a standard menu
display with equally sized icons ordered alphabetically.
[0111] At 806, the service computing device can analyze an inventory
associated with the merchant.
An analysis of the inventory can include a determination of a quantity (e.g.,
number) of each item in the
inventory that is available, a determination of icons associated with each
item (e.g., menu item #13 includes
items A, B, and C, menu item #26 includes items D and E, etc.). In various
examples, the inventory can
include a threshold overstock number and/or a threshold understock number for
each item in the inventory.
In some examples, based on the quantity of an item depleting below the
threshold understock number, the
service computing device can order the item from an item supplier. In various
examples, the service
computing device can send a notification of the item depletion to a
centralized computing system, such as
a base station computing device. In such examples, the service computing
device can cause the centralized
computing system to order the item from the supplier.
[0112] In various examples, the service computing device can receive
inventory data from a remote
computing device, such as a base station computing device and/or a POS system
service provider. For
example, the base station computing device can include a centralized order hub
and inventory management
system. The base station computing device can track a quantity of each item in
the inventory, and can send
updates to the service computing device as necessary. The updates can be
continuous, periodic, or
situationally dependent, and can determine the icons to present based on the
merchant preferences.
[0113] In some examples, the service computing device can send the
remote computing device order
.. information. In such examples, the remote computing system can process the
order, analyze the inventory
based on the order, and send inventory information to the service computing
device.
[0114] At 808, the service computing device can dynamically modify the
set of icons based at least
in part on the inventory. In various examples, the service computing device
can process orders and
determine an overstock or understock of a particular item of inventory. In
some examples, the service
computing device can receive inventory information, such as an item overstock
or understock, from a
remote computing device, such as the base station computing device.
[0115] In various examples, the service computing device can determine
an overstock of an item of
inventory. In such examples, the service computing device can dynamically
modify an icon associated
with the overstocked item, to emphasize the item and encourage a sale. The
emphasis can include
increasing a size, shape, color, hue, placement, and the like, of the icon,
presenting a notification of a
discount, etc.
[0116] In some examples, the service computing device can determine an
understock of an item of
inventory. In such examples, the service computing device can dynamically
modify an icon associated
with the understocked item, to de-emphasize the item and discourage a sale.
The de-emphasis can include
removing the icon from a user interface, removing the icon from a main page of
the user interface, replacing
24

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
the icon with an icon corresponding to another item that is substantially
similar, and other ways to
discourage the sale of an item.
[0117] In some examples, the service computing device can modify the set
of icons based on one or
more contextual factors, such as a location of the service computing device, a
merchant preference, a
customer preference, a time component, a merchant transaction history, a
customer transaction history, a
sale or special for an item, and the like. For example, the service computing
device can identify a customer
and access a transaction history associated with the customer. The service
computing device can
determine, from the transaction history, that a customer commonly purchases a
particular item. The service
computing device can identify one or more substantially similar items to the
particular item, and can
emphasize the icons corresponding to the substantially similar items (e.g.,
adjust the size, shape, placement,
color, hue, etc.) to encourage a sale of one or more of the substantially
similar items. In some examples,
the identification of the substantially similar items can be based on a low
quantity (e.g., an understock) of
the particular item in the inventory.
[0118] The dynamic modification of the user interface based on an
analysis of the inventory can
improve a functioning of the service computing device. The improvements can
include decreasing a
number of inputs required to process each order, thereby increasing a
processing speed of the service
computing device, rendering the service computing device more efficient.
Additionally, the inventory
analysis described herein can improve the technology and/or technical field of
inventory supply
management. In various examples, the service computing device can continually
and/or periodically
update the inventory with the processing of each order (e.g., update a data
structure, database, etc.
associated with the inventory). In such examples, the inventory supply
management system is greatly
improved because the system can determine, in substantially real-time, what
the inventory for a particular
item is. Accordingly, the inventory supply management system can quickly
determine an overstock
situation, an understock situation, and/or one or more items to include in an
order from a supplier.
[0119] FIG. 9 illustrates a flow diagram of an example process 900 for
processing an order from a
remote delivery application.
[0120] At 902, the computing device can receive an order from a delivery
application. In some
example, the computing device can receive one or more delivery applications
and/or one or more remote
computing devices.
[0121] At 904, the computing device can determine a time associated with
the order. In various
examples, the time can be a preparation time associated with the order. In
such examples, the time can be
a longest time required to prepare an item in the order. The time can be
determined based on a quantity
(e.g., number) of employees working in the kitchen, a particular employee
working in the kitchen, an
upcoming shift change in the kitchen, a cooking time for the items in the
order, an ingredient preparation
.. time for items in the order, and other factors affecting a preparation time
associated with the order. In
various examples, the preparation time can be based on a pre-determined time
stored in the computing

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
device for a particular item in the order. In such examples, the computing
device can include a list of menu
items and associated preparation times.
[0122] In some examples, the computing device can determine a time
associated with each item in the
order. In such examples, the computing device can sequence the items of the
order individually, to
coordinate the completion of each item in the order to be at substantially the
same time.
[0123] In various examples, the time can be associated with one or more
factors external to the
merchant operation. The one or more factors can include weather, traffic
(e.g., in proximity to a merchant
location, between the customer and the merchant location, etc.), courier
availability, other pending order
pick-ups or deliveries of the courier, and other factors affecting a time in
which a courier may arrive at the
merchant location.
[0124] At 906, the computing device can send the order to a kitchen
computing system (e.g., kitchen
display system). In some examples, the order can be sequenced with one or more
other orders and/or one
or more items of the order and/or one or more other orders.
[0125] In various examples, the computing device can receive an
indication from the kitchen
computing system that there is a delay in processing the order. The indication
can be based on a staffing
in the kitchen being below a pre-defined minimum quantity (e.g., number) of
employees (e.g., a threshold
minimum quantity), a pending shift change, a particular employee working in
the kitchen, a training
evolution, an increase in orders received from the dining room, or other
factors that may affect a preparation
time of an order. In some examples, the computing system can calculate an
updated time associated with
the order based on the indication. In various examples, the computing system
can send the updated time
to the respective delivery application. In some examples, the updated time may
be sent to the respective
delivery application based on a determination that a difference between the
time and the updated time
exceeds a threshold amount of time (e.g., 5 minutes, 7 minutes, 10 minutes,
etc.).
[0126] In some examples, responsive to receiving the indication that
there is a delay in processing the
order, the computing device can send a notification to a manager of the
merchant. In such examples, the
notification can include details regarding the delay, a request to address a
cause of the delay, a solution to
the cause of the delay (e.g., more employees needed in the kitchen, etc.), and
the like. For example, the
notification to the manager can include a delay in processing the order based
on training currently
happening in the kitchen. The notification can include a suggestion to
terminate the training early, to allow
one or more employees to direct full attention to processing orders.
[0127] At 908, the computing device can receive a notification of
completion of the order from the
kitchen computing system. In some examples, the computing device can send the
notification of order
completion to the delivery application and/or the remote computing device. In
such examples, the delivery
application and/or the remote computing device can notify a customer and/or a
courier associated with the
order that the order is ready for pick-up. In various examples, the computing
device can send the
26

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
notification of order completion directly to the courier associated with the
order, informing the courier that
the order is ready for pick-up.
[0128] In various examples, the computing device can also receive a
notification of an understock of
a particular item from the kitchen computing system. In such examples, the
kitchen computing system can
determine that the completion of the order resulted in a decrease in a stock
of the particular item below a
threshold level. In some examples, the computing device can determine an
understock situation by
comparing one or more items of the order to the notification of completion of
the order. In various
examples, responsive to the notification of the understock and/or a
determination of the understock
situation, the computing device can automatically send an order for the
particular item to a supplier of
.. menu items. In some examples, responsive to the notification of the
understock and/or a determination of
the understock situation, the computing device can automatically send a
notification of unavailability of
the particular item to the delivery application. In such examples, the
delivery application can modify a
menu to remove the particular item from a menu.
[0129] At 910, the computing device can process payment for the order.
In some examples, the
.. computing device can process the payment based at least in part on the
notification of order completion.
In various examples, the computing device can receive payment instrument
information concurrently with
the order. In such examples, the computing device can temporarily store the
payment instrument
information until payment is processed. In some examples, the computing device
can access payment
instrument information stored in a customer profile corresponding to the
customer associated with the
order.
[0130] FIG. 10 illustrates select components of an example service
computing device 1000 configured
with the dynamically modifiable user interface system. The service computing
device 1000 may be any
suitable type of computing device, e.g., mobile, semi-mobile, semi-stationary,
or stationary.
[0131] Some examples of the service computing device 1000 may include
tablet computing devices;
.. smart phones and mobile communication devices; laptops, netbooks and other
portable computers or semi-
portable computers; desktop computing devices, terminal computing devices and
other semi-stationary or
stationary computing devices; dedicated register devices; wearable computing
devices, or other body-
mounted computing devices; or other computing devices capable of sending
communications and
performing the functions according to the techniques described herein.
[0132] In the illustrated example, the service computing device 1000
includes at least one
processor 1002, at least one memory 1004, a display 1006, one or more
input/output (I/O) interfaces 1008,
one or more communication interfaces 1010, one or more sensor(s) 1012, and at
least one location
component 1014.
[0133] Each processor 1002 may itself comprise one or more processors or
processing cores. For
example, the processor 1002 can be implemented as one or more microprocessors,
microcomputers,
microcontrollers, digital signal processors, central processing units, state
machines, logic circuitries, and/or
27

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
any devices that manipulate signals based on operational instructions. In some
cases, the processor 1002
may be one or more hardware processors and/or logic circuits of any suitable
type specifically programmed
or configured to execute the algorithms and processes described herein. The
processor 1002 can be
configured to fetch and execute computer-readable processor-executable
instructions stored in the
memory 1004.
[0134] Depending on the configuration of the service computing device
1000, the memory 1004 may
be an example of tangible non-transitory computer storage media and may
include volatile and nonvolatile
memory and/or removable and non-removable media implemented in any type of
technology for storage
of information such as computer-readable processor-executable instructions,
data structures, program
.. modules or other data. The memory 1004 may include, but is not limited to,
RAM, ROM, EEPROM, flash
memory, solid-state storage, magnetic disk storage, optical storage, and/or
other computer-readable media
technology. Further, in some cases, the service computing device 1000 may
access external storage, such
as RAID storage systems, storage arrays, network attached storage, storage
area networks, cloud storage,
or any other medium that can be used to store information and that can be
accessed by the processor 1002
directly or through another computing device or network. Accordingly, the
memory 1004 may be
computer storage media able to store instructions, modules or components that
may be executed by the
processor 1002. Further, when mentioned, non-transitory computer-readable
media excludes media such
as energy, carrier signals, electromagnetic waves, and signals per se.
[0135] The memory 1004 may be used to store and maintain any number of
functional components
that are executable by the processor 1002. In some implementations, these
functional components
comprise instructions or programs that are executable by the processor 1002
and that, when executed,
implement operational logic for performing the actions and services attributed
above to the service
computing device 1000. Functional components of the service computing device
1000 stored in the
memory 1004 may include a user interface modification framework 1016 and a
payment processing
.. framework 1018. The user interface modification framework 1016 may be
configured to analyze
contextual data and modify one or more icons of the user interface based on
the contextual data, as
discussed above with regard to FIGS. 1-7.
[0136] In various examples, the payment processing framework 1018 can be
configured to
communicate one or more orders to a base station computing device (e.g., a
centralized computing device)
for processing. In such examples, the base station computing device can
process the payment via a POS
system service provider, a bank corresponding to the payment instrument,
and/or another source. In some
examples, the payment processing framework 1018 can be configured to receive
payment instrument
information from the one or more sensor(s) 1012, such as a payment instrument
reader. In still yet other
examples, the payment processing framework 1018 can be configured to access
payment instrument
information for a particular customer stored in the customer profiles 1026. In
such an example, the service
computing device 1000 can automatically process payment based on an indication
of order completion.
28

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0137] Additional functional components may include an operating system
1020 for controlling and
managing various functions of the service computing device 1000 and for
enabling basic user interactions
with the service computing device 1000 and/or a customer device. The memory
1004 may also store a
data store 1022. The data store 1022 may be configured to store merchant
profile 1024, customer
profiles 1026 and/or other information pertaining to merchants and associated
customers.
[0138] In addition, the memory 1004 may also store data, data structures
and the like, that are used
by the functional components. Depending on the type of the service computing
device 1000, the
memory 1004 may also optionally include other functional components and data,
which may include
programs, drivers, etc., and the data used or generated by the functional
components. Further, the service
computing device 1000 may include many other logical, programmatic and
physical components, of which
those described are merely examples that are related to the discussion herein.
[0139] The one or more communication interface(s) 1010 may include one
or more interfaces and
hardware components for facilitating communication with various other devices
over a network or directly.
For example, communication interface(s) 1010 may facilitate communication
through one or more of the
Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi)
and wired networks, as well as
close-range communications such as Bluetooth0, Bluetooth0 low energy, and the
like, as additionally
enumerated elsewhere herein.
[0140] In various examples, the one or more communication interface(s)
1010 may work in
conjunction with the user interface modification framework. For example, the
service computing device
may receive a phone call via a network connection. Responsive to answering the
phone call, the service
computing device 1000 may automatically modify a user interface to display
icons corresponding to a
menu. In various examples, the service computing device 1000 may recognize a
phone number
corresponding to the incoming call, and may identify a particular customer
profile associated with the
customer stored in the customer profiles 1026 of the data store 1022. In such
examples, the service
.. computing device 1000 may modify the icons based on one or more customer
preferences and/or a
transaction history of the customer stored in the particular customer profile.
[0141] FIG. 10 further illustrates that the service computing device
1000 may include one or more
displays 1006 mentioned above. Depending on the type of computing device used
as the service computing
device 1000, the one or more displays 1006 may employ any suitable display
technology. For example,
the one or more displays 1006 may be liquid crystal displays, plasma displays,
light emitting diode
displays, OLED (organic light-emitting diode) displays, electronic paper
displays, or any other suitable
type of displays able to present digital content thereon. However,
implementations described herein are
not limited to any particular display technology.
[0142] The I/O interfaces 1008, meanwhile, may include speakers, a
microphone, a camera, and
.. various user controls (e.g., buttons, a joystick, a keyboard, a keypad,
etc.), a haptic output device, and so
forth.
29

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0143] In various examples, the service computing device 1000 can
include one or more
sensor(s) 1012. The one or more sensor(s) 1012 can include a camera, a laser
scanner, a RADAR, a
LIDAR, other proximity sensor, an accelerometer, a gyroscope, a compass, a
light sensor, a volume sensor,
a payment instrument reader, or other sensor capable of capturing and/or
analyzing environmental factors.
[0144] The location component 1014 may include a GPS device able to
indicate location information,
or the location component 1014 may comprise another other location-based
sensor. Additionally, the
service computing device 1000 may include various other components that are
not shown, examples of
which include removable storage, a power control unit, and so forth.
[0145] FIG. 11 illustrates select components of an example base station
computing device 1100 that
a POS system may use as a centralized computing device for the dynamically
modifiable user interface
system and/or an order prioritization system. The base station computing
device 1100 may be any suitable
type of computing device, e.g., mobile, semi-mobile, semi-stationary, or
stationary.
[0146] Some examples of the base station computing device 1100 may
include tablet computing
devices; smart phones and mobile communication devices; laptops, netbooks and
other portable computers
.. or semi-portable computers; desktop computing devices, terminal computing
devices and other semi-
stationary or stationary computing devices; dedicated register devices;
wearable computing devices, or
other body-mounted computing devices; or other computing devices capable of
sending communications
and performing the functions according to the techniques described herein.
[0147] In the illustrated example, the base station computing device
1100 includes at least one
processor 1102, at least one memory 1104, a display 1106, one or more
input/output (I/O) interfaces 1108,
one or more communication interfaces 1110, one or more sensor(s) 1112 at least
one location
component 1114.
[0148] Each processor 1102 may itself comprise one or more processors or
processing cores. For
example, the processor 1102 can be implemented as one or more microprocessors,
microcomputers,
microcontrollers, digital signal processors, central processing units, state
machines, logic circuitries, and/or
any devices that manipulate signals based on operational instructions. In some
cases, the processor 1102
may be one or more hardware processors and/or logic circuits of any suitable
type specifically programmed
or configured to execute the algorithms and processes described herein. The
processor 1102 can be
configured to fetch and execute computer-readable processor-executable
instructions stored in the
memory 1104.
[0149] Depending on the configuration of the base station computing
device 1100, the memory 1104
may be an example of tangible non-transitory computer storage media and may
include volatile and
nonvolatile memory and/or removable and non-removable media implemented in any
type of technology
for storage of information such as computer-readable processor-executable
instructions, data structures,
program modules or other data. The memory 1104 may include, but is not limited
to, RAM, ROM,
EEPROM, flash memory, solid-state storage, magnetic disk storage, optical
storage, and/or other

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
computer-readable media technology. Further, in some cases, the base station
computing device 1100 may
access external storage, such as RAID storage systems, storage arrays, network
attached storage, storage
area networks, cloud storage, or any other medium that can be used to store
information and that can be
accessed by the processor 1102 directly or through another computing device or
network. Accordingly,
the memory 1104 may be computer storage media able to store instructions,
modules or components that
may be executed by the processor 1102. Further, when mentioned, non-transitory
computer-readable
media excludes media such as energy, carrier signals, electromagnetic waves,
and signals per se.
[0150] The memory 1104 may be used to store and maintain any number of
functional components
that are executable by the processor 1102. In some implementations, these
functional components
comprise instructions or programs that are executable by the processor 1102
and that, when executed,
implement operational logic for performing the actions and services attributed
above to the base station
computing device 1100. Functional components of the base station computing
device 1100 stored in the
memory 1104 may include user interface modification framework 1116, such as
user interface
modification framework 1016, discussed above, and an ordering framework 1118.
[0151] In various examples, the ordering framework 1118 can include an
ordering hub for processing
multiple orders. The multiple orders can be from the single computing device,
such as a server computing
device 1000, or from multiple computing devices. In some examples, at least
some of the multiple orders
can be received from one or more delivery applications (e.g., applications
configured to process delivery
orders from one or more customers).
[0152] In various examples, the ordering framework 1118 can receive an
order, and determine a
preparation time associated with the order. The preparation time can be based
on a longest cooking time
for the order, a quantity (e.g., number) of employees working in the kitchen,
the particular employees
working in the kitchen, an upcoming employee shift change, how busy the dining
room is, a quantity of
orders currently in a sequence queue, and other factors affecting a time it
would take to prepare an order.
[0153] In some examples, the ordering framework 1118 can receive a
plurality of orders, and can
determine a sequence of the plurality of orders. The sequence can be based on
an arrival time of the order,
the preparation time associated with the order, location of the customer
(e.g., at the merchant location or
at a remote location), a pick-up time associated with the order (e.g., pre-
determined pick-up time, delays
due to traffic, weather, courier availability, etc.), and/or other factors.
[0154] In various examples, the ordering framework 1118 receive a plurality
of orders, and can
determine a sequence of sub-orders within the orders. In such examples, the
items in the orders can be
separated, and a preparation time of each item can be determined. Based on the
preparation time of each
item, the items of the various orders can be sequenced for efficiency. For
example, two orders may be
received substantially simultaneously, each of the orders including a salad
and a hot entrée. The ordering
framework 1118 can determine a preparation time for the salads is 3 minutes
and a preparation time for the
31

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
hot entrées is 20 minutes. Based on the preparation times, the ordering
framework 1118 can sequence the
items of the orders so that the salads and corresponding hot entrées are ready
at substantially the same time.
[0155] In some examples, the ordering framework 1118 can determine a
long preparation time and/or
a delay for a particular item. In various examples, the ordering framework
1118 can communicate the
.. information to the various delivery applications and/or remote computing
devices. In such examples, the
delivery applications and/or remote computing devices can de-emphasize the
item, such as by modifying
an icon corresponding to the item on a menu, and/or provide a notification of
delay regarding the item and
consequently a delay of an order including the item. In some examples, the
ordering framework 1118 can
communicate the information to the user interface modification framework 1116.
Based on the information
.. about the delay, the user interface modification framework 1116 can de-
emphasize the item, such as by
removing the icon associated therewith from a main page, making the icon
smaller, and the like.
[0156] In various examples, the ordering framework 1118 and/or user
interface modification
framework 1116 can monitor merchant inventory. In such examples, the ordering
framework 1118 and/or
user interface modification framework 1116 can update the merchant inventory
(e.g., update a data
structure, database, etc. associated with the inventory) based on processed
orders. The updates can be
performed continuously (e.g., with each order) and/or periodically (e.g., at a
given time each day, every
hour, etc.).
[0157] In various examples, the ordering framework 1118 and/or user
interface modification
framework 1116 can monitor the merchant inventory, and communicate the
merchant inventory to the
service computing device. In some examples, the ordering framework 1118 and/or
user interface
modification framework 1116 can push an update to the service computing device
based on a determination
that a particular item in the inventory has exceeded an overstock threshold
level. The overstock threshold
level may be set by the merchant, such as in merchant profile 1126, and/or by
a POS system service
provider. For example, the ordering framework 1118 and/or user interface
modification framework 1116
.. may determine that a particular item is overstocked. Based on the overstock
determination, the base station
computing device 1100 may instruct the service computing device to modify the
user interface to
emphasize the overstocked item in an attempt to sell more of that item.
[0158] In some examples, the ordering framework 1118 and/or user
interface modification
framework 1116 can send a notification to the delivery applications and/or
remote computing devices
based on the overstock determination. The notification can include an
instruction to emphasize the item,
a discount offered on the item, or other information to encourage the sale of
the item.
[0159] In some examples, the ordering framework 1118 and/or user
interface modification
framework 1116 can push an inventory update (e.g., update a quantity of a
particular item or group of items
in the inventory, current quantities of inventory items in the data structure,
database, etc.) to the service
computing device based on a determination that a particular item in the
inventory has decreased below an
understock threshold level. The understock threshold level could be zero (0)
remaining items, or a limited
32

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
quantity of remaining items, as determined by the merchant, such as in
merchant profile 1126, and/or by a
POS system service provider. For example, the ordering framework 1118 and/or
the user interface
modification framework 1116 may determine that a particular item is
understocked (e.g., a limited amount
or none remaining). Based on the understock determination, the ordering
framework 1118 and/or the user
interface modification framework 1116 send an instruction to the service
computing device to de-
emphasize the understocked item in an attempt to discourage the sale of the
item and/or attempt to cross-
sell another item, such as by emphasizing a comparable item.
[0160] In some examples, the ordering framework 1118 and/or user
interface modification
framework 1116 can send a notification to the delivery applications and/or
remote computing devices
based on the understock determination. The notification can include an
instruction to de-emphasize the
item, remove the item from the menu, attempt to cross-sell another item, such
as by emphasizing a
comparable item, or other instruction and/or information to discourage the
sale of the item.
[0161] In various examples, the memory 1104 can include a payment
processing framework 1120. In
such examples, the payment processing framework 1120 can be configured to
receive payment information
from a service computing device, delivery application, and/or other remote
computing devices. The
payment processing framework 1120 can process the payment via a POS system
service provider, a bank
corresponding to the payment instrument, and/or another source. In some
examples, the payment
processing framework 1120 can be configured to receive payment instrument
information from the one or
more sensor(s) 1112, such as a payment instrument reader. In still yet other
examples, the payment
processing framework 1120 can be configured to access payment instrument
information for a particular
customer stored in the customer profiles 1126. In such an example, the base
station computing device 1100
can automatically process payment based on an indication of order completion.
[0162] Additional functional components may include an operating system
1122 for controlling and
managing various functions of the base station computing device 1100 and for
enabling basic user
interactions with the base station computing device 1100 and/or a customer
device. The memory 1104
may also store a data store 1124. The data store 1124 may be configured to
store a merchant profile 1126,
customer profiles 1128 and/or other information pertaining to the merchant and
associated customers.
[0163] In addition, the memory 1104 may also store data, data structures
and the like, that are used
by the functional components. Depending on the type of the base station
computing device 1100, the
memory 1104 may also optionally include other functional components and data,
which may include
programs, drivers, etc., and the data used or generated by the functional
components. Further, the base
station computing device 1100 may include many other logical, programmatic and
physical components,
of which those described are merely examples that are related to the
discussion herein.
[0164] The one or more communication interface(s) 1110 may include one
or more interfaces and
hardware components for facilitating communication with various other devices
over a network or directly.
For example, communication interface(s) 1110 may facilitate communication
through one or more of the
33

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi)
and wired networks, as well as
close-range communications such as Bluetooth0, Bluetooth0 low energy, and the
like, as additionally
enumerated elsewhere herein.
[0165] FIG. 11 further illustrates that the base station computing
device 1100 may include one or
more displays 1106 mentioned above. Depending on the type of computing device
used as the base station
computing device 1100, the one or more displays 1106 may employ any suitable
display technology. For
example, the one or more displays 1106 may be liquid crystal displays, plasma
displays, light emitting
diode displays, OLED (organic light-emitting diode) displays, electronic paper
displays, or any other
suitable type of displays able to present digital content thereon. However,
implementations described
herein are not limited to any particular display technology.
[0166] The I/O interfaces 1108, meanwhile, may include speakers, a
microphone, a camera, and
various user controls (e.g., buttons, a joystick, a keyboard, a keypad, etc.),
a haptic output device, and so
forth.
[0167] In various examples, the base station computing device 1100 can
include one or more
sensor(s) 1112. The one or more sensor(s) 1112 can include a camera, a laser
scanner, a RADAR, a
LIDAR, other proximity sensor, an accelerometer, a gyroscope, a compass, a
light sensor, a volume sensor,
or other sensor capable of capturing and/or analyzing environmental factors.
[0168] The location component 1114 may include a GPS device able to
indicate location information,
or the location component 1114 may comprise another other location-based
sensor. Additionally, the base
station computing device 1100 may include various other components that are
not shown, examples of
which include removable storage, a power control unit, and so forth.
[0169] Although the subject matter has been described in language
specific to structural features
and/or methodological acts, it is to be understood that the subject matter
defined in the appended claims is
not necessarily limited to the specific features or acts described. Rather,
the specific features and acts are
disclosed as example forms of implementing the claims.
EXAMPLE CLAUSES
[0170] A: A system comprising: one or more processors; and one or more
non-transitory computer-
readable media storing instructions executable by the one or more processors,
wherein the instructions
program the one or more processors to perform acts comprising: determining a
first location of a service
computing device, wherein the first location of the service computing device
is based at least in part on a
first distance from a base station computing device; determining that the
first location of the service
computing device is associated with a first area of a merchant location,
wherein the first area is associated
with a first functionality of the service computing device; generating a set
of icons for presentation on a
user interface of the service computing device, wherein the set of icons
corresponds to the first functionality
of the user interface; determining a second location of the service computing
device, wherein the second
location of the service computing device is based at least in part on a second
distance from the base station
34

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
computing device; determining that the second location of the service
computing device is associated with
a second area of the merchant location, wherein the second area is associated
with a second functionality
of the service computing device; and dynamically modifying the user interface
to display a second set of
icons based at least in part on the second functionality.
[0171] B: The system as paragraph A describes, the acts further comprising:
determining that the
service computing device is within a threshold distance of the base station
computing device; and
automatically uploading data to the base station computing device.
[0172] C: The system as paragraph A describes, the acts further
comprising: determining that the
service computing device is within a threshold distance of the base station
computing device; and
automatically downloading data from the base station computing device.
[0173] D: The system as any of paragraphs A-C describe, wherein:
determining that the first distance
is associated with the first area comprises analyzing a map of the merchant
location to determine that the
first distance is within the first area; and determining that the second
distance is associated with the second
area comprises analyzing the map of the merchant location to determine that
the second distance is within
the second area.
[0174] E: The system as any of paragraphs A-D describe, the acts further
comprising: determining
that the service computing device remains at the second location for a pre-
determined amount of time,
wherein the dynamically modifying the one or more icons of the set of icons is
based at least in part on
determining that the service computing device remains at the second location
for the pre-determined
amount of time.
[0175] F: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a system as any of
paragraphs A-E describe.
[0176] G: A method comprising: determining a first location of a service
computing device;
determining that the first location is associated with a first functionality
of the service computing device;
presenting a set of icons on a user interface of the service computing device
based at least in part on the
first functionality; determining a second location of the service computing
device; determining that the
second location is associated with a second functionality of the service
computing device; and dynamically
modifying the user interface to display a second set of icons based at least
in part on the second
functionality.
[0177] H: The method as paragraph G describes, further comprising:
receiving a beacon signal from
a base station computing device; and determining a signal strength of the
beacon signal, wherein
determining that the first location and the second location is based on the
signal strength of the beacon
signal.
[0178] I: The method as either of paragraphs G or H describe, further
comprising: analyzing a map of
a merchant location; identifying one or more areas on the map of the merchant
location; determining that
the first location is associated with a first area, wherein the first
functionality corresponds to the first area;

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
and determining that the second location is associated with a second area,
wherein the second functionality
corresponds to the second area.
[0179] J: The method as any of paragraphs G-I describe, further
comprising: determining that the
second location is within a threshold distance of a customer computing device;
accessing a customer profile
associated with the customer computing device; identifying one or more
customer preferences in the
customer profile; and identifying the second set of icons based at least in
part on the one or more customer
preferences.
[0180] K: The method as any of paragraphs G-J describe, receiving a
notification that a customer has
checked-in to a merchant location, wherein the notification includes a sub-
section of an area of the
merchant location in which the customer is located; determining that the
second location is proximate to
the sub-section of the area; accessing a customer profile associated with the
customer; identifying one or
more customer preferences in the customer profile; and identifying the second
set of icons based at least in
part on the one or more customer preferences.
[0181] L: The method as any of paragraphs G-K describe, further
comprising: determining that the
second location is associated with a meal order; accessing a history
associated with the meal order; and
determining, based on the history, that the meal order is complete; wherein
the second set of icons
comprises a bill for the meal order.
[0182] M: The method as any of paragraphs G-L describe, wherein the
first location and the second
location are determined based on data from a sensor of the service computing
device.
[0183] N: The method as any of paragraphs G-L describe, wherein the first
location and the second
location are determined based on a signal processed by a global positioning
system receiver on the service
computing device.
[0184] 0: The method as any of paragraphs G-N describe, further
comprising: receiving a notification
associated with the second functionality; based at least in part on
determining the second location of the
service computing device and identifying the second functionality
corresponding to the second location,
displaying the notification associated with the second functionality.
[0185] P: A system or device comprising: a processor; and a computer-
readable medium coupled to
the processor, the computer-readable medium including instructions to
configure the processor to perform
a computer-implemented method as any of paragraphs G-0 describe.
[0186] Q: A system or device comprising: a means for processing; and a
means for storing coupled to
the means for processing, the means for storing including storing instructions
to configure one or more
devices to perform a computer-implemented method as any of paragraphs G-0
describe.
[0187] R: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a method as any of
paragraphs G-0 describe.
[0188] S: A service computing device comprising: one or more processors;
and one or more non-
transitory computer-readable media storing instructions executable by the one
or more processors, wherein
36

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
the instructions program the one or more processors to perform acts
comprising: determining a first location
of a service computing device; determining that the first location is
associated with a first functionality of
the service computing device; presenting a set of icons on a user interface of
the service computing device
based at least in part on the first functionality; determining a second
location of the service computing
device; determining that the second location is associated with a second
functionality of the service
computing device; and dynamically modifying the user interface to display a
second set of icons based at
least in part on the second functionality.
[0189] T: The service computing device as paragraph S describes, further
comprising: a location
component comprising one or more of: a global positioning system (GPS)
receiver; a beacon sensor; a
camera system configured determine the location based on an image captured at
the location; a laser
scanner; a light detection and ranging system (LIDAR) sensor; or a radio
detection and ranging system
(RADAR) sensor, wherein the determining the first location and the second
location is based at least in
part on the location component.
[0190] U: The service computing device as either of paragraphs S or T
describe, wherein the first
functionality and the second functionality comprise at least one of: an
ordering processing system; a
payment processing system; a recipe display system; a kitchen management
system; a seating management
system; or an order preparation notification system.
[0191] V: The service computing device as any of paragraphs S-U
describe, the acts further
comprising: determining that the service computing device is within a
threshold distance of a base station
computing device; and automatically transferring data between the service
computing device and the base
station computing device.
[0192] W: The service computing device as any of paragraphs S-V
describe, the acts further
comprising: determining that the second location is within a threshold
distance of a customer computing
device; accessing a customer profile associated with the customer computing
device; identifying one or
more customer preferences in the customer profile; and identifying the second
set of icons based at least in
part on the one or more customer preferences.
[0193] X: The service computing device as any of paragraphs S-W
describe, the acts further
comprising prior to dynamically modifying the user interface, determining that
the service computing
device has been at the second location for a predetermined period of time.
[0194] Y: A point-of-sale (POS) computing device comprising: one or more
processors; and one or
more non-transitory computer-readable media storing instructions executable by
the one or more
processors, wherein the instructions program the one or more processors to
perform acts comprising:
identifying a plurality of selectable icons capable of display on a user
interface of the POS computing
device, the POS computing device being associated with a merchant and the
selectable icons representing
.. items for purchase; determining a first context associated with the POS
computing device, wherein the first
context comprises one or more first contextual factors corresponding to a use
of the POS computing device
37

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
and item transaction history associated with the merchant; presenting a set of
selectable icons on the user
interface of the POS computing device based at least in part on the first
context and the item transaction
history of the merchant; determining a second context associated with the POS
computing device, wherein
the second context comprises one or more second contextual factors
corresponding to a change in use of
the POS computing device; and dynamically modifying the set of icons based on
the determined second
context.
[0195] Z: The POS computing device as paragraph Y describes, the acts
further comprising: receiving
a plurality of signals from a plurality of beacons; determining that a first
signal from a first beacon of the
plurality of beacons is stronger than other signals from the plurality of
beacons; identifying a customer
associated with the first signal; accessing customer information associated
with the customer; and
identifying the set of icons or a modification to the set of icons based at
least in part on the customer
information.
[0196] AA: The POS computing device as either of paragraphs Y or Z
describe, determining the POS
computing device is located within a threshold distance of a base station
computing device; and
automatically transferring data from the POS computing device to the base
station computing device based
at least in part on a location of the POS computing device being within a
threshold distance of the base
station computing device.
[0197] AB: The POS computing device as any of paragraphs Y-AA describe,
wherein dynamically
modifying the set of icons comprises modifying at least one of: an order of
the set of icons; a size of an
icon of the set of icons; a shape of the icon of the set of icons; an image
associated with the icon of the set
of icons; or a text associated with the icon of the set of icons.
[0198] AC: The POS computing device as any of paragraphs Y-AB describe,
the acts further
comprising determining that the one or more second contextual factors remain
unchanged for a pre-
determined period of time, wherein dynamically modifying the set of icons is
further based on a
determination that the one or more second contextual factors have remained
unchanged for the pre-
determined period of time
[0199] AD: A method comprising: presenting a plurality of icons on a
user interface of a service
computing device, the plurality of icons representing items for purchase from
a merchant; analyzing
contextual data of the service computing device, wherein the contextual data
comprises one or more
contextual factors corresponding to a use of the service computing device and
a transaction history of the
merchant; and dynamically modifying one or more icons of the plurality of
icons on the user interface
based at least in part on the contextual data, wherein a modification to the
one or more icons comprises at
least adjusting the visual appearance of an icon to highlight or understate an
item corresponding to the icon,
or replacing the icon with a second icon.
[0200] AE: The method as paragraph AD describes, wherein the one or more
contextual factors
includes a location of the service computing device, the method further
comprising: receiving a first signal
38

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
from a first beacon; receiving a second signal from a second beacon;
determining that the first signal from
the first beacon is stronger than the second signal from the second beacon;
and determining the location of
the service computing device based at least in part on the first signal,
wherein dynamically modifying the
one or more icons is based at least in part on the location.
[0201] AF: The method as paragraph AE describes, further comprising:
accessing a transaction
history of the merchant; and identifying a first transaction of the
transaction history corresponding to the
location, wherein dynamically modifying the one or more icons is further based
at least in part on the first
transaction.
[0202] AG: The method as any of paragraphs AD-AF describe, receiving a
signal from a customer
computing device associated with a customer profile; determining that the
service computing device is
within a threshold distance of the customer computing device based at least in
part on the signal; identifying
the customer profile based at least in part on the signal; and determining one
or more preferences associated
with the customer profile, wherein dynamically modifying the one or more icons
is based at least in part
on the one or more preferences associated with the customer profile.
[0203] AH: The method as paragraph AG describes, wherein the signal from
the customer computing
device comprises a check-in of the customer at an area associated with a
merchant location.
[0204] Al: The method as any of paragraphs AD-AH describe, wherein the
one or more contextual
factors includes a time component, the method further comprising: determining
a tie of day; identifying at
least one item associated with the time of day; and identifying at least one
icon corresponding to the at
least one item, wherein dynamically modifying the one or more icons comprises
presenting the at least one
icon.
[0205] AJ: The method as any of paragraphs AD-AI describe, wherein the
one or more contextual
factors includes an inventory of the merchant, the method further comprising:
determining that an item
quantity of the inventory is greater than a threshold overstock number,
wherein dynamically modifying the
one or more icons comprises: identifying an icon corresponding to the item;
presenting the icon on the user
interface, wherein a size of the icon is larger than a size of other icons;
and presenting a notification of a
discount on the item.
[0206] AK: The method as any of paragraphs AD-AI describe, wherein the
one or more contextual
factors includes an inventory of the merchant, the method further comprising:
determining that an item
quantity of the inventory is less than a threshold understock number, wherein
dynamically modifying the
one or more icons comprises at least one of: removing an icon corresponding to
the item from the user
interface; or presenting a notification that the item is not available or has
limited availability.
[0207] AL: The method as any of paragraphs AD-AK describe, wherein the
modification to the one
or more icons further comprises modifying at least one of: an order of the
plurality of icons; a size of an
icon of the plurality of icons; a shape of the icon of the plurality of icons;
an image associated with the
icon of the plurality of icons; or a text associated with the icon of the
plurality of icons.
39

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0208] AM: A system or device comprising: a processor; and a computer-
readable medium coupled
to the processor, the computer-readable medium including instructions to
configure the processor to
perform a computer-implemented method as any of paragraphs AD-AL describe.
[0209] AN: A system or device comprising: a means for processing; and a
means for storing coupled
to the means for processing, the means for storing including storing
instructions to configure one or more
devices to perform a computer-implemented method as any of paragraphs AD-AL
describe.
[0210] AO: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a method as any of
paragraphs AD-AL describe.
[0211] AP: A system comprising: one or more processors; and one or more
non-transitory computer-
readable media storing instructions executable by the one or more processors,
wherein the instruction
program the one or more processors to perform acts comprising: presenting a
plurality of icons on a user
interface of a service computing device; analyzing contextual data, wherein
the contextual data comprises
one or more contextual factors corresponding to a use of the service computing
device and a transaction
history of a merchant; and dynamically modifying one or more icons of the
plurality of icons on the user
interface based at least in part on the contextual data, wherein a
modification to the one or more icons
comprises at least replacing a first icon of the plurality of icons with a
second icon of a second plurality of
icons.
[0212] AQ: The system as paragraph AP describes, the acts further
comprising: determining a location
of the service computing device based at least in part on input from a
location component; accessing the
transaction history of the merchant; and identifying a particular transaction
history associated with the
location, wherein dynamically modifying the one or more icons of the plurality
of icons is based at least in
part on the particular transaction history.
[0213] AR: The system as paragraph AQ describes, wherein the location
component comprises at
least one of: a global positioning system (GPS) receiver; a camera system
configured determine the location
based on an image captured at the location; a beacon sensor; a light detection
and ranging system (LIDAR)
sensor; or a radio detection and ranging system (RADAR) sensor.
[0214] AS: The system as any of paragraphs AP-AR describe, the acts
further comprising: identifying
a customer located at a merchant location; determining that the service
computing device is within a
threshold distance of the customer; and identifying one or more customer
preferences associated with the
customer, wherein dynamically modifying the one or more icons of the plurality
of icons is based at least
in part on the one or more customer preferences.
[0215] AT: The system as any of paragraphs AP-AS describe, the
modification further comprises
modifying at least one of: an order of the plurality of icons; a size of an
icon of the plurality of icons; a
shape of the icon of the plurality of icons; an image associated with the icon
of the plurality of icons; or a
text associated with the icon of the plurality of icons.

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0216] AU: The system as any of paragraphs AP-AT describe, wherein the
one or more contextual
factors includes at least one of: a location of the POS device; a merchant
preference; a customer preference;
a time component; a merchant inventory; or a discount for an item offered by
the merchant.
[0217] AV: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a system as any of
paragraphs AP-AU describe.
[0218] AW: A point-of-sale (POS) computing device comprising: one or
more processors; and one or
more non-transitory computer-readable media storing instructions executable by
the one or more
processors, wherein the instructions program the one or more processors to
perform acts comprising:
identifying a plurality of icons capable of display on a user interface of the
POS computing device
associated with a merchant; determining a context associated with the POS
computing device, wherein the
context comprises one or more contextual factors corresponding to a use of the
POS computing device;
presenting, on the user interface, a set of icons based at least in part on
the context; analyzing an inventory
associated with the merchant; determining that a quantity of a first item in
the inventory traverses a
threshold quantity; and based at least in part on determining the quantity of
the first item in the inventory
traverses the threshold quantity, dynamically modifying a size, placement, or
a shape of a first icon of the
set of icons corresponding to the first item.
[0219] AX: The POS computing device as paragraph AW describes, wherein
the threshold quantity
comprises a first threshold quantity, and the acts further comprising:
receiving an order for one or more
items; updating a data structure corresponding to the inventory associated
with the merchant based on the
order for the one or more items; determining that a quantity of a second item
of the one or more items in
the inventory is below a second threshold quantity; and automatically removing
a second icon associated
with the second item from the user interface based at least in part on the
quantity of the second item being
below the second threshold quantity.
[0220] AY: The POS computing device as either of paragraphs AW or AX
describe, wherein the
threshold quantity comprises a first threshold quantity, and the acts further
comprising: receiving an order
for one or more items; updating a data structure corresponding to the
inventory associated with the
merchant based on the order for the one or more items; determining that a
quantity of a second item of the
one or more items in the inventory is below a second threshold quantity;
identifying a third item that has
been designated in the data structure corresponding to the inventory as
substantially similar to the second
item; removing a second icon associated with the second item from the user
interface; and presenting a
third icon associated with the third item on the user interface.
[0221] AZ: The POS computing device as any of paragraphs AW-AY describe,
the acts further
comprising, based at least in part on determining the quantity of the first
item in the inventory traverses the
threshold quantity, dynamically modifying at least one of: an image of the
first icon; a placement of the
first icon on the user interface; or text associated with the first icon.
41

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0222] BA: The POS computing device as any of paragraphs AW-AZ describe,
the acts further
comprising: presenting a notification on the user interface indicating a
discount on the first item associated
with the first icon based on the quantity of the first item exceeding a
threshold quantity.
[0223] BB: A method comprising: determining a context associated with a
point-of-sale (POS) device,
wherein the context comprises one or more contextual factors corresponding to
a use of the POS device;
presenting a set of icons on a user interface of the POS device in based at
least in part on the context;
analyzing an inventory associated with the merchant; and based at least in
part on an analysis of the
inventory, dynamically modifying at least one icon of the set of icons.
[0224] BC: The method as paragraph BB describes, further comprising:
receiving an order for one or
more items; updating a data structure corresponding to the inventory
associated with the merchant based
at least in part on the order for the one or more items; and determining a
quantity of a particular item of the
one or more items is below a threshold quantity, wherein dynamically modifying
the at least one icon of
the set of icons comprises removing an icon associated with the particular
item from the user interface.
[0225] BD: The method as paragraph BC describes, sending a notification
to a base station computing
device that the quantity of the particular item is below the threshold
quantity; and causing the base station
computing device to order the particular item from an item supplier.
[0226] BE: The method as any of paragraphs BB-BD describe, further
comprising: receiving an order
for a first item; determining a second item is associated with the first item;
and determining the second
item is available in the inventory, wherein dynamically modifying the at least
one icon of the set of icons
comprises adjusting a size or a placement of an icon corresponding to the
second item on the user interface.
[0227] BF: The method as any of paragraphs BB-BE describe, wherein the
one or more contextual
factors includes at least one of: a location of the POS device; a merchant
preference; a customer preference;
a time component; or a discount for an item offered by the merchant.
[0228] BG: The method as any of paragraphs BB-BF describe, wherein:
analyzing the inventory
comprises determining a quantity of an item exceeds a threshold overstock
quantity; and dynamically
modifying the at least one icon of the set of icons comprises adjusting a size
and a placement of an icon
corresponding to the item.
[0229] BH: The method as paragraph BG describes, further comprising:
presenting a notification on
the user interface indicating a discount on the item associated with the icon.
[0230] BI: The method as any of paragraphs BB-BH describe, further
comprising receiving inventory
information for analysis from at least one of: a base station computing
device; a POS system service
provider; or a kitchen computing device.
[0231] BJ: The method as any of paragraphs BB-BI describe, wherein
dynamically modifying the at
least one icon of the set of icons comprises modifying at least one of: a size
of an icon; a shape of the icon;
an image of the icon; a placement of the icon on the user interface; or text
associated with the icon.
42

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0232] BK: A system or device comprising: a processor; and a computer-
readable medium coupled
to the processor, the computer-readable medium including instructions to
configure the processor to
perform a computer-implemented method as any of paragraphs BB-BJ describe.
[0233] BL: A system or device comprising: a means for processing; and a
means for storing coupled
to the means for processing, the means for storing including storing
instructions to configure one or more
devices to perform a computer-implemented method as any of paragraphs BB-BJ
describe.
[0234] BM: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a method as any of
paragraphs BB-BJ describe.
[0235] BN: A system comprising: one or more processors; and one or more
non-transitry computer-
readable media storing instructions executable by the one or more processors,
wherein the instruction
program the one or more processors to perform acts comprising: determining a
context associated with a
point-of-sale (POS) device, wherein the context comprises one or more
contextual factors corresponding
to a use of the POS device; presenting a set of icons on a user interface of
the POS device based at least in
part on the context; analyzing an inventory associated with the merchant; and
based at least in part on an
analysis of the inventory, dynamically modifying at least one icon of the set
of icons.
[0236] BO: The system as paragraph BN describes, the acts further
comprising: receiving an order for
an item; updating a data structure corresponding to the inventory associated
with the merchant based on
the order for the item; determining a quantity of the item in the inventory is
below a threshold quantity;
and automatically removing an icon associated with the item from the user
interface based at least in part
on the quantity of the item being below the threshold quantity.
[0237] BP: The system as either of paragraphs BN or BO describe, wherein
analyzing the inventory
associated with the merchant comprises: determining a quantity of an item is
greater than a threshold
overstock quantity; or determining the quantity of the item is less than a
threshold understock quantity.
[0238] BQ: The system as any of paragraphs BN-BP describe, the acts
further comprising: receiving
an order for a first item; accessing a transaction history of the merchant;
identifying, based at least in part
on the transaction history of the merchant, a second item that is commonly
paired with the first item; and
determining that the second item is available in the inventory, wherein
dynamically modifying the at least
one icon of the set of icons comprises adjusting a size or a placement of an
icon corresponding to the second
item on the user interface.
[0239] BR: The system as any of paragraphs BN-BQ describe, the acts further
comprising:
determining the POS device is within a threshold distance of a customer;
accessing a transaction history
associated with the customer; identifying a first item commonly purchased by
the customer; and identifying
a second item that is substantially similar to the first item, wherein
analyzing the inventory comprises
determining a quantity of the second item in the inventory exceeds a quantity
of the first item in the
inventory, and wherein dynamically modifying the at least one icon of the set
icons comprises adjusting a
size and placement of an icon corresponding to the second item to encourage a
sale of the second item.
43

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0240] BS: The system as any of paragraphs BN-BR describe, wherein
dynamically modifying the at
least one icon of the set of icons comprises modifying at least one of: a size
of an icon; a shape of the icon;
an image associated with the icon; a placement of the icon on the user
interface; or text associated with the
icon.
[0241] BT: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a system as any of
paragraphs BN-BS describe.
[0242] BU: A system comprising: one or more processors; and one or more
non-transitory computer-
readable media storing instructions executable by the one or more processors,
wherein the instructions
program the one or more processors to perform acts comprising: receiving, by a
computing device
associated with a merchant, a first order of a plurality of orders from a
first delivery application of a
plurality of delivery applications, the first order comprising a first set of
menu items and first payment
information; receiving, by the computing device associated with the merchant,
a second order of the
plurality of orders from a second delivery application of the plurality of
delivery applications, the second
order comprising a second set of menu items and second payment information;
determining a first time
associated with the first order and a second time associated with the second
order, wherein the first time
and the second time are respectively based at least in part on a first
preparation time associated with the
first set of menu items and a second preparation time associated with the
second set of menu items; sending
a first notification to the first delivery application and a second
notification to the second delivery
application, the first notification comprising a first estimated time for a
delivery pick-up corresponding to
the first order and the second notification comprising a second estimated time
for a delivery pick-up
corresponding to the second order, wherein the first estimated time is based
at least in part on the first time
and second estimated time is based at least in part on the second time;
generating a sequenced list of orders
based at least in part on the first time and the second time; sending the
sequenced list of orders to a kitchen
display system; receiving, from the kitchen display system, a first
notification of completion of the first
order; processing payment for the first order based at least in part on the
first notification of completion
and the first payment information; receiving, from the kitchen computing
system, a second notification of
completion of the second order; and processing payment for the second order
based at least in part on the
second notification of completion and the second payment information.
[0243] BV: The system as paragraph BU describes, the acts further
comprising: receiving, from the
kitchen display system, an indication that a quantity of a particular menu
item has been decreased below a
threshold quantity; and responsive to receiving the indication, automatically
sending, to the plurality of
delivery applications, a notification that the particular menu item is not
available.
[0244] BW: The system as paragraph BU describes, receiving, from the
kitchen display system, an
indication that a quantity of a particular menu item has decreased below a
threshold quantity; and
responsive to receiving the indication, automatically sending, to a supplier
of menu items, an order for the
particular menu item.
44

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0245] BX: The system as any of paragraphs BU-BW describe, the acts
further comprising: receiving,
from the kitchen display system, an indication that a prep time associated
with the first order exceeds the
first time; determining an updated first estimated time for the delivery pick-
up; and sending, to the first
delivery application, a notification of the updated first estimated time.
[0246] BY: The system as any of paragraphs BU-BX describe, the acts further
comprising: receiving,
from the kitchen display system, an indication that a quantity of employees in
the kitchen is below a pre-
determined threshold quantity; and sending, to a mobile device of a manager
associated with the merchant,
a notification that the kitchen is understaffed.
[0247] BZ: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a system as any of
paragraphs BU-BY describe.
[0248] CA: A method comprising: receiving a plurality of orders for
items offered by a merchant from
a plurality of delivery applications independent of the merchant; determining
a time associated with each
order of the plurality of orders; sending each order of the plurality of
orders to a kitchen display system;
receiving, from the kitchen display system, a notification of completion of an
order; and based at least in
part on the notification, processing a payment for the order.
[0249] CB: The method as paragraph CA describes, further comprising:
determining one or more
items associated with each order of the plurality of orders; determining a
time associated with each item of
the one or more items; and generating a sequenced list of the items associated
with the plurality of orders
based at least in part on respective times associated with respective items of
the one or more items, wherein
the sending each order of the plurality of orders to the computing system
associated with the kitchen
comprises sending the sequenced list of the items.
[0250] CC: The method as either of paragraphs CA or CB describe, further
comprising: determining
one or more items associated with each order of the plurality of orders;
updating a data structure
corresponding to an inventory of the merchant based at least in part on the
one or more items; determining
a quantity of an item of the inventory is below a threshold minimum quantity;
and sending a notification
to the plurality of delivery applications that the item is no longer
available.
[0251] CD: The method as any of paragraphs CA-CC describe, further
comprising: determining one
or more items associated with each order of the plurality of orders; updating
a data structure associated
with an inventory of the merchant based at least in part on the one or more
items; determining a quantity
of an item of the inventory is below a threshold minimum quantity; and
sending, to an item supplier, an
order for the item.
[0252] CE: The method as any of paragraphs CA-CD describe, further
comprising: determining an
upcoming shift change in the kitchen, wherein the upcoming shift change
comprises an increased quantity
of employees working in the kitchen; and modifying the time associated with
each order based at least in
part on the upcoming shift change.

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
[0253] CF: The method as any of paragraphs CA-CE describe, further
comprising: identifying a
customer associated with the order; and determining payment instrument
information associated with the
customer, wherein the payment instrument information is stored in a customer
profile associated with the
customer, wherein processing the payment for the order comprises processing
the payment instrument
information stored in the customer profile.
[0254] CG: The method as any of paragraphs CA-CF describe, further
comprising: receiving, from
the kitchen display system, an indication of delay of one or more of the
plurality of orders; determining an
updated time associated with the one or more orders; and sending, to
respective delivery applications of
the one or more orders, a notification of the updated time.
[0255] CH: The method as any of paragraphs CA-CG describe, further
comprising: receiving one or
more orders from a service computing device; determining a time associated
with each order of the one or
more orders; generating a sequenced list of the plurality of orders from the
plurality of delivery applications
and the one or more orders from the service computing device; and sending the
sequenced list to the kitchen
display system.
[0256] CI: The method as any of paragraphs CA-CH describe, wherein the time
associated with each
order is based on one or more of: a preparation for each order; a cooking time
for each order; weather; a
quantity of employees working in the kitchen; traffic; or courier
availability.
[0257] CJ: A system or device comprising: a processor; and a computer-
readable medium coupled to
the processor, the computer-readable medium including instructions to
configure the processor to perform
a computer-implemented method as any of paragraphs CA-CI describe.
[0258] CK: A system or device comprising: a means for processing; and a
means for storing coupled
to the means for processing, the means for storing including storing
instructions to configure one or more
devices to perform a computer-implemented method as any of paragraphs CA-CI
describe.
[0259] CL: A computer-readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a method as any of
paragraphs CA-CI describe.
[0260] CM: A computing device comprising: one or more processors; and
one or more non-transitory
computer-readable media storing instructions executable by the one or more
processors, wherein the
instructions program the one or more processors to perform acts comprising:
receiving a plurality of orders
for items offered by a merchant from a plurality of delivery applications
independent of the merchant;
determining a preparation time associated with each order of the plurality of
orders; sequencing each order
of the plurality of orders based on the determined preparation time; sending
each order of the plurality of
orders to a kitchen display system; receiving, from the kitchen display
system, a notification of completion
of an order; and based at least in part on the notification, processing a
payment for the order.
[0261] CN: The computing device as paragraph CM describes, the acts
further comprising:
determining one or more items associated with each order of the plurality of
orders; updating a data
structure corresponding to an inventory of the merchant based at least in part
on the one or more items;
46

CA 03038958 2019-03-29
WO 2018/063474
PCT/US2017/042537
determining a quantity of an item of the inventory is below a threshold
minimum quantity; and sending, to
an item supplier, an order for the item or sending, to the plurality of
delivery applications, a notification
that the item is no longer available.
[0262] CO: The computing device as either of paragraphs CM or CN
describe, the acts further
comprising: receiving, from the kitchen display system, an indication of delay
of one or more of the
plurality of orders; determining an updated time associated with each order of
the one or more orders; and
sending, to respective delivery applications, a notification of the respective
updated time.
[0263] CP: The computing device as any of paragraphs CM-CO describe, the
acts further comprising:
receiving, from the kitchen display system, an indication that a quantity of
employees in the kitchen is
below a pre-determined threshold quantity; and sending, to a mobile device of
a manager associated with
the merchant, a notification that the kitchen is understaffed.
[0264] CQ: The computing device as any of paragraphs CM-CP describe, the
acts further comprising:
identifying a customer associated with the order; and determining payment
instrument information
associated with the customer, wherein the payment instrument information is
stored in a customer profile
associated with the customer, wherein processing the payment for the order
comprises processing the
payment instrument information stored in the customer profile.
[0265] CR: The computing device as any of paragraphs CM-CO describe,
wherein the time associated
with each order is based on one or more of: a preparation for each order; a
cooking time for each order;
weather; a quantity of employees working in the kitchen; traffic; or courier
availability.
[0266] CS: A computer readable medium having thereon computer-executable
instructions that,
responsive to execution, configure a computer to perform a system as any of
paragraphs CM-CR describe.
47

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(86) PCT Filing Date 2017-07-18
(87) PCT Publication Date 2018-04-05
(85) National Entry 2019-03-29
Examination Requested 2019-03-29

Abandonment History

There is no abandonment history.

Maintenance Fee

Last Payment of $210.51 was received on 2023-05-24


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if small entity fee 2024-07-18 $100.00
Next Payment if standard fee 2024-07-18 $277.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Request for Examination $800.00 2019-03-29
Application Fee $400.00 2019-03-29
Maintenance Fee - Application - New Act 2 2019-07-18 $100.00 2019-07-15
Maintenance Fee - Application - New Act 3 2020-07-20 $100.00 2020-06-22
Maintenance Fee - Application - New Act 4 2021-07-19 $100.00 2021-06-22
Registration of a document - section 124 2022-01-17 $100.00 2022-01-17
Maintenance Fee - Application - New Act 5 2022-07-18 $203.59 2022-06-22
Maintenance Fee - Application - New Act 6 2023-07-18 $210.51 2023-05-24
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
BLOCK, INC.
Past Owners on Record
SQUARE, INC.
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Examiner Requisition 2020-04-24 6 332
Amendment 2020-08-26 60 2,267
Description 2020-08-26 47 3,386
Claims 2020-08-26 52 2,043
Examiner Requisition 2021-03-31 3 174
Amendment 2021-07-15 32 946
Change to the Method of Correspondence 2021-07-15 3 84
Claims 2021-07-15 26 811
Examiner Requisition 2022-01-11 5 316
Amendment 2022-05-10 33 1,020
Claims 2022-05-10 26 816
Examiner Requisition 2023-03-22 7 484
Abstract 2019-03-29 2 95
Claims 2019-03-29 5 165
Drawings 2019-03-29 11 514
Description 2019-03-29 47 3,291
Representative Drawing 2019-03-29 1 66
International Search Report 2019-03-29 2 57
National Entry Request 2019-03-29 6 210
Voluntary Amendment 2019-03-29 20 527
Cover Page 2019-04-11 2 70
Claims 2019-03-29 18 492
Amendment 2023-07-12 23 730
Claims 2023-07-12 15 684