JP2022110048A - Application programming interfaces for structuring distributed systems - Google Patents

Application programming interfaces for structuring distributed systems Download PDF

Info

Publication number
JP2022110048A
JP2022110048A JP2022077137A JP2022077137A JP2022110048A JP 2022110048 A JP2022110048 A JP 2022110048A JP 2022077137 A JP2022077137 A JP 2022077137A JP 2022077137 A JP2022077137 A JP 2022077137A JP 2022110048 A JP2022110048 A JP 2022110048A
Authority
JP
Japan
Prior art keywords
delivery
service
merchant
item
customer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022077137A
Other languages
Japanese (ja)
Other versions
JP7470735B2 (en
Inventor
ブルース ベル,
Bell Bruce
ケヴィン イエン,
Yien Kevin
カール ウェスターマン,
Westman Karl
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Block Inc
Original Assignee
Block Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/858,164 external-priority patent/US11164172B2/en
Priority claimed from US15/858,000 external-priority patent/US20190205834A1/en
Priority claimed from US15/858,100 external-priority patent/US11010739B2/en
Application filed by Block Inc filed Critical Block Inc
Publication of JP2022110048A publication Critical patent/JP2022110048A/en
Application granted granted Critical
Publication of JP7470735B2 publication Critical patent/JP7470735B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/12Hotels or restaurants
    • G06Q50/40

Abstract

PROBLEM TO BE SOLVED: To provide a system which allows entities to utilize delivery services provided by a service provider.
SOLUTION: In an architecture 100, a service provider exposes delivery services to a computing device associated with a merchant, buyer, and/or other parties using one or more Applicant Programming Interfaces (APIs) provided by the service provider. The one or more APIs enable merchants and/or other parties to automatically integrate the delivery services into technologies used by the merchants and/or other parties in order to facilitate delivery of items that are offered for acquisition by the merchants.
SELECTED DRAWING: Figure 1
COPYRIGHT: (C)2022,JPO&INPIT

Description

優先権
本出願は、米国特許出願番号15/858,164、15/858,000および15/858,100に対する優先権を主張し、それら全ては2017年12月29日に出願されたものであり、それらの全てはその全体が参照により本明細書に組み込まれる。
PRIORITY This application claims priority to U.S. Patent Application Nos. 15/858,164, 15/858,000 and 15/858,100, all of which were filed Dec. , all of which are incorporated herein by reference in their entirety.

買い手はしばしば、ウェブサイトおよび他の技術を使用して、買い手への配送のために商人からアイテムを購入する。場合によっては、配送システムまたはサービスが、商人によって提供される商品(グッズ)およびサービスの配送を容易にすることができる。例えば、配送サービスは、配送のために利用可能な複数の商人からのアイテム(品目、商品)を識別するオンラインサイトを提供することができる。買い手は、オンラインサイトに移動し、商人からアイテムを選択し、配送のための住所を指定し、買い手の住所への配送のためにアイテムを購入することができる。配送サービスは、買い手(購入者)へのアイテムの配送を達成するために様々な技術を利用することができる。特に、配送サービスは、アイテムを配送するために、商人に関連付けられた電子デバイスおよび/または顧客に関連付けられた電子デバイスと通信することができる。また、顧客は例えば、アイテムを購入するための予約を行うか、さもなければ、自分の時間またはサービスを予約するために、商人と対話するための技術を使用する。同様に、予約サービスは、特定のサービスに対する商人の位置の予約を容易にすることができる。しかし、商人がこれらの配送、予約、および他の第三者サービスのいくつかに関連付けられている場合、商人は異なる接続されていないソースからの情報注入を手動で制御および調整しなければならず、最終的には、第三者サービスによって約束される動作の単純さが役に立たなくなる。さらに、商人のインタフェースと第三者サービスとの関連付けは、商人が自身のビジネスを実行するために採用する他の技術を混乱させる可能性がある。 Buyers often use websites and other technologies to purchase items from merchants for delivery to the buyer. In some cases, a distribution system or service can facilitate the distribution of goods (goods) and services offered by merchants. For example, a shipping service may provide an online site that identifies items from multiple merchants that are available for shipping. A buyer can navigate to an online site, select an item from a merchant, specify an address for delivery, and purchase the item for delivery to the buyer's address. A delivery service may utilize a variety of techniques to accomplish delivery of an item to a buyer (purchaser). In particular, the shipping service may communicate with electronic devices associated with merchants and/or electronic devices associated with customers to deliver items. Customers also use techniques to interact with merchants, for example, to make appointments to purchase items or otherwise book their time or services. Similarly, a reservation service can facilitate the reservation of a merchant's location for a particular service. However, when merchants are associated with some of these delivery, booking, and other third-party services, they must manually control and coordinate information injection from different unconnected sources. , ultimately defeating the simplicity of operation promised by third-party services. Further, the association of merchant interfaces with third party services can disrupt other technologies that merchants employ to conduct their businesses.

詳細な説明は、添付の図面を参照して記載され、その中において、参照番号の左端の数字は、参照番号が最初に現れる図面を識別する同じまたは異なる図面における同じ参照番号の使用は、類似または同一のアイテムまたは特徴を示す。 The detailed description is described with reference to the accompanying drawings, in which the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears. Use of the same reference number in the same or different drawings indicates similarity. or refer to the same item or feature.

図1は、本明細書で説明する技術を実施することができる例示的なアーキテクチャを示す。FIG. 1 shows an exemplary architecture in which the techniques described herein can be implemented.

図2は、複数のサービスおよび商人ポータルとの通信およびそれらの間の通信を容易にするサービスプロバイダの例示的な詳細を示す。FIG. 2 shows exemplary details of a service provider that facilitates communication with and between multiple services and merchant portals.

図3は、サービスプロバイダを介して複数の異なる分散サービスからデータを受信する商人デバイスの例示的な詳細を示す。FIG. 3 shows exemplary details of a merchant device receiving data from multiple different distributed services via service providers.

図4は、一部の実装において、ウェブまたはネイティブの第三者サービスをホストまたはアクセスする、ユーザまたは消費者デバイスの例の詳細を示す。FIG. 4 details an example user or consumer device that, in some implementations, hosts or accesses a web or native third party service.

図5は、サービスプロバイダによって提供される配送サービスをエンティティが使用することを可能にするために、1つ以上のAPIを公開するための例示的な処理を示す。FIG. 5 illustrates an exemplary process for exposing one or more APIs to enable an entity to use delivery services provided by a service provider.

図6は、サービスプロバイダによって提供される配送サービスを使用するために、1つ以上のAPIを介してサービスプロバイダと通信するための例示的な処理を示す。FIG. 6 illustrates an exemplary process for communicating with a service provider via one or more APIs to use shipping services provided by the service provider.

図7は、アイテムの配送に関する第三者サービスに通知するための例示的な処理を示す。FIG. 7 shows an exemplary process for notifying a third party service regarding delivery of an item.

図8は、注文に関するステータス更新を提供するために、サービスプロバイダによって公開される1つ以上のAPIを介して通信する例示的な処理を示す。FIG. 8 illustrates an exemplary process of communicating via one or more APIs exposed by service providers to provide status updates regarding orders.

図9は、第三者サービスにわたってメニューアイテムを調和させる処理、およびコンテキストデータに基づいてユーザインタフェースのアイコンを動的に修正する処理、および異なるサービスにわたってメニューアイテムを調和させる処理を示す例示的なデータフロー図を示す。FIG. 9 is exemplary data illustrating the process of harmonizing menu items across third-party services, dynamically modifying user interface icons based on contextual data, and harmonizing menu items across different services. A flow diagram is shown.

図10は、予約を調和させ、複数の第三者サービスから発信される未了予約または重複予約を割り当てる処理を示す例示的なデータフロー図を示す。FIG. 10 illustrates an exemplary dataflow diagram illustrating the process of reconciling reservations and allocating open or duplicate reservations originating from multiple third party services.

本明細書で説明される技術は、エンティティがエンティティのソースコードに対する複雑なコーディングまたは修正なしに異なるサービスと通信することができるように、エンティティがサービスプロバイダを介して、配送サービスのためのアプリケーション、予約サービスのためのアプリケーション、第三者サービスのためのアプリケーションなど、異なる第三者サービスを構成することを可能にするシステムおよび環境を提供する。いくつかの例では、サービスプロバイダが、サービスプロバイダによって提供される1つ以上のアプリケーションプログラミングインタフェース(API)を使用して、商人、買い手、および/または他の者に関連付けられたコンピューティングデバイスにコンセンサスサービスを公開する。また、サービスプロバイダは、APIを使用して第三者アプリケーションのユーザ、消費者、または開発者に関連付けられたコンピューティングデバイスにコンセンサスサービスを公開する。いくつかの例では、サービスプロバイダは、商人、買い手、および/または他の者から遠隔的に、および/または独立して動作する第三者であってもよい。1つ以上のAPIは、商人および/または他者が、商人および/または他者によって使用される技術にコンセンサスサービスを自動的に統合することを可能にして、商人による取得のために提供されるアイテムの配送、インダイニング(食事)またはピックアップの両方のためのレストランの予約、メニューの生成など、いくつかのタスクを容易にすることができる。例えば、コンセンサスサービスへの1つ以上のAPIは、エンティティが、複数の配送サービスによるアイテムの配送に関する情報(例えば、配送人コスト、推定配送時間など)に自動的にアクセスし、配送サービスによるアイテムの配送を容易にし、アイテムの準備を注文すること、キッチンからの配送および準備をスケジュールすること、予約をスケジュールすること、および第三者サービスとの間で行き来するコンテンツを管理することなど、コンセンサスサービスを介してサービスプロバイダによって提供される様々な他の機能を使用することを可能にすることができる。 The technology described herein enables an entity, through a service provider, to communicate with different services, such as applications for delivery services, so that the entity can communicate with different services without complex coding or modifications to the entity's source code. Provide a system and environment that allows different third party services to be configured, such as an application for booking services and an application for third party services. In some examples, a service provider uses one or more application programming interfaces (APIs) provided by the service provider to provide consensus to computing devices associated with merchants, buyers, and/or others. Publish your service. Service providers also use APIs to expose consensus services to computing devices associated with users, consumers, or developers of third party applications. In some examples, a service provider may be a third party operating remotely and/or independently from merchants, buyers, and/or others. One or more APIs are provided for acquisition by merchants, enabling merchants and/or others to automatically integrate consensus services into the technology used by merchants and/or others It can facilitate several tasks such as item delivery, restaurant reservations for both in-dining or pickup, and menu generation. For example, one or more APIs to the Consensus Service may allow an entity to automatically access information (e.g., carrier costs, estimated delivery times, etc.) regarding delivery of items by multiple delivery services, Consensus services such as facilitating delivery and ordering the preparation of items, scheduling delivery and preparation from the kitchen, scheduling appointments, and managing content to and from third party services may be enabled to use various other features provided by the service provider via.

最初に、配送サービスまたは第三者サービスを参照して、実装について説明する。多くの例では、サービスプロバイダが買い手および他者にアイテムを配送するために第三者サービスデバイスのネットワークを動作させることができる。第三者サービスデバイスの各々は、全地球測位システム(GPS)受信機または他の位置センサを実装して、位置情報をサービスプロバイダに提供することができる。サービスプロバイダは、第三者サービスデバイスの位置を追跡して、配送のための第三者サービスデバイスを選択し、アイテムの配送に関する更新を送信し、または他の方法で第三者サービスによるアイテムの配送を容易にすることができる。加えて、または代替として、サービスプロバイダは、複数の商人デバイスと協働して動作することができる。各商人デバイスは、全地球測位システム(GPS)受信機または他の位置センサを実装して、位置情報をサービスプロバイダに提供することができる。サービスプロバイダは、商人デバイスの位置を使用して、商人によって取得のために提供されるアイテムの配送を容易にし、他の機能を実行することができる。さらに、または代替として、サービスプロバイダは、複数の第三者サービスと通信することもでき、第三者サービスロジックおよびシステムを実装して、商人によって提供される商品およびサービスに対する顧客からの注文を受信することができる。上述のように、商人、顧客、および第三者のサービスおよびシステムは、サービスプロバイダのコンセンサスシステムのAPIを介して互いに対話することができる。 First, the implementation is described with reference to a delivery service or third party service. In many instances, a service provider may operate a network of third party service devices to deliver items to buyers and others. Each of the third party service devices may implement a global positioning system (GPS) receiver or other location sensor to provide location information to the service provider. Service Providers may track the location of a Third Party Service Device to select a Third Party Service Device for delivery, send updates regarding the delivery of an item, or otherwise track the location of an Item by a Third Party Service. Shipping can be facilitated. Additionally or alternatively, a service provider may work in conjunction with multiple merchant devices. Each merchant device may implement a global positioning system (GPS) receiver or other location sensor to provide location information to the service provider. The service provider can use the location of the merchant device to facilitate delivery of items offered for acquisition by the merchant and to perform other functions. Additionally or alternatively, the Service Provider may communicate with multiple Third Party Services and implement Third Party Service logic and systems to receive orders from customers for goods and services offered by the Merchant. can do. As described above, merchant, customer, and third party services and systems can interact with each other via APIs of the service provider's consensus system.

次いで、コンセンサスシステムは販売時点管理システムにおける中央注文のために、第三者の食品注文、配送、または準備サービスを統合するためのAPIを公開するためのハブ、例えば、注文ハブとして機能する。コンセンサスシステムは、準備時間、配送時間、準備の注文などの新しい注文分析を自動的に計算するために、到来する複数のサービスにわたって準備時間または配送時間を更新することができる。コンセンサスシステムは、一実施形態では、APIを活用して、在庫情報を管理し、注文情報を提供することができる。本明細書で説明する技術の一例として、商人が第三者配送サービスから10個のハンバーガーの注文を受け取り、第2の第三者配送サービスから5個のハンバーガーの別の注文を受け取った場合、コンセンサスシステムは、第1の第三者配送サービスおよび第2の第三者配送サービスならびに任意の他の第三者配送サービスについて、アイテムの利用可能性、準備、および配送時間をリアルタイムで更新することができる。コンセンサスシステムはまた、商人が様々なサービスからの過去の注文に基づいて適切なスタッフおよび在庫を有するように、注文されたアイテムに対する従業員のスタッフ配置を予測および予期することができる。コンセンサスシステムはまた、複数の第三者サービスを介して入ってくる注文のステータスに基づいて、在庫/材料の自動補充、またはベンダからの自動再注文を指示することができる。 The consensus system then acts as a hub, eg, an order hub, for exposing APIs for integrating third-party food ordering, delivery, or preparation services for central ordering in the point of sale system. The consensus system can update preparation time or delivery time across multiple incoming services to automatically calculate new order analytics such as preparation time, delivery time, order for preparation. The consensus system, in one embodiment, can leverage APIs to manage inventory information and provide order information. As an example of the technology described herein, if a merchant receives an order of 10 hamburgers from a third party delivery service and another order of 5 hamburgers from a second third party delivery service, The consensus system updates in real time item availability, readiness, and delivery times for the first and second third party shipping services and any other third party shipping services. can be done. The consensus system can also predict and anticipate employee staffing for ordered items so that merchants have appropriate staff and inventory based on past orders from various services. The consensus system can also direct automatic replenishment of inventory/materials or automatic reordering from vendors based on the status of incoming orders through multiple third party services.

コンセンサスシステムは、第三者予約サービスの統合、集中予約、待機リスト、スケジューリング管理のための1つ以上のAPIを利用することによって、予約のハブとして機能することもできる。コンセンサスシステムは、他の第三者予約サービスと通信して、中央予約システムと、テーブルおよび好ましい座席の動的な割当て/再割当てとを提供することができ、さらには、ダイニングインが利用可能でない場合にピックアップを提供することもできる。コンセンサスシステムは、座席時間の需要を監視し、分析し、それに応じて、特定の予約または所望のメニューアイテムのための好ましい給仕人/シェフで食事者をサポートするために、スタッフ配置および材料を最適化する。アイテム数や、シフト中に許可されるカスタマイズされた予約の数などに対して、特定の閾値が設定される場合がある。さらに、コンセンサスシステムは、使用メトリックに基づいて各サービスに任意の座席割当数を割り当て、ユーザが他のサービスに加入しているかどうかにかかわらず、1つのサービスがユーザの要求を供給できない場合に予約を行うために、APIを介して1つのサービスから別のサービスにユーザを転送することができる。さらに、コンセンサスシステムは、予約された座席の割り当てのためのハブ、および顧客プロファイルおよび商人仕様にマッピングする方法での座席の配置のためのハブとすることができる。例えば、頻繁に訪れる顧客は、レストランの最良の領域に座ることができる。コンセンサスシステムはまた、サービスプロバイダによってサポートされる他のバーティカル(vertical)と統合する。例えば、コンセンサスシステムは、新しい顧客がレストランで予約するときに、コンセンサスシステムが顧客プロファイルを作成して、顧客のプロファイルに最も適した多くの第三者サービスのうちの1つを提供することができるように、オンボーディングコンポーネントと統合される。コンセンサスシステムはまた、各第三者サービスの重みまたは関連性などによって、すべてのサービスからの集約されたレビューに基づいてレストランを推奨することができる。 The Consensus System can also serve as a booking hub by utilizing one or more APIs for integration of third party booking services, centralized bookings, waiting lists, and scheduling management. The Consensus System can communicate with other third party reservation services to provide a central reservation system and dynamic allocation/reassignment of tables and preferred seats, and where dining-ins are not available Pick-up can also be provided on occasion. The consensus system monitors and analyzes demand for seating time and optimizes staffing and ingredients accordingly to support diners with preferred waiters/chefs for specific reservations or desired menu items. become Certain thresholds may be set for items such as the number of items and the number of customized appointments allowed during a shift. In addition, the consensus system assigns arbitrary seat quotas to each service based on usage metrics and reserves seats if one service cannot supply the user's request, regardless of whether the user is subscribed to other services. A user can be transferred from one service to another via an API to perform Additionally, the consensus system can be a hub for allocation of reserved seats and placement of seats in a manner that maps to customer profiles and merchant specifications. For example, frequent customers can be seated in the best areas of the restaurant. The consensus system also integrates with other verticals supported by service providers. For example, when a new customer makes a reservation at a restaurant, the consensus system can create a customer profile and offer one of many third-party services that best fit the customer's profile. Integrates with the onboarding component, like so: The consensus system can also recommend restaurants based on aggregated reviews from all services, such as by weighting or relevance of each third party service.

コンセンサスシステムは、コンテンツの集約および解析のためのメニューハブなどのハブであってもよい。そのような実施形態では、コンセンサスシステムは、ユーザが第三者サービスから異なるメニュー上でどのように注文し、それに応じて売上(セールス)を最適化するかに基づいて、動的に価格設定するための統一マネージャである。コンセンサスシステムはすべての第三者サービスに適用できる単一のメニュー更新を推進し、そのようなサービス上のコンテンツを調和させることができる。コンセンサスシステムは、複数の更新またはサービス固有の更新を推進して、第三者サービス全体の使用メトリックを考慮することもできる。たとえば、メニューコンテンツの注文は、すべての第三者サービス、特定のサービス、さらにはサービス内の特定の領域内の使用状況全体にわたるユーザの人気または使用状況に応じて設定できる。たとえば、支払サービスは、注文の人気や、異なる配送サービス間でのユーザの行動に基づいて、メニューの注文を変更することができる。例えば、支払サービスが第三者サービスからのカートレベル情報にアクセスできない場合、支払サービスは、注文がキッチンに出されると、そのような情報を捕捉することができる。このようにして、支払サービスは、公開されたAPIを利用して、ユーザが第三者のサービスメニューをどのように移動するか、およびどのようなアイテムをユーザが追加する傾向があるがチェックアウトを行わない傾向があるかを確認し、それに応じて商人用のグローバルメニュー(または商人と第三者サービス用の特定のメニュー)を調整することができる。 A consensus system may be a hub, such as a menu hub, for content aggregation and analysis. In such embodiments, the consensus system dynamically sets prices based on how users order on different menus from third-party services, optimizing sales accordingly. is a unified manager for A consensus system can drive a single menu update applicable to all third party services and harmonize content on such services. The consensus system can also drive multiple or service-specific updates to consider usage metrics across third-party services. For example, menu content orders can be set according to user popularity or usage across all third party services, specific services, or even usage within specific areas within a service. For example, a payment service may change menu orders based on order popularity or user behavior across different delivery services. For example, if the payment service does not have access to cart level information from the third party service, the payment service can capture such information once the order is placed in the kitchen. In this way, payment services can leverage exposed APIs to determine how users navigate third-party service menus and what items users tend to add to checkout. and adjust the global menu for merchants (or specific menus for merchants and third-party services) accordingly.

本明細書で説明する技術の一例として、アプリケーションは、商人、買い手、および/または他のものに関連付けられたコンピューティングデバイス上で実行することができる。アプリケーションは、個人(例えば、商人、買い手など)がアクションを実行すること、例えば、商人によって取得のために提供されたアイテムの注文を行うこと、レストランの席を予約すること、コンテンツを表示すること、第三者サービスの更新を提供することなどを可能にするためのユーザインタフェースを提供することができる。例えば、配送サービスの場合、ユーザインタフェースを介して、個人は、取得するアイテムを選択し、アイテムが配送されることを要求することができる。例えば、個人は、購入のために電子ショッピングカートにアイテムを入れ、アイテムを配送させることに関心を示すことができる。場合によっては、個人は、配送の場所、ピックアップの場所、ピックアップの要求された時間、取得されているアイテムの数、アイテムのサイズ、アイテムが所定のカテゴリに関連付けられているかどうか、アイテムの重量などを指定することができる。他の例では、このような情報は、ユーザプロファイルまたは商人プロファイルから自動的に判定されたり、取得されたりする。 As an example of the technology described herein, applications may run on computing devices associated with merchants, buyers, and/or others. Applications allow individuals (e.g., merchants, buyers, etc.) to perform actions, e.g., place orders for items offered for acquisition by merchants, reserve seats in restaurants, display content. , to provide updates for third-party services, and the like. For example, for a delivery service, through a user interface, an individual can select items to acquire and request that the items be delivered. For example, an individual may indicate an interest in placing items in an electronic shopping cart for purchase and having the items shipped. In some cases, an individual may provide information such as location of delivery, location of pickup, requested time of pickup, number of items being retrieved, size of item, whether item is associated with a given category, weight of item, etc. can be specified. In other examples, such information is automatically determined or obtained from a user profile or merchant profile.

個人がアイテムを配送させることに関心があると判定すると、第三者配送サービスなどのためのアプリケーションは、サービスプロバイダに関連付けられたコンセンサスサービスを介してアイテムの配送を容易にするために、サービスプロバイダによって提供されるAPIを使用して第三者サービスプロバイダと通信することができる。例えば、アプリケーションは、アイテムの配送のコスト、アイテムの配送時間の推定量などの要求を送信することができる。第三者サービスは、関連する配送サービスを使用して、アイテムを買い手の位置に配送するための、例えば、コンセンサスサービスのためのAPIを介してサービスプロバイダに配送するための配送提案を生成することができる。配送提案は、配送コスト、配送時間の推定量および/またはアイテムの配送に関するその他の情報を含んでもよい。サービスプロバイダは、コンセンサスサービスを介して、配送提案を、受諾または拒否のためのアプリケーションに送信することができる。いくつかの例では、アプリケーションは、ユーザインタフェースと対話する個人に情報を提示し、個人は提案を受諾するか、または拒否するための入力を提供することができる。他の例では、アプリケーションは、1つ以上の基準に従って動作して、配送提案を自動的に受諾するか、または拒否することができる(たとえば、コストが閾値未満である場合に受諾する、推定配送時間が閾値時間量未満である場合に受諾するなど)。いずれにしても、アプリケーションは、APIを使用して、配送提案の受諾または拒否のインジケーション(指標、指示)を第三者サービスに送信することができる。 Upon determining that an individual is interested in having an item shipped, the application, such as for a third-party shipping service, may contact the service provider to facilitate delivery of the item via a consensus service associated with the service provider. can communicate with third party service providers using APIs provided by For example, an application can send a request for the cost of shipping an item, an estimate of the time to ship the item, and so on. The third party service uses the associated shipping service to generate a shipping offer to ship the item to the buyer's location, e.g., to the service provider via the API for Consensus Service. can be done. A shipping offer may include shipping costs, estimated shipping times, and/or other information regarding the shipping of the item. Service providers can send delivery offers to the application for acceptance or rejection via the consensus service. In some examples, the application presents information to an individual interacting with the user interface, and the individual can provide input to accept or decline the offer. In other examples, an application may operate according to one or more criteria to automatically accept or reject a delivery offer (e.g., accept if cost is below a threshold, estimated delivery accept if the time is less than the threshold amount of time, etc.). In any event, the application can use the API to send an indication of acceptance or rejection of the delivery offer to the third party service.

サービスプロバイダは、配送提案の受諾について第三者のサービスが通知された場合、配送のための配送人を選択する処理を行うことができる。例えば、サービスプロバイダは、経時的に複数の配送人デバイスの位置を追跡し、ピックアップ位置まで特定の距離内にあること、配送を行うために利用可能であること、アイテムを移送することができる移送車両に関連付けられていることなど、1つ以上の基準を満たす配送人を選択することができる。場合によっては、サービスプロバイダは、配送人(クーリエ)プロファイル、ユーザプロファイル、商人プロファイル、または他の情報を使用して配送人を選択することができる。次いで、サービスプロバイダは、配送人に、配送人が商人の施設からアイテムを入手し、そのアイテムを配送場所に移送することを要求する通信を送信することができる。アイテムの配送中、サービスプロバイダは、配送人および/または商人から情報(例えば、位置情報、配送がピックアップされたことの確認など)を受信し、配送のステータスを判定することができる。サービスプロバイダは、アプリケーション、商人デバイス、買い手デバイス、および/または他のものに配送のステータスを送信することができ、その結果、個人に、配送の現在の状態を通知することができる。 The service provider may take steps to select a courier for delivery if the third party service has been notified of the acceptance of the delivery offer. For example, a service provider can track the location of multiple shipper devices over time, be within a certain distance to a pickup location, be available to make deliveries, and be able to transport items. A delivery person can be selected that meets one or more criteria, such as being associated with a vehicle. In some cases, the service provider may select a courier using a courier profile, user profile, merchant profile, or other information. The service provider can then send a communication to the shipper requesting that the shipper obtain the item from the merchant's facility and transport the item to the delivery location. During delivery of the item, the service provider may receive information from the shipper and/or merchant (eg, location information, confirmation that the delivery was picked up, etc.) to determine the status of the delivery. The service provider can send the status of the shipment to applications, merchant devices, buyer devices, and/or others so that individuals can be informed of the current status of the shipment.

多くの場合、本明細書で説明する技術および環境は、サービスプロバイダによって提供されるコンセンサスサービスにアクセスし、配送サービス、予約サービス、およびコンテンツサービスをサポートするために、1つ以上のAPIを提供する。すなわち、1つ以上のAPIは、エンティティの技術に様々な第三者サービスを統合するための柔軟な構造をエンティティに提供することができる。一例として、商人は、第三者サービスを実施するための追加のコンポーネントを作成することなく、商人によって動作されるウェブサイトまたはアプリケーションに第三者サービスを統合することができる。そうすることによって、ウェブサイトまたはアプリケーションは、そのような特徴をウェブサイトまたはアプリケーションに直接組み込むウェブサイトまたはアプリケーションと比較して、より薄い実装(例えば、より少ない構成要素で)に従って動作することができる。これにより、ウェブサイトやアプリケーションの実装が比較的高速になる可能性がある。さらに、技術および環境は、第三者サービスの統合が多種多様な文脈(たとえば、デバイス、プラットフォームなど)にわたって実施されることを可能にし得る。さらに、技術および環境は、第三者サービスを実装するためにサービスプロバイダによって使用される、基礎となる技術、たとえばコンセンサスサービスを修正するための柔軟な構造を提供する。言い換えれば、商人プラットフォームの基礎となる技術は、商人、買い手、および/または他の者によって実施される技術の更新を必要とせずに、統一されたおよび/または単純化された方法で更新されてもよい。さらに、技術および環境は、サービスプロバイダによって使用される基礎技術(例えば、アルゴリズム、コストスキームなどを含む)が、安全な環境において維持されることを可能にしてもよい。また、複数の第三者サービスによって共有されるデータは、商人に公開される必要はなく、さらに、サービスプロバイダは、第三者サービス、環境、位置、時刻などに基づいて、データ制御およびデータカプセル化を作成することができ、これは、第三者サービスに特有であるか、または端末、アプリケーション、キッチンディスプレイシステム、支払アプリケーションなどの第三者サービスと商人プラットフォームとの間の関係に特有であってもよい。 In many cases, the technologies and environments described herein provide one or more APIs to access consensus services provided by service providers and to support delivery services, reservation services, and content services. . That is, one or more APIs can provide an entity with a flexible structure for integrating various third party services into the entity's technology. As an example, a merchant can integrate a third party service into a website or application operated by the merchant without creating additional components to implement the third party service. By doing so, the website or application can operate according to a thinner implementation (e.g., with fewer components) compared to a website or application that incorporates such features directly into the website or application. . This can lead to relatively fast website and application implementations. Additionally, technology and environments may allow the integration of third party services to be implemented across a wide variety of contexts (eg, devices, platforms, etc.). Additionally, the technology and environment provide a flexible structure for modifying the underlying technology, eg, consensus services, used by service providers to implement third-party services. In other words, the underlying technology of the merchant platform is updated in a unified and/or simplified manner without requiring technology updates implemented by merchants, buyers, and/or others. good too. Additionally, the technology and environment may allow the underlying technology (eg, including algorithms, cost schemes, etc.) used by service providers to be maintained in a secure environment. Also, data shared by multiple third-party services need not be exposed to merchants, and furthermore, service providers are responsible for data control and data encapsulation based on third-party services, environment, location, time of day, etc. , which may be specific to the Third Party Service or the relationship between the Third Party Service and the Merchant Platform, such as terminals, applications, kitchen display systems, payment applications, etc. may

中央注文システムの利点には、注文のより良好な管理、注文のスケジューリング、および各第三者サービスの注文をリストする壁の周りにぶら下がる複数のタブレットの排除が含まれる。本明細書に記載される技術を用いて、商人は、異なるソースから来る注文を追跡し、注文、在庫、および注文のタイミングをリアルタイムまたはほぼリアルタイムに管理することができる単一のキッチンディスプレイシステムをインストールすることができる。 Benefits of a central ordering system include better management of orders, scheduling of orders, and elimination of multiple tablets hanging around walls listing orders for each third party service. With the technology described herein, merchants can track orders coming from different sources and create a single kitchen display system that can manage orders, inventory, and timing of orders in real time or near real time. can be installed.

中央レストランシステムの利点には、予約のより良い管理、複数のソースからのレストランのレビューの追跡、およびレストランの予約中または過剰予約中のダブルブッキングの排除が含まれる。説明は例示的なユースケースとしてレストランについて言及するが、説明はサロン、病院、ヨガスタジオなどの予約およびアポイントのための他のユースケースに拡張できることが理解されるのであろう。本明細書で説明する技術を用いて、予約を最適化することができ、座席割り当てを、例えば、充填容量(キャパシティ)に基づいて、リアルタイムで第三者予約サービスに割り当てることができる。 Benefits of a central restaurant system include better management of reservations, tracking of restaurant reviews from multiple sources, and elimination of double-booking during restaurant reservations or overbooking. Although the description refers to restaurants as an exemplary use case, it will be appreciated that the description can be extended to other use cases for reservations and appointments at salons, hospitals, yoga studios, and the like. Using the techniques described herein, reservations can be optimized and seat allocations can be assigned to third party reservation services in real time, for example, based on filling capacity.

中央コンテンツコンセンサスシステムの利点はメニュー、価格、動作時間などのコンテンツのより良好な管理を含み、すべての第三者サービスは、商人から同時に同じ更新を得る。本明細書で説明される技術を用いて、コンテンツは、価格、ブランド、および商人のルックアンドフィールが一貫して維持されるように、異なる第三者サービスにわたって調和させることができる。コンセンサスシステムは、動的な価格設定のための統一されたマネージャとすることができ、ユーザが異なるメニュー上で何をどのくらい注文しているかなどの注文データを追跡することによって、販売(セールス)を最適化することができる。あるいは、異なる種類の視聴者をターゲットにするために、すなわち、利用可能性/人気に基づいてすべてのメニューにわたってメニュー価格を調整するために、異なる更新をリアルタイムまたはほぼリアルタイムで第三者サービスにプッシュすることができる。例えば、第1の第三者サービスで注文する顧客が早朝にファストフードを注文すると判定することによって、メニューは例えば、準備時間または人気の順に、リスト上にファストフードアイテムを提示するように構成されてもよい。それに加えて、またはその代わりに、アイテムの価格設定は、データ分析にマッピングするように構成されてもよい。いくつかの実装形態では、商人がアイテムを修正すると、支払フローが修正され得る。例えば、商人が自分のメニューからアイテムを取り除くこと(削除アイテムと呼ばれることもある)を決定したものの、他のアイテムに加えてそのアイテムについて既に注文がなされている場合、コンセンサスシステムは、顧客がそのアイテムについて返金されるか、または決して課金されないように、拒絶アイテムを除外するように準備および支払フローを修正することができる。いくつかの実装形態では、拒絶アイテムは、別のアイテム、例えば、類似アイテム、類似コストのアイテム、新しいオファー、割引(ディスカウント)、顧客への通知などで置き換えられてもよい。 Benefits of a central content consensus system include better management of content such as menus, prices, hours of operation, and all third party services get the same updates from merchants at the same time. Using the technology described herein, content can be harmonized across different third party services such that the price, brand, and merchant look and feel are maintained consistently. A consensus system can be a unified manager for dynamic pricing, tracking sales by tracking order data such as what and how much users order on different menus. can be optimized. Alternatively, push different updates in real time or near real time to third party services to target different types of audiences, i.e. adjust menu prices across all menus based on availability/popularity can do. For example, by determining that a customer ordering from the first third party service orders fast food early in the morning, the menu may be configured to present fast food items on a list in order of, for example, preparation time or popularity. may Additionally or alternatively, item pricing may be configured to map to data analysis. In some implementations, the payment flow may be modified as the merchant modifies the item. For example, if a merchant decides to remove an item from his menu (sometimes called a removed item), but orders have already been placed for that item in addition to other items, the consensus system will allow customers to The preparation and payment flow can be modified to exclude rejected items so that they are either refunded or never charged for the item. In some implementations, the rejected item may be replaced with another item, eg, a similar item, a similar cost item, a new offer, a discount, a customer notification, and the like.

さらに、本明細書の技術は、APIを通じたコンセンサスシステムがそのソースコードに変更を加えることなく、またはほとんど変更を加えずに、命令およびデータを移植することによって、様々なハードウェアおよびソフトウェアプラットフォームとインタフェースすることができるので、任意の第三者サービスをオンボード化し、商人から買い手へのアイテムの配送のために統合すること、または商人との任意の構成または終了関係なしに任意の他のサービスを提供することを可能にすることができる。コンピューティングデバイス、モバイルデバイス、およびセンサの対話を通じて、本明細書の実装形態は、商人、買い手、サービス領域、第三者サービス、ハードウェアおよびソフトウェアプラットフォーム、ならびに第三者サービス自体の常に変化する状況および条件に対応するために、多数のエンティティが参加することができる予測不可能な共有エコシステムを管理することができる。 In addition, the techniques herein can be used with various hardware and software platforms by porting the instructions and data of the consensus system through the API with little or no change to its source code. interface so that it can onboard and integrate with any third party service for delivery of items from the merchant to the buyer, or any other service without any formation or termination relationship with the merchant. can be provided. Through the interaction of computing devices, mobile devices, and sensors, implementations herein adapt to the ever-changing context of merchants, buyers, service domains, third-party services, hardware and software platforms, and third-party services themselves. and conditions, an unpredictable sharing ecosystem can be managed in which a large number of entities can participate.

様々な実装において、コンセンサスシステムは、中央サーバ、またはサーバのグループとして機能し、APIを介して様々なソースからデータを取り込み、命令およびデータを様々なサービスによって理解されるフォーマットに移植し、データをフィルタリングして様々な商人およびサービスとの関連性を判定し、分析を使用して、配送、予約、コンテンツ集約、またはコンテンツ表示などの様々な商人タスクを構造化または再構造化することができる。 In various implementations, the consensus system acts as a central server, or group of servers, ingesting data from various sources via APIs, porting instructions and data into a format understood by various services, and distributing the data. Filtering can be used to determine relevance to various merchants and services, and analytics can be used to structure or restructure various merchant tasks such as delivery, booking, content aggregation, or content display.

本明細書のいくつかの実装形態は、双方向APIまたはプッシュプルAPIを記載し、それらは、情報が両方向に移動すること、及び、APIエンドポイントが、通信を行う両方のアプリケーションに関連付けられることを意味する。しかしながら、いくつかの実装は、アプリケーションが情報をプッシュするか、要求されたときに情報をプルするだけでよいように、単一方向APIを実行することができる。 Some implementations herein describe bi-directional or push-pull APIs, where information travels in both directions and API endpoints are associated with both communicating applications. means However, some implementations may implement a unidirectional API so that applications only need to push information or pull information when requested.

この簡単な導入は、読者の便宜のために提供され、特許請求の範囲を限定することを意図しない。さらに、上記および下記の技術は、いくつかの方法およびいくつかの文脈で実施することができる。以下に詳細に説明するように、以下の図を参照して、いくつかの例の実装と文脈が提供されている。しかし、以下の実装と文脈は多くのうちの数個である。 This brief introduction is provided for the convenience of the reader and is not intended to limit the scope of the claims. Additionally, the techniques described above and below can be implemented in several ways and in several contexts. As described in detail below, some example implementations and context are provided with reference to the following figures. However, the implementations and contexts below are a few of many.

図1は、本明細書で説明する技術を実施することができる例示的なアーキテクチャ100を示す。アーキテクチャ100は、コンセンサスサービス、商人位置における買い手、第三者サービス等のアプリケーションの1つ以上のユーザ104(以下、「ユーザ104」)、1つ以上の商人106(以下、「商人106」)、1つ以上の第三者サービス108(以下、文脈に応じて「配送サービス108」、「配送人サービス」、「予約サービス108」、「コンテンツサービス」、および、まとめて第三者サービスと称される)、1つ以上のカード支払ネットワークコンピューティングデバイス110、および/または、様々な処理を実行するために1つ以上の銀行コンピューティングデバイス112と通信する、コンセンサスシステムまたはアプリケーション(以下、「コンセンサスサービス」とも称される)に関連付けられたサービスプロバイダ102を含む。第三者サービスはまた、サービスプロバイダによって提供される、例えば、配送、予約、またはコンテンツの集約および管理のためのサービスを含むことができる。多くの場合、サービスプロバイダ102は、ユーザ104および/または商人106がサービスプロバイダ102によって提供されるコンセンサスサービスにアクセスすることを可能にするために、1つ以上のアプリケーションプログラミングインタフェース(API)114を提供することができる。API は、プッシュAPI、プルAPI、またはその両方の組み合わせとして実装できる。したがって、各アプリケーションは、更新を受信または送信するための、あるいはその両方のためのAPIエンドポイントを作成または共有できる。例えば、プッシュAPIは、プッシュメッセージをウェブアプリケーションに、時には非同期で、プッシュサービスを送信することを可能にする。アプリケーションサーバは、ウェブアプリケーションまたはユーザエージェントが非アクティブな場合でも、いつでもプッシュメッセージを送信することができる。プッシュサービスは、ユーザエージェントへの確実かつ効率的な配信を保証する。プッシュメッセージは、ウェブアプリケーションの発信元で動作するサービスワーカに配信され、サービスワーカはメッセージ内の情報を使用して、ローカル状態を更新するか、またはユーザに通知を表示することができる。プルAPIは、例えば、ある間隔で実行するように設定されたスケジュールされたジョブに基づいて、データを抽出するように動作する。システムは、特定の条件が満たされるまでソースのポーリングを継続する。 FIG. 1 shows an exemplary architecture 100 that can implement the techniques described herein. The architecture 100 includes one or more users 104 (hereinafter "users 104"), one or more merchants 106 (hereinafter "merchant 106"), of applications such as consensus services, buyers at merchant locations, third party services, etc. one or more third party services 108 (hereinafter referred to as "delivery services 108", "courier services", "reservation services 108", "content services", and collectively third party services as the context requires); ), one or more card payment network computing devices 110, and/or one or more bank computing devices 112 to perform various operations (hereinafter “consensus service”). ), including service providers 102 associated with Third party services can also include services provided by service providers, for example, for delivery, booking, or content aggregation and management. Service providers 102 often provide one or more application programming interfaces (APIs) 114 to enable users 104 and/or merchants 106 to access consensus services provided by service provider 102. can do. APIs can be implemented as push APIs, pull APIs, or a combination of both. Thus, each application can create or share API endpoints for receiving and/or sending updates. For example, the push API allows push services to send push messages to web applications, sometimes asynchronously. The application server can send push messages at any time, even if the web application or user agent is inactive. Push services ensure reliable and efficient delivery to user agents. The push message is delivered to a service worker running at the origin of the web application, and the service worker can use the information in the message to update local state or display a notification to the user. The pull API operates to extract data, for example, based on a scheduled job that is set to run at certain intervals. The system continues polling sources until certain conditions are met.

さらに、多くの場合、サービスプロバイダ102は、買い手(第1のユーザ)と売り手(第2のユーザ)との間の取引を容易にすることができ、この取引は、1つ以上のカード支払ネットワークコンピューティングデバイス110および/または1つ以上の銀行コンピューティングデバイス112と通信することを含むことができる。ユーザ104、商人106、および/または第三者サービス108のそれぞれは、コンピューティングデバイスに関連付けることができる。例えば、第三者サービスは、ユーザ104または商人デバイス106に関連付けられたユーザデバイス上で実行されてもよい。さらに、いくつかの例では、環境100は、さらに詳細に後述するように、アイテムの取得を容易にするために、ユーザ104および/または商人106と通信するための追加のサービスプロバイダ(サービスプロバイダ116)を含む。図示されるように、アーキテクチャ100のいずれかのコンピューティングデバイスは、1つ以上のネットワーク118を介して互いに通信することができる。 Further, service provider 102 is often capable of facilitating a transaction between a buyer (first user) and a seller (second user), which is carried out over one or more card payment networks. It may involve communicating with computing device 110 and/or one or more bank computing devices 112 . Each of users 104, merchants 106, and/or third party services 108 can be associated with a computing device. For example, a third party service may run on a user device associated with user 104 or merchant device 106 . Additionally, in some examples, environment 100 may include additional service providers (service provider 116) for communicating with users 104 and/or merchants 106 to facilitate acquisition of items, as described in further detail below. )including. As shown, any computing device in architecture 100 can communicate with each other via one or more networks 118 .

商人は、買い手から受け取った対価と引き換えに、買い手による取得のための商品またはサービスの提供に従事する任意の企業またはエンティティを含むことができる。商人に起因するアクションは、商人の従業員または他のエージェントによって実行されるアクションを含むことができ、したがって、本明細書では、特に論じない限り、商人とその従業員との間の区別は行われない。さらに、買い手は、購入、レンタル、リース、借用、ライセンス供与などによって、商人から商品またはサービスを取得する任意のエンティティを含むことができる。以下、商品及び/又はサービスをアイテムと呼ぶことがある。アイテムは、完成品、部分完成品、原材料などを含むことができる。したがって、商人および買い手は、互いに対話して、買い手が商人から1つ以上のアイテムを取得し、その代わりに、買い手が支払いを商人に提供する取引を行うことができる。 A merchant may include any company or entity engaged in providing goods or services for acquisition by a buyer in exchange for consideration received from the buyer. Actions attributed to a merchant may include actions performed by the merchant's employees or other agents, and thus, unless specifically discussed herein, no distinction is made between merchants and their employees. can't break Further, a buyer can include any entity that obtains goods or services from a merchant by purchase, rental, lease, borrowing, licensing, or the like. Hereinafter, products and/or services may be referred to as items. Items can include finished goods, partially finished goods, raw materials, and the like. Thus, a merchant and a buyer can interact with each other to effect a transaction in which the buyer obtains one or more items from the merchant and, in return, the buyer provides payment to the merchant.

配送サービスなどの第三者サービスは、アイテムの配送に従事するエンティティを含むことができる。第三者サービスは、配送ピックアップ位置(例えば、商人の位置)からアイテムを取得し、そのアイテムを配送ドロップオフ位置(例えば、買い手の位置)に移送することができる。本明細書のいくつかの実装形態は、異なる配送ポータル108から入ってくる配送要求(注文とも呼ばれる)を商人が調和させることを可能にする技術革新を提供する。このような技術を用いて、商人は、在庫、発注時間、顧客のロイヤリティ格付けなどに関して注文を調整し、同期させることができる。 A third party service, such as a delivery service, can include entities engaged in the delivery of items. A third party service may obtain an item from a shipping pick-up location (eg, a merchant's location) and transport the item to a shipping drop-off location (eg, a buyer's location). Some implementations herein provide innovations that allow merchants to coordinate incoming shipping requests (also called orders) from different shipping portals 108 . Using such technology, merchants can coordinate and synchronize orders with respect to inventory, order times, customer loyalty ratings, and the like.

レストラン管理サービスのような第三者サービスは、オンライン予約または本人予約のような、それらの位置での予約を可能にする任意のエンティティを含むことができる。また、予約という用語は、アポイントメント、本人のダイニング、ピックアップなどを含むことを意図している。第三者サービスは、商人位置で予約を行うための要求を受信することができる。本明細書のいくつかの実装形態は、異なる予約ポータル108から入ってくる予約要求(予約とも呼ばれる)を商人が調和させることを可能にする技術革新を提供する。そのような技術を用いて、商人は、座席の利用可能性、食事者の好み、時間、位置、およびメニュー上で利用可能なアイテムなどに関して注文を調整し、同期させることができる。 Third party services, such as restaurant management services, can include any entity that allows reservations at their location, such as online reservations or in-person reservations. Also, the term reservation is intended to include appointments, dining in person, pickup, and the like. A third party service may receive a request to make a reservation at a merchant location. Some implementations herein provide innovations that allow merchants to coordinate incoming reservation requests (also called reservations) from different reservation portals 108 . Using such technology, merchants can coordinate and synchronize orders with respect to seat availability, diner preferences, time, location, items available on menus, and the like.

コンテンツ集約サービスなどの第三者サービスは、アイテムを配送することに従事する任意のエンティティを含むことができる。第三者サービスは、他の第三者サービスがどのようなものを実施しているかを何ら考えることなく、また、特に商人のストアに関して、自分の顧客がどのようなものを見たいかを知ることなく、コンテンツを表示することができる。本明細書でのいくつかの実装は、異なる第三者サービス108にわたって、メニューのようなコンテンツを商人が調和させることを可能にする技術革新を提供する。そのような技術を用いて、商人は、第三者サービスのプロファイル、時刻、位置、および他のそのような仕様に関して、メニューおよび他のコンテンツを調整し、同期させることができる。メニューまたはメニューの更新は、すべての第三者サービス上で同時に単一の更新または通知としてプッシュすることができる。代替的に又は追加的に、メニュー及び他のそのようなコンテンツ、例えば、コンテンツのディスプレイ、アイテムの注文等は、第三者サービスと商人との関係、アイテムの利用可能性、時刻、及び他のそのような要因に従って構成することができる。 Third party services, such as content aggregation services, can include any entity engaged in delivering items. Third party services know what their customers want to see, especially with respect to merchant stores, without any consideration of what other third party services are doing. content can be displayed without Some implementations herein provide innovations that allow merchants to coordinate content such as menus across different third party services 108 . Using such technology, merchants can coordinate and synchronize menus and other content with respect to third-party service profiles, time of day, location, and other such specifications. Menus or menu updates may be pushed as a single update or notification on all Third Party Services at the same time. Alternatively or additionally, menus and other such content, e.g., display of content, ordering of items, etc., may be affected by relationships between third-party services and merchants, availability of items, time of day, and other It can be configured according to such factors.

上述のように、サービスプロバイダ102は、コンセンサスサービスの1つ以上のAPI114を公開して、ユーザ104および/または商人106に関連付けられたコンピューティングデバイスが、サービスプロバイダ102によって提供される第三者サービスにアクセスし、調和し、正規化し、リファクタリングし、調整し、および/またはインタフェースすることを可能にし、その結果、商人またはユーザプロセスが最適な方法で構造化される。説明の簡単化のため、図1の例では、ユーザ104及び/又は商人106に関連付けられたコンピューティングデバイスは、「取得デバイス」と呼ばれる。図1の例では、取得デバイスは、アイテムの配送、座席予約、メニューの更新等のアクションを容易にするために、1つ以上のAPI114を通じてサービスプロバイダ102と通信する。取得デバイスは、アイテム取得インタフェース120を介して、サービスプロバイダ102から受信したアイテムの配送に関する様々な情報を表示する。この例では、取得デバイスがピザなどのアイテムの配送のための配送サービス108-1を実行し、一方、飲料などのアイテムの配送のための配送サービス108-2を実行する。場合によっては、取得デバイスは異なっていてもよく、商人は、異なる第三者サービスから2つの別個の配送要求を受信してもよい。要求を出している間、サービスプロバイダは、コンセンサスサービス132を使用して、受信された注文および注文のタイミングを判定することができる。コンセンサスサービス132は例えば、機械学習モデルを使用して、注文をいつ行うべきか、どのアイテムを準備のために集めることができるか、等を判定する。コンセンサスサービス132は、商人に関連付けられたキッチンディスプレイシステム(図示せず)の注文をスケジュールする。このように、商人は、異なるソースから来る注文に対応する複数のタブレットを維持する必要がない。単一のタブレットは例えば、注文のタイミング、ソース、位置、準備の時間などに基づいて、注文のソース、タイミング、配送の推定時間、および準備の新しい順序を示す。同様に、予約要求に対して、コンセンサスサービス132は、予約の単一のリストと、ユーザおよび商人の間で座席および予約を分配(分散)する方法とを作成する。さらに、コンセンサスサービスは、リアルタイムまたはほぼリアルタイムで要求の進行を通信するために当事者とインタフェースすることができる。 As described above, service provider 102 publishes one or more APIs 114 of consensus services so that computing devices associated with users 104 and/or merchants 106 can access third party services offered by service provider 102 . can be accessed, harmonized, normalized, refactored, adjusted, and/or interfaced so that the merchant or user process is structured in an optimal way. For ease of explanation, in the example of FIG. 1, computing devices associated with users 104 and/or merchants 106 are referred to as "acquisition devices." In the example of FIG. 1, the acquisition device communicates with the service provider 102 through one or more APIs 114 to facilitate actions such as item delivery, seat reservations, menu updates, and the like. The acquisition device displays various information regarding the delivery of the item received from the service provider 102 via the item acquisition interface 120 . In this example, the acquisition device performs delivery service 108-1 for delivery of items such as pizza, while it performs delivery service 108-2 for delivery of items such as beverages. In some cases, the acquisition device may be different and the merchant may receive two separate shipping requests from different third party services. While making requests, the service provider can use the consensus service 132 to determine the orders received and the timing of the orders. The consensus service 132, for example, uses machine learning models to determine when orders should be placed, which items can be assembled for preparation, and the like. The consensus service 132 schedules orders for kitchen display systems (not shown) associated with merchants. In this way, the merchant need not maintain multiple tablets to serve orders coming from different sources. A single tablet indicates the order source, timing, estimated time of delivery, and new order of preparation, for example, based on order timing, source, location, time of preparation, and the like. Similarly, for reservation requests, the consensus service 132 creates a single list of reservations and a method of distributing (dispersing) seats and reservations among users and merchants. Additionally, the consensus service can interface with the parties to communicate the progress of the request in real time or near real time.

例えば、取得デバイスは、商人106と注文を行いつつ、1つ以上のAPI114を通じてサービスプロバイダ102を介して商人と通信してもよい。特に、個人(ユーザ104および/または商人106)は、購入のためにオンラインショッピングカートにアイテムを入れ、そのアイテムを配送させることに関心を示すことができる。これに応答して、取得デバイスは、配送、予約、またはコンテンツ管理に関する情報を求める要求を、1つ以上のAPI114を介してサービスプロバイダ102に送信することができる。サービスプロバイダ102は、商人または商人在庫データベース(ローカルまたはリモートで)と通信して、サービスプロバイダ102に関連付けられた配送サービスによるアイテムの配送に関する配送提案を生成し、API呼び出し134を通じて、その配送提案を取得デバイスに送信することができる。取得デバイスは、受諾または拒否のために、アイテム取得インタフェース120(a)を介して配送提案の情報を表示することができる。図1に示すように、アイテムを配送するための推定時間量および配送コストが、取得インタフェース120(a)における122において提示される。個人は、配送提案を受諾し、ボタン124を選択することによって注文を行うことができる。 For example, an acquisition device may communicate with a merchant via service provider 102 through one or more APIs 114 while placing an order with merchant 106 . In particular, individuals (users 104 and/or merchants 106) can express an interest in placing items in an online shopping cart for purchase and having the items shipped. In response, the acquisition device may send a request to service provider 102 via one or more APIs 114 for information regarding delivery, booking, or content management. The service provider 102 communicates with a merchant or merchant inventory database (locally or remotely) to generate a shipping offer for delivery of the item by a shipping service associated with the service provider 102, and through an API call 134, submits the shipping offer. Can be sent to the acquisition device. Acquisition devices may display information in the delivery offer via the item acquisition interface 120(a) for acceptance or rejection. As shown in FIG. 1, the estimated amount of time and shipping cost to deliver the item is presented at 122 in the acquisition interface 120(a). The individual can accept the shipping offer and place the order by selecting button 124 .

さらに、取得デバイスは、1つ以上のAPI114を介してサービスプロバイダ102と通信して、別の第三者サービスまたは別のユーザによって注文されたアイテムの配送に関するステータス更新を取得することができる。このような場合、サービスプロバイダ102は、アイテムを配送するために割り当てられた配送人(例えば、第三者サービス108)の位置を監視し、または、配送人に関連付けられた第三者サービスからこのような情報を取得し、アイテムを販売している商人(例えば、商人106)から情報を取得し、および/または、他の情報を取得することができる。サービスプロバイダ102は、アイテムの配送のステータスを判定し、配送のステータスを取得デバイスに送信することができる。配送のステータスは、アイテム取得インタフェース120(b)を介して表示されてもよい。ステータスは、取得デバイスからの要求に応じて(例えば、1つ以上のAPI114を介して送信されるメッセージに応答して)、定期的に、および/または別のイベントの発生に応じて、判定され、および/または取得デバイスに提供され得る。図1に示されるように、アイテム取得インタフェース120(b)は、選択されたときに、割り当てられた第三者サービスデバイスの現在の位置、割り当てられた第三者サービスデバイスによって移動される経路、アイテムをピックアップ又は配送するために割り当てられた第三者サービスデバイスによってさらに取られるのであろう経路等を示す地図を表示するボタン126を含むことができる。 Additionally, the acquisition device may communicate with the service provider 102 via one or more APIs 114 to obtain status updates regarding the delivery of items ordered by another third party service or another user. In such cases, the service provider 102 may monitor the location of the shipper (e.g., third party service 108) assigned to deliver the item or may Such information may be obtained, information may be obtained from the merchant (eg, merchant 106) selling the item, and/or other information may be obtained. The service provider 102 can determine the status of delivery of the item and transmit the status of delivery to the acquisition device. The status of the delivery may be displayed via the item acquisition interface 120(b). The status is determined upon request from the acquisition device (eg, in response to messages sent via one or more APIs 114), periodically, and/or upon the occurrence of another event. , and/or provided to the acquisition device. As shown in FIG. 1, item retrieval interface 120(b), when selected, displays the current location of the assigned third party service device, the route traveled by the assigned third party service device, A button 126 may be included to display a map showing routes, etc. that may be further taken by the assigned third party service device to pick up or deliver the item.

図1の例では、配送サービス情報要求128は、取得デバイスによって1つ以上のAPI114を介してサービスプロバイダ102に送信される通信を表し、一方、配送サービス情報130は、注文がどのように順序付けられるか、同時注文要求がどのように処理されるか、不正要求、配送時間、座席表、および商人が動作をスケジュールして編成するための他の情報、を示すためのコンセンサスコールなどの、サービスプロバイダ102から取得デバイスに送り返される通信を表す。配送サービス情報要求128は、アイテムの配送に関する情報(例えば、コスト見積り、配送時間見積り等)、配送提案の受諾/拒否のインジケーション(指標、表示)、配送ステータスに関する情報の要求等を含むことができる。配送サービス情報130は、配送提案、アイテムの配送ステータスに関する情報などを含むことができる。 In the example of FIG. 1, shipping service information request 128 represents communications sent by the acquisition device to service provider 102 via one or more APIs 114, while shipping service information 130 describes how the order is ordered. service providers, such as consensus calls to indicate how concurrent order requests will be handled, fraudulent requests, delivery times, seating charts, and other information for merchants to schedule and organize operations; 102 represents the communication sent back to the capture device. The delivery service information request 128 may include information regarding the delivery of the item (e.g., cost estimate, delivery time estimate, etc.), indication of acceptance/rejection of the delivery offer, request for information regarding delivery status, and the like. can. Shipping service information 130 may include shipping offers, information about the shipping status of items, and the like.

場合によっては、取得デバイスは、サービスプロバイダ116と協働して動作することができる。サービスプロバイダ116、およびコンセンサスサービスなどの関連するアプリケーションは、取得デバイスおよび/またはサービスプロバイダ102から遠隔でおよび/または独立して動作するリソースを提供することができる。一例では、サービスプロバイダ116は、購入、在庫を管理し、および/または他の処理を実行するために、商人106に関連付けられてもよい。サービスプロバイダ116は、オンラインサイトを提供したり、取得デバイス上のローカルアプリケーション(例えば、デスクトップアプリケーション、モバイルアプリケーションなど)と協働して動作したりすることができる。例示すると、サービスプロバイダ116は、顧客(および/またはピザ商人)がピザ商人とピザの注文を行うことができるように、ピザレストランおよび顧客が注文することができるすべての配送サービスのためのオンラインウェブサイトを提供することができる。このように、取得デバイスによってサービスプロバイダ102との間で送信および/または受信される通信は、サービスプロバイダ116を介してルーティングされてもよい。言い換えると、サービスプロバイダ116は、取得デバイスとサービスプロバイダ102との間、および商人と第三者サービスとの間の仲介として動作することができる。この種のアーキテクチャは、当事者に関連するデータのみが明らかにされるように、データが当事者間で選択的に秘密に共有されることを可能にする。サービスプロバイダ116は、1つ以上のAPI114を介してサービスプロバイダ102と通信することができる。これは、サービスプロバイダ102によって提供される配送サービスの、商人106に関連する技術へのシームレスな統合を提供することができる。上記のピザレストランの例に戻ると、ピザレストランのウェブサイトは、1つ以上のAPI114を介してサービスプロバイダ102と通信することによって、サービスプロバイダ102の配送サービスを統合することができる。場合によっては、これは、ピザレストランがそのような配送サービスを使用していることを顧客が知ることなく(例えば、配送が商人106によって提供されているように見えるように)起こり得る。他の例では、配送サービスがサービスプロバイダ102によって提供されていることを示す情報(例えば、ピザがX社によって配送されることを示すポップアップウィンドウ)を顧客に通信することができる。多くの機能がサービスプロバイダ116によって実行されるものとして記述されているが、これらの機能のいずれかは、サービスプロバイダ102によって実行されてもよい。 In some cases, the acquisition device may work in conjunction with service provider 116 . Service provider 116 and associated applications, such as consensus services, can provide resources that operate remotely and/or independently from acquisition devices and/or service provider 102 . In one example, service provider 116 may be associated with merchant 106 to manage purchases, inventory, and/or perform other transactions. Service provider 116 may provide an online site or work in conjunction with local applications (eg, desktop applications, mobile applications, etc.) on acquisition devices. Illustratively, the service provider 116 provides an online web service for a pizza restaurant and all delivery services that a customer can order so that the customer (and/or the pizza merchant) can place a pizza order with the pizza merchant. site can be provided. In this manner, communications sent to and/or received from service provider 102 by an acquisition device may be routed through service provider 116 . In other words, service provider 116 can act as an intermediary between acquisition devices and service provider 102 and between merchants and third party services. This type of architecture allows data to be selectively and confidentially shared between parties such that only data relevant to the parties is revealed. Service provider 116 may communicate with service provider 102 via one or more APIs 114 . This can provide seamless integration of shipping services provided by service provider 102 into technology associated with merchant 106 . Returning to the pizza restaurant example above, the pizza restaurant's website may integrate delivery services of service provider 102 by communicating with service provider 102 via one or more APIs 114 . In some cases, this may occur without the customer knowing that the pizza restaurant is using such a delivery service (eg, so that the delivery appears to be provided by the merchant 106). In another example, information indicating that delivery services are provided by service provider 102 (eg, a pop-up window indicating that pizza is delivered by Company X) may be communicated to the customer. Although many functions are described as being performed by service provider 116 , any of these functions may be performed by service provider 102 .

サービスプロバイダ102は追加的に、または代替的に、第三者サービスを管理するための処理を実行することができる。例えば、サービスプロバイダ102は、第三者サービス108と通信して、第三者サービス108の位置を追跡し、アイテムの配送を要求し、配送に関するステータス情報(例えば、アイテムがピックアップまたはドロップオフされたという第三者サービスからの確認)を受信し、等々することができる。例示的な環境100では、サービスプロバイダ102は、取得デバイスから配送提案または推奨提案の受諾のインジケーション(指標、指示)を受信し、アイテムを配送するために第三者サービスを選択する。サービスプロバイダ102は、複数の第三者サービスの位置を識別し、第三者サービス(この場合、第三者サービス108)を選択して、アイテムを配送位置に移送することができる。次いで、サービスプロバイダ102は、アイテムの配送を要求する第三者サービス108に配送要求134を送信することができ、その返答として、第三者サービス108は、配送要求の受諾または拒否のインジケーション(指標、表示)を送信することができる。 Service provider 102 may additionally or alternatively perform processing to manage third party services. For example, the service provider 102 may communicate with the third party service 108 to track the location of the third party service 108, request delivery of an item, and provide status information regarding delivery (eg, whether the item has been picked up or dropped off). confirmation from a third-party service, such as In exemplary environment 100, service provider 102 receives an indication of acceptance of a delivery offer or recommended offer from an acquisition device and selects a third party service to deliver the item. The service provider 102 can identify multiple third party service locations and select a third party service (in this case, the third party service 108) to transport the item to the delivery location. The service provider 102 can then send a delivery request 134 to the third party service 108 requesting delivery of the item, and in response the third party service 108 provides an indication of acceptance or rejection of the delivery request ( indicators, indications) can be sent.

場合によっては、サービスプロバイダ102は、環境100内の任意の当事者に支払いを行わせることができる。例えば、サービスプロバイダ102は、ユーザ104に関連付けられた口座からの資金を、アイテムに対する支払いとして商人106に関連付けられた口座に転送させることができる。さらに、資金は、サービスプロバイダ102、商人106、および/またはユーザ104に関連付けられた口座から、アイテムを配送するための第三者サービス108に関連付けられた口座に転送され得る。取引を容易にするために、サービスプロバイダ102への支払いをさらに行うことができる。 In some cases, service provider 102 may allow any party within environment 100 to make payments. For example, service provider 102 may have funds from an account associated with user 104 transferred to an account associated with merchant 106 as payment for an item. Additionally, funds may be transferred from an account associated with service provider 102, merchant 106, and/or user 104 to an account associated with third party service 108 for shipping items. Payments to the service provider 102 can also be made to facilitate the transaction.

上述のように、サービスプロバイダ102は、取引を電子的に行うために、1つ以上のカード支払ネットワークコンピューティングデバイス110と通信することができる。1つ以上のカード支払ネットワークコンピューティングデバイス110は、カード支払ネットワーク(例えば、MasterCard(登録商標)、VISA(登録商標)など)に関連付けることができる。サービスプロバイダ102はまた、1つ以上の銀行の1つ以上の銀行コンピューティングデバイス112と通信することができる。例えば、サービスプロバイダ102は、加盟店銀行(acquiring bank)、カード発行銀行(issuing bank)、および/または電子支払いのためのユーザ口座を維持する銀行と通信することができる。 As noted above, service provider 102 may communicate with one or more card payment network computing devices 110 to conduct transactions electronically. One or more card payment network computing devices 110 may be associated with a card payment network (eg, MasterCard®, VISA®, etc.). Service provider 102 may also communicate with one or more bank computing devices 112 of one or more banks. For example, service provider 102 may communicate with acquiring banks, issuing banks, and/or banks that maintain user accounts for electronic payments.

加盟店銀行は、カード協会の登録された会員(例えば、Visa(登録商標)、MasterCard(登録商標)など)であってもよく、カード支払ネットワークの一部であってもよい。カード発行銀行は、ユーザに支払カードを発行することができ、カード発行銀行が支払カードを発行したカード所有者によって行われた購入に対して、加盟店銀行に支払いを行うことができる。したがって、いくつかの例では、加盟店銀行のコンピューティングデバイスは、カード支払ネットワークに含まれてもよく、支払いを得るためにカード発行銀行のコンピューティングデバイスと通信してもよい。さらに、いくつかの例では、ユーザは、クレジットカードの代わりにデビットカードを使用することができ、その場合、デビットカードに対応する銀行の銀行コンピューティングデバイスは、ユーザが参加している取引に関する通信を受信することができる。さらに、いくつかのタイプの取引または代替システムアーキテクチャに関与する他の金融機関のコンピューティングデバイスが存在してもよく、したがって、上記は、議論の目的のためのいくつかの例にすぎない。 The merchant bank may be a registered member of a card association (eg, Visa®, MasterCard®, etc.) and may be part of a card payment network. A card-issuing bank may issue a payment card to a user and may pay a merchant bank for purchases made by a cardholder for whom the card-issuing bank has issued a payment card. Thus, in some examples, the merchant bank's computing device may be included in the card payment network and may communicate with the card-issuing bank's computing device to obtain payment. Additionally, in some instances, a user may use a debit card instead of a credit card, in which case the bank computing device of the bank corresponding to the debit card may communicate regarding transactions in which the user is participating. can be received. Additionally, there may be other financial institution computing devices involved in some types of transactions or alternative system architectures, so the above are just a few examples for the purposes of discussion.

1つ以上のカード支払ネットワークコンピューティングデバイス110および/または1つ以上の銀行コンピューティングデバイス112は、サーバ、ラップトップコンピュータ、デスクトップコンピュータなどの1つ以上のコンピューティングデバイスとして実装されてもよい。1つ以上のコンピューティングデバイスは、クラスタ、ファーム、データセンタ、クラウドコンピューティング環境、またはそれらの組合せで構成することができる。一例では、1つ以上のコンピューティングデバイスは、計算リソース、記憶リソースなどを含むクラウドコンピューティングリソースを提供する。 One or more card payment network computing devices 110 and/or one or more bank computing devices 112 may be implemented as one or more computing devices such as servers, laptop computers, desktop computers, and the like. One or more computing devices may be configured in a cluster, farm, data center, cloud computing environment, or combinations thereof. In one example, one or more computing devices provide cloud computing resources, including computing resources, storage resources, and the like.

上述したように、アーキテクチャ100のコンピューティングデバイスは、1つ以上のネットワーク118を介して通信してもよい。1つ以上のネットワーク118は、ローカルエリアネットワークまたはインターネットなどのワイドエリアネットワークなどの任意のタイプのネットワークとすることができ、セルラネットワークなどのワイヤレスネットワーク、Wi-Fiなどのローカルワイヤレスネットワーク、および/またはBluetooth(登録商標)およびBluetooth(登録商標)ローエナジーなどの近距離無線通信、有線ネットワーク、または任意の他のそのようなネットワーク、またはそれらの任意の組合せを含むことができる。したがって、1つ以上のネットワーク118は、有線または光ファイバ技術だけでなく、Bluetooth(登録商標)、Bluetooth(登録商標)ローエナジー、Wi-Fi、およびセルラ通信技術を含む、有線および/または無線通信技術の両方を含むことができる。そのような通信に使用される構成要素は、ネットワークのタイプ、選択された環境、またはその両方に少なくとも部分的に依存することができる。その結果、アーキテクチャ100の1つ以上のコンピューティングデバイスは、有線または無線接続などの任意の方法で、1つ以上のネットワーク118に通信可能に接続することができる。 As noted above, computing devices of architecture 100 may communicate via one or more networks 118 . The one or more networks 118 can be any type of network, such as a local area network or a wide area network such as the Internet, a wireless network such as a cellular network, a local wireless network such as Wi-Fi, and/or It may include short-range wireless communications such as Bluetooth® and Bluetooth® Low Energy, wired networks, or any other such networks, or any combination thereof. Accordingly, one or more of networks 118 may include wired and/or wireless communication technologies, including not only wired or fiber optic technologies, but also Bluetooth®, Bluetooth® Low Energy, Wi-Fi, and cellular communication technologies. Both techniques can be included. The components used for such communication may depend, at least in part, on the type of network, the environment chosen, or both. As a result, one or more computing devices of architecture 100 may be communicatively connected to one or more networks 118 in any manner, such as wired or wireless connections.

本明細書で説明される技術は、様々なコンテキストで、および/または様々な方式で実装され得る。一例として、本技術は、商人対面コンポーネント(例えば、商人用に設計されたアプリケーション、オンラインサイト、インタフェースなど)を用いて実装され得る。この例では、商人106が顧客のために注文することができる。具体的には、顧客は、商人106の施設に入り、商人106と電話し、商人106に通知(例えば、電子メール、テキストメッセージ、ソーシャルメディアポストなど)を送信し、またはそうでなければ商人106と通信することができる。商人106は、商人対面コンポーネント(例えば、商人が使用するように設計されたアイテム取得インタフェース120)と対話して、顧客によって識別されたアイテムを選択し、かつ/または顧客によって提供された他の情報(例えば、配送先住所など)を入力することができる。配送提案がサービスプロバイダ102から受信されると、商人106は、配送提案の情報を顧客に通信することができる(例えば、配送コストを伴う画面を表示する、アイテム取得インタフェース120から顧客への配送コストを読み取る、通知を送信するなど)。あるいは、商人106は、配送提案の情報を顧客に提供することを控えることができる。例えば、商人106は、顧客に無料で配送を提供すること、注文の総コストに配送コストを含めること(例えば、項目別にすることなく)などを決定することができる。いずれにしても、商人106は、顧客からの通信に基づいて、配送提案を受諾または拒否し、かつ/またはアイテムを注文することができる。 The techniques described herein may be implemented in various contexts and/or in various manners. As an example, the technology may be implemented using merchant-facing components (eg, applications, online sites, interfaces, etc. designed for merchants). In this example, a merchant 106 can place an order for a customer. Specifically, the customer may enter the premises of the merchant 106, call the merchant 106, send the merchant 106 a notification (eg, email, text message, social media post, etc.), or otherwise communicate with the merchant 106. can communicate with The merchant 106 interacts with a merchant-facing component (eg, an item acquisition interface 120 designed for use by the merchant) to select items identified by the customer and/or other information provided by the customer. (eg, shipping address, etc.) can be entered. Once the shipping offer is received from the service provider 102, the merchant 106 can communicate the information of the shipping offer to the customer (e.g., the shipping cost to the customer from the item acquisition interface 120 displaying a screen with the shipping cost). , send notifications, etc.). Alternatively, the merchant 106 may refrain from providing shipping offer information to the customer. For example, the merchant 106 may decide to offer free shipping to the customer, include the shipping cost in the total cost of the order (eg, not itemize), and so on. In any event, the merchant 106 can accept or reject the shipping offer and/or order the item based on the communication from the customer.

別の例として、本技術は、顧客対面コンポーネント(例えば、顧客用に設計されたアプリケーション、オンラインサイト、インタフェースなど)を用いて実装され得る。この例では、顧客が商人106に直接注文することができる。具体的には、顧客は、商人106に関連付けられたオンラインサイトに移動し、商人106に関連付けられたアプリケーション(例えば、デスクトップアプリケーション、モバイルアプリケーションなど)を開いて、商人106に注文を行うことができる。いくつかの例では、顧客は、処理中に配送情報(例えば、配送コスト、配送のための推定時間量など)を見ることができ、一方、他の例では、情報は、顧客に示されないか、または他の情報(例えば、注文の総コスト)内に含まれないことがある。さらに、顧客は、顧客対面コンポーネントを介して配送のステータス更新を見ることができる。 As another example, the technology may be implemented using customer-facing components (eg, applications designed for customers, online sites, interfaces, etc.). In this example, a customer can place an order directly with merchant 106 . Specifically, a customer may navigate to an online site associated with merchant 106 , open an application (e.g., desktop application, mobile application, etc.) associated with merchant 106 and place an order with merchant 106 . . In some instances, the customer may see shipping information during processing (e.g., shipping costs, estimated amount of time for shipping, etc.), while in other instances, the information may not be shown to the customer. , or other information (eg, total cost of the order). In addition, the customer can view shipping status updates via the customer facing component.

さらに別の例として、本技術は、ユーザ入力なしに自動的に実施されてもよい。この例では、情報は、表示されないか、そうでなければ個人に伝達されない。例えば、1つ以上の基準を満たした場合に配送提案が自動的に受諾/拒否されるように、配送提案の受諾/拒否のための1つ以上の基準を設定することができる。例示すると、配送提案は、配送コストが閾値コストを下回る(または上回る)場合、配送の推定時間量が閾値時間量を下回る(または上回る)場合、配送の推定ピックアップ時間が特定の時間の前(または後)である場合、配送の推定ドロップオフ時間が特定の時間の前(または後)である場合などに、受諾(または拒否)されてもよい。このように、場合によっては、配送に関する情報は、アイテム取得インタフェース120を介して表示されないことがある。 As yet another example, the techniques may be performed automatically without user input. In this example, no information is displayed or otherwise communicated to the individual. For example, one or more criteria for accepting/rejecting a delivery offer can be set such that the delivery offer is automatically accepted/rejected if one or more of the criteria are met. Illustratively, a delivery offer can be: if the cost of delivery is below (or above) the threshold cost, if the estimated amount of time for delivery is below (or above) the threshold amount of time, if the estimated pickup time for delivery is before (or above) a certain amount of time (or later), it may be accepted (or rejected), such as when the estimated drop-off time for delivery is before (or after) a certain time. Thus, in some cases, information regarding shipping may not be displayed via the item retrieval interface 120 .

同様に、予約の場合、予約要求は、API呼び出しを介して、商人デバイスを介して商人によって、顧客デバイスを介して顧客によって、商人または顧客によって行われた設定を通じて第三者デバイスによって、または、商人と顧客との間の取引の機械学習に基づいてコンセンサスサービスを通じて自動的に、開始されてもよい。コンテンツの集約および分析のために、カスタマイズされたメニューを押すこと、または異なるサービスにわたってメニューを調和させることなどのコンテンツ調和要求、API呼出しを介したコンテンツ要求は、商人デバイスを通じて商人によって、顧客デバイスを通じて顧客によって、商人または顧客によって行われた設定を通じて第三者デバイスによって、または、商人と顧客との間の取引の機械学習に基づいてコンセンサスサービスを通じて自動的に、開始されてもよい。 Similarly, in the case of a reservation, a reservation request may be made via an API call, by a merchant via a merchant device, by a customer via a customer device, by a third party device through settings made by the merchant or the customer, or It may be initiated automatically through a consensus service based on machine learning of transactions between merchants and customers. Content harmonization requests, such as pushing customized menus or harmonizing menus across different services, for content aggregation and analysis, content requests via API calls, by merchants through merchant devices, through customer devices It may be initiated by the customer, by a third party device through settings made by the merchant or the customer, or automatically through a consensus service based on machine learning of transactions between the merchant and the customer.

図2は、図1のサービスプロバイダ102(または場合によってはサービスプロバイダ116)の例示的な詳細を示す。サービスプロバイダ102は、サーバ、ラップトップコンピュータ、デスクトップコンピュータなどの1つ以上のコンピューティングデバイスとして実装することができる。1つ以上のコンピューティングデバイスは、クラスタ、ファーム、データセンタ、クラウドコンピューティング環境、またはそれらの組合せで構成することができる。一例では、1つ以上のコンピューティングデバイスは、計算リソース、記憶リソースなどを含むクラウドコンピューティングリソースを提供する。サービスプロバイダ102の1つ以上のコンピューティングデバイスは、1つ以上のプロセッサ202、メモリ204、および1つ以上のネットワークインタフェース206を含んでもよい。1つ以上のプロセッサ202は、中央演算処理装置(CPU)、グラフィックス処理装置(GPU)、マイクロプロセッサ、デジタル信号プロセッサなどを含むことができる。 FIG. 2 shows exemplary details of service provider 102 (or service provider 116, as the case may be) of FIG. Service provider 102 may be implemented as one or more computing devices such as servers, laptop computers, desktop computers, and the like. One or more computing devices may be configured in a cluster, farm, data center, cloud computing environment, or combinations thereof. In one example, one or more computing devices provide cloud computing resources, including computing resources, storage resources, and the like. One or more computing devices of service provider 102 may include one or more processors 202 , memory 204 , and one or more network interfaces 206 . The one or more processors 202 may include a central processing unit (CPU), graphics processing unit (GPU), microprocessor, digital signal processor, or the like.

メモリ204は、1つ以上の「モジュール」として構成されたソフトウェア機能を含むことができる。用語「モジュール」は、議論のためにソフトウェアの例示的な分割を表すことを意図しており、任意のタイプの要件または必要な方法、やり方、または必要な編成を表すことを意図していない。したがって、様々な「モジュール」または構成要素が議論されているが、それらの機能および/または同様の機能は異なるように配置することができる(たとえば、より少ない数のモジュールに組み合わされ、より多くのモジュールに分割されるなど)。さらに、特定の機能はここではプロセッサによって実行されるように構成されたソフトウェアモジュールとして実装されるものとして説明されるが、他の実施形態では、機能のいずれかまたはすべてが、ハードウェア論理コンポーネントによって全体的または部分的に実装されてもよい(例えば、実行されてもよい)。例えば、限定はしないが、使用することができる例示的なタイプのハードウェア論理構成要素には、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、プログラム固有標準製品(ASSP)、システムオンチップシステム(SOC)、複合プログラマブル論理デバイス(CPLD)などが含まれる。図示のように、メモリ204は、コンセンサスサービス207、推奨モジュール208、コンテンツ集約モジュール210、第三者サービスモジュール212、及び支払取引モジュール214を含むことができる。 Memory 204 may include software functionality organized as one or more "modules." The term "module" is intended to represent an exemplary division of the software for purposes of discussion, and is not intended to represent any type of requirement or required method, manner, or required organization. Thus, while various "modules" or components are discussed, their functions and/or similar functions may be arranged differently (e.g., combined into fewer modules and more modules). divided into modules, etc.). Furthermore, although certain functions are described herein as being implemented as software modules configured to be executed by a processor, in other embodiments any or all of the functions are implemented by hardware logic components. May be implemented (eg, performed) in whole or in part. For example, without limitation, exemplary types of hardware logic components that can be used include Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Program Specific Standard Products (ASSPs), These include system-on-chip systems (SOCs), complex programmable logic devices (CPLDs), and the like. As shown, memory 204 can include consensus service 207 , recommendation module 208 , content aggregation module 210 , third party service module 212 , and payment transaction module 214 .

コンセンサスサービス207は、APIエンドポイントを介して、第三者サービス、および商人および/またはユーザデバイス上で実行される他のアプリケーションとインタフェースすることができる。コンセンサスサービス207は、第三者サービスおよび商人に関連するデータベースとインタフェースするように構成することもできる。一実装形態では、コンセンサスサービス207は、プッシュ機構/プル機構/またはプッシュプル機構を介して、第三者サービス108および/または商人もしくはユーザデバイスから情報を受信し、インテリジェントな方法で要求をスケジュールし、様々なルールおよびフィルタを異なるソースから入ってくる要求に適用することによって、統合された方法で商人に注文を表示する。コンセンサスサービスは、ヒューリスティック(発見的)モデルまたは機械学習モデルに基づいて、特定の第三者サービスに要求を委任することもできる。 Consensus service 207 can interface via API endpoints with third party services and other applications running on merchants and/or user devices. Consensus service 207 can also be configured to interface with databases associated with third party services and merchants. In one implementation, consensus service 207 receives information from third party services 108 and/or merchants or user devices via a push/pull mechanism/or push-pull mechanism and schedules requests in an intelligent manner. , displays orders to merchants in an integrated manner by applying various rules and filters to incoming requests from different sources. The consensus service can also delegate requests to specific third party services based on heuristic or machine learning models.

推奨モジュール208は、サービスプロバイダ102に関連付けられた配送サービスによるアイテムの配送に関する配送提案などの提案を生成するための処理を実行することができる。別の種類の提案は、レストランでのユーザの予約に関する予約を示す予約提案、またはいくつかのユーザ予約要求に関連する座席表であってもよい。さらに別の種類の提案は、例えば、商人のキッチンディスプレイシステムからトリガされて、第三者サービスにプッシュするメニュー更新であってもよい。この場合、情報130は、商人デバイスから第三者サービスに流れ、例えばユーザデバイス104上で実行される。多くの場合、サービスプロバイダ102は、1つ以上のアプリケーションプログラミングインタフェース(API)216を介して配送提案の要求を受信し、それに応答して、配送提案を生成し、その配送提案を要求エンティティに送信することができる。配送提案の要求に含まれる情報については、図3を参照して以下でさらに詳細に説明する。推奨モジュール208は、配送提案の要求に含まれる情報、商人の現在または過去の注文の状況、準備時間、および第三者サービス情報データストア218または他の場所に格納された第三者サービスに関する情報(例えば、第三者サービスの現在位置、第三者サービスプロファイル情報、処理された注文に関連する第三者データ、注文タイミング、注文ラグなど)、商人データストア220または他の場所に格納された商人に関する情報(例えば、商人の現在位置、商人プロファイル情報など)、ユーザに関する情報(例えば、ユーザの現在位置、ユーザプロファイルなど)などに基づいて、配送提案を生成することができる。 Recommendation module 208 may perform processing to generate offers, such as delivery offers, for delivery of items by delivery services associated with service provider 102 . Another type of offer may be a reservation offer showing a reservation for the user's reservation at a restaurant, or a seating chart associated with some user reservation request. Yet another type of suggestion may be, for example, a menu update triggered from a merchant's kitchen display system and pushed to a third party service. In this case, information 130 flows from the merchant device to the third party service, running on user device 104, for example. Service providers 102 often receive requests for delivery offers via one or more application programming interfaces (APIs) 216, and in response generate a delivery offer and send the delivery offer to the requesting entity. can do. The information included in the request for delivery proposals is described in more detail below with reference to FIG. The recommendation module 208 uses information contained in the request for a shipping offer, the status of the merchant's current or past orders, preparation times, and information about third party services stored in the third party service information data store 218 or elsewhere. (e.g., third party service current location, third party service profile information, third party data related to orders processed, order timing, order lag, etc.), stored in merchant data store 220 or elsewhere. A shipping offer can be generated based on information about the merchant (eg, current location of the merchant, merchant profile information, etc.), information about the user (eg, current location of the user, user profile, etc.), and the like.

第三者サービスプロファイル情報には、(i)第三者サービスが配送を行うための平均時間(例えば、マイル当たりの平均時間、全平均移動時間等)を示す第三者サービスの配送履歴情報、(ii)第三者サービスが配送ピックアップおよび/またはドロップオフについて時間通りであるか否かを示す情報、(iii)第三者サービスがアイテムを移送するために使用する車両または車両の種類を示す車両情報(例えば、バイク、自動車、バン、トラック等)、(iv)第三者サービスが一般的にどこに位置するかを示す履歴位置情報(例えば、ホームの住所、第三者サービスが特定の時間以上位置する施設等)等が含まれる。 Third Party Service Profile Information includes (i) Third Party Service delivery history information that indicates the average time for the Third Party Service to make a delivery (e.g., average time per mile, total average travel time, etc.); (ii) information indicating whether the third party service will be on time for delivery pickup and/or drop off; (iii) indicating the vehicle or type of vehicle that the third party service will use to transport the item; vehicle information (e.g., motorcycles, cars, vans, trucks, etc.); (iv) historical location information indicating where the Third Party Service is generally located (e.g., home address; facilities located above), etc.

商人プロファイル情報には、(i)ピックアップのためのアイテムまたはアイテムの種類を準備する(例えば、アイテムを調理する、アイテムを製造する等)ための時間量(例えば、正確、平均、推定等)を示すアイテム準備情報、(ii)商人が取得のために提供するアイテムに関するアイテム情報(例えば、アイテム識別子、アイテムコスト/重量/体積/サイズ/カテゴリに関する情報等)、(iii)アイテムを移送するために商人が使用するパッケージに関する情報(例えば、配送ボックスのサイズ、形状、重量、体積等)等が含まれる。 Merchant profile information may include (i) the amount of time (e.g., exact, average, estimated, etc.) to prepare (e.g., cook the item, manufacture the item, etc.) the item or type of item for pickup; (ii) item information about the item that the merchant provides for acquisition (e.g., item identifier, information about item cost/weight/volume/size/category, etc.); (iii) to transport the item; Information about the packaging used by the merchant (eg, shipping box size, shape, weight, volume, etc.) is included.

配送提案の一部であってもよい例示的な情報は以下を含む:
●アイテムの配送コスト-アイテムを配送するためにサービスプロバイダ102の配送サービスを使用するための価格(例えば、レストランから食べ物をピックアップし、それを顧客の位置に配送するための第三者サービスに対する6ドルの料金)。配送コストは、アイテムの特性、例えば、アイテムのサイズ、形状、重量、体積、タイプ等(例えば、より大きい又はより重いアイテムはより多くのコストがかかり得る、奇妙な形状のアイテム(所定の形状を有するアイテム)はより多くのコストがかかり得る、脆弱な(壊れやすい)アイテムは非脆弱なアイテムよりもコストがかかり得る)、第三者サービスに関する情報(例えば、コストは第三者サービスからピックアップ位置までの距離で増加し得る、利用可能な第三者サービスの数が減少することにつれてコストが増加し得る)、商人によるアイテムの準備時間に関する情報(例えば、準備時間が減少(又は増加)するにつれてコストが増加(又は減少)し得る)、ピックアップの位置(例えば、特定のポイントからピックアップ位置までの距離が増加するにつれてコストが増加し得る)、ドロップオフの位置(例えば、コストは特定のポイントからドロップオフ位置までの距離が増加するにつれて増加し得る)、時刻(例えば、コストは、夕方などのピーク配送時間中は増加し得る)などの要因に基づいて変化し得る。
●アイテムの配送のための時間量(例えば、推定時間量-配送には20~30分を要する)。時間量は一般に、第三者サービスがアイテムを取得してそのアイテムをドロップオフ位置に移送する時間であってもよい。しかしながら、いくつかの例では、時間量は、商人によってアイテムを準備する時間を含むことができる(例えば、時間量は、アイテムを注文してからそれが顧客の位置に到着するまでの合計時間を含むことができる)。配送のための時間量は、アイテムの特性、例えば、アイテムのサイズ、形状、重量、体積、タイプ等(例えば、より大きい又はより重いアイテムは配送するためにより多くの時間を要し得る、奇抜な形状のアイテム(所定の形状を有するアイテムは配送するためにより多くの時間を要し得る、脆弱な(壊れやすい)アイテムは非脆弱なアイテムよりも多くの時間を要し得る)、第三者サービスに関する情報(例えば、第三者サービスからピックアップ位置までの距離が増加するにつれて配送のための時間量が増加し得る、利用可能な第三者サービスの数が減少するにつれて配送のための時間量が増加し得る、等)、時刻(例えば、ラッシュアワーの間のようなピーク移動時間の間に時間量が増加し得る)などの要因に基づいて変化し得る。
●アイテムの配送のためのピックアップ時間(例えば、第三者サービスがアイテムをピックアップする推定日時、週、月、年等)。ピックアップ時間は、アイテムが顧客への配送のために商人の位置からピックアップされるときであってもよい。場合によっては、ピックアップ時間は、時間ウィンドウ(例えば、2~2:30PM)である。さらに、場合によっては、配送提案は、第三者サービスがアイテムをピックアップする最新の時間に関する期限を含むことができる。ピックアップ時間は、第三者サービスに関する情報(例えば、ピックアップ時間は、第三者サービスからピックアップ位置までの距離が増加するにつれてより遠くに移動することができ、ピックアップ時間は、利用可能な第三者サービスの数が減少するにつれてより遠くに移動するなど)、時刻(例えば、ピックアップ時間は、ラッシュアワーなどのピーク配送時間中により遠くに移動するなど)などの要因に基づいて変化し得る。
●アイテムの配送のためのドロップオフ時間(例えば、第三者サービスがアイテムをドロップオフする推定日時、週、月、年等)。ドロップオフ時間は、アイテムが顧客の位置でドロップオフされるときであってもよい。場合によっては、ドロップオフ時間は、時間ウィンドウ(例えば、3~4PM)である。ドロップオフ時間は、アイテムの特性、例えば、アイテムのサイズ、形状、重量、体積、タイプなど(例えば、より大きいまたはより重いアイテムは配送により多くの時間を要し得る、奇抜な形状のアイテム(所定の形状を有するアイテム)は配送により多くの時間を要し得る、脆弱な(壊れやすい)アイテムは非脆弱なアイテムより多くの時間を要し得る)、第三者サービスに関する情報(例えば、ドロップオフ時間は、第三者サービスからピックアップ位置までの距離が増加するにつれて、より遠くに移動し得る、ドロップオフ時間は、利用可能な第三者サービスの数が減少するにつれて、より遠くに移動し得る)、時刻(例えば、ドロップオフ時間は、ラッシュアワー中などのピーク配送時間中により遠くに移動する)などの要因に基づいて変化し得る。
●配送提案が期限切れとなる時期。場合によっては、配送提案は、特定の時間(例えば、時刻、曜日、月、年など)までに受諾されない場合、期限切れになることがある。したがって、配送提案は、期限切れの時間(例えば、明日の午後2時、配送提案の受信から2時間など)に関連付けられてもよい。
●例えば、注文が行われた第三者サービスが配送人または他の技術的困難性のために不可能である場合に、発注を提供することができる第三者サービス。
●キッチンディスプレイシステムのためのアイテムのシーケンス。アイテムは、異なるソースからの注文のために単一のタブレットを商人が保持できるようにするために、注文IDまたはアイテム準備時間のいずれかによって配列される。
●キッチンディスプレイシステムが、注文の更新を第三者サービスに示すための準備タイムラインまたは配送タイムライン。
Exemplary information that may be part of a delivery offer includes:
Item delivery cost - the price for using the service provider's 102 delivery service to deliver the item (e.g., 6 for a third party service to pick up food from a restaurant and deliver it to the customer's location). dollar fee). Shipping costs are determined by item characteristics, such as item size, shape, weight, volume, type, etc. (e.g., larger or heavier items may cost more, oddly shaped items (items that have fragile items) may cost more, fragile (fragile) items may cost more than non-vulnerable items), information about third-party services (e.g., cost may vary from third-party service to pickup location) cost may increase as the number of available third-party services decreases), information about the preparation time of the item by the merchant (e.g., as preparation time decreases (or increases) pick-up location (e.g., cost may increase as the distance from a particular point to the pickup location increases); drop-off location (e.g., cost may increase (or decrease) from a particular point); may increase as the distance to the drop-off location increases), time of day (eg, costs may increase during peak delivery times such as in the evening), and other factors.
• Amount of time for delivery of the item (eg, estimated amount of time - delivery takes 20-30 minutes). The amount of time may generally be the time for the third party service to retrieve the item and transport it to the drop off location. However, in some examples, the amount of time can include the time to prepare the item by the merchant (e.g., the amount of time is the total time from ordering the item to its arrival at the customer's location). can include). The amount of time for delivery depends on the characteristics of the item, such as the size, shape, weight, volume, type, etc. of the item (e.g., larger or heavier items may take more time to deliver, unusual Shaped items (items with a given shape may take longer to deliver, fragile (fragile) items may take longer than non-fragile items), third party services (e.g., the amount of time for delivery may increase as the distance from the third party service to the pickup location increases; the amount of time for delivery may increase as the number of available third party services decreases; may increase, etc.), time of day (eg, the amount of time may increase during peak travel times, such as during rush hour), and other factors.
• Pick-up time for delivery of the item (eg, estimated day, week, month, year, etc., when the third-party service will pick up the item). The pick-up time may be when the item is picked up from the merchant's location for delivery to the customer. In some cases, the pick-up time is a time window (eg, 2-2:30 PM). Additionally, in some cases, the delivery offer may include a deadline for the latest time for the third party service to pick up the item. Pickup times are information about the third party service (e.g., pick up times may move further away as the distance from the third party service to the pick up location increases, pick up times may vary from available third party may vary based on factors such as time of day (e.g., pick-up times travel further afield during peak delivery times such as rush hours), etc.
- The drop-off time for delivery of the item (eg, the estimated time of day, week, month, year, etc., when the third-party service will drop the item off). The drop-off time may be when the items are dropped off at the customer's location. In some cases, the drop-off time is a time window (eg, 3-4 PM). Drop-off time is based on item characteristics such as item size, shape, weight, volume, type, etc. (items with the shape of a Times may move further away as the distance from the 3rd party service to the pickup location increases, drop off time may move further away as the number of available 3rd party services decreases. ), time of day (eg, drop-off times move further away during peak delivery times, such as during rush hours), and other factors.
● When the shipping offer expires. In some cases, a delivery offer may expire if it is not accepted by a certain time (eg, time of day, day of week, month, year, etc.). Thus, a delivery offer may be associated with an expiration time (eg, 2:00 pm tomorrow, 2 hours from receipt of the delivery offer, etc.).
● A third party service that can provide an order, for example, if the third party service with which the order was placed is not possible due to carrier or other technical difficulties.
● A sequence of items for a kitchen display system. Items are ordered either by order ID or item ready time to allow a merchant to keep a single tablet for orders from different sources.
• A preparation or delivery timeline for the kitchen display system to show order updates to third party services.

コンテンツ集約モジュール210は、メニュー更新、配送の進行に関する配送情報、予約リストなど、集約されたデータに基づいて分析情報を提供することができる。例えば、コンテンツ集約モジュール210は、1つ以上のAPI216を介して、配送ステータス更新の要求を受信し、その応答として、配送ステータスに関する情報を生成し、その情報を要求エンティティに送信することができる。他の例では、配送のステータスに関するそのような情報は、自動的に、および/または別のイベントの発生時に生成され、送信され得る。コンテンツ集約モジュール210は、第三者サービスの位置、商人の位置におけるアイテムのピックアップの確認および/または顧客の位置におけるドロップオフに関する第三者サービスからのインジケーション(指標、指示)、ピックアップの確認を示す商人からの通信、アイテムを準備するステータスに関する商人からの通信(例えば、料理を調理するために残された時間量)など、様々な情報に基づいて配送のステータスに関する情報を生成することができる。したがって、コンテンツ集約モジュール210は、配送人に関する位置情報を受信するために、第三者サービスモジュール212と通信してもよい。 The content aggregation module 210 can provide analytics information based on the aggregated data, such as menu updates, delivery information regarding delivery progress, reservation lists, and the like. For example, the content aggregation module 210 can receive requests for delivery status updates via one or more of the APIs 216 and, in response, generate information regarding the delivery status and send the information to the requesting entity. In other examples, such information regarding the status of shipping may be generated and transmitted automatically and/or upon the occurrence of another event. The Content Aggregation Module 210 provides an indication from the third party service regarding the location of the third party service, confirmation of pick-up of items at the merchant's location and/or drop-off at the customer's location, confirmation of pick-up. Information about the status of the delivery can be generated based on a variety of information, such as communications from merchants indicating the status of the item, communications from merchants about the status of preparing the item (e.g., amount of time left to cook the food). . Accordingly, the content aggregation module 210 may communicate with the third party services module 212 to receive location information regarding the shipper.

第三者サービスモジュール212は、第三者サービスを管理することができる。例えば、第三者サービスモジュール212は(配送前、配送中、および/または配送後の)第三者サービスに関連付けられた配送人の位置を追跡し、配送のために第三者サービスを選択し、配送を容易にするために第三者サービスと通信し、配送ステータスに関する更新を提供し、様々な時刻および/または曜日の様々な配送位置への第三者サービスの移動時間を予測することなどができる。そうするために、第三者サービスモジュール212は、配送提案の要求に含まれる情報、配送ステータス更新の要求に含まれる情報、第三者サービス情報データストア218または他の場所に格納された第三者サービスに関する情報(例えば、第三者サービスの現在位置、第三者サービスプロファイル情報など)、商人データストア220または他の場所に格納された商人に関する情報(例えば、商人の現在位置、商人プロファイル情報など)、買い手に関する情報(例えば、買い手の現在位置、ユーザプロファイルなど)などの様々な情報を分析することができる。いくつかの例では、第三者サービスモジュール212は、アクティブ化、移動、ポジショニング、および/または非アクティブ化を通じて、たとえばAPIを通じて、第三者サービスを管理することができる。 Third party services module 212 may manage third party services. For example, the third party services module 212 tracks the location of the shipper associated with the third party service (before, during, and/or after delivery) and selects the third party service for delivery. , communicate with the Third Party Service to facilitate deliveries, provide updates on delivery status, estimate travel times for the Third Party Service to various delivery locations at various times and/or days of the week, etc. can be done. To do so, the third party service module 212 retrieves the information included in the request for a delivery offer, the information included in the request for a delivery status update, the third party service information stored in the third party service information data store 218 or elsewhere. information about merchant services (e.g., current location of third-party services, third-party service profile information, etc.), information about merchants stored in merchant data store 220 or elsewhere (e.g., current location of merchant, merchant profile information; etc.), information about the buyer (eg, the buyer's current location, user profile, etc.) can be analyzed. In some examples, third party service module 212 can manage third party services through activation, movement, positioning, and/or deactivation, eg, through an API.

一例として、第三者サービスモジュール212は、第三者サービスを選択して、その配送人がアイテムを商人から買い手に移送するのを容易にすることができる。場合によっては、第三者サービスは、1つ以上のAPI216を介して配送提案の受諾を受信することに応答して選択される。他の例では、配送は他のイベントの発生に応じてアレンジされる。第三者サービスモジュール212は、商人の位置に対する第三者サービスの位置(例えば、ピックアップ位置に最も近い第三者サービスを選択する)、第三者サービスの利用可能性(例えば、利用可能な第三者サービスを選択する)、アイテムを移送するために第三者サービスによって使用される車両のタイプ(例えば、配送されるそのタイプのアイテムを移送することができる第三者サービスを選択する)、配送されるアイテムに関する情報(例えば、サイズ、形状、体積、タイプなど)などのような、第三者サービスを選択するために様々な情報を使用することができる。次いで、第三者サービスモジュール212は、選択された第三者サービスと通信して、配送を手配(アレンジ)することができる。サービスプロバイダ102は、移送するアイテムの数、商人(または複数のアイテムが配送される場合には複数の商人)の位置、要求されたピックアップ時間および/またはドロップオフ時間などに関する情報を提供することができる。配送のために複数の移動が必要であると判定された場合(例えば、配送されるアイテムの数、配送されるアイテムのサイズ、第三者サービスの移送能力(キャパシティ)などに起因して)、第三者サービスモジュール212は、第三者サービスに複数の移動を通知し、かつ/または複数の第三者サービスに命令を送信して、配送を行うことができる。さらに、第三者サービスモジュール212は、緊急ではなく、第三者サービスのために閾値数未満の配送がスケジュールされるダウンタイム期間中に実行され得る配送を第三者サービスに対して通知する。第三者サービスモジュール212は、第三者サービスに期間を通知することができ(例えば、「今週のいつでも午後8時から午後10時の間に配送を実行する」)、または第三者サービスは、1日、1週間などを通して時間が空いているので、配送を行うことができる。多くの場合、第三者サービスモジュール212は、エンティティに配送サービスを公開するために使用される1つ以上のAPI216よりも、非APIチャネルおよび/または別個のチャネルを通じて第三者サービスと通信する。 As an example, the third party services module 212 can select third party services to facilitate the shipper's transfer of items from the merchant to the buyer. In some cases, the third party service is selected in response to receiving acceptance of the delivery offer via one or more APIs 216 . In other examples, delivery is arranged in response to the occurrence of other events. The third party service module 212 can determine the location of the third party service relative to the merchant's location (e.g., select the third party service closest to the pickup location), the availability of the third party service (e.g., the first available select a third-party service), the type of vehicle used by the third-party service to transport the item (e.g., select a third-party service that can transport that type of item being shipped); Various information can be used to select a third party service, such as information about the item being shipped (eg, size, shape, volume, type, etc.). The third party service module 212 can then communicate with the selected third party service to arrange delivery. The service provider 102 may provide information regarding the number of items to be transferred, the location of the merchant (or multiple merchants if multiple items are to be delivered), requested pick-up and/or drop-off times, and the like. can. If it is determined that multiple trips are required for delivery (for example, due to the number of items being shipped, the size of the items being shipped, the transfer capacity of the Third Party Service, etc.); , the third party services module 212 can notify third party services of multiple movements and/or send instructions to multiple third party services to make deliveries. In addition, the third party service module 212 notifies the third party service of deliveries that are not urgent and may be performed during downtime periods when less than the threshold number of deliveries are scheduled for the third party service. The third party service module 212 can notify the third party service of a time period (e.g., "Perform delivery between 8:00 pm and 10:00 pm anytime this week"), or the third party service can notify one As time is available throughout the day, week, etc., deliveries can be made. In many cases, the third party service module 212 communicates with the third party service through non-API and/or separate channels rather than one or more APIs 216 used to expose delivery services to entities.

支払取引モジュール214は、商人、ユーザ、および/または第三者サービスの間の支払取引を容易にすることができる。例えば、取引モジュール214は、取引に関する注文を受信し、取引を処理し、取引に関する取引情報を生成および/または格納することなどができる。取引中、ユーザ(例えば、顧客)は、購入、レンタル、リース、借用、ライセンス供与などによって、商人からアイテムを取得することができる。アイテムは、商人によって提供される商品および/またはサービスを指すことができる。取引に対して支払うとき、ユーザは、商人に支払われるべき支払額を提供することができる。場合によっては、取引は、ユーザに関連付けられた金融口座から商人に関連付けられた金融口座に資金を電子的に転送することによって処理されてもよい。いくつかの例では、取引モジュール214は、安全な電子金融取引を実行するように構成された1つ以上のコンピューティングデバイスによって実装され得る。 Payment transaction module 214 may facilitate payment transactions between merchants, users, and/or third party services. For example, trading module 214 may receive orders for trading, process trades, generate and/or store trade information for trades, and so on. During a transaction, a user (eg, customer) can obtain items from the merchant by purchasing, renting, leasing, borrowing, licensing, and the like. Items can refer to goods and/or services offered by a merchant. When paying for a transaction, the user can provide the payment amount due to the merchant. In some cases, a transaction may be processed by electronically transferring funds from a financial account associated with the user to a financial account associated with the merchant. In some examples, transaction module 214 may be implemented by one or more computing devices configured to conduct secure electronic financial transactions.

支払取引モジュール214は、様々なチャネルを介して開始される支払取引を容易にすることができる。一例として、ユーザは、商人に注文を行うためにユーザデバイスと対話することができる。ここで、サービスプロバイダ102は、注文を履行するために商人と通信することができる(例えば、注文が出されたことを商人に通知し、注文を履行するよう商人に要求するなど)。別の例として、商人は、商人デバイスと対話して、ユーザに代わって注文を行うことができる。ここで、ユーザは電話、本人、通知(例えば、テキストメッセージ、電子メール、ソーシャルメディアなど)などを介して商人と通信して、商人に注文を行うことを望むことを示すことができる。これらの例のいずれにおいても、ユーザは注文時、アイテムが配送されている間、ドロップオフ時(例えば、第三者サービスデバイスと対話する)など、いつでも支払いを提供することができる。 Payment transaction module 214 can facilitate payment transactions initiated through various channels. As an example, a user may interact with a user device to place an order with a merchant. Here, the service provider 102 can communicate with the merchant to fulfill the order (eg, notify the merchant that the order has been placed, request the merchant to fulfill the order, etc.). As another example, a merchant can interact with a merchant device to place an order on behalf of a user. Here, the user can communicate with the merchant via phone, in person, notification (eg, text message, email, social media, etc.), etc. to indicate to the merchant that they would like to place an order. In any of these examples, the user can provide payment at any time, such as when ordering, while the item is being delivered, or at drop-off (eg, interacting with a third party service device).

ユーザは、現金、小切手、支払カード、近距離無線通信(NFC)、Bluetooth(登録商標)、口座、電子支払いなどの様々な方法を介して支払いを提供することができる。いくつかの例では、支払取引モジュール214は、ユーザとユーザデバイスとの対話、および商人と商人デバイスとの対話に基づいて、ユーザと商人との間の取引のためのカードレス支払いを可能にする。したがって、いくつかの例では、カードレス支払い取引は、POS位置で行われる取引を含むことができ、その間に、ユーザの電子支払口座は、ユーザがPOS位置で商人に支払カードを物理的に提示する必要なしに課金される。その結果、商人は、処理される取引のためにユーザの金融口座に関する詳細を受け取る必要がない。一例として、電子支払いは、電子支払口座についてサービスプロバイダ102にサインアップするときにユーザが提供したクレジットカード発行者またはクレジットカード番号に課金されてもよい。別の例として、ユーザは、電子支払いを行う際に使用するために維持される口座に前払いされた金額を有することができる。他の変形も当業者には明らかであろう。 Users can provide payment via a variety of methods such as cash, check, payment card, Near Field Communication (NFC), Bluetooth®, account, electronic payment, and the like. In some examples, payment transaction module 214 enables cardless payments for transactions between users and merchants based on interactions between users and user devices and between merchants and merchant devices. . Thus, in some examples, cardless payment transactions can include transactions conducted at a POS location, during which a user's electronic payment account is stored only when the user physically presents a payment card to a merchant at the POS location. charged without having to. As a result, the merchant does not need to receive details regarding the user's financial account for transactions to be processed. As an example, electronic payments may be charged to the credit card issuer or credit card number provided by the user when signing up with service provider 102 for an electronic payment account. As another example, a user may have prepaid amounts in an account maintained for use in making electronic payments. Other variations will be apparent to those skilled in the art.

場合によっては、支払取引モジュール214は、取引情報データストア222に取引情報を格納することができる。取引情報は、商人デバイス、買い手デバイス、第三者サービスデバイスから受信され、および/またはサービスプロバイダ102によって生成されてもよい。取引情報は、取引の時間、場所、および/または量に関する情報、取得されたアイテムに関連する情報(例えば、販売されたアイテムを識別する情報)、使用されている支払いのタイプ(例えば、現金、小切手、支払カード、電子支払いなど)、ならびに買い手情報などの追加情報を含むことができる。例えば、支払カードが使用される場合、取引情報は、支払カードに記憶されたデータ(例えば、トラック1のデータ(カード所持者名、カード番号および他のカード情報))を含むことができる。さらに、取引を完了するとき、買い手は、時には電子メールを介してレシートを受け取るためのレシート電子メールアドレスを提供することができる。取り込むことができる取引情報の他の例には、アイテム情報(例えば、取得されているアイテムの項目別リスト、各アイテムについて支払われている価格、アイテムの記述(サイズ、風味、色など))、特定の取引の地理的POS(Point of Sale)位置を示す地理的位置データ、オンライン/オフラインカードデータ、商人を記述するデータ(例えば、商人識別子、商人カテゴリコード(MCC)など)、配送提案の要求に含まれる情報、配送提案に含まれる情報、買い手のソーシャルネットワークへの認証時に受信される任意のタイプのデータ、および/または様々な他のタイプの情報が含まれる。いくつかの例では、取引情報は、商人データストア220に商人に関する情報を格納するために使用されてもよい(例えば、商人によって提供されるアイテムのコストは、商人の施設での取引に関する取引情報から取得されてもよい)。 In some cases, payment transaction module 214 may store transaction information in transaction information data store 222 . Transaction information may be received from merchant devices, buyer devices, third party service devices, and/or generated by service provider 102 . Transaction information may include information about the time, place, and/or amount of the transaction, information related to the item acquired (e.g., information identifying the item sold), type of payment used (e.g., cash, checks, payment cards, electronic payments, etc.), as well as additional information such as buyer information. For example, if a payment card is used, the transaction information may include data stored on the payment card (eg, Track 1 data (cardholder name, card number and other card information)). Additionally, when completing a transaction, the buyer can sometimes provide a receipt e-mail address for receiving receipts via e-mail. Other examples of transaction information that can be captured include item information (e.g., itemized list of items being acquired, price paid for each item, item description (size, flavor, color, etc.); Geolocation data indicating the geographic point of sale (POS) location of a particular transaction, online/offline card data, data describing merchants (e.g., merchant identifiers, merchant category codes (MCC), etc.), requests for delivery offers information included in a delivery offer, information included in a shipping offer, any type of data received upon authenticating a buyer to a social network, and/or various other types of information. In some examples, the transaction information may be used to store information about the merchant in the merchant data store 220 (e.g., the cost of items offered by the merchant may be stored in the transaction information for transactions at the merchant's premises). may be obtained from).

図2は、サービスプロバイダ102の構成要素およびデータが単一の場所に存在するものとして示しているが、これらの構成要素およびデータは代替的に、任意の方法で異なるコンピューティングデバイスおよび/または異なる位置にわたって分散させることができる。その結果、機能は、1つ以上のコンピューティングデバイスによって実現されてもよく、説明されている様々な機能は様々なコンピューティングデバイスにわたって様々な方法で分散される。複数のコンピューティングデバイスは、一緒にまたは別々に配置され、例えば、仮想サーバ、サーババンク、および/またはサーバファームとして編成されてもよい。説明される機能は、単一のエンティティまたは企業のサーバによって提供されてもよく、または複数の異なる買い手または企業のサーバおよび/またはサービスによって提供されてもよい。 Although FIG. 2 depicts the components and data of service provider 102 as residing in a single location, these components and data may alternatively reside on different computing devices and/or different locations in any manner. It can be distributed over locations. As a result, the functions may be implemented by one or more computing devices, and the various functions described may be distributed in various ways across the various computing devices. Multiple computing devices may be collocated together or separately and organized as, for example, virtual servers, server banks, and/or server farms. The functionality described may be provided by a single entity or company's server, or may be provided by multiple different buyers' or companies' servers and/or services.

図3は、商人デバイス300の例示的な詳細を示す。例えば、商人デバイス300は、図1の商人106によって使用されてもよい。商人デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、電子リーダデバイス、モバイルハンドセット、携帯情報端末(PDA)、ポータブルナビゲーションデバイス、ポータブルゲームデバイス、タブレットコンピュータ、ウェアラブルコンピュータ(例えば、スマートウォッチ、光学ヘッドマウントディスプレイ(OHMD)など)、ポータブルメディアプレーヤ、テレビ、セットトップボックス、自動車内のコンピュータシステム、機器、カメラ、ロボット、ホログラムシステム、セキュリティシステム、ホームベースのコンピュータシステム(例えば、インターコムシステム、ホームメディアシステムなど)、プロジェクタ、現金自動預け払い機(ATM)などとして実装され得る。いくつかの実施態様では、商人デバイス300は、配送サービス、予約サービス、メニューサービス、レビューサービスなどの第三者サービスを実行することができる。商人デバイス300は、一実施形態では、1つ以上のコンセンサスサービス207を介して第三者サービスおよび他のサービスとインタフェースすることができる。一例では、サービスプロバイダは、第三者サービスおよび商人デバイス300と通信するためのAPIエンドポイントを提供し、APIエンドポイントは、サービスプロバイダがアクセスするためのAPIエンドポイント114を提供してもよいし、しなくてもよい。従って、サービスプロバイダのコンセンサスサービス207は、外部サービスからデータをプルし、プッシュし、またはプッシュおよびプルすることができるかもしれない。 FIG. 3 shows exemplary details of merchant device 300 . For example, merchant device 300 may be used by merchant 106 of FIG. The merchant device 300 may be a laptop computer, desktop computer, server, smart phone, electronic reader device, mobile handset, personal digital assistant (PDA), portable navigation device, portable gaming device, tablet computer, wearable computer (e.g., smartwatch, optical head-mounted displays (OHMD), portable media players, televisions, set-top boxes, in-vehicle computer systems, appliances, cameras, robots, hologram systems, security systems, home-based computer systems (e.g., intercom systems, home media system), projector, automated teller machine (ATM), and the like. In some implementations, merchant device 300 may perform third party services such as delivery services, reservation services, menu services, review services, and the like. Merchant device 300 may interface with third party services and other services via one or more consensus services 207 in one embodiment. In one example, a service provider may provide API endpoints for communicating with third party services and merchant devices 300, and API endpoints may provide API endpoints 114 for service providers to access. , do not have to. Accordingly, the service provider's consensus service 207 may be able to pull, push, or push and pull data from external services.

商人デバイス300はまた、入ってくる注文、予約、アポイントメント、通知、更新、警告などを管理するために、追加のデバイスに関連付けられてもよい。例えば、商人デバイス300は、キッチンディスプレイシステムに接続された、またはキッチンディスプレイシステムを含む、1つ以上のタブレットに関連付けられてもよい。典型的には、キッチンディスプレイシステムは、様々な第三者サービスから入ってくる注文を自分自身のタブレット上に表示するように構成される。しかしながら、本明細書に記載される実施態様を使用して、ソースに関係なくすべての注文が同期され、単一のタブレット上に提示されて取り扱われるように構造化されるように、タブレットは1つに統合されてもよい。同様に、予約のために、商人デバイス300は、占有性/利用可能性に関する物理的空間を追跡するオンサイト予約システムに関連付けられてもよい。 Merchant device 300 may also be associated with additional devices to manage incoming orders, reservations, appointments, notifications, updates, alerts, and the like. For example, merchant device 300 may be associated with one or more tablets connected to or including a kitchen display system. Typically, the kitchen display system is configured to display incoming orders from various third party services on its own tablet. However, using the implementations described herein, one tablet is used so that all orders regardless of source are synchronized and structured to be presented and handled on a single tablet. may be integrated into one. Similarly, for reservations, the merchant device 300 may be associated with an on-site reservation system that tracks physical spaces for occupancy/availability.

商人デバイス300は、1つ以上のプロセッサ302、メモリ304、1つ以上のネットワークインタフェース306、および1つ以上のディスプレイ308を含み得る。1つ以上のプロセッサ302は、中央演算処理装置(CPU)、グラフィックス処理装置(GPU)、マイクロプロセッサ、デジタル信号プロセッサなどを含むことができる。1つ以上のディスプレイ308は、タッチスクリーン、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、有機LEDディスプレイ、プラズマディスプレイ、電子ペーパーディスプレイ、または任意の他のタイプの技術を含むことができる。図示されていないが、商人デバイス300は、カメラ、マイクロフォン、スピーカ、プロジェクタ、プリンタ、および/またはセンサなどの他の構成要素を含むか、またはそれらに関連付けられてもよい。1つ以上のカメラは、前面カメラおよび/または後面カメラを含むことができる。1つ以上のセンサは加速度計、コンパス、ジャイロスコープ、磁力計、全地球測位システム(GPS)、嗅覚センサ(例えば、におい用)、または別のセンサを含んでもよい。商人デバイス300は、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスさらに含むか、またはそれらに関連付けられてもよい。メモリ304は、商人モジュール310および位置モジュール312を含むことができる。 Merchant device 300 may include one or more processors 302 , memory 304 , one or more network interfaces 306 , and one or more displays 308 . The one or more processors 302 can include a central processing unit (CPU), graphics processing unit (GPU), microprocessor, digital signal processor, or the like. The one or more displays 308 may include a touch screen, liquid crystal display (LCD), light emitting diode (LED) display, organic LED display, plasma display, electronic paper display, or any other type of technology. Although not shown, merchant device 300 may include or be associated with other components such as cameras, microphones, speakers, projectors, printers, and/or sensors. The one or more cameras may include a front facing camera and/or a rear facing camera. The one or more sensors may include an accelerometer, compass, gyroscope, magnetometer, global positioning system (GPS), olfactory sensor (eg, for smell), or another sensor. Merchant device 300 may further include or be associated with a keyboard, mouse, pen, voice input device, touch input device. Memory 304 may include merchant module 310 and location module 312 .

商人モジュール310(および/または位置モジュール312)は、一般に商人によって使用され得る商人対面コンポーネントを表し得る。いくつかの例では、顧客は、(例えば、支払いを確認し、配送情報を提供し、または他の入力を提供するために)商人対面コンポーネントと対話することができる。商人モジュール310は、商人が顧客との取引を容易にすること、配送を管理すること、在庫を管理することなどを支援するために、種々の処理を実行することができる。商人モジュール310は、様々なインタフェースおよび/またはダッシュボードを提供することができる。場合によっては、商人モジュール310は、配送注文、予約注文、およびメニュー更新/選好のための取得アプリケーションなどのアプリケーションと呼ばれてもよい。 Merchant module 310 (and/or location module 312) may represent a merchant facing component that may be used by merchants in general. In some examples, the customer may interact with the merchant facing component (eg, to confirm payment, provide shipping information, or provide other input). The merchant module 310 may perform various operations to help merchants facilitate transactions with customers, manage deliveries, manage inventory, and the like. Merchant module 310 may provide various interfaces and/or dashboards. In some cases, merchant module 310 may be referred to as an application, such as a retrieval application for delivery orders, pre-orders, and menu updates/preferences.

商人モジュール310は、サービスプロバイダ102と通信して、サービスプロバイダ102によって提供される配送サービスを使用することができる。一例として、商人は、商人モジュール310によって提供されるアイテム取得インタフェース(例えば、アイテム取得インタフェース120)と対話して、顧客のために注文を行うことができる。商人モジュール310が配送が要求され得ると判定した場合(例えば、注文が配送されることを望むことを示す顧客に基づく自動判定など)、商人モジュール310は、配送提案の要求を生成し、サービスプロバイダ102によって推奨される配送サービスの使用に関する情報を要求するために、1つ以上のAPIを介してサービスプロバイダ102に要求を送信することができる。要求の情報は、顧客または商人によって提供されたり、データソース(例えば、ユーザプロファイル、商人プロファイルなど)から取得されたりしてもよい。配送提案の要求の一部であり得る例示的な情報は、以下を含む:
●アイテムのピックアップ位置-顧客への配送のために商人からアイテムが取得される位置。ピックアップ位置は、一般に、商人の位置(例えば、施設)であってもよいが、倉庫、住宅、POボックス、街角などの任意の位置が使用されてもよい。ピックアップ位置は、(例えば、移動する商人の場合には)静止していても移動していてもよい。
●ドロップオフ位置(配送位置とも呼ばれる)-アイテムが顧客に配送される位置。ドロップオフ位置は、一般に、住宅、POボックス、街角、顧客が現在位置する施設などの顧客の位置とすることができる。ドロップオフ位置は、(例えば、移動する顧客の場合には)静止していても移動していてもよい。
●要求されたピックアップ時間-配送のために商人からアイテムを取得するための時間、週、月、年など。ピックアップの要求された時間は、特定の時間、時間のウィンドウなどであってもよい。場合によっては、要求されたピックアップ時間は、(例えば、アイテムがすでに作成されている場合、または他の状況において)できるだけ早くてもよい。配送提案の要求においてピックアップ時間が指定されていない場合、サービスプロバイダ102は、例えば、ピックアップ時間ができるだけ早いと仮定することができる。
●取得されるアイテムの量(数)-商人から購入されるアイテムの量。場合によっては、サービスプロバイダ102は、この情報を使用して、注文のサイズ(例えば、注文を移送するために必要なスペースの量)を判定することができる。
●取得されるアイテムを識別するアイテム識別子。場合によっては、サービスプロバイダ102は、この情報を使用して、注文を移送するためにどれだけのスペースが必要であるか、アイテムを移送するために必要な車両のタイプ、アイテムのタイプ(例えば、脆弱対非脆弱、腐敗対非腐敗など)などを判定するために、アイテムに関する情報をルックアップすることができる。
●取得されるアイテムの特性(例えば、サイズ、形状、重量、ボリューム、タイプ、カテゴリなど)。場合によっては、サービスプロバイダ102がこの情報を使用して、アイテムを移送するために必要な空間の量を判定することができる。
●取得されるアイテムに関連付けられたタグ(例:特定のカテゴリを示すタグ)。例えば、アイテムは、配送のために特別な取扱いを必要とする食品のカテゴリに関連付けられた所定のラベルでタグ付けされてもよい(例えば、暖かく及び/又は直立した状態に保つ必要があるピザ又はスープ、特別な取扱いを必要とするトレイ上の食品などの仕出し料理、注意深く取り扱われる必要があるテレビなど)。いくつかの例では、サービスプロバイダ102は、この情報を使用して、注文を移送するためにどれだけのスペースが必要であるか、アイテムを移送するために必要な車両のタイプ、アイテムのタイプ(例えば、脆弱対非脆弱、腐敗対非腐敗など)などを判定することができる。
●注文の価格(例えば、アイテムまたは注文のコスト)。
●アイテムに関するピックアップ命令。例えば、商人は、自転車が店舗の後部で配送のためにピックアップされることを指定することができる。
●アイテムに関する配送指示。例えば、顧客は、特定の時間ウィンドウの間に、顧客のプロパティに関する特定のスポットで、特定のタイプの車両で、特定の第三者サービスなどによって、アイテムが配送されることを要求することができる。
●顧客連絡先情報(例えば、電話番号、電子メールアドレス、顧客の地理的位置など)。一例として、顧客連絡先情報は、顧客の住所を含むことができる。
The merchant module 310 can communicate with the service provider 102 to use shipping services provided by the service provider 102 . As an example, a merchant may interact with an item acquisition interface provided by merchant module 310 (eg, item acquisition interface 120) to place an order for a customer. If the merchant module 310 determines that shipping may be requested (e.g., an automated determination based on the customer indicating that the order is desired to be shipped), the merchant module 310 generates a request for a shipping offer and sends a request to the service provider. A request can be sent to service provider 102 via one or more APIs to request information regarding the use of shipping services recommended by 102 . Request information may be provided by a customer or merchant, or obtained from a data source (eg, user profile, merchant profile, etc.). Exemplary information that may be part of a request for a delivery offer includes:
● Item Pickup Location - The location where the item is picked up from the merchant for delivery to the customer. Pick-up locations may generally be merchant locations (eg, facilities), but any location may be used, such as warehouses, residences, PO boxes, street corners, and the like. The pick-up location may be stationary or mobile (eg, for mobile merchants).
• Drop-off location (also called delivery location) - the location where items are delivered to the customer. The drop-off location can generally be the customer's location, such as a residence, PO box, street corner, facility where the customer is currently located. The drop-off location may be stationary or moving (eg, for moving customers).
● Requested Pickup Time - The time, week, month, year, etc., to obtain the item from the merchant for delivery. The requested time of pickup may be a specific time, a window of time, or the like. In some cases, the requested pick-up time may be as soon as possible (eg, if the item has already been made, or in other circumstances). If no pickup time is specified in the delivery offer request, service provider 102 may, for example, assume that the pickup time is as soon as possible.
● Quantity (number) of items acquired - The amount of items purchased from the merchant. In some cases, service provider 102 can use this information to determine the size of the order (eg, the amount of space required to transport the order).
● An item identifier that identifies the item to be retrieved. In some cases, service provider 102 uses this information to determine how much space is required to transport the order, the type of vehicle required to transport the item, the type of item (e.g. Information about items can be looked up to determine vulnerable versus non-vulnerable, corrupt versus non-corrupt, etc.).
• Characteristics of the item to be retrieved (eg, size, shape, weight, volume, type, category, etc.). In some cases, service provider 102 can use this information to determine the amount of space required to transport the item.
● Tags associated with the item being retrieved (eg, tags that indicate a particular category). For example, an item may be tagged with a predetermined label associated with a food category that requires special handling for delivery (e.g., a pizza that needs to be kept warm and/or upright or catered meals such as soups, food on trays that require special handling, televisions that need to be handled with care, etc.). In some examples, service provider 102 uses this information to determine how much space is required to transport the order, the type of vehicle required to transport the item, the type of item ( For example, vulnerable versus non-vulnerable, corrupt versus non-corrupt, etc.).
● the price of the order (eg, the cost of the item or order);
● Pick-up instructions for items. For example, a merchant may specify that a bicycle be picked up for delivery at the back of the store.
● Shipping instructions for the item. For example, a customer may request that an item be delivered during a particular time window, at a particular spot on the customer's property, in a particular type of vehicle, by a particular third party service, etc. .
● Customer contact information (eg, phone number, email address, customer geographic location, etc.). As an example, customer contact information may include the customer's address.

商人モジュール310は、配送提案の要求に含まれる情報を提供するものとして説明されるが、場合によっては、情報は、サービスプロバイダ102において(少なくとも部分的に)判定されてもよい(例えば、サービスプロバイダ102は、アイテム識別子を受信し、アイテムサイズ、従量などを調べてもよい)。 Although the merchant module 310 is described as providing the information included in the request for a shipping offer, in some cases the information may be (at least partially) determined at the service provider 102 (e.g., the service provider 102 may receive the item identifier and look up the item size, usage, etc.).

配送提案の要求をサービスプロバイダ102に提出した後、商人モジュール310は、サービスプロバイダ102から配送提案を受信することができる。場合によっては、配送提案からの情報は、顧客に伝達される。例えば、商人は、配送コスト、推定配送時間、および/または任意の他の情報を顧客に通知することができる。他の例では、配送提案からの情報は、顧客に提示されなくてもよい。例えば、商人は、配送提案の情報を見ることができ、および/または注文の総コストにそのコストを含めることができる。したがって、場合によっては、顧客には、配送が商人によって処理されているように見えることがある。いずれにしても、商人モジュール310は、1つ以上のAPIを介して、配送提案の受諾または拒否のインジケーション(指標、指示)をサービスプロバイダ102に送信することができる。 After submitting a request for a shipping offer to service provider 102 , merchant module 310 may receive a shipping offer from service provider 102 . In some cases, information from the shipping offer is communicated to the customer. For example, the merchant may notify the customer of shipping costs, estimated shipping times, and/or any other information. In other examples, information from the shipping offer may not be presented to the customer. For example, the merchant can view information in the shipping offer and/or include that cost in the total cost of the order. Thus, in some cases, it may appear to the customer that the shipment is being handled by the merchant. In any event, the merchant module 310 can send an indication of acceptance or rejection of the delivery offer to the service provider 102 via one or more APIs.

その後、商人モジュール310は、1つ以上のAPIを介してサービスプロバイダ102と通信し、取引のステータスに関する情報を提供および/または受信することができる。例えば、商人モジュール310は、アイテムが準備処理のどこにあるか(例えば、ほぼ完了したか、完了したか、オーブンに入ったか、袋詰めされたか、ピックアップの準備ができたかなど)を示す情報を送信する。別の例では、商人モジュール310は、配送サービスによる配送のステータス(例えば、第三者サービスの配送人の特定の位置、第三者サービスがどれだけ離れているか、アイテムがドロップオフされているかどうか、第三者サービスに関連付けられた配送人が、ピックアップ位置に移送中であるかなど)に関する情報をサービスプロバイダから受信することができる。 Merchant module 310 may then communicate with service provider 102 via one or more APIs to provide and/or receive information regarding the status of the transaction. For example, the merchant module 310 sends information indicating where the item is in the preparation process (e.g., nearly done, done, ovened, bagged, ready for pickup, etc.). do. In another example, the merchant module 310 can determine the status of the delivery by the shipping service (e.g., the particular location of the third party service's shipper, how far away the third party service is, whether the item is being dropped off, etc.). , whether the courier associated with the third party service is being transported to the pickup location, etc.) may be received from the service provider.

商人モジュール310は、様々なチャネルを介して注文を受け取ることができる。例えば、商人モジュール310は、商人と顧客との間の電話会話に基づく顧客の代わりに商人によって発注される第1の注文と、顧客アプリケーション上で別の顧客によって発注される第2の注文とを受信することができる。第2の注文は、サービスプロバイダ102および/または商人に関連付けられたサービスプロバイダなどの別の当事者から受信され得る。いずれにせよ、注文は、サービスプロバイダのAPIを介して同じ商人モジュール310によって管理されてもよい。すなわち、商人モジュール310は、注文の準備、注文の準備の進行に関する情報の提示、注文の配送ステータスに関する情報の提示などを監視することができる。多くの場合、注文に関する情報は、注文を異なるチャネルから発信されたものとして指定する情報とのインタフェースを通じて提示される。 The merchant module 310 can receive orders through various channels. For example, the merchant module 310 distinguishes between a first order placed by a merchant on behalf of a customer based on a telephone conversation between the merchant and the customer, and a second order placed by another customer on the customer application. can receive. A second order may be received from another party, such as service provider 102 and/or a service provider associated with the merchant. In any event, orders may be managed by the same merchant module 310 via the service provider's API. That is, the merchant module 310 can monitor the preparation of the order, the presentation of information regarding the progress of the preparation of the order, the presentation of information regarding the delivery status of the order, and the like. Information about an order is often presented through an interface with information that designates the order as originating from a different channel.

商人モジュール310は、サービスプロバイダ102によって使用される配送サービスに対する支払いを提供するために、1つ以上のスキームを適用することができる。一例として、サービスプロバイダ102の配送サービスを使用するための配送コストは、顧客に請求されてもよい(例えば、アイテムごとに直接、月ごとになど)。別の例として、商人は、各事例において、または、例えば、閾値数を超えるアイテムを有する注文、閾値量を超える量を有する注文、顧客が特定のステータスに関連付けられている(例えば、顧客が配送サービスのための月次加入料を支払ったか、または経時的に特定の数のアイテムを購入した)などの1つ以上の基準が満たされた場合などに、配送コストの支払いを提供することを決定し得る(例えば、顧客に課金しない)。 Merchant module 310 may apply one or more schemes to provide payment for shipping services used by service provider 102 . As an example, shipping costs for using the shipping services of service provider 102 may be billed to the customer (eg, directly per item, per month, etc.). As another example, the merchant may, in each instance, or for example, order with more than a threshold number of items, order with more than a threshold quantity, a customer is associated with a particular status (e.g. decide to offer payment for shipping costs, such as when one or more criteria are met, such as paying a monthly subscription fee for a service or purchasing a certain number of items over time; (e.g., do not charge the customer).

商人は、毎月、アイテムごとになどの様々な方法で、いくつかの配送サービスを接続するコンセンサスサービスの使用のためにサービスプロバイダ102によって請求されることができ、サービスプロバイダ102によって商人に支払われるべき量のバランスをとる(例えば、サービスプロバイダ102が商人に支払うべき量から配送サービスのコストを差し引く)。 A merchant can be billed by the service provider 102 for use of the consensus service that connects several delivery services in various ways, such as on a monthly, item-by-item basis, and should be paid to the merchant by the service provider 102. Balance the amount (eg, subtract the cost of the delivery service from the amount the service provider 102 should pay the merchant).

商人モジュール310は、追加的に、または代替的に、他の処理を実行してもよい。一例では、商人モジュール310は、(例えば、カードリーダ、顧客デバイスへのNFC接続、顧客デバイスへのBluetooth(登録商標)接続などを介して)顧客からの支払いを受け入れること、アイテムの領収書を提供すること(領収書を印刷することを含む)、(例えば、確認、クレジットカードの署名などの)顧客によって取得されるアイテムのための顧客からの入力を受信することなどによって、顧客との取引を容易にすることができる。別の例では、商人モジュール310は、商人に在庫レベル(例えば、現在在庫中のアイテムの数)を通知すること、追加の在庫を注文すること、在庫に関するサービスプロバイダ102からの通知を閲覧すること、他者に取得のための在庫を提供すること、在庫のための資金調達を求めることなどによって、商人が在庫を管理することを可能にすることができる。さらに別の例では、商人モジュール310は、販売、在庫、または他の情報のためのデータ分析を提供することができる。 Merchant module 310 may additionally or alternatively perform other processing. In one example, the merchant module 310 accepts payment from the customer (eg, via a card reader, NFC connection to the customer device, Bluetooth connection to the customer device, etc.), provides a receipt for the item. (including printing receipts), receiving input from the customer for items acquired by the customer (e.g., confirmations, credit card signatures, etc.), etc. can be made easier. In another example, the merchant module 310 notifies the merchant of inventory levels (eg, number of items currently in stock), orders additional inventory, and views notifications from the service provider 102 regarding inventory. , offering inventory to others for acquisition, seeking financing for inventory, etc., to enable merchants to manage inventory. In yet another example, merchant module 310 can provide data analysis for sales, inventory, or other information.

商人モジュール310の機能は、単一の構成要素に含まれるものとして説明されるが、機能は任意の数の構成要素に分割されてもよい。場合によっては、機能は、別々のアプリケーションに分割され、それらは互いにリンクされることがある(例えば、別のアプリケーション内のリンクを選択することによって1つのアプリケーションにアクセスする)。 Although the functionality of merchant module 310 is described as being contained in a single component, the functionality may be divided into any number of components. In some cases, functionality may be divided into separate applications and they may be linked together (eg, accessing one application by selecting a link within another application).

位置モジュール312は、商人デバイス300の位置を判定することができる。場合によっては、位置は、サービスプロバイダ102に提供されるか、またはローカルで使用されて、商人の位置の判定、顧客が商人デバイス300の特定の近傍内に位置する場合の取引の処理など、様々な機能を容易にする。位置モジュール312は、地理位置決め技術(例えば、衛星ベースのシステム-全地球測位システム(GPS))、セルタワー位置データ、ワイヤレスアクセスポイント位置データ、無線ビーコン位置など)から、商人デバイス300の地理的位置を判定することができる。したがって、位置モジュール312は、商人デバイス300の地理的位置を(例えば、セルタワーまたはワイヤレスアクセスポイントから)判定することができるGPS受信機または通信インタフェースなど、商人デバイス300の位置センサからのデータを利用することができる。 Location module 312 may determine the location of merchant device 300 . In some cases, the location is provided to the service provider 102 or used locally to determine the merchant's location, process transactions when the customer is within a particular proximity of the merchant device 300, and various other purposes. functions. The location module 312 determines the geographical location of the merchant device 300 from geolocation technologies (eg, satellite-based systems—Global Positioning System (GPS)), cell tower location data, wireless access point location data, radio beacon locations, etc.). can judge. Accordingly, the location module 312 utilizes data from a location sensor of the merchant device 300, such as a GPS receiver or communication interface that can determine the geographical location of the merchant device 300 (e.g., from cell towers or wireless access points). be able to.

いくつかのタイプのビジネスでは、商人デバイス300は、商人の店または他のビジネス位置に関連付けられてもよく、したがって、通常、日々変化しない固定位置であってもよい。しかしながら、他のタイプのビジネスでは、商人デバイス300は、商人がフードトラックを運営する場合、ストリートベンダー、キャブドライバーなどである場合、またはそうでなければモバイルビジネスを有する場合(例えば、買い手の家、ビジネス位置などでアイテムを販売する商人の場合)など、位置を時々移動することができる。 In some types of businesses, the merchant device 300 may be associated with the merchant's store or other business location, and thus may be a fixed location that typically does not change from day to day. However, in other types of businesses, the merchant device 300 may be used when the merchant operates a food truck, is a street vendor, cab driver, etc., or otherwise has a mobile business (e.g., buyer's home, Locations may change from time to time, such as when a merchant sells items at a business location.

図4は、ユーザデバイス400の例示的な詳細を示す。例えば、ユーザデバイス400は、図1のユーザ104によって使用されてもよい。ユーザデバイス400は、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、電子リーダデバイス、モバイルハンドセット、パーソナルデジタルアシスタント(PDA)、ポータブルナビゲーションデバイス、ポータブルゲームデバイス、タブレットコンピュータ、ウェアラブルコンピュータ(例えば、スマートウォッチ、光学ヘッドマウントディスプレイ(OHMD)など)、ポータブルメディアプレーヤ、テレビ、セットトップボックス、自動車内のコンピュータシステム、機器、カメラ、ロボット、ホログラムシステム、セキュリティシステム、ホームベースのコンピュータシステム(例えば、インターコムシステム、ホームメディアシステムなど)、プロジェクタ、現金自動預け払い機(ATM)などとして実装され得る。いくつかの例では、商人デバイス300は、モバイルデバイスであってもよい。一実装形態では、ユーザデバイス400は、配送サービス、予約サービス、メニューサービス、レビューサービスなどの第三者サービスを実行することができる。一実施形態では、ユーザデバイス400は、1つ以上のコンセンサスサービス207を介して、商人デバイス300などの商人サービスとインタフェースすることができる。一例では、サービスプロバイダは、第三者サービスおよび商人デバイス300と通信するためのAPIエンドポイント114を提供し、APIエンドポイント114は、サービスプロバイダがアクセスするためのAPIエンドポイントを提供してもよいし、しなくてもよい。従って、サービスプロバイダのコンセンサスサービス207は、ユーザデバイスからデータをプル、プッシュ、またはプッシュおよびプルすることができるかもしれない。第三者サービスは、たとえばサービスプロバイダと同様に、第三者サーバ上でホストすることができる。 FIG. 4 shows exemplary details of user device 400 . For example, user device 400 may be used by user 104 in FIG. User devices 400 include laptop computers, desktop computers, servers, smart phones, electronic reader devices, mobile handsets, personal digital assistants (PDAs), portable navigation devices, portable gaming devices, tablet computers, wearable computers (e.g., smart watches, optical head-mounted displays (OHMD), portable media players, televisions, set-top boxes, in-vehicle computer systems, appliances, cameras, robots, hologram systems, security systems, home-based computer systems (e.g., intercom systems, home media system), projector, automated teller machine (ATM), and the like. In some examples, merchant device 300 may be a mobile device. In one implementation, user device 400 can perform third party services such as delivery services, reservation services, menu services, review services, and the like. In one embodiment, user device 400 may interface with merchant services, such as merchant device 300 , via one or more consensus services 207 . In one example, a service provider provides API endpoints 114 for communicating with third party services and merchant devices 300, and API endpoints 114 may provide API endpoints for service providers to access. may or may not. Accordingly, the service provider's consensus service 207 may be able to pull, push, or push and pull data from the user device. Third party services can be hosted on third party servers, for example similar to service providers.

ユーザデバイス400は、1つ以上のプロセッサ402、メモリ404、1つ以上のネットワークインタフェース406、および1つ以上のディスプレイ408を含み得る。1つ以上のプロセッサ402は、中央演算処理装置(CPU)、グラフィックス処理装置(GPU)、マイクロプロセッサ、デジタル信号プロセッサなどを含むことができる。1つ以上のディスプレイ408は、タッチスクリーン、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、有機LEDディスプレイ、プラズマディスプレイ、電子ペーパーディスプレイ、または任意の他のタイプの技術を含むことができる。図示されていないが、ユーザデバイス400はまた、カメラ、マイクロフォン、スピーカ、プロジェクタ、プリンタ、および/またはセンサなどの他の構成要素を含んでもよく、またはそれらに関連付けられてもよい。1つ以上のカメラは、前面カメラおよび/または後面カメラを含むことができる。1つ以上のセンサは、加速度計、コンパス、ジャイロスコープ、磁力計、全地球測位システム(GPS)、嗅覚センサ(例えば、におい用)、または別のセンサを含んでもよい。ユーザデバイス400は、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスさらに含むか、またはそれらに関連付けられてもよい。メモリ404は、顧客モジュール410および位置モジュール412を含むことができる。 User device 400 may include one or more processors 402 , memory 404 , one or more network interfaces 406 , and one or more displays 408 . The one or more processors 402 can include a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor, a digital signal processor, or the like. The one or more displays 408 may include a touch screen, liquid crystal display (LCD), light emitting diode (LED) display, organic LED display, plasma display, electronic paper display, or any other type of technology. Although not shown, user device 400 may also include or be associated with other components such as cameras, microphones, speakers, projectors, printers, and/or sensors. The one or more cameras may include a front facing camera and/or a rear facing camera. The one or more sensors may include an accelerometer, compass, gyroscope, magnetometer, global positioning system (GPS), olfactory sensor (eg, for smell), or another sensor. User device 400 may further include or be associated with a keyboard, mouse, pen, voice input device, touch input device. Memory 404 may include customer module 410 and location module 412 .

顧客モジュール410(および/または位置モジュール412)は、一般に顧客によって使用され得る顧客対面コンポーネントを表すことができる。いくつかの例では、商人が(例えば、支払いを確認し、配送情報を提供し、または他の入力を提供するために)顧客対面コンポーネントと対話することができる。顧客モジュール410は、顧客が商人との取引を容易にするのを支援するために、種々の処理を実行することができる。そのようにする場合、顧客モジュール410は、様々なインタフェースおよび/またはダッシュボードを提供することができる。いくつかの例では、顧客モジュール410は、アイテム取得アプリケーションなどのアプリケーションと呼ばれることがある。さらに、いくつかの例では、顧客モジュール410は、ピザ商人からピザを注文するために、配送サービスなどの第三者アプリケーション407など、商人に関連付けられたサービスプロバイダと協働して動作するローカルアプリケーションを備えることができる。 Customer module 410 (and/or location module 412) may represent customer-facing components that may be used by customers in general. In some examples, a merchant may interact with the customer-facing component (eg, to confirm payment, provide shipping information, or provide other input). Customer module 410 may perform various operations to assist customers in facilitating transactions with merchants. In doing so, customer module 410 may provide various interfaces and/or dashboards. In some examples, customer module 410 may be referred to as an application, such as an item retrieval application. Further, in some examples, the customer module 410 is a local application that works in collaboration with a service provider associated with the merchant, such as a third party application 407, such as a delivery service, to order pizza from the pizza merchant. can be provided.

顧客モジュール410は、サービスプロバイダ102と通信して、サービスプロバイダ102に関連付けられた配送サービスを使用することができる。一例として、顧客は、顧客モジュール410によって提供されるアイテム取得インタフェース(例えば、アイテム取得インタフェース120)と対話して、商人に注文を行うことができる。顧客モジュール410が配送が要求され得ると判定した場合(例えば、ユーザプロファイルの設定または以前の購入に基づく自動判定、注文を配送させたい旨を示す顧客入力に基づく判定など)、顧客モジュール410は、配送提案の要求を生成し、サービスプロバイダ102によって提供される配送サービスの使用に関する情報を要求するために、1つ以上のAPIを介してサービスプロバイダ102に要求を送信することができる。要求の情報は、顧客によって提供されてもよく、データソース(例えば、ユーザプロファイルなど)から取得されてもよい。多くの場合、顧客モジュール410は、配送提案の要求に含まれる情報を提供するが、場合によっては、情報は、サービスプロバイダ102において(少なくとも部分的に)判定されてもよい(例えば、サービスプロバイダ102は、アイテム識別子を受信し、アイテムサイズ/従量を調査してもよく、サービスプロバイダ102は、顧客を識別し、顧客の好みを調査してもよい、など)。 Customer module 410 can communicate with service provider 102 to use shipping services associated with service provider 102 . As an example, a customer may interact with an item acquisition interface provided by customer module 410 (eg, item acquisition interface 120) to place an order with a merchant. If the customer module 410 determines that shipping may be requested (e.g., automatic determination based on user profile settings or previous purchases, determination based on customer input indicating that they want the order shipped, etc.), the customer module 410 will: Requests may be sent to service provider 102 via one or more APIs to generate a request for delivery offers and to request information regarding the use of delivery services offered by service provider 102 . Information for the request may be provided by the customer or obtained from a data source (eg, user profile, etc.). In many cases, the customer module 410 provides the information included in the request for a shipping offer, but in some cases the information may be (at least partially) determined at the service provider 102 (e.g., the service provider 102 may receive item identifiers and research item size/usage, service provider 102 may identify customers, research customer preferences, etc.).

配送提案の要求をサービスプロバイダ102に提出した後、顧客モジュール410は、サービスプロバイダ102から配送提案を受信することができる。場合によっては、配送提案からの情報は、顧客に伝達される。例えば、アイテム取得インタフェースは、配送コスト、推定配送時間、および/または任意の他の情報を表示することができる。他の例では、配送提案からの情報が顧客に提示されなくてもよい。例えば、アイテム取得インタフェースは、配送コストを項目化された要素として表示せず、注文の総コストに配送コストを含めることができる。したがって、場合によっては、顧客には、配送が商人によって処理されているように見えることがある。いずれにしても、顧客モジュール410は、1つ以上のAPIを介して、配送提案の受諾または拒否のインジケーション(指標、指示)をサービスプロバイダ102に送信することができる。 After submitting a request for a shipping offer to service provider 102 , customer module 410 may receive a shipping offer from service provider 102 . In some cases, information from the shipping offer is communicated to the customer. For example, the item acquisition interface may display shipping costs, estimated shipping times, and/or any other information. In other examples, information from the shipping offer may not be presented to the customer. For example, the get item interface may not display the shipping cost as an itemized element, but include the shipping cost in the total cost of the order. Thus, in some cases, it may appear to the customer that the shipment is being handled by the merchant. In any event, the customer module 410 can send an indication of acceptance or rejection of the delivery offer to the service provider 102 via one or more APIs.

顧客モジュール410は、取引のステータスに関する情報を要求および/または受信するために、1つ以上のAPIを介してサービスプロバイダ102と通信することもできる。例えば、顧客モジュール410は、アイテムの準備のステータス(例えば、ほぼ完了した、完了した、オーブンに入った、袋詰めされた、ピックアップの準備ができた等)、配送サービスによる配送のステータス(例えば、配送人の特定の位置、配送人がどれだけ離れているか、アイテムがドロップオフされたかどうか、配送人がピックアップ位置に輸送中であるかどうか等)等に関する情報を受信することができる。このような情報は、顧客に提示することができる。一例では、配送人の位置を示すアイコンまたは他の要素と共に顧客に地図が表示される。これに加えて、またはこれに代えて、広告を表示することができる。例示すると、顧客モジュール410は、商人のためのアイテムを配送することに関連するオンラインサイトの広告を表示することができる。広告は、商人に直接注文する代わりに、将来注文するためにオンラインサイトを使用することを顧客に奨励することができる。他の図では、任意の種類の広告を表示することができる。 Customer module 410 may also communicate with service provider 102 via one or more APIs to request and/or receive information regarding the status of transactions. For example, the customer module 410 may indicate the status of item preparation (e.g., almost complete, completed, in oven, bagged, ready for pickup, etc.), status of delivery by the shipping service (e.g., Information may be received regarding the specific location of the courier, how far the courier is, whether the item has been dropped off, whether the courier is in transit to the pickup location, etc.). Such information can be presented to the customer. In one example, a map is displayed to the customer with an icon or other element indicating the location of the courier. Additionally or alternatively, advertisements may be displayed. By way of example, customer module 410 may display advertisements for online sites related to shipping items for merchants. Advertisements can encourage customers to use the online site for future orders instead of ordering directly from the merchant. In other diagrams, any type of advertisement can be displayed.

顧客モジュール410は、追加的に、または代替的に、他の処理を実行することができる。一例として、顧客モジュール410は、ユーザに対して所定の近接範囲内にある商人に関する情報をインタフェースを介して提供することができる。ユーザは、商人を選択し、商人と共に商品を注文することができる。加えて、または代替として、顧客モジュール410は、ユーザが(例えば、カードリーダ、商人デバイスへのNFC接続、商人デバイスへのBluetooth(登録商標)接続などを介して)アイテムの支払いを提供し、アイテムの領収書を受信することなどを可能にすることができる。さらに、顧客モジュール410は、ユーザがカードレス支払取引を実行するために商人にチェックインすることを可能にすることができる。 Customer module 410 may additionally or alternatively perform other processing. As an example, the customer module 410 can provide the user with information regarding merchants within a predetermined proximity range via the interface. A user can select a merchant and order goods with the merchant. Additionally or alternatively, the customer module 410 allows a user to provide payment for an item (eg, via a card reader, NFC connection to a merchant device, Bluetooth® connection to a merchant device, etc.), to receive receipts for In addition, customer module 410 may allow users to check-in with merchants to perform cardless payment transactions.

位置モジュール412は、ユーザデバイス400の位置を判定することができる。いくつかの例では、位置は、サービスプロバイダ102に提供されるか、またはローカルで使用されて、商人デバイスの特定の近傍内に顧客が位置するときの取引の処理など、様々な機能を容易にする。位置モジュール412は、地理的位置決め技術(例えば、衛星ベースのシステム-全地球測位システム(GPS))、セルタワー位置データ、ワイヤレスアクセスポイント位置データ、無線ビーコン位置など)から、ユーザデバイス400の地理的位置を判定することができる。したがって、位置モジュール412は、ユーザデバイス400の地理的位置を(たとえば、セルタワーまたはワイヤレスアクセスポイントから)判定することができるGPS受信機または通信インタフェースなど、ユーザデバイス400の位置センサからのデータを利用することができる。 Location module 412 can determine the location of user device 400 . In some examples, the location is provided to the service provider 102 or used locally to facilitate various functions, such as processing transactions when a customer is located within a particular proximity of a merchant device. do. The location module 412 extracts the geographic location of the user device 400 from geolocation technologies (eg, satellite-based systems—Global Positioning System (GPS)), cell tower location data, wireless access point location data, radio beacon locations, etc.). can be determined. Accordingly, the location module 412 utilizes data from a location sensor of the user device 400, such as a GPS receiver or communication interface that can determine the geographic location of the user device 400 (eg, from cell towers or wireless access points). be able to.

一部の実装では、ユーザデバイス400は、ユーザデバイス400、商人デバイス300を介して、または例えばサービスプロバイダを介して自動的にトリガされた予約要求に応答して予約提案を受信するようにも構成される。ユーザデバイス400のユーザは、予約提案を受諾又は拒否することができる。ユーザデバイス400はまた、現在の予約または将来の予約のいずれかのためにユーザが好む座席の種類の好みを提供することができる。好みはまた、シェフ、アイテム、商人の位置、時刻、代替商人、選択の料理などを含むことができ、その結果、サービスプロバイダは、例えば、好みの予約が利用可能でない場合、または異なるソースからの別の予約と競合する場合に、ユーザのための代替物を生成することができる。 In some implementations, the user device 400 is also configured to receive booking offers in response to booking requests triggered automatically via the user device 400, the merchant device 300, or, for example, via a service provider. be done. A user of user device 400 can accept or reject the booking offer. User device 400 may also provide preferences for the type of seat the user prefers for either current or future reservations. Preferences can also include chefs, items, merchant locations, times of day, alternate merchants, dishes of choice, etc., so that the service provider can, for example, request reservations if a preferred reservation is not available or from a different source. A substitute can be generated for the user if it conflicts with another reservation.

図5~図7は、本明細書で説明する技術を使用するための例示的な処理500、600、および700を示す。例示を容易にするために、処理500、600、および700は、サービスプロバイダ102、商人デバイス300、ユーザデバイス400、および/またはユーザデバイスとすることができる第三者サービスデバイスなど、本明細書で説明するコンピューティングデバイスによって実行されるものとして説明することができる。しかしながら、処理500、600、および700は、他のデバイスによって実行されてもよい。さらに、デバイスは、他の処理を実行するために使用されてもよい。 5-7 illustrate exemplary processes 500, 600, and 700 for using the techniques described herein. For ease of illustration, processes 500, 600, and 700 are described herein, such as service provider 102, merchant device 300, user device 400, and/or third party service devices, which may be user devices. It can be described as being executed by the described computing device. However, processes 500, 600, and 700 may be performed by other devices. Additionally, the device may be used to perform other processes.

処理500、600、および700(ならびに本明細書で説明される各処理)は論理フローグラフとして示され、その各動作は、ハードウェア、ソフトウェア、またはそれらの組合せで実装され得る動作のシーケンスを表す。ソフトウェアの文脈では、動作は、1つ以上のプロセッサによって実行されるときに、その動作を実行する1つ以上のコンピュータ可読記憶媒体上に記憶されたコンピュータ可読命令を表す。一般に、コンピュータ可読命令は、特定の機能を実行するか、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。動作が説明される順序は限定として解釈されることを意図されておらず、説明される動作の任意の数は処理を実施するために任意の順序および/または並列に組み合わせることができる。さらに、説明された動作の任意の数は省略されてもよい。いくつかの例では、デバイスまたはサービスプロバイダによって実行されるものとして、処理500、600、および/または700で説明される動作は、デバイスまたはサービスプロバイダ上で実行されるアプリケーションによって実行され得る。 Processes 500, 600, and 700 (and each process described herein) are depicted as a logical flow graph, each action of which represents a sequence of actions that may be implemented in hardware, software, or a combination thereof. . In the context of software, an action represents computer-readable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform that action. Generally, computer-readable instructions include routines, programs, objects, components, data structures, etc. that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be limiting, and any number of the described operations can be combined in any order and/or in parallel to implement processing. Additionally, any number of the described operations may be omitted. In some examples, the operations described in processes 500, 600, and/or 700 as being performed by a device or service provider may be performed by an application running on the device or service provider.

図5は、サービスプロバイダ102によって提供される他のサービスに関連する第三者のサービスをエンティティが使用できるようにするために、1つ以上のAPIを公開する例示処理500を説明している。 FIG. 5 describes an exemplary process 500 of exposing one or more APIs to enable entities to use third party services in relation to other services offered by service provider 102 .

502において、サービスプロバイダ102は、サービスプロバイダ102のコンセンサスサービス207とインタフェースする配送サービスの配送リソースへのアクセスをコンピューティングデバイスに提供するために、1つ以上のAPIを公開することができる。例えば、サービスプロバイダ102は、複数の配送プラットフォームによって商人によって提供されるアイテムの配送を容易にするために、商人および/または顧客に関連付けられたコンピューティングデバイスに1つ以上のAPIを公開することができる。 At 502 , the service provider 102 can expose one or more APIs to provide computing devices with access to the delivery resources of the delivery service that interface with the service provider 102 consensus service 207 . For example, service provider 102 may expose one or more APIs to computing devices associated with merchants and/or customers to facilitate the delivery of items offered by merchants over multiple delivery platforms. can.

504において、サービスプロバイダ102は、1つ以上のAPIを介して、アイテムの配送に関する要求を受信することができる。要求は、商人または顧客に関連するコンピューティングデバイスから受信されてもよい。要求は、配送の位置、ピックアップの位置、ピックアップの要求された時間、取得されるアイテムの数、アイテムのサイズ、アイテムが所定のカテゴリに関連付けられているかどうか、アイテムの重量などを示すことができる。場合によっては、要求は、商人または顧客に関連付けられたコンピューティングデバイス上で実行可能なアプリケーションから受信される。要求は、任意のタイプのアイテムの配送に対するものであってもよい。一例では、アイテムは、顧客とのアイテムの取得を容易にする商人アプリケーション(例えば、一般大衆が利用できない可能性がある独自の商人アプリケーション)で構成されたコンピューティングデバイス(例えば、タブレットなど)とすることができる。ここで、要求は、サービスプロバイダによって提供される購入リソースを使用するために、商人をサービスプロバイダにオンボードする(例えば、登録する)ために、商人にアイテムを配送することを求めることができる。購入リソースは、商人が配送されたコンピューティングデバイスと対話するときに使用されてもよい。他の例では、アイテムは、他のタイプのアイテムであってもよい。 At 504, service provider 102 can receive a request for delivery of the item via one or more APIs. The request may be received from a computing device associated with the merchant or customer. The request may indicate delivery location, pickup location, requested time of pickup, number of items to be retrieved, size of item, whether item is associated with a given category, weight of item, etc. . In some cases, the request is received from an application executable on a computing device associated with the merchant or customer. Requests may be for delivery of any type of item. In one example, the item is a computing device (e.g., tablet, etc.) configured with a merchant application (e.g., a proprietary merchant application that may not be available to the general public) that facilitates acquisition of the item with customers. be able to. Here, the request may seek to ship an item to the merchant in order to onboard (e.g., register) the merchant with the service provider to use purchasing resources provided by the service provider. The purchase resource may be used when the merchant interacts with the shipped computing device. In other examples, the items may be other types of items.

506において、サービスプロバイダ102は、複数の第三者サービスから複数の注文が受信された場合、アイテムの配送また注文のスケジューリングに関する配送提案を生成することができる。配送提案は、サービスプロバイダ102に関連付けられた配送サービスによるアイテムの配送のためのコスト、配送サービスによるアイテムの配送のための推定時間量、アイテムの配送のための推定ピックアップ時間、アイテムの配送のための推定ドロップオフ時間などを含むことができる。場合によっては、サービスプロバイダ102は、第三者サービスの現在の位置、アイテムのピックアップ位置、アイテムのドロップオフ位置、アイテムに関連付けられた商人によるアイテムの推定準備時間などに基づいて、アイテム(または配送提案内の任意の他の情報)の配送コストを判定することができる。配送提案はまた、キッチンディスプレイシステムのための一連の注文を含むことができ、その結果、商人は、それに応じて注文準備を調整することができる。 At 506, the service provider 102 can generate shipping offers for item delivery or order scheduling if multiple orders are received from multiple third-party services. The shipping offer may include a cost for delivery of the item by a delivery service associated with the service provider 102, an estimated amount of time for delivery of the item by the delivery service, an estimated pick-up time for delivery of the item, and a time limit for delivery of the item. can include an estimated drop-off time, etc. In some cases, the service provider 102 may provide an item (or delivery service) based on the current location of the third-party service, the item's pickup location, the item's drop-off location, the item's estimated preparation time by the merchant associated with the item, and the like. Any other information in the offer) can determine shipping costs. A delivery offer can also include a series of orders for the kitchen display system so that the merchant can adjust order preparation accordingly.

508において、サービスプロバイダ102は、商人またはユーザに関連付けられたコンピューティングデバイスなどのコンピューティングデバイスに配送提案を送信することができる。 At 508, the service provider 102 can send the shipping offer to a computing device, such as a computing device associated with the merchant or user.

510において、サービスプロバイダ102は、1つ以上のAPIを介して、配送提案の受諾または拒否のインジケーション(指標、指示)を受信することができる。受諾または拒否のインジケーションは、商人またはユーザに関連付けられたコンピューティングデバイスから受信され得る。 At 510, the service provider 102 can receive an indication of acceptance or rejection of the delivery offer via one or more APIs. An indication of acceptance or rejection may be received from the merchant or a computing device associated with the user.

512において、サービスプロバイダ102は、第三者サービスデバイスから配送人の位置情報を受信することができる。位置情報は、商人または顧客と通信するために使用されるAPIとは異なるAPIを介して、非APIチャネルを介してなど、任意の時間に受信することができる。位置情報は、第三者サービスデバイスの現在の位置を識別することができる。 At 512, the service provider 102 may receive the shipper's location information from the third party service device. Location information may be received at any time, such as through a non-API channel, via an API different from the API used to communicate with the merchant or customer. Location information may identify the current location of the third party service device.

514において、サービスプロバイダ102は、アイテムを移送するために、いくつかの第三者サービスの中から第三者サービスを識別することができる。多くの場合、そのような識別は、配送提案の受諾のインジケーション(指標、指示)を受信することに応答して実行され得る。第三者サービスデバイスは、位置情報において識別された第三者サービスデバイスの位置などの様々な情報に基づいて識別され得る。 At 514, the service provider 102 can identify a third party service among several third party services for transferring the item. Often such identification may be performed in response to receiving an indication of acceptance of the delivery offer. A third party service device may be identified based on various information such as the location of the third party service device identified in the location information.

516において、サービスプロバイダ102は、アイテムを移送するために第三者サービスデバイスに通信を送信することができる。通信は、関連する第三者サービスがピックアップ位置からアイテムを取得し、そのアイテムを配送の位置に移送することを要求することができる。通信は、配送提案の要求の中の情報、配送提案の中の情報など、配送に関する様々な情報を含むことができる。通信は、商人または顧客との通信に使用されるものとは異なるAPI を介して、非API チャネルなどを介して送信される場合がある。いくつかの例では、サービスプロバイダ102は、第三者サービスがアイテムを配送することを示す第三者サービスデバイス指示から受諾のインジケーション(指標、指示)を受信することができる。 At 516, the service provider 102 can send a communication to the third party service device to transfer the item. The communication may request that the associated third party service obtain the item from the pickup location and transport the item to the delivery location. The communication can include various information regarding the delivery, such as information in the request for delivery offer, information in the delivery offer, and the like. Communications may be sent via APIs different than those used to communicate with merchants or customers, via non-API channels, and the like. In some examples, service provider 102 may receive an indication of acceptance from a third party service device instruction that the third party service will deliver the item.

518において、サービスプロバイダ102は、位置情報および/または配送情報を受信することができる。位置情報および/または配送情報は、第三者サービスデバイスおよび/または商人デバイスから受信され得る。多くの場合、そのような情報は、配送が開始された後に受信され得る。位置情報は一般に、第三者サービスの位置を示すことができる。配送情報は、例えば、第三者サービスの位置を示す第三者サービスからの入力、アイテムがピックアップされたことを示す第三者サービスまたは商人からの情報などを含むことができる。 At 518, the service provider 102 can receive the location information and/or the shipping information. Location information and/or shipping information may be received from third party service devices and/or merchant devices. In many cases, such information may be received after delivery has commenced. Location information can generally indicate the location of third party services. Shipping information can include, for example, input from the third party service indicating the location of the third party service, information from the third party service or merchant indicating that the item was picked up, and the like.

520において、サービスプロバイダ102は、配送されているアイテムの配送のステータスを判定することができる。配送のステータスは、822で受信された位置情報および/または配送情報に基づくことができる。 At 520, the service provider 102 can determine the status of the shipment of the item being shipped. The status of the delivery can be based on location information and/or delivery information received at 822 .

522において、サービスプロバイダ102は、商人または顧客に関連するコンピューティングデバイスに配送ステータスを送信することができる。コンピューティングデバイスは、商人または顧客への配送ステータスを表示することができる。 At 522, the service provider 102 can transmit the shipping status to a computing device associated with the merchant or customer. The computing device can display the shipping status to the merchant or customer.

場合によっては、サービスプロバイダ102は、複数のチャネル、または第三者サービスのような複数のソースを介して注文を受信することができる。注文が非商人チャネルを介して(例えば、顧客から直接)受信される場合、サービスプロバイダ102は、商人と通信して、商人が注文を履行することを要求することができる。商人によって受諾された場合、商人は受諾のインジケーション(指標、指示)を送信することができ、サービスプロバイダ102は、第三者サービスによる配送を容易にすることを進めることができる。さらに、配送のステータスは、進行中の任意の数の配送について判定されてもよい。場合によっては、単一の商人または顧客を伴う複数のアイテムに対する複数のステータスが判定され、商人デバイスまたは顧客デバイスに送信されてもよい。 In some cases, service provider 102 may receive orders through multiple channels or multiple sources, such as third party services. If the order is received via a non-merchant channel (eg, directly from the customer), the service provider 102 can communicate with the merchant and request that the merchant fulfill the order. If accepted by the merchant, the merchant can send an indication of acceptance and the service provider 102 can proceed to facilitate delivery by a third party service. Additionally, the status of deliveries may be determined for any number of deliveries in progress. In some cases, multiple statuses for multiple items with a single merchant or customer may be determined and sent to the merchant device or customer device.

図6は、1つ以上のAPIを介してサービスプロバイダ102と通信し、サービスプロバイダ102と統合された第三者サービスを使用してコンセンサスサービスを使用したアクションを調整するための例の処理600を示す。処理600は、商人または顧客に関連付けられたコンピューティングデバイスなどの取得デバイスによって実行されるという文脈で説明される。 FIG. 6 illustrates an example process 600 for communicating with the service provider 102 via one or more APIs and using a third party service integrated with the service provider 102 to coordinate actions using a consensus service. show. Process 600 is described in the context of being performed by an acquisition device, such as a computing device associated with a merchant or customer.

602において、取得デバイスは、図1のアイテム取得インタフェース120などのインタフェースを提供することができる。これには、ディスプレイを介してアイテム取得インタフェースを表示することが含まれる。インタフェースは、ユーザがアイテムの注文を行うことを可能にしてもよい。インタフェースはまた、商人が注文を見ることを可能にするキッチンディスプレイシステムであってもよく、注文はそれらが準備されるべき順序で、アイテムごとに分類され、その結果、同様のアイテムが、内部キッチン目的のために新しいチケットを作成するために集められてもよく、もはや利用可能でないアイテムのためのフローを変更するなどであってもよい。インタフェースは、どの予約が予約され、どのソースから予約されているかを示す、空いているおよび利用不可能な予約のインタフェースにもなり得る。インタフェースはまた、商人において現在利用可能なアイテムのインタフェースであってもよく、商人は、利用可能性、人気、商人の位置などに基づいて、リアルタイムでメニューを変更することができる。 At 602, the acquisition device can provide an interface, such as the item acquisition interface 120 of FIG. This includes presenting the item retrieval interface via the display. The interface may allow the user to place an order for the item. The interface may also be a kitchen display system that allows the merchant to view the orders, sorted by item in the order in which they should be prepared, so that similar items are displayed in the interior kitchen. Purposes may be aggregated to create new tickets, change flows for items that are no longer available, and so on. The interface can also be a free and unavailable reservation interface that indicates which reservations are reserved and from which sources. The interface may also be an interface of items currently available at the merchant, allowing the merchant to change menus in real time based on availability, popularity, merchant location, and the like.

604において、取得デバイスは、取得のためのアイテムの選択を受信することができる。例えば、ユーザ(例えば、商人、顧客等)は、商品を電子ショッピングカートに入れて、商人からアイテムを購入する意図を示すことができる。場合によっては、ユーザが配送の場所、ピックアップの位置、ピックアップの要求時間、取得されるアイテムの数、アイテムのサイズ、アイテムが所定のカテゴリに関連付けられているかどうか、アイテムの重量などの他の情報を提供することもできる。他の例では、そのような情報は、自動的に判定されてもよい。要求される他の種類の情報は、注文照合の要求、注文順序付けの要求、または商人によってトリガされるか又はサーバによって自動的にトリガされる注文コンセンサスの要求であってもよい。 At 604, the acquisition device can receive a selection of items for acquisition. For example, a user (eg, merchant, customer, etc.) can indicate an intention to purchase the item from the merchant by placing the item in an electronic shopping cart. In some cases, the user may provide other information such as delivery location, pickup location, pick-up requested time, number of items retrieved, size of item, whether item is associated with a given category, weight of item, etc. can also be provided. In other examples, such information may be determined automatically. Other types of information requested may be requests for order matching, requests for order sequencing, or requests for order consensus triggered by the merchant or automatically by the server.

606において、取得デバイスは、アイテムの配送に関する情報が要求されていることを決定することができる。これは、アイテムを配送させることへの関心を示す入力をユーザから受信すること、顧客の位置と商人の位置との間の距離を識別すること(例えば、距離が閾値よりも大きい場合、配送が要求されていると判定すること)などを含むことができる。いくつかの例では、配送情報は、各注文に対して要求されていることが自動的に判定されてもよい。 At 606, the acquisition device can determine that information regarding delivery of the item is requested. This involves receiving input from the user indicating an interest in having the item delivered, identifying the distance between the customer's location and the merchant's location (e.g., if the distance is greater than a threshold, the determining that it is required), etc. In some examples, it may be automatically determined that shipping information is required for each order.

608において、取得デバイスは、サービスプロバイダ102に関連付けられた1つ以上のAPIを介して、サービスプロバイダ102に、アイテムの配送に関する要求を送信することができる。当該要求は、配送提案を要求することができる。場合によっては、要求は、配送の位置、ピックアップの位置、ピックアップの要求された時間、取得されるアイテムの数、アイテムのサイズ、アイテムが所定のカテゴリに関連付けられているかどうか、アイテムの重量などを示すことができる。配送提案はまた、予約提案、第三者サービス間で予約割当数をどのように分配するか、第三者サービス間で注文の受諾または配送をどのように分配するか、第三者サービスから受信した注文をどのように順序付けるか、およびメニュー更新、注文更新などの注文に対する更新をどのように送信または受信するかを含む。 At 608 , the acquisition device can send a request for delivery of the item to service provider 102 via one or more APIs associated with service provider 102 . The request may request a delivery offer. In some cases, the request may specify delivery location, pickup location, requested time of pickup, number of items to be retrieved, size of item, whether item is associated with a given category, weight of item, etc. can be shown. Delivery offers may also include booking offers, how booking quotas are distributed among the Third Party Services, how acceptance or delivery of orders is distributed among the Third Party Services, and information received from the Third Party Services. including how orders placed are ordered and how updates to orders such as menu updates, order updates, etc. are sent or received.

610において、取得デバイスは、サービスプロバイダ102から配送提案を受信することができる。配送提案は、サービスプロバイダ102に関連付けられた配送サービスによるアイテムの配送のためのコスト、アイテムの配送のための推定時間量、アイテムの配送のための推定ピックアップ時間、アイテムの配送のための推定ドロップオフ時間などを示すことができる。 At 610 , the acquisition device can receive a delivery offer from service provider 102 . A shipping offer may include a cost for shipping the item by a shipping service associated with the service provider 102, an estimated amount of time for shipping the item, an estimated pick-up time for shipping the item, and an estimated drop for shipping the item. Off time and the like can be indicated.

612において、取得デバイスは、配送提案が受諾されるか、または拒否されるかを判定し得る。いくつかの例では、取得デバイスは、配送提案内に含まれる情報(例えば、アイテムの配送のためのコスト、アイテムの配送のための推定時間量など)を表示し、配送提案の受諾に関するユーザ入力を受信することができる。他の例では、取得デバイスは、1つ以上の基準が満たされたときに、配送提案を受諾するか、または拒否するかを自動的に判定することができる。したがって、取得デバイスは、場合によっては、配送提案の情報を表示することを控えることができる。 At 612, the acquisition device may determine whether the delivery offer is accepted or rejected. In some examples, the acquisition device displays information contained within the delivery offer (e.g., cost for delivery of the item, estimated amount of time for delivery of the item, etc.) and accepts user input regarding acceptance of the delivery offer. can be received. In other examples, the acquisition device can automatically determine whether to accept or reject a delivery offer when one or more criteria are met. Accordingly, the acquisition device may refrain from displaying the information of the delivery offer in some cases.

614において、取得デバイスは、サービスプロバイダ102に関連付けられた1つ以上のAPIを介して、配送提案の受諾または拒否のインジケーション(指標、指示)をサービスプロバイダ102に送信することができる。これにより、サービスプロバイダ102は、アイテムの配送を容易にすることができる。いくつかの例では、顧客が配送に対して課金されてもよく、他の例では、商人または他の商人が課金されてもよい。 At 614 , the acquisition device may send an indication of acceptance or rejection of the delivery offer to service provider 102 via one or more APIs associated with service provider 102 . This allows the service provider 102 to facilitate the delivery of the item. In some examples, the customer may be charged for shipping, and in other examples the merchant or other merchant may be charged.

616において、取得デバイスは、配送ステータス処理を実行することができる。例えば、取得デバイスは、サービスプロバイダ102に関連する1つ以上のAPIを介して、アイテムの配送ステータスの要求を送信することができる。その後、取得デバイスは、サービスコンピューティングデバイス102から、アイテムの配送のステータスを受信し、配送のステータスを表示することができる。他の例では、配送のステータスは、(例えば、第三者サービスがアイテムをピックアップしたことを知ることに基づいて)商人デバイスにおいて判定されてもよく、配送のステータスは、顧客デバイスに送信されてもよい。 At 616, the acquisition device can perform delivery status processing. For example, the acquisition device may send a request for the delivery status of the item via one or more APIs associated with service provider 102 . The acquisition device can then receive the status of the delivery of the item from the service computing device 102 and display the status of the delivery. In other examples, the status of the delivery may be determined at the merchant device (e.g., based on knowing that the third party service picked up the item) and the status of the delivery is sent to the customer device. good too.

図7は、アイテムの配送、空いている/競合する座席の予約、メニュー更新などに関して第三者サービスまたは商人デバイスに通知するための例示的な処理700を示す。 FIG. 7 illustrates an exemplary process 700 for notifying a third party service or merchant device regarding item delivery, available/conflicting seat reservations, menu updates, and the like.

702において、第三者サービスデバイスは、ユーザデバイスなどの第三者サービスデバイスの地理的位置を判定することができる。地理的位置は、衛星ベースのセンサ(例えば、全地球測位システム(GPS)、セルタワー無線、ワイヤレスアクセスポイント無線、無線ビーコン位置センサなど)などの、第三者サービスデバイスの位置センサからのデータに基づいて判定されてもよい。 At 702, a third party service device can determine a geographic location of the third party service device, such as a user device. Geographic location is based on data from location sensors of third party service devices, such as satellite-based sensors (e.g., global positioning system (GPS), cell tower radios, wireless access point radios, radio beacon location sensors, etc.) may be determined by

704において、第三者サービスデバイスは、サービスコンピューティングデバイス102に位置情報を提供することができる。位置情報は、第三者サービスデバイスの地理的位置を示すことができる。位置情報は、定期的に、特定の時間に、要求に応じて、等々で提供されてもよい。 At 704 , the third party service device can provide location information to service computing device 102 . Location information may indicate the geographic location of the third party service device. Location information may be provided periodically, at specific times, on demand, and so on.

706において、第三者サービスデバイスは、アイテムの配送に関する通信をサービスプロバイダ102から受信することができる。例えば、通信は、第三者サービスデバイス500に関連付けられた第三者サービスが商人からアイテムを取得し、そのアイテムを顧客に移送することを求める要求を含むことができる。要求は、配送のための時間枠(例えば、配送時間)、配送すべきアイテムの数、配送のルート、商人の位置、または配送を行う際に有用であり得る任意の他の情報を指定し得る。 At 706, the third party service device can receive a communication from the service provider 102 regarding delivery of the item. For example, a communication may include a request for a third party service associated with third party service device 500 to obtain an item from a merchant and transport the item to a customer. The request may specify a time frame for delivery (e.g., delivery time), number of items to be delivered, route of delivery, merchant location, or any other information that may be useful in making the delivery. .

708において、第三者サービスデバイスは、アイテムが配送されることを要求する通知を提示することができる(例えば、商人の施設から取得され、配送位置に移送される)。通知は、ディスプレイ、スピーカなどを介して提示されてもよい。場合によっては、情報が、アイテムの配送を容易にする第三者サービスインタフェース(例えば、第三者サービスが配送を受諾すること、配送が行われたことを確認すること、追加の配送を要求することなどを可能にするインタフェース)を介して表示される。第三者サービスデバイス500は、1006で受信される通信に含まれる任意の情報を提示することができる。 At 708, the third party service device can present a notification requesting that the item be shipped (eg, obtained from the merchant's facility and transported to the shipping location). Notifications may be presented via displays, speakers, and the like. In some cases, the information is provided by a third-party service interface that facilitates delivery of the item (e.g., that the third-party service accepts delivery, confirms that delivery has taken place, requests additional delivery, etc.). displayed via an interface that enables Third party service device 500 may present any information included in the communication received at 1006 .

710において、第三者サービスデバイスは、第三者サービスからの入力を受信し、および/またはアイテムの配送に関する受諾または拒否を送信することができる。例えば、第三者サービスが顧客にアイテムを配送するタスクを受諾することを入力が示す場合、第三者サービスデバイス500は、そのようなタスクが受諾されたことを示す通信をサービスプロバイダ102に送信することができる。 At 710, the third party service device can receive input from the third party service and/or send an acceptance or rejection regarding delivery of the item. For example, if the input indicates that the third party service accepts the task of delivering the item to the customer, the third party service device 500 sends a communication to the service provider 102 indicating that such task has been accepted. can do.

図8は、注文に関するステータス更新を提供するために、サービスプロバイダによって公開される1つ以上のAPIを介して通信する例示的な処理800を示す。図8では、図8の下部(1つ以上のサービスプロバイダAPI802によって確立された線の下)に示された要素は、サービスプロバイダ102などのサービスプロバイダによって実行される動作を表すことができる。 FIG. 8 illustrates an exemplary process 800 for communicating via one or more APIs exposed by service providers to provide status updates regarding orders. 8, elements shown at the bottom of FIG. 8 (below the lines established by one or more service provider APIs 802) can represent operations performed by a service provider, such as service provider 102. In FIG.

図8の例では、複数の第三者サービスを実行するユーザに関連するコンピューティングデバイス801は、商人デバイス106と関連する商人に発注された注文の生成または作成を可能にし、第三者サービスに関連するコンピューティングデバイス804は、商人デバイス106と関連する商人に発注された注文の生成または作成を可能にするユーザインタフェース806を実装する。810に示すように、サービスプロバイダから情報を要求することによって、入って来る注文またはユーザインタフェース806の左側にリストされた注文を取得することができる。812において、サービスプロバイダは、履行情報を取得し、かつ商人(会社A)の注文のそれぞれに割り当てられた第三者サービスの位置を判定することによって、注文のステータスを判定することができる。814において、サービスプロバイダは、ステータスに関する詳細を生成し、その詳細をユーザインタフェース1206の左側を介して表示するためにコンピューティングデバイス804に送信することができる。 In the example of FIG. 8, a computing device 801 associated with a user running a plurality of third party services enables the generation or creation of orders placed with merchants associated with merchant device 106 and the third party services. Associated computing device 804 implements a user interface 806 that enables the generation or creation of orders placed with merchants associated with merchant device 106 . As shown at 810, incoming orders or orders listed on the left side of the user interface 806 can be obtained by requesting information from the service provider. At 812, the service provider can determine the status of the order by obtaining fulfillment information and determining the location of the third party service assigned to each of the merchant's (Company A's) orders. At 814 , the service provider can generate details about the status and send the details to computing device 804 for display via the left side of user interface 1206 .

顧客は、コンピューティングデバイス801を使用して注文または注文要求を生成することができる。したがって、コンピューティングデバイス801上で実行される第三者サービス108を使用して、そのような注文をトリガすることができる。第三者アプリケーション108のような第三者アプリケーションは、ステータス更新エンドポイント、またはAPIエンドポイント819を配信することにより、サービスプロバイダ102とインタフェースして、注文826の詳細、注文がどこからでも受信された順のリスト内でどのようにスケジュールされるか、準備および配送824のステータスなどを取得する。また、サービスプロバイダは、例えば、ユーザが別の配送会社に属する配送人に近接していることに基づいて、注文ために使用されたものとは異なる会社によって配送される注文をスケジュールすることもできる。 A customer may use computing device 801 to generate an order or order request. Accordingly, third party services 108 running on computing device 801 can be used to trigger such orders. A third party application, such as third party application 108, interfaces with service provider 102 by delivering a status update endpoint, or API endpoint 819, to provide details of order 826, from where the order was received. Get how it is scheduled in the list of orders, the status of preparation and delivery 824, etc. A service provider may also schedule an order to be shipped by a different company than the one used to place the order, for example, based on the user's proximity to a shipper belonging to another shipping company. .

商人に関連するコンピューティングデバイス802も示されている。ユーザインタフェース806の左側は、注文が出されるチャネル(例えば、電話、顧客アプリケーション、ウェブサイトなど)にかかわらず、商人に出されたすべての注文(または特定の数の注文)の比較的高レベルの情報を表示することができる。一方、ユーザインタフェースの右側には、選択された1つ以上の注文に関するより詳細な情報が表示されてもよい。ユーザインタフェース806の左側と右側は、線808によって分離されている。ユーザインタフェース806は、サービスプロバイダが複数のソースから受信された注文からリアルタイムで通知または更新をプッシュするキッチンディスプレイシステムのインタフェースであってもよい。インタフェース806はまた、サービスプロバイダ102によってスケジュールされるように、注文をリストし、ユーザの好み、利用可能性、および他のそのような要因による注文の管理を支援する。 A computing device 802 associated with the merchant is also shown. The left side of the user interface 806 displays a relatively high-level view of all orders (or a certain number of orders) placed with the merchant regardless of the channel through which the orders are placed (e.g., phone, customer application, website, etc.). Information can be displayed. Meanwhile, the right side of the user interface may display more detailed information about the selected order or orders. The left and right sides of user interface 806 are separated by line 808 . User interface 806 may be the interface of a kitchen display system where the service provider pushes real-time notifications or updates from orders received from multiple sources. Interface 806 also lists orders as scheduled by service provider 102 and helps manage orders according to user preferences, availability, and other such factors.

図示されるように、アイテムの配送に関するステータス情報は、1つ以上のサービスプロバイダAPI802を介してサービスプロバイダと通信することによって取得することができる。例えば、810に示されているように、ユーザインタフェース806の左側にリストされている注文のステータス情報は、サービスプロバイダに情報を要求することによって取得することができる。812において、サービスプロバイダは、履行情報を取得し、商人(会社A)の注文のそれぞれに割り当てられた第三者サービスの位置を判定することによって、注文のステータスを判定することができる。814において、サービスプロバイダは、ステータスに関する詳細を生成し、その詳細をユーザインタフェース806の左側を介して表示するためにコンピューティングデバイス804に送信することができる。 As shown, status information regarding the delivery of items can be obtained by communicating with a service provider via one or more service provider APIs 802 . For example, as shown at 810, status information for orders listed on the left side of user interface 806 can be obtained by requesting the information from a service provider. At 812, the service provider can determine the status of the order by obtaining fulfillment information and determining the location of the third party service assigned to each of the merchant's (Company A's) orders. At 814 , the service provider can generate details about the status and send the details to computing device 804 for display via the left side of user interface 806 .

商人が、注文816のようなユーザインタフェース806の左側の特定の注文を選択する場合、その注文に特有のより詳細な情報がユーザインタフェース806の右側に表示されてもよい。特に、818に示すように、コンピューティングデバイス804は、選択された注文816に関する追加のステータス情報を要求してもよい。820において、サービスプロバイダは、履歴情報を取得し、選択された注文に割り当てられた第三者サービスの位置を判定することによって、選択された注文のステータスを判定することができる。822において、サービスプロバイダは、ステータスに関する詳細を生成し、その詳細をユーザインタフェース1206の右側を介して表示するためにコンピューティングデバイス804に送信することができる。場合によっては、右側に表示される詳細が左側に表示される詳細よりも具体的であってもよい。このように、商人は、様々なタイプのチャネルを介して発注された注文のステータス情報を多く見る。 When a merchant selects a particular order on the left side of user interface 806 , such as order 816 , more detailed information specific to that order may be displayed on the right side of user interface 806 . In particular, as shown at 818 , computing device 804 may request additional status information regarding selected order 816 . At 820, the service provider can determine the status of the selected order by obtaining historical information and determining the location of the third party service assigned to the selected order. At 822 , the service provider can generate details about the status and send the details to computing device 804 for display via the right side of user interface 1206 . In some cases, the details displayed on the right may be more specific than the details displayed on the left. As such, merchants often see status information for orders placed through various types of channels.

いくつかの例では、ボックス810は、サービスプロバイダの配送サービスによって現在配送されている商人のすべての注文(または特定の数の注文)に関するステータス情報を取得するためのAPIを表す。一方、ボックス818は、サービスプロバイダの配送サービスによって現在配送されている商人の特定の注文のステータス情報を取得するためのAPIを表してもよい。 In some examples, box 810 represents an API for obtaining status information about all of a merchant's orders (or a certain number of orders) that are currently being delivered by the service provider's delivery service. Box 818, on the other hand, may represent an API for obtaining status information for a merchant's particular order that is currently being delivered by the service provider's delivery service.

いくつかの例では、本出願は、最適化された注文スケジューリングを提供するためのシステムを開示し、このシステムは、1つ以上のプロセッサと、1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体とを含み、命令は、商人に関連付けられた販売時点管理デバイス上で実行される注文スケジューリングアプリケーションによって、第1の顧客対面注文アプリケーションから第1の注文を受信することであってと、第1の注文は、第1の顧客対面注文アプリケーションによって提供される住所に配送するために商人によって準備される1つ以上のメニューアイテムを含む、受信することと、第1の配送アプリケーションによって、商人のコンピューティングデバイスに、第1の配送アプリケーションが第1の注文をピックアップするための配送人または顧客の到着を推定する時間を示す推定ピックアップ時間を送信することと、第1の顧客対面アプリケーションに関わる過去の注文に基づいて、配送人または顧客が第1の注文をピックアップする可能性があるときの推定時間を示す予測ピックアップ時間を判定することと、第2の顧客対面注文アプリケーションから第2の注文を受信することであって、第2の注文は商人によって準備される1つ以上のメニューを含む、受信することと、第1の配送アプリケーションによって、商人のコンピューティングデバイスに、第2の配送アプリケーションが第2の注文をピックアップするために配送人または他の顧客の到着を推定する時間を示す推定ピックアップ時間を送信することと、第2の配送アプリケーションに関わる過去の注文に基づいて、配送人または顧客が第2の注文をピックアップする可能性がある時間を示す予測ピックアップ時間を判定することと、注文スケジューリングアプリケーションによって、第1の注文および第2の注文の予測ピックアップ時間に少なくとも部分的に基づいて注文の順序付きリストを生成することと、順序付きリストに従って注文を準備するために注文の順序付きリストをキッチンディスプレイシステムに送信することと、を含む動作を実行するように1つ以上のプロセッサをプログラムする。 In some examples, this application discloses a system for providing optimized order scheduling, the system storing one or more processors and instructions executable by the one or more processors. and one or more non-transitory computer readable media, the instructions executing a first order from a first customer facing order application by an order scheduling application executing on a point of sale device associated with the merchant. receiving, the first order including one or more menu items prepared by the merchant for delivery to the address provided by the first customer-facing ordering application; sending by the first shipping application to the merchant's computing device an estimated pick-up time indicating the time the first shipping application estimates the arrival of the shipper or customer to pick up the first order; Determining a predicted pick-up time indicating an estimated time when the first order may be picked up by a delivery person or customer based on past orders associated with the first customer-facing application; and a second customer. Receiving a second order from the face-to-face ordering application, the second order including one or more menus prepared by the merchant; sending to the device an estimated pick-up time indicating the time the second shipping application estimates the arrival of the courier or other customer to pick up the second order; Determining a predicted pick-up time based on the order indicating when the delivery person or customer may pick up the second order; Generating an ordered list of orders based at least in part on the time and transmitting the ordered list of orders to a kitchen display system for preparing the orders according to the ordered list. program one or more processors to

図9は、サービスコンピューティングデバイス102またはコンセンサスサービスなどの関連するアプリケーションなどのサービスプロバイダの一例の例示的な処理を示し、コンテキストデータに基づいて、ユーザインタフェースなどのユーザインタフェース904のアイコン902を動的に修正(変更)する。たとえば、メニュー更新は、第三者サービスと商人との関係、アイテムの利用可能性または人気、およびその他のコンテキストデータに基づいて、第三者サービスに送信することができる。コンテキストデータは、サービスコンピューティングデバイス900の位置、時間、曜日、年の時間(例えば、季節)、天気、商人の在庫、商人の好み、顧客の好み、アップセルアイテムと見なされるアイテム、クロスセルアイテムと見なされるアイテム、商人によって提供される販売および/または特売、ならびにサービスコンピューティングデバイス900の使用に対応する様々な他のコンテキスト要因を含むことができる。コンテキストデータは、商人デバイスで、アプリケーションを介して、またはサーバレベルでの現在または履歴などのデータ分析を介して自動的に生成することができる。コンテキスト情報は、カートレベル情報である完全または不完全な注文要求を第三者アプリケーションから追跡することによって得ることができる。 FIG. 9 illustrates exemplary processing of an example service provider, such as service computing device 102 or an associated application, such as a consensus service, to dynamically change icons 902 of a user interface 904, such as a user interface, based on contextual data. be modified (changed) to For example, menu updates can be sent to the third party service based on the third party service's relationship with the merchant, item availability or popularity, and other contextual data. The context data may be the location of the service computing device 900, time of day, day of the week, time of year (e.g., season), weather, merchant inventory, merchant preferences, customer preferences, items considered upsell items, cross-sell items, and so on. Items considered, sales and/or offers offered by merchants, and various other contextual factors corresponding to the use of service computing device 900 may be included. Contextual data can be generated automatically at the merchant device, through an application, or through data analysis, such as current or historical, at the server level. Contextual information can be obtained by tracking complete or incomplete order requests that are cart level information from third party applications.

906において、サービスコンピューティングデバイス900は、第1のコンテキストデータを判定し、コンテキストデータに基づいて第1のアイコン902(1)を表示する。第1のコンテキストデータは、サービスコンピューティングデバイス900の使用に対応する1つ以上の要因の分析に基づいて判定することができる。例示的な実施例では、分析は、時刻が朝食メニューに対応するという判定を含むことができる。この判定に基づいて、サービスコンピューティングデバイス900は、食事メニューに対応するアイコン902(1)の第1の設定を表示することができる。いくつかの例では、分析は、顧客の好みの分析と、朝食メニューなどの特定のメニューアイテムを顧客が好むという判定とを含むことができる。 At 906, the service computing device 900 determines first context data and displays a first icon 902(1) based on the context data. The first context data can be determined based on analysis of one or more factors corresponding to use of service computing device 900 . In an exemplary embodiment, the analysis may include determining that the time of day corresponds to a breakfast menu. Based on this determination, service computing device 900 can display a first setting of icon 902(1) corresponding to the meal menu. In some examples, the analysis may include analyzing customer preferences and determining that the customer prefers certain menu items, such as the breakfast menu.

様々な例では、分析は、1つ以上のアイテムを強調するための判定を含むことができる。強調は、アイコン902のサイズ、形状、色および/または色相を増加させることによって、アイコン902の配置を変更することによって、またはアイコン902をディスプレイ上で目立たせるためのその他の調整によって提示することができる。強調は、商人の在庫、現在の天候、アイテムをアップセルしようとする試み、アイテムをクロスセルしようとする試み、商人によって提供される販売および/または特売、商人の取引履歴(例えば、ある時間に販売された既知の人気のあるアイテム、曜日、年の時間(例えば、季節)、販売されたアイテムの既知の人気のある組合せなど)に基づくことができる。 In various examples, analysis can include determining to emphasize one or more items. Emphasis may be provided by increasing the size, shape, color and/or hue of icons 902, by changing the placement of icons 902, or by other adjustments to make icons 902 stand out on the display. can. Highlights include merchant inventory, current weather, attempts to upsell items, attempts to cross-sell items, sales and/or specials offered by merchants, merchant transaction history (e.g., sales at a given time). known popular items sold, days of the week, times of the year (eg, seasons), known popular combinations of items sold, etc.).

[3] いくつかの例では、分析は、1つ以上のアイテムを強調解除する判定を含むことができる。アイテムの強調解除は、商人の在庫、現在の天気、クロスセルの試み、および/または商人が特定のアイテムの販売を思いとどまらせることができる他の要因に基づくことができる。強調解除は、表示ページから1つ以上のアイテムに対応するアイコン902を除去することによって提示することができる。様々な例において、ユーザインタフェース904は、複数の表示ページを含むことができる。いくつかの例では、強調解除は、メイン表示ページ以外の表示ページ上の1つ以上のアイテムに対応するアイコンを含めることによって提示することができる。たとえば、強調解除には、複数の表示ページの最後のページにアイコンを提示することを含めることができる。 [3] In some examples, the analysis may include determining to de-emphasize one or more items. Item de-emphasis can be based on the merchant's inventory, current weather, cross-sell attempts, and/or other factors that may discourage the merchant from selling a particular item. De-highlighting can be presented by removing icons 902 corresponding to one or more items from the display page. In various examples, user interface 904 can include multiple display pages. In some examples, de-highlighting may be presented by including icons corresponding to one or more items on display pages other than the main display page. For example, de-highlighting can include presenting an icon on the last page of multiple display pages.

様々な例において、サービスコンピューティングデバイス900は、コンテキスト要因に基づいて、1つ以上のアイテムを強調および/または強調解除するように動的に判定することができる。例えば、顧客が最後のマフィンを注文した場合、サービスコンピューティングデバイス900は、ユーザインタフェースからマフィンアイコンを除去することによってユーザインタフェース904を動的に修正し、それをペーストリーアイコンに置き換えることができる。 In various examples, the service computing device 900 can dynamically determine to highlight and/or de-highlight one or more items based on contextual factors. For example, if the customer has ordered the last muffin, the service computing device 900 can dynamically modify the user interface 904 by removing the muffin icon from the user interface and replacing it with the pastry icon.

908において、サービスコンピューティングデバイス900は、第2のコンテキストデータを判定し、コンテキストデータに基づいて第2のアイコン902(2)を表示する。様々な例において、第2のコンテキストデータは、午前メニューに対応する時間からランチメニューに対応する時間への時刻の変化を含むことができる。いくつかの例では、第2のコンテキストデータは、商人の位置に近いイベントの判定を含むことができ、あるいは商人の位置の画面に表示され、これは顧客によって注文される可能性が最も高いメニューアイテムに影響を与える可能性がある。そのような例では、サービスコンピューティングデバイス900は、アイコン902(1)をアイコン902(2)の第2の設定に動的に修正して、顧客の好みまたは外部環境(例えば、寒い/暑い日に熱い/冷たい飲料アイテムが推奨される)に対応することができる。例えば、商人は、通常、朝食から昼食メニューに午前11時に調整することができる。しかしながら、サービスコンピューティングデバイス900は、フットボールゲームが午前10時に開始し、フットボールゲーム中に、顧客がランチメニュー上のアイテムを消費することを好むと判定することができる。したがって、サービスコンピューティングデバイス900は、アイコン902の1つ以上をランチメニューアイテムに対応するものに調整してもよい。 At 908, the service computing device 900 determines second context data and displays a second icon 902(2) based on the context data. In various examples, the second context data can include a time change from a time corresponding to the morning menu to a time corresponding to the lunch menu. In some examples, the second contextual data may include a determination of events near the merchant's location, or displayed on a screen at the merchant's location, which is the menu most likely to be ordered by the customer. It can affect items. In such an example, service computing device 900 may dynamically modify icon 902(1) to the second setting of icon 902(2) to accommodate customer preferences or external environment (e.g., cold/hot days). hot/cold beverage items recommended). For example, a merchant may typically adjust from breakfast to lunch menu at 11:00 am. However, the service computing device 900 may determine that the football game starts at 10:00 am and that the customer prefers to consume items on the lunch menu during the football game. Accordingly, service computing device 900 may adjust one or more of icons 902 to correspond to lunch menu items.

いくつかの例では、サービスコンピューティングデバイス900がイベントが商人の近くで行われているか、または商人位置のディスプレイ画面上に提示されることになると判定することができ、イベントに基づいて1つ以上の販売および/または特売(たとえば、割引など)を生成することができる。このような例では、サービスコンピューティングデバイス900は、1つ以上の特売に対応するアイコン902を強調することができる。例えば、商人は、イベント中にハンバーガー及びアルコール飲料を特別に提供することができる。したがって、サービスコンピューティングデバイス900は、ハンバーガーおよびアルコール飲料に対応するアイコンを目立たせるように修正することができる。さらに、または代替として、サービスコンピューティングデバイスは、購入をさらに奨励するために、特定のアイテムが割引価格で提供されるという通知910を表示することができる。 In some examples, the service computing device 900 can determine that an event is taking place near the merchant or will be presented on a display screen at the merchant location, and based on the event, one or more sales and/or special offers (eg, discounts, etc.) can be generated. In such an example, service computing device 900 may highlight icons 902 corresponding to one or more special offers. For example, a merchant can special offer hamburgers and alcoholic beverages during an event. Accordingly, the service computing device 900 can modify the icons corresponding to hamburgers and alcoholic beverages to be more prominent. Additionally or alternatively, the service computing device may display a notification 910 that a particular item is offered at a discounted price to further encourage purchase.

代替として、または追加として、アイコン902(1)を有する第1のインタフェースは、第1の第三者サービスに対応することができ、902(2)を有する第2のインタフェースは、第2の第三者サービスに対応することができ、商人は、メニューインタフェースに異なる更新を送信する。別の実施態様では、1つの第三者サービスと別の第三者サービスとの両方のためのインタフェースは同じであり、それは、同じ内容が第三者サービスに提示されることを意味する。メニューの基礎となるコンテキスト情報は、第三者サービスに関連するメニューで顧客の行動に結びついている可能性がある(すなわち、商人のためのサービスAのメニューは、同じ商人のためのサービスBのメニューとは異なるように編成されてもよい)。支払サービスのAPI は、その第三者サービスアプリケーション内で顧客とのやり取り/行動(メニュースクロールアクティビティ、ナビゲーション設定、注文履歴など) を収集するために使用することができる。注文履歴を見ると、支払サービスは、例えば、支払サービスまたはAPIがサービスAの顧客が典型的には前菜(アペタイザ)を注文し、サービスBの顧客が特定の商人からデザートを注文する傾向があると判定した場合、その情報を使用してメニューを再編成することができる。したがって、一実施形態では、支払サービスは、例えば、コンセンサスサービスが特定の期間中に追跡する注文アクティビティに基づいて(例えば、「第三者アプリケーションの大部分からの顧客が現在ステーキを注文しているか」というクエリに基づいて)、コンテンツ/メニューの更新をすべての第三者注文アプリケーションにプッシュアップすることができる。さらに、または代替として、支払サービスは、コンセンサスサービスが顧客の注文行動について学習するものに基づいて各第三者アプリケーションにカスタマイズされる固有のメニューを生成するように、メニューレイアウトを再編成するコンテンツ更新をプッシュアウトすることもできる。したがって、コンセンサスサービスは、配送サービスがアクセスできない現在のデータおよび履歴データから、収集、分析、比較、および学習を行う。さらに、コンセンサスサービスは、そうでなければ通信しない別個のサービスが、コンセンサスサービスによって作成された間接チャネルを介して通信することを可能にする。説明は、APIをチャネルの1つの形成であると説明するが、説明は、サービス間のチャネルの他の形成を、直接に、または支払サービスのような仲介サービスを介して、カバーするように拡張することができることを理解されたい。 Alternatively or additionally, a first interface with icon 902(1) may correspond to a first third party service and a second interface with 902(2) may correspond to a second third party service. A three-party service can be supported, with merchants sending different updates to the menu interface. In another embodiment, the interface for both one third party service and another third party service is the same, meaning that the same content is presented to the third party service. The contextual information underlying the menus may be tied to customer behavior in menus related to third-party services (i.e., a menu of service A for a merchant may be a menu of service B for the same merchant). may be organized differently than the menu). A payment service's API can be used to collect customer interactions/behavior (menu scrolling activity, navigation preferences, order history, etc.) within its third party service application. Looking at order histories, payment services tend to have, for example, payment services or APIs where customers of service A typically order appetizers and customers of service B order desserts from a particular merchant. If so, that information can be used to reorganize the menu. Thus, in one embodiment, the payment service is based, for example, on order activity that the consensus service tracks during a particular time period (e.g., "Are customers from most third-party applications currently ordering steaks?" ), content/menu updates can be pushed up to all third party ordering applications. Additionally or alternatively, the Payment Service may reorganize the menu layout to generate a unique menu customized for each third party application based on what the Consensus Service learns about customer ordering behavior. can also be pushed out. Thus, the Consensus Service collects, analyzes, compares, and learns from current and historical data that the Shipping Service does not have access to. In addition, the consensus service allows separate services that otherwise do not communicate to communicate via the indirect channel created by the consensus service. Although the description describes APIs as being one form of channel, the description extends to cover other forms of channels between services, either directly or through intermediary services such as payment services. It should be understood that it is possible to

一部の実装において、最適化されたコンテンツ管理を提供するためのサーバシステムであって、前記システムは、1つ以上のプロセッサと、当該1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ読み取り可能な媒体と、を備え、当該命令は、第1のサービスアプリケーションおよび第2のサービスアプリケーションのためのコンテンツ構造を受信することであって、コンテンツ構造は例えば、メニューがレイアウトされるまたはアイテムが価格設定される方法を含む、受信することと、商人に関連付けられた販売時点管理デバイス上で実行されるコンテンツ管理アプリケーションによって、コンテンツ更新が新しいメニューアイテム、削除されたメニューアイテムを含む第1の商人アプリケーションのための第1のコンテンツ更新又はレビューを受信することであって、第1のコンテンツ更新は第1のサービスアプリケーションのためのメニューなどのコンテンツになされた更新を含む、受信することと、コンテンツ更新を第1のサービスアプリケーションに送信することと、第2のサービスアプリケーションに、第1のサービスアプリケーションのコンテンツ更新に類似したコンテンツ更新を送信することと、等を含む処理ステップを実行する。 In some implementations, a server system for providing optimized content management, the system comprising one or more processors and one processor storing instructions executable by the one or more processors. and a non-transitory computer-readable medium as described above, wherein the instructions are to receive a content structure for the first service application and the second service application, the content structure being, for example, a menu Content updates, including how items are laid out or priced, are received and updated by content management applications running on point-of-sale devices associated with merchants to identify new menu items, deleted menu items, Receiving a first content update or review for a first merchant application containing items, the first content update including updates made to content such as menus for the first service application. , receiving, sending a content update to a first service application, sending to a second service application a content update similar to the content update of the first service application, and so on. Execute the step.

あるいは、サービスプロバイダは、コンテンツ管理アプリケーションによって、サービスアプリケーションおよび商人に基づいてコンテンツの構成された構造を生成することを含む。例えば、第1のサービスアプリケーションのためのアイテムの特定の注文および価格設定を有する第1のメニュー、および第2のサービスアプリケーションのためのアイテムの別の注文および価格設定を有する第2のメニューである。さらに、異なるアイテムは、異なる位置およびサービスアプリケーションで提供されてもよい。 Alternatively, the service provider includes generating an organized structure of content based on the service application and the merchant via the content management application. For example, a first menu with a particular order and pricing of items for a first service application, and a second menu with a different order and pricing of items for a second service application. . Further, different items may be offered at different locations and service applications.

図10は、コンセンサスサービスを実行するサービスプロバイダ102または商人デバイス1008におけるコンセンサスサービス132上の予約の例示的なインタフェース1000である。図に示すように、予約は、リアルタイムで管理することができ、予約は、Yelp(著作権)、OpenTable(著作権)、Resy(著作権)などの予約サービスなどの複数のソースから受信される。 FIG. 10 is an example interface 1000 for a subscription on a consensus service 132 at a service provider 102 or merchant device 1008 running the consensus service. As shown in the diagram, reservations can be managed in real-time, and reservations are received from multiple sources such as reservation services such as Yelp (copyright), OpenTable (copyright), Resy (copyright). .

一部の実装では、サービスプロバイダ102は、商人デバイス1002のために受信した予約を割り当て、この予約は、API(図示せず)を介して、第1の予約アプリケーション1004-1および第2の予約アプリケーション1004-2を含む複数の予約アプリケーションから予約を受信するように構成される。APIは、例えば、様々な予約アプリケーションからのデータを集約するアグリゲータとして、支払サービスを容易にするために使用されてもよく、これらの第三者アプリケーションは、公開されたAPIを使用して商人に予約情報を送信する。例えば、コンセンサスサービスは、データを収集し、それに応じて予約を順序付けることができる。コンセンサスサービスはまた、サービスが各予約アプリケーションについて学習し、サービスが学習したことに基づいて、例えば機械学習モデルを介して、座席の一部を割り当てる履歴予約情報を活用することができる。例えば、キャンセルの頻度、そのアプリケーションを使用する顧客の平均到着時間、注文サイズなどの要因に基づいて、支払サービスは、座席を割り当てることができる。サービスプロバイダ102は、複数の予約を受信し、コンセンサスサービス132を実行して、入って来る予約を処理し、データベース1006に記憶された顧客プロファイルおよび/または商人プロファイルに基づいて、商人のためにそれらをスケジュールする。データベース1006は、顧客および商人の好みを格納し、予約がどのようにしてそれらの好みに最も一致するように構成され得るかを示す。例えば、コンセンサスサービス132は、利用可能性または顧客によって行われた過去の予約に応じて、予約1004-3を6:30から7PMに移動させることができる。同様に、予約1004-4は、特定の座席またはアイテムの利用可能性に応じて、8PMに割り当てることができる。例えば、いくつかのレストランは回転メニューを維持し、そのようなものとして、サービスプロバイダは、ユーザの同意によって、ユーザの食事の好みへのアクセスを提供されてもよい。したがって、予約は、ユーザまたは商人の介入なしに、より好ましいスポットに移動することができる。この本出願は、サービスプロバイダのような支払サービスによって、および第1の予約アプリケーションから、ある期間にわたって第1の予約アプリケーションを使用して行われた平均予約数に関連付けられた第1のデータを受信する;、支払サービスによって、および第2の予約アプリケーションから、ある期間にわたって第2の予約アプリケーションを使用して行われた平均予約数に関連付けられた第2のデータを受信する;、支払サービスによって、レストランにおける利用可能な座席に関するデータを受信する;、利用可能な座席から座席の第1の部分を、少なくとも第1のデータに基づいて、第1の予約アプリケーションに割り当てることであって、第1の予約アプリケーションの1つ以上のユーザは座席の第1の部分以下の座席を予約することができる、前記割り当てる;、利用可能な座席の第2の部分を、少なくとも第2のデータに基づいて、第2の予約アプリケーションに割り当てることであって、第2の予約アプリケーションの1以上ユーザが座席の他の部分以下の座席を予約することができる、前記割り当てる;、予約中に、少なくとも1以上のユーザは第1の予約アプリケーションを使用して座席を予約することができないことに応じて、第2の予約アプリケーション上で何れかの座席が利用可能であるかどうかを判定する;、第1の予約アプリケーションのインタフェースから第2の予約アプリケーションに顧客デバイスを移行させるための命令を提供する;、第2の予約アプリケーションを使用してレストラン内の座席の予約を示す入力を1以上のユーザから受信する;方法を開示している。 In some implementations, service provider 102 assigns a received reservation for merchant device 1002, which via an API (not shown) is sent to first reservation application 1004-1 and second reservation application 1004-1. It is configured to receive bookings from multiple booking applications, including application 1004-2. The API may be used to facilitate payment services, for example, as an aggregator that aggregates data from various booking applications, and these third party applications use the published API to provide Send reservation information. For example, a consensus service can collect data and order reservations accordingly. The consensus service can also leverage historical booking information that the service learns about each booking application and assigns a subset of seats based on what the service has learned, eg, via machine learning models. For example, a payment service can allocate seats based on factors such as frequency of cancellations, average arrival time of customers using its application, order size, and the like. The service provider 102 receives a plurality of reservations and executes a consensus service 132 to process the incoming reservations and provide them for merchants based on customer profiles and/or merchant profiles stored in database 1006 . to schedule. Database 1006 stores customer and merchant preferences and shows how reservations can be configured to best match those preferences. For example, consensus service 132 may move reservation 1004-3 from 6:30 to 7 PM depending on availability or past reservations made by customers. Similarly, reservation 1004-4 may be assigned at 8PM depending on the availability of particular seats or items. For example, some restaurants maintain rotating menus and, as such, service providers may be provided access to a user's dining preferences with the user's consent. Reservations can thus be moved to more preferred spots without user or merchant intervention. This application receives, by a payment service, such as a service provider, and from a first booking application, first data associated with an average number of bookings made using the first booking application over a period of time. receiving, by the payment service and from the second booking application, second data associated with an average number of bookings made using the second booking application over a period of time; by the payment service; receiving data regarding available seats in a restaurant; allocating a first portion of seats from the available seats to a first reservation application based at least on the first data, comprising: one or more users of the reservation application can reserve seats up to and including the first portion of seats, said allocating; two reservation applications, wherein one or more users of the second reservation application can reserve seats up to another portion of the seats, said allocating; during the reservation, at least one or more users determining if any seats are available on the second reservation application in response to the inability to reserve a seat using the first reservation application; providing instructions for transitioning a customer device from an interface to a second reservation application; receiving input from one or more users indicating reservations for seating within a restaurant using the second reservation application; disclosed.

いくつかの実装形態では、最適化されたレストラン予約スケジューリングを提供するサーバシステムは、1つ以上のプロセッサと、1つ以上のプロセッサによって実行可能な命令を格納する1つ以上の非一時的なコンピュータ可読媒体とを備え、命令は、商人に関連付けられた販売時点管理デバイスを実行する予約スケジューリングアプリケーションによって、第1の顧客対面予約アプリケーションから第1の予約を受信することであって、第1の予約は、第1の顧客対面予約アプリケーションによって提供される住所に配送するための、商人によって準備される1つ以上のメニューアイテムを含む、受信することと、第1の配送アプリケーションによって、商人のコンピューティングデバイスに、第1の配送アプリケーションが第1の予約をピックアップするための配送人または顧客の到着を推定する時間を示す推定ピックアップ時間を送信することと、第1の顧客対面アプリケーションに関わる過去の予約に基づいて、配送人または顧客が第1の予約をピックアップする可能性があるときを示す予測ピックアップ時間を判定することと、予約スケジューリングアプリケーションによって、別の顧客から、第2の顧客対面予約アプリケーションから第2の予約を受信することであって、第2の予約は商人によって準備される1つ以上のメニューを含む、受信することと、第1の配送アプリケーションによって、商人のコンピューティングデバイスに、第2の配送アプリケーションが第2の予約をピックアップするために配送人または他の顧客の到着を推定する時間を示す推定ピックアップ時間を送信することと、第2の配送アプリケーションに関わる過去の予約に基づいて、配送人または顧客が第2の予約をピックアップする可能性がある時間を示す予測ピックアップ時間を判定することと、予約スケジューリングアプリケーションによって、第1の予約および第2の予約の予測ピックアップ時間に少なくとも部分的に基づいて、予約の順序リストを生成することと、順序リストに従って、予約の準備のために、キッチンディスプレイシステムに予約の順序リストを送信することと、を含む動作を実行するように1以上のプロセッサをプログラムする。 In some implementations, a server system for providing optimized restaurant reservation scheduling comprises one or more processors and one or more non-transitory computers storing instructions executable by the one or more processors. and a readable medium, the instructions being to receive a first appointment from a first customer-facing appointment application by an appointment scheduling application executing a point-of-sale device associated with the merchant; includes one or more menu items prepared by the merchant for delivery to the address provided by the first customer in-person booking application; Sending to the device an estimated pick-up time indicating the estimated time of arrival of the courier or customer to pick up the first appointment by the first delivery application; and past appointments associated with the first customer-facing application. determining a predicted pick-up time indicating when the delivery person or customer is likely to pick up the first appointment based on; receiving a second reservation, the second reservation including one or more menus prepared by the merchant; transmitting an estimated pick-up time indicating the estimated time of arrival of the courier or other customer to pick up the second booking; and based on past bookings involving the second delivery application. , determining a predicted pick-up time indicating a time at which a delivery person or customer is likely to pick up the second reservation; generating an ordered list of reservations based on the order list; and transmitting the ordered list of reservations to the kitchen display system for preparation of the reservations according to the ordered list. program the processor.

実施形態は構造的特徴および/または方法論的動作に特有の言語で説明されてきたが、本開示は説明された特定の特徴または動作に必ずしも限定されないことを理解されたい。むしろ、特定の特徴および動作は、実施形態を実施する例示的な形態として本明細書に開示される。
Although the embodiments have been described in language specific to structural features and/or methodological acts, it is to be understood that the disclosure is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed herein as exemplary forms of implementing the embodiments.
section

A.最適化された注文スケジューリングを提供するためのシステムであって、1つ以上のプロセッサと、前記1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体とを備え、前記命令は、第1の顧客対面注文アプリケーションからの第1の注文を、商人に関連付けられた販売地点(POS)デバイス上で実行する注文スケジューリングアプリケーションによって受信することであって、前記第1の注文は前記第1の顧客対面注文アプリケーションによって提供される住所への配送のために前記商人によって準備される1つ以上のメニューアイテムを含む、前記受信することと、サービスコンピューティングデバイスによって、前記第1の顧客対面アプリケーションを含む過去の注文に基づいて、配送人または前記顧客が前記第1の注文をピックアップする可能性が高い推定時間を示す予測ピックアップ時間を判定することと、前記注文スケジューリングアプリケーションによって、別の顧客から、第2の顧客対面注文アプリケーションから第2の注文を受信することであって、前記第2の注文は前記商人によって準備される1つ以上のメニューアイテムを含む、前記受信することと、サービスコンピューティングデバイスによって、前記第2の顧客対面注文アプリケーションを含む過去の注文に基づいて、前記配送人または前記顧客が前記第2の注文をピックアップする可能性が高い時間を示す予測ピックアップ時間を判定することと、前記サービスコンピューティングデバイスによって、前記第1の注文および前記第2の注文の前記予測ピックアップ時間に少なくとも部分的に基づいて、注文の順序付けられたリストを生成することと、前記注文スケジューリングアプリケーションに関連付けられたキッチンディスプレイシステムに、前記順序付けられたリストに従って前記注文を準備するための前記注文の前記順序付けられたリストを送信することと、を含む動作を実行するように前記1つ以上のプロセッサをプログラムする、システム。 A. 1. A system for providing optimized order scheduling, 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 are to receive a first order from a first customer facing ordering application by an order scheduling application executing on a point of sale (POS) device associated with a merchant; includes one or more menu items prepared by the merchant for delivery to an address provided by the first customer facing ordering application; Determining a predicted pick-up time indicating an estimated time that a delivery person or said customer is likely to pick up said first order based on past orders including a first customer-facing application; and said order scheduling application. receiving a second order from a second customer facing ordering application from another customer, said second order including one or more menu items prepared by said merchant, said receiving and a prediction by a service computing device indicating when said delivery person or said customer is likely to pick up said second order based on past orders including said second customer facing order application. determining a pick-up time; and generating, by the service computing device, an ordered list of orders based at least in part on the predicted pick-up times of the first order and the second order. , sending to a kitchen display system associated with the order scheduling application the ordered list of orders for preparing the orders according to the ordered list. A system that programs one or more processors.

B.コンピューティングデバイスに関連付けられたディスプレイを介して、前記顧客または前記商人のうちの少なくとも1つにインタフェースを提供し、前記インタフェースを介して、配送場所、ピックアップの場所、ピックアップの要求時間、取得されるアイテムの数、前記アイテムのサイズ、前記アイテムが所定のカテゴリに関連付けられているかどうか、または、前記アイテムの重量のうちの1つに基づいて注文の前記順序付けられたリストを受信し、前記アイテムの配送に関する情報が要求されていることを判定し、前記1つ以上のAPIを介して前記サービスコンピューティングデバイスに、前記アイテムの配送に関する要求を送信し、前記サービスコンピューティングデバイスから配送提案を受信し、配送提案が受諾されたことを判定し、前記アイテムの配送を容易にするために、前記1つ以上のAPIを介して前記配送提案の受諾の指標を送信するための、第三者サービスまたは前記商人のうちの少なくとも1つに関連付けられている前記コンピューティングデバイスの1つ以上のプロセッサによって実行可能なアプリケーションをさらに含む、節Aに記載のシステム。 B. providing an interface to at least one of said customer or said merchant via a display associated with a computing device, through which a delivery location, a pickup location, and a requested pickup time are obtained; receiving the ordered list of orders based on one of the number of items, the size of the items, whether the items are associated with a predetermined category, or the weight of the items; determining that information regarding shipping is requested, sending a request regarding shipping of the item to the service computing device via the one or more APIs, and receiving a shipping proposal from the service computing device; , a third party service for determining that a shipping offer has been accepted and transmitting an indication of acceptance of said shipping offer via said one or more APIs to facilitate delivery of said item; or The system of Section A, further comprising an application executable by one or more processors of said computing device associated with at least one of said merchants.

C.前記注文スケジューリングアプリケーションは、前記マーチャント商人に関連する付けられた前記コンピューティングデバイス、前記第三者サービスに関連付けられた前記コンピューティングデバイス、前記顧客に関連付けられたコンピューティングデバイスとインターフェースインタフェースするアプリケーションプログラムインターフェースインタフェース(API)を提供するようにさらに構成される、節A又はBに記載のシステム。 C. The order scheduling application is an application program interface that interfaces with the computing device associated with the merchant, the computing device associated with the third party service, and the computing device associated with the customer. The system of clause A or B, further configured to provide an interface (API).

D.前記サービスコンピューティングデバイス上でホストされるコンセンサスアプリケーションをさらに含み、前記コンセンサスアプリケーションは、前記第1の顧客対面注文アプリケーションおよび前記第2の顧客対面注文アプリケーションからそれぞれ前記第1の注文および前記第2の注文を受信し、前記コンセンサスアプリケーションは、前記キッチンディスプレイシステム上に表示するために前記第1の注文および前記第2の注文をスケジュールする、節A乃至Cの何れかに記載のシステム。 D. further comprising a consensus application hosted on said service computing device, said consensus application receiving said first order and said second order from said first customer-facing ordering application and said second customer-facing ordering application, respectively; The system of any of clauses A-C, wherein orders are received and the consensus application schedules the first order and the second order for display on the kitchen display system.

E.前記サービスコンピューティングデバイスは、前記第三者サービスに関連付けられた配送人のさらなる位置情報を受信し、前記配送人の位置情報に基づいて前記第1の注文または前記第2の注文を生成するために使用された前記第三者サービスとは異なる第三者サービスのうちの1つを識別し、前記識別された第三者サービスに前記アイテムの配送を割り当てる、ようにさらに構成される、節Bに記載のシステム。 E. The service computing device for receiving additional location information of a courier associated with the third party service and generating the first order or the second order based on the location information of the courier. and assigning delivery of the item to the identified third party service, Section B. The system described in .

F.サービスコンピューティングデバイスプロセッサと、前記サービスコンピューティングデバイスプロセッサと通信可能に接続されたサービスコンピューティングデバイス通信インタフェースとを備えるシステムであって、前記サービスコンピューティングデバイス通信インタフェースは、複数の第三者のサービスデバイスと1つ以上のネットワークを介して通信し、且つ、顧客または商人の少なくとも1つと関連付けられたコンピューティングデバイスと、1つ以上のアプリケーションプログラミングインタフェース(API)を介して前記1つ以上のネットワークを通じてさらに通信し、前記サービスコンピューティングデバイスは、前記サービスコンピューティングデバイスによって提供される前記1つ以上のAPIを介して、商人から取得されることを顧客によって指定されたアイテムの配送に関する要求を受信することであって、前記要求は、配送の位置、ピックアップの位置、ピックアップの要求された時間、取得されるアイテムの数、前記アイテムのサイズ、前記アイテムが所定のカテゴリに関連付けられているかどうか、または前記アイテムの重量のうちの少なくとも1つを示し、前記要求は、前記顧客又は前記商人の少なくとも1つと関連付けられた前記コンピューティングデバイス上で実行可能であるアプリケーションから前記1つ以上のAPIを介して受信される、前記受信することと、前記商人について、前記アイテムを準備して配送の前記位置に配送する配送提案を生成することであって、前記配送提案は、(a)前記第三者サービスデバイスに関連付けられた複数の前記第三者配送サービスの中からの好適な配送サービスであって、前記複数の第三者配送サービスは、前記サービスコンピューティングデバイスの前記1つ以上のAPIを介して前記商人と通信する、前記好適な配送サービスと、(b)前記商人が準備のために使用する前記要求を含む要求のシーケンスと、(c)前記配送サービスによる前記アイテムの配送の推定時間量、を含む、前記生成することと、前記1つ以上のAPIを使用して、前記好適な配送サービスと関連付けられている前記第三者サービスに、前記好適な配送サービスが前記商人の施設から前記アイテムを取得して前記アイテムを配送の前記位置に移送することを要求する通信を送信することと、をするように構成されるシステム。 F. A system comprising: a service computing device processor; and a service computing device communication interface communicatively coupled to the service computing device processor, the service computing device communication interface communicating with a plurality of third party services. a computing device in communication with devices over one or more networks and associated with at least one of a customer or merchant, via one or more application programming interfaces (APIs) over said one or more networks Communicating further, the service computing device receives, via the one or more APIs provided by the service computing device, a request for delivery of an item designated by the customer to be obtained from a merchant. wherein said request includes delivery location, pickup location, requested time of pickup, number of items to be retrieved, size of said item, whether said item is associated with a predetermined category, or indicating at least one of the weight of the item, the request being made via the one or more APIs from an application executable on the computing device associated with at least one of the customer or the merchant. receiving and generating, for the merchant, a delivery offer to prepare and deliver the item to the location of delivery, the delivery offer comprising: (a) the third party service; A preferred delivery service from among said plurality of third party delivery services associated with a device, wherein said plurality of third party delivery services is configured via said one or more APIs of said service computing device the preferred shipping service in communication with the merchant; (b) a sequence of requests including the request that the merchant uses to prepare; (c) an estimated amount of time for delivery of the item by the shipping service; and, using the one or more APIs, to the third party service associated with the preferred shipping service, the preferred shipping service sending the item from the merchant's facility. and sending a communication requesting that the item be transported to the location for delivery.

G.要求の前記シーケンスは、前記商人が前記要求を処理するシーケンスを含み、前記シーケンスは、時間、前記商人の位置、前記顧客の位置、前記配送を行うことができる配送人の位置、前記注文が受信された時間、商人プロファイル、顧客プロファイル、要求された前記アイテムの準備時間、および前記アイテムの利用可能性のうちの少なくとも1つに基づくものである、節Fに記載のシステム。 G. Said sequence of requests includes a sequence in which said merchant processes said requests, said sequence includes: time, location of said merchant, location of said customer, location of a delivery person capable of making said delivery, location of said delivery person, location of said order received, F. The system of clause F, wherein the system is based on at least one of: time ordered, merchant profile, customer profile, requested preparation time of said item, and availability of said item.

H.1つ以上のプロセッサにより実行される場合に、前記1以上のプロセッサに、サービスコンピューティングデバイスに関連付けられた1つ以上の商人へのアクセスをコンピューティングデバイスに提供するために、前記サービスコンピューティングデバイスによって1つ以上のアプリケーションプログラミングインタフェース(API)を公開することと、前記商人に関連付けられた1つ以上のアクションを容易にすることができる1つ以上の第三者サービスへのアクセスをコンピューティングデバイスに提供するために、前記サービスコンピューティングデバイスによって、前記1つ以上のアプリケーションプログラミングインタフェースインタフェース(API)を公開することと、前記1つ以上のAPIを介して、前記商人および前記第三者サービスのコンピューティングデバイスから、前記商人に関連付けられた前記アクションを処理するための要求を受信することと、前記商人に関連付けられた前記アクションを容易にするためのアクション提案を生成することであって、前記アクション提案は、前記アクション内のステップが実行されるシーケンスを含む、前記生成することと、前記第三者サービスまたは前記商人に関連付けられた前記コンピューティングデバイスに前記アクション提案を送信することと、前記サービスプロバイダによって、前記1つ以上のAPIを介して、前記アクション提案に基づく支払いフローを構成することであって、前記支払いフローは、前記第三者サービスと前記商人との間のサブアクションの分配に基づくものである、前記構成することと、を含む動作を実行させる実行可能命令を記憶する1つ以上の非一時的なコンピュータ可読媒体。 H. a service computing device, when executed by one or more processors, for providing the one or more processors with a computing device access to one or more merchants associated with the service computing device; exposing one or more application programming interfaces (APIs) by a computing device and accessing one or more third party services that can facilitate one or more actions associated with said merchant exposing the one or more application programming interface interfaces (APIs) by the service computing device for providing to the merchant and the third-party service via the one or more APIs; receiving from a computing device a request to process the action associated with the merchant; and generating an action suggestion to facilitate the action associated with the merchant, said generating and transmitting said action suggestion to said computing device associated with said third-party service or said merchant; configuring, by a service provider, via said one or more APIs, a payment flow based on said action proposal, said payment flow comprising a distribution of sub-actions between said third-party service and said merchant; One or more non-transitory computer-readable media storing executable instructions for performing operations including

I.1つ以上のアクションは、アイテムの配送、前記アイテムの準備、前記アイテムのキャンセル、注文の配送、前記注文の準備、前記注文のキャンセル、注文のマージ、前記注文の分割、顧客のための予約、顧客のためのアポイントメント、第三者サービスにわたるコンテンツの更新、前記アイテムの更新、前記注文の更新を含む、節Hに記載の1つ以上の非一時的なコンピュータ可読媒体。 I. The one or more actions include shipping an item, preparing said item, canceling said item, shipping an order, preparing said order, canceling said order, merging an order, splitting said order, reserving for a customer, The one or more non-transitory computer readable media described in Section H including appointments for customers, content updates across third party services, said item updates, said order updates.

J.前記アクション提案は、前記アイテムの配送のための推定時間量、前記アイテムの配送のための推定ピックアップ時間、または前記アイテムの配送のための推定ドロップオフ時間のうちの少なくとも1つを示す配送提案である、節HまたはIのいずれかに記載の1つ以上の非一時的なコンピュータ可読媒体。 J. The action suggestion is a delivery suggestion that indicates at least one of an estimated amount of time for delivery of the item, an estimated pick-up time for delivery of the item, or an estimated drop-off time for delivery of the item. One or more non-transitory computer-readable media according to any of Sections H or I.

K.前記1つ以上のAPIを公開することは、前記1つ以上のAPIを商人に関連付けられたコンピューティングデバイスに公開して、前記商人が、前記商人による取得のために提供されるアイテムの配送を容易にすることを可能にすることを含む、節Hに記載の1つ以上の非一時的コンピュータ可読媒体。 K. Publishing the one or more APIs includes exposing the one or more APIs to a computing device associated with a merchant to enable the merchant to facilitate delivery of items offered for acquisition by the merchant. One or more non-transitory computer-readable media described in Section H, including enabling to facilitate.

L.前記動作は、前記1つ以上のAPIを介して、前記コンピューティングデバイスから、前記アイテムの配送ステータスの要求を受信することと、前記第三者サービスデバイスの位置情報を受信することと、前記第三者サービスによる前記アイテムの配送のステータスを判定することと、前記アイテムの配送の前記ステータスを前記コンピューティングデバイスに送信することと、をさらに含む、節Kに記載の1つ以上の非一時的なコンピュータ可読媒体。 L. The actions include: receiving a request for delivery status of the item from the computing device via the one or more APIs; receiving location information for the third party service device; The one or more non-transitory items of Section K, further comprising determining a status of delivery of the item by a third party service; and transmitting the status of delivery of the item to the computing device. computer readable medium.

M.前記動作は、前記1つ以上のAPIを介して、前記アイテムの取得を容易にするサービスに商人を登録するために他のアイテムを前記商人に配送するための他の要求を受信することとであって、前記他のアイテムは、顧客とのアイテムの取得を容易にする商人アプリケーションで構成され、前記他の要求は、前記他のアイテムの配送の位置を示す、前記受信することと、他の第三者サービスの位置に少なくとも部分的に基づいて前記他のアイテムを移送するために前記他の第三者サービスを識別することと、前記他の第三者サービスが前記他のアイテムの配送の前記位置に前記他のアイテムを配送することを要求する通信を、前記他の第三者サービスに関連付けられている他の第三者サービスデバイスへ送信することと、をさらに含む、節K又はLに記載の1つ以上の非一時的コンピュータ可読媒体。 M. The act may receive, via the one or more APIs, another request to deliver another item to the merchant to register the merchant with a service that facilitates acquisition of the item. wherein the other item comprises a merchant application that facilitates acquisition of the item with a customer, and the other request indicates a location for delivery of the other item; identifying the other third party service for transporting the other item based at least in part on the location of the third party service; Sending a communication to another third party service device associated with said other third party service requesting delivery of said other item to said location, clause K or L. 3. One or more non-transitory computer readable media as described in .

N.前記動作は、前記商人および前記第三者サービスによって実行された現在および過去のアクションに関する訓練データを取得することと、前記アクション提案を生成するために、前記訓練データに基づいて機械学習モデルを訓練することと、をさらに含む、節H-Mの何れかに記載の1つ以上の非一時的なコンピュータ可読媒体。 N. The actions include obtaining training data regarding current and past actions performed by the merchant and the third-party service; and training a machine learning model based on the training data to generate the action suggestions. The one or more non-transitory computer-readable media of any of Sections HM, further comprising:

O.インタフェースを表示するように構成されたディスプレイと、前記ディスプレイに通信可能に接続された1つ以上のプロセッサと、前記1つ以上のプロセッサに通信可能に接続され、前記1つ以上のプロセッサによって実行される場合に、前記1つ以上のプロセッサに、ディスプレイ上で、商人によって準備され、かつ第1の配送サービスの第1の配送人によって第1の顧客に配送するためにピックアップするための、第1の注文を受信することと、前記ディスプレイ上で、前記商人によって準備され、かつ第2の配送サービスの第2の配送人によって第2の顧客に配送するためにピックアップするための、第2の注文を受信することと、前記商人が前記第1の注文および前記第2の注文を準備すべきシーケンスを含む配送提案を、前記ディスプレイ上で受信することであって、前記シーケンスは、1つ以上のアプリケーションプログラムインタフェース(API)を介して、前記ディスプレイを有する前記システム、前記第1の配送サービス、および前記第2の配送サービスとインタフェースされたサービスコンピューティングデバイスによって生成される、前記受信することと、前記第1の注文または前記第2の注文におけるアイテムの利用可能性に基づいて、前記ディスプレイを通じて前記シーケンスを修正することと、前記サービスプロバイダへのAPI呼び出しを開始することによって、前記修正に基づいて支払いフローを生じさせることと、を含む動作を実行させる実行可能な命令を記憶するメモリと、を備えるシステム。 O. a display configured to display an interface; one or more processors communicatively connected to the display; and a processor communicatively connected to the one or more processors and executed by the one or more processors If so, to the one or more processors, on a display, a first carrier prepared by a merchant and for pickup for delivery to a first customer by a first carrier of a first delivery service. and on said display a second order prepared by said merchant and picked up for delivery to a second customer by a second carrier of a second delivery service and receiving on the display a delivery proposal including a sequence in which the merchant should prepare the first order and the second order, the sequence comprising one or more said receiving generated by a service computing device interfaced with said system having said display, said first delivery service, and said second delivery service via an application program interface (API); modifying the sequence through the display based on item availability in the first order or the second order; and based on the modification by initiating an API call to the service provider. A system comprising: causing a payment flow; and a memory storing executable instructions for performing an operation comprising:

P.前記動作は、前記1つ以上のAPIを介して、前記サービスコンピューティングデバイスに、前記アイテムの配送ステータスを前記第1の配送サービスまたは前記第2の配送サービスに提供するためのトリガを送信することと、前記サービスコンピューティングデバイスから、前記アイテムの配送のステータスを受信することと、配送の前記ステータスを、前記第1の配送サービスまたは前記第2の配送サービスに送信することと、をさらに含む、節Oに記載のシステム。 P. The act sends, via the one or more APIs, to the service computing device a trigger to provide a shipping status of the item to the first shipping service or the second shipping service. and receiving from the service computing device a status of delivery of the item; and sending the status of delivery to the first delivery service or the second delivery service. The system of Section O.

Q.前記システムは商人デバイスを備え、前記動作は、前記サービスコンピューティングデバイスから、他のアイテムの取得のための注文を受信することであって、前記他のアイテムは、前記第1の配送サービスの顧客デバイスを通じて取得のために選択されている、前記受信することと、前記注文の受諾を示すユーザ入力を受信することと、前記サービスコンピューティングデバイスへ前記注文の受諾の指標を送信することと、前記アイテムの配送の第1のステータスおよび前記他のアイテムの配送の第2のステータスを受信することと、配送の前記第1のステータスおよび配送の前記第2のステータスを、前記インタフェースを介して表示することと、をさらに含む、節O又はPに記載のシステム。 Q. The system comprises a merchant device, and the action is receiving from the service computing device an order for acquisition of another item, the other item being a customer of the first delivery service. receiving user input indicating acceptance of the order selected for acquisition through a device; transmitting an indication of acceptance of the order to the service computing device; receiving a first status of delivery of an item and a second status of delivery of the other item; and displaying, via the interface, the first status of delivery and the second status of delivery of the other item. The system of clause O or P, further comprising:

R.前記配送提案は、前記サービスコンピューティングデバイスとインタフェースされた配送サービスによる前記アイテムの配送のためのコスト、前記アイテムの配送のための推定時間量、前記アイテムの配送のための推定ピックアップ時間、または前記アイテムの配送のための推定ドロップオフ時間のうちの少なくとも1つを示す、節O-Qの何れかに記載のシステム。 R. The delivery proposal may include a cost for delivery of the item by a delivery service interfaced with the service computing device, an estimated amount of time for delivery of the item, an estimated pick-up time for delivery of the item, or the The system of any of clauses OQ, indicating at least one of estimated drop-off times for delivery of items.

S.前記配送提案は、前記サービスコンピューティングデバイスに関連付けられた配送サービスによる前記アイテムの配送のためのコストのうちの少なくとも1つを示し、前記動作は、1つの注文においてアイテムのグループからアイテムを除去することであって、前記除去は、利用可能性、人気、腐敗、および時刻に基づくものである、前記除去することと、前記アイテムの配送のコストを前記インタフェースを介して表示させることと、前記アイテムの取得に関連付けられた顧客に、前記アイテムを除去した後の前記注文の配送のコストを請求することとを含む、節O-Rの何れかに記載のシステム。 S. The delivery proposal indicates at least one of costs for delivery of the item by a delivery service associated with the service computing device, and the action removes items from a group of items in an order. wherein said removal is based on availability, popularity, spoilage and time of day; displaying via said interface the cost of delivery of said item; and billing a customer associated with acquisition of the cost of shipping the order after removing the item.

T.前記動作は、前記第1の注文および前記第2の注文が実質的に同時に行われる場合にコンセンサスを提供することをさらに含む、節O-Sのいずれかに記載のシステム。 T. The system of any of clauses OS, wherein the act further comprises providing consensus when the first order and the second order are placed substantially simultaneously.

U.最適化された予約スケジューリングを提供するためのシステムであって、1つ以上のプロセッサと、前記1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体とを備え、前記命令は、商人に関連付けられた販売時点管理デバイス上で実行される予約スケジューリングアプリケーションによって、顧客から、第1の顧客対面予約アプリケーションからの第1の予約要求を受信することであって、前記第1の予約要求は商人位置における予約の好適な時間を含む、前記受信することと、前記第1の顧客対面予約アプリケーションに関わる過去の注文に基づいて、サービスコンピューティングデバイスによって、前記顧客が前記第1の予約要求を好む可能性が高いと予測される座席を判定することと、前記予約スケジューリングアプリケーションによって、他の顧客から、第2の顧客対面予約アプリケーションからの第2の予約要求を受信することであって、前記第2の予約要求は前記商人位置における予約の他の好適な時間を含む、前記受信することと、前記第2の顧客対面予約アプリケーションに関わる過去の注文に基づいて、サービスコンピューティングデバイスによって、前記他の顧客が前記第2の予約要求を好む可能性が高いと予測される座席を判定することと、前記サービスコンピューティングデバイスによって、前記第1の予約要求および前記第2の予約要求に対応する前記予測される座席に少なくとも部分的に基づいて座席表を生成することと、前記予約スケジューリングアプリケーションに関連付けられたキッチンディスプレイシステムに、前記商人位置のテーブルレイアウトを前記座席表に従って構成させるための前記座席表を送信することと、を含む動作を実行するように前記1つ以上のプロセッサをプログラムする、システム。 U.S.A. 1. A system for providing optimized reservation scheduling, 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 are for receiving, by an appointment scheduling application running on a point of sale device associated with the merchant, from a customer a first appointment request from a first customer face-to-face appointment application; Based on said receiving and past orders associated with said first customer face-to-face booking application, said first booking request includes a preferred time for booking at a merchant location, said customer is prompted by a service computing device to: determining seats predicted to be likely to prefer the first reservation request; and receiving, by the reservation scheduling application, a second reservation request from a second customer face-to-face reservation application from another customer. based on said receiving and past orders associated with said second customer-facing booking application, wherein said second booking request includes other preferred times for bookings at said merchant location; determining, by a service computing device, a seat for which said other customer is likely to prefer said second reservation request; generating a seating chart based at least in part on said predicted seats corresponding to two reservation requests; and providing said seating chart with a table layout of said merchant locations on a kitchen display system associated with said reservation scheduling application. transmitting the seating chart for configuration according to the one or more processors.

V.第三者サービスまたは前記商人のうちの少なくとも1つに関連付けられたコンピューティングデバイスの1つ以上のプロセッサによって実行可能なアプリケーションであって、前記コンピューティングデバイスに関連付けられたディスプレイを介して、前記顧客または前記商人の少なくとも1つにインタフェースを提供することと、前記インタフェースを介して、予約を提供する代替商人、予約が要求された前記商人における座席オプション、前記予約のタイミング、および過去の座席選好に基づく前記要求された座席オプションとは異なる代替座席オプションの少なくとも1つに基づいて、前記座席表に対する更新を受信することと、前記座席表に関する情報が要求されたことを判定することと、前記1つ以上のAPIを介しておよび前記サービスコンピューティングデバイスによって、前記座席表に対する更新に関する前記要求に対する応答を送信することと、前記サービスコンピューティングデバイスから予約提案を受信することと、予約提案が受諾されたことを判定することと、前記1つ以上のAPIを介して、前記予約提案の受諾の指標を送信して、前記予約を容易にすること、を行うアプリケーションをさらに含む、節Uに記載のシステム。 V. An application executable by one or more processors of a computing device associated with at least one of a third party service or said merchant, said customer via a display associated with said computing device or providing an interface to at least one of said merchants, and through said interface, alternate merchants providing reservations, seat options at said merchant from which reservations were requested, timing of said reservations, and past seat preferences. receiving an update to the seating chart based on at least one alternate seating option that differs from the requested seat option based on a request; determining that information regarding the seating chart has been requested; sending, via one or more APIs and by the service computing device, a response to the request for an update to the seating chart; receiving a booking offer from the service computing device; and sending an indication of acceptance of the booking offer via the one or more APIs to facilitate the booking. system.

W.前記予約スケジューリングアプリケーションは、前記商人に関連付けられた前記コンピューティングデバイス、前記第三者サービスに関連付けられた前記コンピューティングデバイス、前記顧客に関連付けられたコンピューティングデバイスとインタフェースするアプリケーションプログラムインタフェース(API)を提供するようにさらに構成される、節U又はVに記載のシステム。 W. The appointment scheduling application provides an application program interface (API) to interface with the computing device associated with the merchant, the computing device associated with the third party service, and the computing device associated with the customer. The system of clause U or V, further configured to provide:

X.前記サービスコンピューティングデバイス上でホストされるコンセンサスアプリケーションをさらに含み、前記コンセンサスアプリケーションは、前記第1の顧客対面予約アプリケーションおよび前記第2の顧客対面予約アプリケーションからそれぞれ前記第1の予約要求および前記第2の予約要求を受信し、前記コンセンサスアプリケーションは、前記顧客の好みに基づいて前記第1の予約要求および前記第2の予約要求を処理する、節U-Wの何れかに記載のシステム。 X. Further comprising a consensus application hosted on said service computing device, said consensus application receiving said first booking request and said second booking request from said first customer-facing booking application and said second customer-facing booking application, respectively. and wherein the consensus application processes the first reservation request and the second reservation request based on the customer's preferences.

Y.前記サービスコンピューティングデバイスは、前記予約要求に関連付けられた顧客のさらなる情報を受信し、前記予約が要求された前記商人とは異なる商人のうちの1つを識別し、前記識別に基づいて前記他の商人位置において座席を割り当てるようにさらに構成される、節Vに記載のシステム。 Y. The service computing device receives further information of the customer associated with the reservation request, identifies one of the merchants different from the merchant from whom the reservation was requested, and based on the identification, the other merchant. V. The system of clause V, further configured to allocate seats at the merchant locations of .

Z.サービスコンピューティングデバイスプロセッサと、前記サービスコンピューティングデバイスプロセッサと通信可能に接続されたサービスコンピューティングデバイス通信インタフェースとを備えるシステムであって、前記サービスコンピューティングデバイス通信インタフェースは、複数の第三者のサービスデバイスと1つ以上のネットワークを介して通信し、且つ、顧客または商人の少なくとも1つと関連付けられたコンピューティングデバイスと、1つ以上のアプリケーションプログラミングインタフェース(API)を介して前記1つ以上のネットワークを通じてさらに通信し、前記サービスコンピューティングデバイスは、前記サービスコンピューティングデバイスによって提供される前記1つ以上のAPIを介して、前記商人との予約に関する要求を受信することであって、前記要求は、商人位置での予約の好適な時間を示す、前記受信することと前記商人に関連付けられたデバイス上での提示のために、顧客の好みに従って前記予約を設定するための予約提案を生成することであって、前記予約提案は、(a)複数の座席オプションの中からの商人位置における座席、(b)前記要求に対応する別のタイムスロット、および(c)商人位置が予約されているなら代替座席オプションを含む、前記生成することと、前記1つ以上のAPIを使用して、前記識別された第三者サービスに関連付けられている前記第三者サービスデバイスに、前記識別された第三者サービスが前記商人位置における座席を予約することを要求する通信を送信することと、を行うように構成されている、システム。 Z. A system comprising: a service computing device processor; and a service computing device communication interface communicatively coupled to the service computing device processor, the service computing device communication interface communicating with a plurality of third party services. a computing device in communication with devices over one or more networks and associated with at least one of a customer or merchant, via one or more application programming interfaces (APIs) over said one or more networks Communicating further, the service computing device receiving, via the one or more APIs provided by the service computing device, a request for a reservation with the merchant, the request being a merchant generating an appointment proposal for setting said appointment according to customer preferences for said receiving and presentation on a device associated with said merchant, indicating a preferred time for an appointment at a location; As such, the reservation offer includes (a) a seat at a merchant location from among a plurality of seat options, (b) another time slot corresponding to the request, and (c) an alternate seat if the merchant location is reserved. said generating and, using said one or more APIs, said identified third party service, including options, to said third party service device associated with said identified third party service; sending a communication requesting to reserve a seat at said merchant location.

AA.前記プロセッサは、第1の予約アプリケーションおよび第2の予約アプリケーションを含む複数の予約アプリケーションから予約を受信するように構成された前記商人デバイスに関連付けられた商人のために予約を割り当てるようにさらに構成され、前記プロセッサは、支払サービスによって、前記第1の予約アプリケーションから、前記第1の予約アプリケーションを使用して行われた第1のデータ関連予約を受信することと、前記支払サービスによって、前記第2の予約アプリケーションから、時間期間に前記第2の予約アプリケーションを使用して行われた第2のデータ関連予約を受信することと、前記支払サービスによって、レストランでの利用可能な座席に関するデータを受信することと、少なくとも第1のデータに基づいて、前記利用可能な座席から座席の第1の部分の座席を前記第1の予約アプリケーションに割り当てることであって、前記第1の予約アプリケーションのユーザは前記第1の部分の座席以下の座席を予約できる、前記割り当てることと、少なくとも第2のデータに基づいて、前記利用可能な座席のうちの第2の部分の座席を前記第2の予約アプリケーションに割り当てることであって、前記第2の予約アプリケーションのユーザは他の部分の座席以下の座席を予約できる、前記割り当てることと、予約中、および少なくとも1つのユーザが前記第1の予約アプリケーションを使用して座席を予約することができないことに応答して、前記第2の予約アプリケーション上で何れかの座席が利用可能であるかどうかを判定することと、前記第1の予約アプリケーションのインタフェースから前記第2の予約アプリケーションに顧客デバイスを遷移させるための命令を提供することと、前記第2の予約アプリケーションを使用して前記レストラン内の前記座席の予約を示す入力を前記1つ以上のユーザから受信することと、を含む1つ以上の動作を実行する、節Zに記載のシステム。 AA. The processor is further configured to allocate reservations for merchants associated with the merchant device configured to receive reservations from a plurality of reservation applications including a first reservation application and a second reservation application. , the processor receives, via a payment service, from the first reservation application, a first data-related reservation made using the first reservation application; and receives, via the payment service, the second receiving a second data-related reservation made using said second reservation application for a period of time from the reservation application of said payment service, and receiving data regarding available seats at a restaurant by said payment service; and allocating a first portion of seats from the available seats to the first reservation application based on at least first data, wherein a user of the first reservation application is a user of the the allocating, wherein up to and including a first portion of seats can be reserved; and allocating a second portion of the available seats to the second reservation application based on at least second data. wherein a user of said second booking application can reserve seats less than or equal to seats in another portion of said allocating and booking, and at least one user using said first booking application Determining whether any seats are available on the second reservation application in response to the inability to reserve a seat; and receiving input from the one or more users indicating reservations for the seats within the restaurant using the second reservation application. and the system of clause Z to perform one or more operations.

AB.1つ以上のプロセッサにより実行される場合に、動作を前記1つ以上のプロセッサに実行させる命令を記憶する1つ以上の非一時的なコンピュータ可読媒体であって、前記動作は、サービスコンピューティングデバイスに関連付けられた1つ以上の商人へのアクセスをコンピューティングデバイスに提供するために、サービスコンピューティングデバイスによって、1つ以上のアプリケーションプログラミングインタフェース(API)を公開することと、前記商人に関連付けられた1つ以上のアクションを容易にすることができる1つ以上の第三者サービスへのアクセスをコンピューティングデバイスに提供するために、前記サービスコンピューティングデバイスによって、前記1つ以上のアプリケーションプログラミングインターフェースインタフェース(API)を公開することと、前記1つ以上のAPIを介して、前記商人および前記第三者サービスの前記コンピューティングデバイスから、前記商人に関連付けられたアクションを処理するための要求を受信することと、前記商人に関連付けられた前記アクションを容易にするアクション提案を生成することであって、前記アクション提案は前記アクション内のステップが実行されるシーケンスを含む、前記生成することと、前記第三者サービスまたは前記商人に関連付けられた前記コンピューティングデバイスに前記アクション提案を送信することと、前記サービスプロバイダによって、前記1つ以上のAPIを介して、前記アクション提案に基づいて支払フローを構成することであって、前記支払フローは、前記第三者サービスと前記商人との間のサブアクションの分配に基づくものである、前記構成することと、を含む、1つ以上の非一時的なコンピュータ可読媒体。 AB. One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform an operation, the operation being a service computing device exposing, by a service computing device, one or more application programming interfaces (APIs) to provide computing devices with access to one or more merchants associated with the merchant; one or more application programming interface interfaces ( and receiving requests from the computing devices of the merchant and the third party service via the one or more APIs to process actions associated with the merchant. and generating an action proposal that facilitates the action associated with the merchant, the action proposal including a sequence in which steps within the action are performed; sending the action proposal to the computing device associated with the merchant service or the merchant; and configuring, by the service provider, via the one or more APIs, a payment flow based on the action proposal based on the action proposal. and wherein said payment flow is based on a distribution of sub-actions between said third party service and said merchant. medium.

AC.前記1つ以上のアクションは、アイテムの配送、前記アイテムの準備、前記アイテムのキャンセル、注文の配送、前記注文の準備、前記注文のキャンセル、注文のマージ、前記注文の分割、顧客の予約、顧客のアポイントメント、第三者サービスにわたるコンテンツの更新、前記アイテムの更新、前記注文の更新を含む、節ABに記載の1つ以上の非一時的なコンピュータ可読媒体。 AC. The one or more actions include shipping an item, preparing the item, canceling the item, shipping an order, preparing the order, canceling the order, merging the order, splitting the order, booking a customer, customer appointments, content updates across third party services, said item updates, said order updates.

AD.前記アクション提案は、予約を提供する代替商人、予約が要求された前記商人における座席オプション、前記予約のタイミング、および過去の座席選好に基づく前記要求された座席オプションとは異なる代替座席オプションのうちの少なくとも1つを示す予約提案である、節AA-ACの何れかに記載の1つ以上の非一時的なコンピュータ可読媒体。 AD. The suggested action may be one of an alternate merchant offering a reservation, a seat option at the merchant at which the reservation was requested, the timing of the reservation, and an alternate seat option different from the requested seat option based on past seat preferences. One or more non-transitory computer readable media according to any of clauses AA-AC, which is a subscription offer indicating at least one.

AE.前記1つ以上のAPIを公開することは、商人に関連付けられたコンピューティングデバイスに前記1つ以上のAPIを公開して、前記商人が物理的位置またはオンライン位置のうちの1つにおける前記商人との予約またはアポイントメントを容易にすることを可能にすることを含む、節ABに記載の1つ以上の非一時的なコンピュータ可読媒体。 AE. Publishing the one or more APIs includes exposing the one or more APIs to a computing device associated with a merchant so that the merchant can communicate with the merchant at one of a physical location or an online location. One or more non-transitory computer-readable media described in Section AB, including facilitating reservations or appointments for

AF.前記動作は、前記1つ以上のAPIを介して、前記コンピューティングデバイスから、前記予約要求に対する修正の要求を受信することと、前記商人に関連付けられ、且つ複数の第三者サービスを通じて行われた予約を含む、座席表にアクセスすることと、前記修正が競合条件を引き起こすか否かを判定することと、前記判定に基づいて新しい座席を判定することと、をさらに含む、節AEに記載の1つ以上の非一時的コンピュータ可読媒体。 AF. The acts were: receiving a request for modification to the reservation request from the computing device via the one or more APIs; and associated with the merchant and performed through a plurality of third party services. The method of clause AE, further comprising: accessing a seating chart containing reservations; determining whether said modification causes a race condition; and determining a new seat based on said determination. One or more non-transitory computer-readable media.

AG.前記動作は、前記1つ以上のAPIを介して、他の座席を予約するための他の要求を受信することであって、前記他の座席は、以前の予約に割り当てられた座席と一致する、前記受信することと、更新された顧客選好に基づいて、前記第1の要求または前記第2の要求のための代替の座席オプションを識別することと、前記識別するステップに従って、更新する座席表を示す通信を前記商人に送信することと、をさらに含む、節AEまたはAFに記載の1つ以上の非一時的なコンピュータ可読媒体。 AG. The action is receiving, via the one or more APIs, another request to reserve another seat, the other seat matching a seat assigned to a previous reservation. , identifying alternative seat options for said first request or said second request based on updated customer preferences, and updating a seating chart according to said identifying step; one or more non-transitory computer-readable media according to Section AE or AF, further comprising:

AH.前記動作は、前記商人および前記第三者サービスによって実行される現在および過去のアクションに関する訓練データを取得することと、前記訓練データに基づいて、アクション提案を生成するために機械学習モデルを訓練することとをさらに含む、節AB-AGの何れかに記載の1つ以上の非一時的なコンピュータ可読媒体。 AH. The actions include obtaining training data regarding current and past actions performed by the merchant and the third-party service, and training a machine learning model to generate action suggestions based on the training data. The one or more non-transitory computer-readable media according to any of Sections AB-AG, further comprising:

AI.インタフェースを表示するように構成されたディスプレイと、前記ディスプレイに通信可能に接続された1つ以上のプロセッサと、前記1つ以上のプロセッサに通信可能に接続され、且つ前記1つ以上のプロセッサにより実行される場合に前記1つ以上のプロセッサに動作を実行させる実行可能な命令を記憶するメモリと、を備えるシステムであって、前記動作は、ディスプレイ上で、第1の予約アプリケーションを使用して第1の商人位置で第1の予約を受信することと、前記ディスプレイ上で、第2の予約アプリケーションを使用して第2の商人位置で第2の予約を受信することと、前記ディスプレイ上で、前記第1の予約および前記第2の予約に対応する座席を予約するための座席表を含む予約提案を受信することであって、前記座席表は、1つ以上のアプリケーションプログラムインタフェース(API)を介して、前記ディスプレイを有する前記システム、前記第1の予約サービス、および前記第2の予約サービスとインタフェースされたサービスコンピューティングデバイスによって生成される、座席表における変更を示す前記商人からのリアルタイム入力に基づいて、前記ディスプレイ通じて前記座席表を修正することと、前記サービスプロバイダに対するAPI呼び出しを開始することによって、前記修正に基づく座席の再割り当てを引き起こすことと、を含む、システム。 AI. a display configured to display an interface; one or more processors communicatively connected to the display; communicatively connected to the one or more processors and executed by the one or more processors and a memory storing executable instructions that cause the one or more processors to perform an action when executed, the action being performed on a display using a first booking application. receiving a first appointment at one merchant location; receiving, on the display, a second appointment at a second merchant location using a second booking application; and, on the display, receiving a reservation proposal including a seating chart for reserving seats corresponding to the first reservation and the second reservation, the seating chart having one or more application program interfaces (APIs); to real-time input from the merchant indicating changes in the seating chart generated by a service computing device interfaced with the system having the display, the first reservation service, and the second reservation service, via modifying the seating chart through the display based on the seating plan; and initiating an API call to the service provider to cause reassignment of seats based on the modification.

AJ.前記動作は、前記1つ以上のAPIを介して、前記サービスコンピューティングデバイスに、前記第1の予約サービスまたは前記第2の予約サービスに予約ステータスを提供するためのトリガを送信することと、前記予約ステータスを前記顧客に関連付けられた前記コンピューティングデバイスへ送信させることとをさらに含む、節AIに記載のシステム。 AJ. Said act sends, via said one or more APIs, to said service computing device a trigger to provide a reservation status to said first reservation service or said second reservation service; causing a reservation status to be transmitted to the computing device associated with the customer.

AK.前記システムは商人デバイスを含み、前記動作は、前記1つ以上のAPIを介して、他の座席を予約するための他の要求を受信することであって、前記他の座席は、以前の予約に割り当てられた座席と一致する、前記受信することと、更新された顧客選好に基づいて、前記第1の要求または前記第2の要求のための代替の座席オプションを識別することと、前記識別するステップに従って、更新する座席表を示す通信を前記商人に送信することと、をさらに含む、節AIまたはAJに記載のシステム。 AK. The system includes a merchant device, and the action is to receive, via the one or more APIs, another request to reserve another seat, the other seat reserving a previous reservation. identifying alternate seat options for the first request or the second request based on updated customer preferences; sending a communication to the merchant indicating an updated seating chart according to the step of:

AL.前記予約提案は、予約を提供する代替商人、予約が要求された前記商人における座席オプション、前記予約のタイミング、および過去の座席選好に基づく前記要求された座席オプションとは異なる代替座席オプションのうちの少なくとも1つを示す、節AI-AKの何れかに記載のシステム。 AL. The reservation offer is one of an alternate merchant offering a reservation, a seat option at the merchant from which the reservation was requested, the timing of the reservation, and an alternate seat option that differs from the requested seat option based on past seat preferences. A system according to any of clauses AI-AK, indicating at least one.

AM.前記予約提案は、前記要求を前記第1の予約アプリケーションから前記第2の予約アプリケーションにルーティングすることによって、公的な座席を予約するオプションのうちの少なくとも1つを示し、前記ルーティングは、前記第1の予約アプリケーションに関連付けられた第1のユーザインタフェースから、前記第2の予約アプリケーションに関連付けられた第2のユーザインタフェースへ遷移することを含む、節AI-ALの何れかに記載のシステム。 AM. The reservation proposal indicates at least one of options for reserving a public seat by routing the request from the first reservation application to the second reservation application, wherein the routing comprises the second reservation application. The system of any of clauses AI-AL, including transitioning from a first user interface associated with one booking application to a second user interface associated with the second booking application.

AN.前記動作は、前記第1の予約および前記第2の予約が実質的に同時に行われる場合にコンセンサスを提供することをさらに含む、節AI-AMの何れかに記載のシステム。 AN. The system of any of clauses AI-AM, wherein the act further comprises providing consensus if the first reservation and the second reservation occur substantially simultaneously.

AO.メニューに関連付けられた最適化されたコンテンツ管理を提供するためのシステムであって、前記システムは、1つ以上のプロセッサと、前記1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体とを備え、前記命令は、サービスコンピューティングデバイスに関連付けられたコンテンツ管理アプリケーションによって、且つ、商人に関連付けられた販売時点情報管理デバイス上で実行されることによって、前記商人によって提供される1つ以上のメニューアイテムに関するコンテンツ更新を受信することであって、前記コンテンツ更新は顧客対面アプリケーションに配信するように構成される、前記受信することと、前記コンテンツ更新が1つ以上の追加の顧客対面アプリケーションに適用されるかどうかを、前記コンテンツ管理アプリケーションによって判定することであって、前記1つ以上の追加の顧客対面アプリケーションは、1つ以上のアプリケーションプログラムインタフェース(API)を介して前記コンテンツ管理アプリケーションとインタフェースされる、前記判定することと、前記サービスコンピューティングデバイスによって、且つ、前記コンテンツ更新が1つ以上の追加の顧客対面アプリケーションに適用されると判定されることに基づいて、前記1つ以上の追加の顧客対面アプリケーションのインタフェースを、前記1つ以上のAPIを介して前記コンテンツ更新に従って更新させることと、前記顧客対面アプリケーションが前記コンテンツ更新を受信したことを示す通知を、前記商人に関連付けられたキッチンディスプレイシステムに送信することと、を含む動作を前記1つ以上のプロセッサが実行するようにプログラムする、システム。 AO. A system for providing optimized content management associated with menus, said system comprising one or more processors and one or more processors storing instructions executable by said one or more processors. a non-transitory computer-readable medium, wherein the instructions are executed by a content management application associated with a service computing device and on a point-of-sale device associated with the merchant to cause the merchant to receiving content updates relating to one or more menu items provided by a service provider, said content updates configured to be delivered to a customer-facing application; determining by the content management application whether the one or more additional customer-facing applications apply to the additional customer-facing applications of interfaced with the content management application via the determining and determining by the service computing device and that the content update applies to one or more additional customer facing applications. causing interfaces of said one or more additional customer-facing applications to be updated according to said content update via said one or more APIs; and notification indicating that said customer-facing application has received said content update; and transmitting to a kitchen display system associated with the merchant.

AP.第三者サービス又は商人の少なくとも1つに関連付けられているコンピューティングデバイスの1つ以上のプロセッサによって実行可能なアプリケーションをさらに含み、前記コンピューティングデバイスに関連付けられたディスプレイを介して、前記顧客または前記商人の少なくとも1つにインタフェースを提供し;、前記インタフェースを介して、前記顧客対面アプリケーションが前記コンテンツ更新を受信したことを示す通知を受信して他の顧客対面アプリケーションにまたがって同期化することを示す通知を受信し;、前記コンテンツ更新が、ターゲットとなる顧客対面アプリケーションにのみ送信されることを判定し;、前記1つ以上のAPIを介して、且つ、前記サービスコンピューティングデバイスによって、前記他の顧客対面アプリケーションを含む、ターゲットとされていない顧客対面アプリケーションから前記コンテンツ更新を取り消す;、節AOに記載のシステム。 AP. further comprising an application executable by one or more processors of a computing device associated with at least one of a third-party service or merchant, wherein, via a display associated with said computing device, said customer or said providing an interface to at least one of the merchants; and receiving, via said interface, a notification indicating that said customer-facing application has received said content update for synchronizing across other customer-facing applications. determine that the content update is sent only to targeted customer-facing applications; and via the one or more APIs and by the service computing device, the other canceling the content updates from non-targeted customer facing applications, including customer facing applications of;

AQ.前記コンテンツ管理アプリケーションは、前記商人に関連付けられた前記コンピューティングデバイス、前記第三者サービスに関連付けられた前記コンピューティングデバイス、前記顧客に関連付けられたコンピューティングデバイスとインタフェースするためにアプリケーションプログラムインタフェース(API)を提供するようにさらに構成される、節AO又はAPに記載のシステム。 AQ. The content management application includes an application program interface (API) to interface with the computing device associated with the merchant, the computing device associated with the third party service, and the computing device associated with the customer. ), the system of clause AO or AP.

AR.前記サービスコンピューティングデバイス上でホストされるコンセンサスアプリケーションをさらに含み、前記コンセンサスアプリケーションは、前記コンテンツ管理アプリケーションの1つ以上のインスタンスを実行する1つ以上の販売時点管理(POS)デバイスに関連付けられた商人から複数のコンテンツ更新を受信し、前記コンセンサスアプリケーションは、前記顧客の選好に基づいて前記複数のコンテンツ更新のうちの1つを選択する、節AO-AQの何れかに記載のシステム。 AR. further comprising a consensus application hosted on said service computing device, said consensus application being a merchant associated with one or more point of sale (POS) devices running one or more instances of said content management application; and wherein the consensus application selects one of the plurality of content updates based on the customer's preferences.

AS.前記サービスコンピューティングデバイスは、在庫データベースに基づいて、前記コンテンツ更新を生成すべきかどうかを判定し、前記顧客対面アプリケーションのうちのどれが前記コンテンツ更新を受信すべきかを識別し、前記識別された顧客対面アプリケーションに前記コンテンツ更新を送信するようにさらに構成される、節AO-ARの何れかに記載のシステム。 AS. The service computing device determines, based on an inventory database, whether to generate the content update, identifies which of the customer-facing applications should receive the content update, and identifies the identified customer. The system of any of clauses AO-AR, further configured to send the content update to a face-to-face application.

AT.サービスコンピューティングデバイスプロセッサと、前記サービスコンピューティングデバイスプロセッサと通信可能に接続されたサービスコンピューティングデバイス通信インタフェースとを備えるシステムであって、前記サービスコンピューティングデバイス通信インタフェースは、複数の第三者のサービスデバイスと1つ以上のネットワークを介して通信し、且つ、顧客または商人の少なくとも1つと関連付けられたコンピューティングデバイスと、1つ以上のアプリケーションプログラミングインタフェース(API)を介して前記1つ以上のネットワークを通じてさらに通信し、前記サービスコンピューティングデバイスは、前記サービスコンピューティングデバイスによって提供される1つ以上のAPIを介して、コンテンツ更新の要求を受信することであって、前記コンテンツ更新は顧客対面アプリケーションに配信するように構成され、且つ前記商人によって提供される1つ以上のメニューアイテムに関連しており、前記要求は、前記顧客または前記商人の少なくとも1つに関連付けられた前記コンピューティングデバイス上で実行可能なアプリケーションから、前記1つ以上のAPIを介して生成される、前記受信することと、前記コンテンツ更新が他の顧客対面アプリケーションに適用されるかどうかを、前記サービスコンピューティングデバイスによって提供される前記1つ以上のAPIを介して、判定することであって、前記他の顧客対面アプリケーションは1つ以上のアプリケーションプログラムインタフェース(API)を介して前記アプリケーションとインタフェースされる、前記判定することと、前記サービスコンピューティングデバイスによって、前記コンテンツ更新が他の顧客対面アプリケーションに適用されると判定することに応じて、前記商人のために、前記顧客対面アプリケーションと関連付けられた配送の前記位置に前記コンテンツ更新を配信するための提案を生成することであって、前記提案は、(a)前記第三者サービスデバイスに関連付けられた複数の顧客対面アプリケーションの中からの1つ以上の顧客対面アプリケーションであって、前記複数の顧客対面アプリケーションは前記サービスコンピューティングデバイスの前記1つ以上のAPIを介して前記商人と通信する、前記1つ以上の顧客対面アプリケーション、(b)前記コンテンツ更新を適用する緊急性を示すコンテンツ更新の性質、および(c)前記コンテンツ更新の配信の推定時間を含む、前記生成することと、前記コンテンツ更新に従って前記他の顧客対面アプリケーションのインタフェースを更新させることと、前記1つ以上のAPIを使用して、前記商人に関連付けられたキッチンディスプレイシステムに、前記顧客対面アプリケーションが前記コンテンツ更新を受信したことを示す通知を送信することと、を行うように構成される、システム。 AT. A system comprising: a service computing device processor; and a service computing device communication interface communicatively coupled to the service computing device processor, the service computing device communication interface communicating with a plurality of third party services. a computing device in communication with devices over one or more networks and associated with at least one of a customer or merchant, via one or more application programming interfaces (APIs) over said one or more networks Further communicating, wherein the service computing device receives requests for content updates via one or more APIs provided by the service computing device, the content updates being delivered to customer facing applications. and associated with one or more menu items provided by said merchant, said request executable on said computing device associated with at least one of said customer or said merchant said receiving, and whether said content updates applied to other customer-facing applications provided by said service computing device, generated via said one or more APIs from such applications; determining, via one or more APIs, wherein the other customer-facing applications are interfaced with the applications via one or more application programming interfaces (APIs); responsive to determining, by a service computing device, that the content update applies to other customer-facing applications, for the merchant to deliver the content update to the location of delivery associated with the customer-facing application; generating a proposal for delivery, the proposal being (a) one or more customer-facing applications from among a plurality of customer-facing applications associated with the third-party service device; the one or more customer-facing applications, wherein the plurality of customer-facing applications communicate with the merchant via the one or more APIs of the service computing device; and (c) an estimated time for delivery of said content update; sending, using an API, a notification to a kitchen display system associated with the merchant indicating that the customer facing application has received the content update.

AU.前記システムは、前記コンピューティングデバイスに関連付けられたディスプレイを介して、前記顧客または前記商人のうちの少なくとも1つにインタフェースを提供し、前記インタフェースを介して、前記顧客対面アプリケーションが前記コンテンツ更新を受信したことを示す前記通知を受信し、前記コンテンツ更新がターゲットとされた顧客対面アプリケーションにのみ送信されるべきであると判定し、前記1つ以上のAPIを介して、且つ、前記サービスコンピューティングデバイスによって、前記コンテンツ更新を、前記他の顧客対面アプリケーションを含むターゲットとされていない顧客対面アプリケーションから取り消すようにさらに構成される、節ATに記載のシステム。 AU. The system provides an interface to at least one of the customer or the merchant via a display associated with the computing device through which the customer-facing application receives the content updates. and determining that the content update should only be sent to targeted customer-facing applications, via the one or more APIs, and on the service computing device. The system of clause AT further configured to revoke said content updates from non-targeted customer facing applications including said other customer facing applications by.

AV.1つ以上のプロセッサにより実行される場合に、動作を前記1つ以上のプロセッサに実行させる命令を記憶する1つ以上の非一時的なコンピュータ可読媒体であって、前記動作は、サービスコンピューティングデバイスによって、前記サービスコンピューティングデバイスに関連付けられた1つ以上の商人へのアクセスをコンピューティングデバイスに提供するために1つ以上のアプリケーションプログラミングインタフェース(API)を公開することと、前記サービスコンピューティングデバイスによって、前記商人に関連付けられた1つ以上のアクションを容易にすることができる1つ以上の第三者サービスへのアクセスをコンピューティングデバイスに提供するために前記1つ以上のアプリケーションプログラミングインタフェース(API)を公開することと、前記1つ以上のAPIを介して、前記商人および前記第三者サービスの前記コンピューティングデバイスから、前記商人に関連付けられた前記アクションを処理するための要求を受信することと、前記商人に関連付けられた前記アクションを容易にするアクション提案を生成することであって、前記アクション提案は前記アクション内のステップが実行されるべきシーケンスを含む、前記生成することと、前記第三者サービスまたは前記商人に関連付けられた前記コンピューティングデバイスに前記アクション提案を送信することと、前記サービスプロバイダによって、前記1つ以上のAPIを介して、前記アクション提案に基づいて支払フローを構成することであって、前記支払フローは、前記第三者サービスと前記商人との間のサブアクションの分配に基づくものである、前記構成することと、を含む、1つ以上の非一時的なコンピュータ可読媒体。 AV. One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform an operation, the operation being a service computing device exposing one or more application programming interfaces (APIs) to provide computing devices with access to one or more merchants associated with said service computing device; , the one or more application programming interfaces (APIs) for providing a computing device with access to one or more third party services that can facilitate one or more actions associated with the merchant; and receiving requests to process the actions associated with the merchant from the computing devices of the merchant and the third party service via the one or more APIs; , generating an action proposal that facilitates the action associated with the merchant, the action proposal including a sequence in which steps within the action are to be performed; sending the action proposal to the computing device associated with the merchant service or the merchant; and configuring, by the service provider, via the one or more APIs, a payment flow based on the action proposal based on the action proposal. and wherein said payment flow is based on a distribution of sub-actions between said third party service and said merchant. medium.

AW.前記1つ以上のアクションは、アイテムの配送、前記アイテムの準備、前記アイテムのキャンセル、注文の配送、前記注文の準備、前記注文のキャンセル、注文のマージ、前記注文の分割、顧客の予約、顧客のアポイントメント、第三者サービスにわたるコンテンツの更新、前記アイテムの更新、前記注文の更新を含む、節AVに記載の1つ以上の非一時的なコンピュータ可読媒体。 AW. The one or more actions include shipping an item, preparing the item, canceling the item, shipping an order, preparing the order, canceling the order, merging the order, splitting the order, booking a customer, customer appointments, content updates across third party services, said item updates, said order updates.

AX.前記アクション提案は、更新されるコンテンツと、前記コンテンツ更新が送信される第三者サービスの識別子とを示すコンテンツ更新提案である、節AV又はAWの何れかに記載の1つ以上の非一時的なコンピュータ可読媒体。 AX. One or more of the non-temporary actions of any of clauses AV or AW, wherein the action proposal is a content update proposal that indicates content to be updated and an identifier of a third party service to which the content update is sent. computer readable medium.

AY.前記1つ以上のAPIを公開することは、前記1つ以上のAPIを、前記商人に関連付けられたコンピューティングデバイスに公開して、前記商人がメニューアイテムを含むコンテンツの更新を容易にすることを可能にすることを含む、節AVに記載の1つ以上の非一時的なコンピュータ可読媒体。 AY. Publishing the one or more APIs exposes the one or more APIs to a computing device associated with the merchant to facilitate the merchant updating content, including menu items. One or more non-transitory computer readable media described in Section AV, including enabling.

AZ.前記動作は、前記1つ以上のAPIを介して、前記コンピューティングデバイスから、アイテムの配送ステータスの要求を受信することと、前記第三者サービスデバイスの位置情報を受信することと、前記第三者サービスによる前記コンテンツ更新のステータスを判定することと、前記コンピューティングデバイスに、前記コンテンツ更新の前記ステータスを送信することと、をさらに含む、節AYに記載の1つ以上の非一時的なコンピュータ可読媒体。 AZ. The actions include: receiving a request for item delivery status from the computing device via the one or more APIs; receiving location information for the third party service device; one or more of the non-transitory computers recited in Section AY, further comprising: determining a status of said content update by a third party service; and transmitting said status of said content update to said computing device. readable medium.

BA.前記動作は、前記サービスコンピューティングデバイス上でホストされるコンセンサスアプリケーションを実行することをさらに含み、前記コンセンサスアプリケーションは、コンテンツ管理アプリケーションの1つ以上のインスタンスを実行する1つ以上の販売時点管理(POS)デバイスに関連付けられた前記商人から複数のコンテンツ更新を受信し、前記コンセンサスアプリケーションは、前記顧客の選好に基づいて前記複数のコンテンツ更新のうちの1つを選択する、節AY又はAZに記載の1つ以上の非一時的なコンピュータ可読媒体。 BA. The operations further include executing a consensus application hosted on the service computing device, the consensus application including one or more point of sale (POS) applications running one or more instances of a content management application. ) receiving a plurality of content updates from the merchant associated with the device, and wherein the consensus application selects one of the plurality of content updates based on the customer's preferences. One or more non-transitory computer-readable media.

BB.前記動作は、前記商人および前記第三者サービスによって実行される現在および過去のアクションに関する訓練データを取得することと、前記訓練データに基づいて、前記アクション提案を生成するために機械学習モデルを訓練することとをさらに含む、節AV-BAの何れかに記載の1つ以上の非一時的なコンピュータ可読媒体。 BB. The actions include obtaining training data regarding current and past actions performed by the merchant and the third-party service, and training a machine learning model to generate the action suggestions based on the training data. The one or more non-transitory computer-readable media according to any of Sections AV-BA, further comprising:

BC.インタフェースを表示するように構成されたディスプレイと、前記ディスプレイに通信可能に接続された1つ以上のプロセッサと、前記1つ以上のプロセッサに通信可能に接続され、且つ前記1つ以上のプロセッサにより実行される場合に前記1つ以上のプロセッサに動作を実行させる実行可能な命令を記憶するメモリと、を備えるシステムであって、前記動作は、サーバアプリケーションによって、第1の顧客対面アプリケーションの第1のデバイスへの配送のための第1のコンテンツ要求を受信することと、前記サーバアプリケーションによって、第2の顧客対面アプリケーションの第2のデバイスへの配送のための第2のコンテンツ要求を受信することと、前記サーバアプリケーションによって、1つ以上の配送の位置に対して前記第1のコンテンツ要求および前記第2のコンテンツ要求を満たすための提案を生成することであって、前記提案は、(a)前記第三者サービスデバイスに関連付けられた複数の顧客対面アプリケーションの中からの1つ以上の顧客対面アプリケーションであって、前記複数の顧客対面アプリケーションは前記サービスコンピューティングデバイスの前記1つ以上のAPIを介して前記商人と通信する、前記1つ以上の顧客対面アプリケーション、(b)前記コンテンツ更新を適用すべき緊急性示すコンテンツ更新の性質、(c)コンテンツ更新の配送のための推定時間量を含む、前記生成することと、前記サーバアプリケーションを介して、前記顧客対面アプリケーションへの前記コンテンツ更新のトリガを開始することと、前記サービスプロバイダへのAPI呼び出しを開始することによって、前記開始に基づく支払フローを引き起こすことと、を含むシステム。 BC. a display configured to display an interface; one or more processors communicatively connected to the display; communicatively connected to the one or more processors and executed by the one or more processors and a memory storing executable instructions that cause the one or more processors to perform an action when executed, the action being performed by a server application on a first processor of a first customer-facing application. receiving a first content request for delivery to a device; and receiving, by the server application, a second content request for delivery of a second customer facing application to a second device. and generating, by said server application, proposals for satisfying said first content request and said second content request for one or more delivery locations, said proposals comprising: (a) said one or more customer facing applications from among a plurality of customer facing applications associated with a third party service device, said plurality of customer facing applications via said one or more APIs of said service computing device; (b) a nature of the content update indicating the urgency to apply the content update; (c) an estimated amount of time for delivery of the content update; said generating and, via said server application, initiating triggering of said content update to said customer facing application; and initiating an API call to said service provider to initiate a payment flow based on said initiation. A system that includes causing and

BD.前記動作は、前記1つ以上のAPIを介して、前記サービスコンピューティングデバイスに、前記コンテンツ更新を前記第1または第2の顧客対面アプリケーションに提供するためのトリガを送信することと、前記サービスコンピューティングデバイスから、コンテンツ更新のステータスを受信することと、前記コンテンツ更新の配送の前記ステータスを前記第1または第2の配送サービスへ送信させることとをさらに含む、節BCに記載のシステム。 BD. The actions include sending, via the one or more APIs, to the service computing device a trigger for providing the content update to the first or second customer-facing application; receiving a status of content updates from a viewing device; and causing the status of delivery of the content updates to be sent to the first or second delivery service.

BE.前記システムは商人デバイスを含み、前記動作は、前記サービスコンピューティングデバイスから、他のアイテムの取得のための注文を受信することであって、前記他のアイテムは、前記第1の配送サービスの顧客デバイスを介して取得するために選択されている、前記受信することと、前記注文の受諾を示すユーザ入力を受信することと、前記注文の受諾の指標を前記サービスコンピューティングデバイスに送信することと、前記アイテムの配送の第1のステータスおよび前記他のアイテムの配送の第2のステータスを受信することと、配送の前記第1のステータスおよび配送の前記第2のステータスを前記インタフェースを介して表示させることと、をさらに含む、節BC又はBDに記載のシステム。 BE. The system includes a merchant device, and the action is receiving from the service computing device an order for acquisition of another item, the other item being a customer of the first delivery service. receiving user input indicating acceptance of the order that has been selected for retrieval via a device; and transmitting an indication of acceptance of the order to the service computing device. receiving a first status of delivery of said item and a second status of delivery of said other item; and displaying said first status of delivery and said second status of delivery of said item via said interface. The system of clause BC or BD, further comprising: causing.

BF.前記提案は、異なる商人アプリケーションにわたる前記第1のコンテンツ要求に対処する方法を示す、節BC-BEの何れかに記載のシステム。 BF. The system of any of clauses BC-BE, wherein the proposal indicates how to address the first content request across different merchant applications.

BG.前記提案は、前記第1のコンテンツ要求が前記識別されたもの以外の他の顧客対面アプリケーションに適用されるかどうかを示し、前記動作は、既存のコンテンツを更新することと、新しいコンテンツを生成することと、既存のコンテンツを除去することと、をさらに含む、節BC-BFの何れかに記載のシステム。 BG. The offer indicates whether the first content request applies to other customer-facing applications other than the identified one, and the actions include updating existing content and generating new content. and removing existing content. The system of any of clauses BC-BF.

BH.前記動作は、前記第1のコンテンツ要求および前記第2のコンテンツ要求が実質的に同時に行われるときにコンセンサスを提供することをさらに含む、節BC-BGの何れかに記載のシステム。 BH. The system of any of clauses BC-BG, wherein the act further comprises providing consensus when the first content request and the second content request are made substantially simultaneously.

上記の例示的な節は1つの特定の実装形態に関して説明されているが、本明細書の文脈では例示的な節の内容が方法、デバイス、システム、コンピュータ可読媒体、および/または別の実装形態を介して実装することもできることを理解されたい。 Although the example sections above have been described with respect to one particular implementation, in the context of this specification the content of the example sections may refer to methods, devices, systems, computer-readable media, and/or other implementations. It should be understood that it can also be implemented via

Claims (15)

最適化された注文スケジューリングを提供するためのシステムであって、
1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体とを備え、前記命令は、
第1の顧客対面注文アプリケーションからの第1の注文を、商人に関連付けられた販売地点(POS)デバイス上で実行する注文スケジューリングアプリケーションによって受信することであって、前記第1の注文は前記第1の顧客対面注文アプリケーションによって提供される住所への配送のために前記商人によって準備される1つ以上のメニューアイテムを含む、前記受信することと、
サービスコンピューティングデバイスによって、前記第1の顧客対面アプリケーションを含む過去の注文に基づいて、配送人または前記顧客が前記第1の注文をピックアップする可能性が高い推定時間を示す予測ピックアップ時間を判定することと、
前記注文スケジューリングアプリケーションによって、別の顧客から、第2の顧客対面注文アプリケーションからの第2の注文を受信することであって、前記第2の注文は前記商人によって準備される1つ以上のメニューアイテムを含む、前記受信することと、
サービスコンピューティングデバイスによって、前記第2の顧客対面注文アプリケーションを含む過去の注文に基づいて、前記配送人または前記顧客が前記第2の注文をピックアップする可能性が高い時間を示す予測ピックアップ時間を判定することと、
前記サービスコンピューティングデバイスによって、前記第1の注文および前記第2の注文の前記予測ピックアップ時間に少なくとも部分的に基づいて、注文の順序付けられたリストを生成することと、
前記注文スケジューリングアプリケーションに関連付けられたキッチンディスプレイシステムに、前記順序付けられたリストに従って前記注文を準備するために注文の前記順序付けられたリストを送信することと、
を含む動作を実行するように前記1つ以上のプロセッサをプログラムする、システム。
A system for providing optimized order scheduling, comprising:
one or more processors;
and one or more non-transitory computer-readable media storing instructions executable by the one or more processors, the instructions comprising:
receiving, by an order scheduling application executing on a point of sale (POS) device associated with a merchant, a first order from a first customer-facing ordering application, said first order said receiving including one or more menu items prepared by said merchant for delivery to an address provided by the customer facing ordering application of
Determining, by a service computing device, a predicted pick-up time indicating an estimated time that a delivery person or said customer is likely to pick up said first order based on past orders containing said first customer-facing application. and
receiving, by the order scheduling application, a second order from another customer from a second customer-facing ordering application, the second order of one or more menu items prepared by the merchant; the receiving comprising
Determining, by a service computing device, a predicted pick-up time indicative of when the delivery person or the customer is likely to pick up the second order based on past orders containing the second customer-facing order application. and
generating, by the service computing device, an ordered list of orders based at least in part on the predicted pick-up times of the first order and the second order;
sending the ordered list of orders to a kitchen display system associated with the order scheduling application for preparing the orders according to the ordered list;
and programming the one or more processors to perform operations including:
コンピューティングデバイスに関連付けられたディスプレイを介して、前記顧客または前記商人のうちの少なくとも1つにインタフェースを提供し、
前記インタフェースを介して、配送場所、ピックアップの場所、ピックアップの要求時間、取得されるアイテムの数、前記アイテムのサイズ、前記アイテムが所定のカテゴリに関連付けられているかどうか、または、前記アイテムの重量のうちの1つに基づいて注文の前記順序付けられたリストを受信し、
前記アイテムの配送に関する情報が要求されていることを判定し、
前記1つ以上のAPIを介して前記サービスコンピューティングデバイスに、前記アイテムの配送に関する要求を送信し、
前記サービスコンピューティングデバイスから配送提案を受信し、
配送提案が受諾されたことを判定し、
前記アイテムの配送を容易にするために、前記1つ以上のAPIを介して前記配送提案の受諾の指標を送信する
ための、第三者サービスまたは前記商人のうちの少なくとも1つに関連付けられている前記コンピューティングデバイスの1つ以上のプロセッサによって実行可能なアプリケーションをさらに含む、請求項1に記載のシステム。
providing an interface to at least one of the customer or the merchant via a display associated with a computing device;
Via said interface, the delivery location, pickup location, requested pickup time, number of items to be retrieved, size of said item, whether said item is associated with a predetermined category, or weight of said item. receiving the ordered list of orders based on one of
determining that information regarding delivery of the item is requested;
sending a request for delivery of the item to the service computing device via the one or more APIs;
receiving a delivery offer from the service computing device;
determining that the delivery offer has been accepted;
associated with at least one of a third party service or said merchant for transmitting an indication of acceptance of said delivery offer via said one or more APIs to facilitate delivery of said item; 2. The system of claim 1, further comprising an application executable by one or more processors of said computing device running on said computer.
前記注文スケジューリングアプリケーションは、前記商人に関連付けられた前記コンピューティングデバイス、前記第三者サービスに関連付けられた前記コンピューティングデバイス、前記顧客に関連付けられたコンピューティングデバイスとインタフェースするアプリケーションプログラムインタフェース(API)を提供するようにさらに構成される、請求項1に記載のシステム。 The order scheduling application provides an application program interface (API) to interface with the computing device associated with the merchant, the computing device associated with the third party service, and the computing device associated with the customer. 2. The system of claim 1, further configured to provide: 前記サービスコンピューティングデバイス上でホストされるコンセンサスアプリケーションをさらに含み、前記コンセンサスアプリケーションは、前記第1の顧客対面注文アプリケーションおよび前記第2の顧客対面注文アプリケーションからそれぞれ前記第1の注文および前記第2の注文を受信し、前記コンセンサスアプリケーションは、前記キッチンディスプレイシステム上に表示するために前記第1の注文および前記第2の注文をスケジュールする、請求項1に記載のシステム。 further comprising a consensus application hosted on said service computing device, said consensus application receiving said first order and said second order from said first customer-facing ordering application and said second customer-facing ordering application, respectively; 2. The system of claim 1, wherein orders are received and the consensus application schedules the first order and the second order for display on the kitchen display system. 前記サービスコンピューティングデバイスは、
前記第三者サービスに関連付けられた配送人のさらなる位置情報を受信し、
前記配送人の前記位置情報に基づいて前記第1の注文または前記第2の注文を生成するために使用された前記第三者サービスとは異なる第三者サービスのうちの1つを識別し、
前記識別された第三者サービスに前記アイテムの配送を割り当てる、
ようにさらに構成される、請求項2に記載のシステム。
The service computing device comprises:
receiving further location information of the shipper associated with the third party service;
identifying one of a third party service that is different from the third party service used to generate the first order or the second order based on the location information of the shipper;
assigning delivery of the item to the identified third party service;
3. The system of claim 2, further configured to:
1つ以上のプロセッサにより実行される場合に、前記1以上のプロセッサに、
サービスコンピューティングデバイスに関連付けられた1つ以上の商人へのアクセスをコンピューティングデバイスに提供するために、前記サービスコンピューティングデバイスによって1つ以上のアプリケーションプログラミングインタフェース(API)を公開することと、
前記商人に関連付けられた1つ以上のアクションを容易にすることができる1つ以上の第三者サービスへのアクセスをコンピューティングデバイスに提供するために、前記サービスコンピューティングデバイスによって、前記1つ以上のアプリケーションプログラミングインタフェースインタフェース(API)を公開することと、
前記1つ以上のAPIを介して、前記商人および前記第三者サービスのコンピューティングデバイスから、前記商人に関連付けられた前記アクションを処理するための要求を受信することと、
前記商人に関連付けられた前記アクションを容易にするためのアクション提案を生成することであって、前記アクション提案は、前記アクション内のステップが実行されるシーケンスを含む、前記生成することと、
前記第三者サービスまたは前記商人に関連付けられた前記コンピューティングデバイスに前記アクション提案を送信することと、
前記サービスプロバイダによって、前記1つ以上のAPIを介して、前記アクション提案に基づく支払いフローを構成することであって、前記支払いフローは、前記第三者サービスと前記商人との間のサブアクションの分配に基づくものである、前記構成することと、
を含む動作を実行させる実行可能命令を記憶する1つ以上の非一時的なコンピュータ可読媒体。
to the one or more processors when executed by the one or more processors;
exposing one or more application programming interfaces (APIs) by the service computing device to provide the computing device with access to one or more merchants associated with the service computing device;
by the service computing device to provide the computing device with access to one or more third party services that can facilitate one or more actions associated with the merchant; exposing an application programming interface (API) for
receiving requests, via the one or more APIs, from computing devices of the merchant and the third party service to process the actions associated with the merchant;
generating an action proposal for facilitating the action associated with the merchant, the action proposal including a sequence in which steps in the action are performed;
sending the action suggestion to the computing device associated with the third party service or the merchant;
configuring, by the service provider, via the one or more APIs, a payment flow based on the action proposal, the payment flow comprising sub-actions between the third-party service and the merchant; said configuring is based on distribution;
One or more non-transitory computer-readable media storing executable instructions to perform operations including
前記商人によって取得のために提供されるアイテムの配送を前記商人が容易にすることを可能にするために、前記1つ以上のAPIを公開することは、前記1つ以上のAPIを、前記商人に関連付けられたコンピューティングデバイスに公開することを含む、請求項6に記載の1つ以上の非一時的なコンピュータ可読媒体。 Exposing the one or more APIs enables the merchant to facilitate delivery of items offered for acquisition by the merchant. 7. The one or more non-transitory computer-readable media of claim 6, comprising publishing to a computing device associated with a. 前記動作は、
前記1つ以上のAPIを介して、前記コンピューティングデバイスから、前記アイテムの配送ステータスの要求を受信することと、
前記第三者サービスデバイスの位置情報を受信することと、
前記第三者サービスによる前記アイテムの配送のステータスを判定することと、
前記アイテムの配送の前記ステータスを前記コンピューティングデバイスに送信することと、
をさらに含む、請求項7に記載の1つ以上の非一時的なコンピュータ可読媒体。
The operation is
receiving a request for delivery status of the item from the computing device via the one or more APIs;
receiving location information of the third party service device;
determining the status of delivery of the item by the third party service;
transmitting the status of delivery of the item to the computing device;
8. The one or more non-transitory computer-readable media of claim 7, further comprising:
前記動作は、
前記1つ以上のAPIを介して、前記アイテムの取得を容易にするサービスに商人を登録するために他のアイテムを前記商人に配送するための他の要求を受信することであって、前記他のアイテムは、顧客とのアイテムの取得を容易にする商人アプリケーションで構成され、前記他の要求は、前記他のアイテムの配送の位置を示す、前記受信することと、
他の第三者サービスの位置に少なくとも部分的に基づいて前記他のアイテムを移送するために前記他の第三者サービスを識別することと、
前記他の第三者サービスが前記他のアイテムの配送の前記位置に前記他のアイテムを配送することを要求する通信を、前記他の第三者サービスに関連付けられている他の第三者サービスデバイスへ送信することと、
をさらに含む、請求項7に記載の1つ以上の非一時的コンピュータ可読媒体。
The operation is
receiving, via the one or more APIs, another request to deliver another item to the merchant to register the merchant with a service that facilitates acquisition of the item; said item is configured with a merchant application that facilitates acquisition of items with a customer, said other request indicating a location for delivery of said other item;
identifying the other third party service for transporting the other item based at least in part on the location of the other third party service;
other third party service associated with said other third party service to send a communication requesting that said other third party service deliver said other item to said location of delivery of said other item; sending to the device;
8. The one or more non-transitory computer-readable media of claim 7, further comprising:
前記動作は、
前記商人および前記第三者サービスによって実行された現在および過去のアクションに関する訓練データを取得することと、
前記アクション提案を生成するために、前記訓練データに基づいて機械学習モデルを訓練することと、
をさらに含む、請求項8に記載の1つ以上の非一時的なコンピュータ可読媒体。
The operation is
obtaining training data regarding current and past actions performed by said merchant and said third party service;
training a machine learning model based on the training data to generate the action suggestions;
9. The one or more non-transitory computer-readable media of claim 8, further comprising:
システムであって、
インタフェースを表示するように構成されたディスプレイと、
前記ディスプレイに通信可能に接続された1つ以上のプロセッサと、
前記1つ以上のプロセッサに通信可能に接続され、前記1つ以上のプロセッサによって実行される場合に、前記1つ以上のプロセッサに、
ディスプレイ上で、商人によって準備され、かつ第1の配送サービスの第1の配送人によって第1の顧客に配送するためにピックアップするための、第1の注文を受信することと、
前記ディスプレイ上で、前記商人によって準備され、かつ第2の配送サービスの第2の配送人によって第2の顧客に配送するためにピックアップするための、第2の注文を受信することと、
前記商人が前記第1の注文および前記第2の注文を準備すべきシーケンスを含む配送提案を、前記ディスプレイ上で受信することであって、前記シーケンスは、1つ以上のアプリケーションプログラムインタフェース(API)を介して、前記ディスプレイを有する前記システム、前記第1の配送サービス、および前記第2の配送サービスとインタフェースされたサービスコンピューティングデバイスによって生成される、前記受信することと、
前記第1の注文または前記第2の注文におけるアイテムの利用可能性に基づいて、前記ディスプレイを通じて前記シーケンスを修正することと、
前記サービスプロバイダへのAPI呼び出しを開始することによって、前記修正に基づいて支払いフローを生じさせることと、
を含む動作を実行させる実行可能な命令を記憶するメモリと、
を備えるシステム。
a system,
a display configured to display an interface;
one or more processors communicatively connected to the display;
communicatively connected to and executed by the one or more processors, to the one or more processors;
receiving on a display a first order to be prepared by a merchant and picked up for delivery to a first customer by a first courier of a first delivery service;
receiving a second order on the display to be prepared by the merchant and picked up for delivery to a second customer by a second courier of a second delivery service;
Receiving on the display a delivery proposal including a sequence in which the merchant should prepare the first order and the second order, the sequence comprising one or more application program interface (API) said receiving generated by a service computing device interfaced with said system having said display, said first delivery service, and said second delivery service via
modifying the sequence through the display based on item availability in the first order or the second order;
Generating a payment flow based on the modification by initiating an API call to the service provider;
a memory that stores executable instructions to perform operations including
A system with
前記動作は、
前記1つ以上のAPIを介して、前記サービスコンピューティングデバイスに、前記アイテムの配送ステータスを前記第1の配送サービスまたは前記第2の配送サービスに提供するためのトリガを送信することと、
前記サービスコンピューティングデバイスから、前記アイテムの配送のステータスを受信することと、
配送の前記ステータスを、前記第1の配送サービスまたは前記第2の配送サービスに送信することと、
をさらに含む、請求項11に記載のシステム。
The operation is
sending, via the one or more APIs, to the service computing device a trigger for providing the delivery status of the item to the first delivery service or the second delivery service;
receiving status of delivery of the item from the service computing device;
sending the status of delivery to the first delivery service or the second delivery service;
12. The system of claim 11, further comprising:
前記システムは商人デバイスを備え、前記動作は、
前記サービスコンピューティングデバイスから、他のアイテムの取得のための注文を受信することであって、前記他のアイテムは、前記第1の配送サービスの顧客デバイスを通じて取得のために選択されている、前記受信することと、
前記注文の受諾を示すユーザ入力を受信することと、
前記サービスコンピューティングデバイスへ前記注文の受諾の指標を送信することと、
前記アイテムの配送の第1のステータスおよび前記他のアイテムの配送の第2のステータスを受信することと、
配送の前記第1のステータスおよび配送の前記第2のステータスを、前記インタフェースを介して表示することと、
をさらに含む、請求項11に記載のシステム。
The system comprises a merchant device, the operation comprising:
receiving an order for acquisition of another item from the service computing device, the other item being selected for acquisition through a customer device of the first delivery service; to receive;
receiving user input indicating acceptance of the order;
sending an indication of acceptance of the order to the service computing device;
receiving a first status of delivery of the item and a second status of delivery of the other item;
displaying the first status of delivery and the second status of delivery via the interface;
12. The system of claim 11, further comprising:
前記配送提案は、前記サービスコンピューティングデバイスとインタフェースされた配送サービスによる前記アイテムの配送のためのコスト、前記アイテムの配送のための推定時間量、前記アイテムの配送のための推定ピックアップ時間、または前記アイテムの配送のための推定ドロップオフ時間のうちの少なくとも1つを示す、請求項11に記載のシステム。 The delivery proposal may include a cost for delivery of the item by a delivery service interfaced with the service computing device, an estimated amount of time for delivery of the item, an estimated pick-up time for delivery of the item, or the 12. The system of claim 11, indicating at least one of estimated drop-off times for delivery of items. 前記配送提案は、前記サービスコンピューティングデバイスに関連付けられた配送サービスによる前記アイテムの配送のためのコストのうちの少なくとも1つを示し、前記動作は、
1つの注文においてアイテムのグループからアイテムを除去することであって、前記除去は、利用可能性、人気、腐敗、および時刻に基づくものである、前記除去することと、
前記アイテムの配送のコストを前記インタフェースを介して表示させることと、
前記アイテムの取得に関連付けられた顧客に、前記アイテムを除去した後の前記注文の配送のコストを請求することと
を含む、請求項11に記載のシステム。
The delivery proposal indicates at least one of costs for delivery of the item by a delivery service associated with the service computing device, and the action comprises:
removing items from a group of items in an order, wherein the removal is based on availability, popularity, spoilage, and time of day;
causing the cost of shipping the item to be displayed via the interface;
12. The system of claim 11, comprising: billing a customer associated with acquiring the item for the cost of shipping the order after removing the item.
JP2022077137A 2017-12-29 2022-05-09 An application programming interface for structuring distributed systems. Active JP7470735B2 (en)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US15/858,164 US11164172B2 (en) 2017-12-29 2017-12-29 Application programming interfaces for structuring distributed systems
US15/858,000 2017-12-29
US15/858,000 US20190205834A1 (en) 2017-12-29 2017-12-29 Application programming interfaces for structuring distributed systems
US15/858,100 US11010739B2 (en) 2017-12-29 2017-12-29 Application programming interfaces for structuring distributed systems
US15/858,100 2017-12-29
US15/858,164 2017-12-29
JP2020533744A JP7072068B2 (en) 2017-12-29 2018-12-13 Application programming interface for structuring distributed systems
PCT/US2018/065486 WO2019133279A1 (en) 2017-12-29 2018-12-13 Application programming interfaces for structuring distributed systems

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020533744A Division JP7072068B2 (en) 2017-12-29 2018-12-13 Application programming interface for structuring distributed systems

Publications (2)

Publication Number Publication Date
JP2022110048A true JP2022110048A (en) 2022-07-28
JP7470735B2 JP7470735B2 (en) 2024-04-18

Family

ID=65019564

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020533744A Active JP7072068B2 (en) 2017-12-29 2018-12-13 Application programming interface for structuring distributed systems
JP2022077137A Active JP7470735B2 (en) 2017-12-29 2022-05-09 An application programming interface for structuring distributed systems.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2020533744A Active JP7072068B2 (en) 2017-12-29 2018-12-13 Application programming interface for structuring distributed systems

Country Status (4)

Country Link
JP (2) JP7072068B2 (en)
AU (2) AU2018395924A1 (en)
CA (1) CA3085573A1 (en)
WO (1) WO2019133279A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2018202759A1 (en) 2017-10-31 2019-05-16 Grand Performance Online Pty Limited A system, method and computer program for optimising and allocating resources in a space for defined periods of time
US11010739B2 (en) 2017-12-29 2021-05-18 Square, Inc. Application programming interfaces for structuring distributed systems
US11164172B2 (en) 2017-12-29 2021-11-02 Square, Inc. Application programming interfaces for structuring distributed systems
US11699163B2 (en) * 2018-07-26 2023-07-11 Ncr Corporation Real-time integration of analytics for online services
AU2020200607A1 (en) * 2019-04-29 2020-11-19 Grand Performance Online Pty Ltd A computer-enabled method system and computer program for generating a dynamic user interface for use by a user in the allocation of a space, furniture, equipment or service
US10872335B1 (en) * 2019-12-30 2020-12-22 Capital One Services, Llc Online transaction verification based on merchant-independent user geolocation
US20230297896A1 (en) * 2022-03-17 2023-09-21 Jpmorgan Chase Bank, N.A. Method and system for seat assignment in hybrid working model

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158494A1 (en) * 2003-02-05 2004-08-12 Suthar Yogin P. Restaurant automation system
US20130013350A1 (en) 2011-07-08 2013-01-10 Opentable, Inc. Offer based restaurant reservations
US20170011319A1 (en) 2014-02-11 2017-01-12 Queuefx Technologies Pty Ltd System of real-time multi factor queue management
US9384505B1 (en) 2014-12-12 2016-07-05 Laura Cao System and method for image based viewing and ordering
JP2016148976A (en) 2015-02-12 2016-08-18 セイコーエプソン株式会社 Store visiting prediction system and control method of store visiting prediction system
US9269103B1 (en) * 2015-02-19 2016-02-23 Square, Inc. Combining orders for delivery
JP2017142727A (en) 2016-02-12 2017-08-17 株式会社東芝 Seat management device, seat management method, and computer program
JP2017220173A (en) 2016-06-10 2017-12-14 株式会社キーコネクションズ Store device, information processing method, and program

Also Published As

Publication number Publication date
WO2019133279A1 (en) 2019-07-04
CA3085573A1 (en) 2019-07-04
JP2021509193A (en) 2021-03-18
AU2023214300A1 (en) 2023-08-31
JP7470735B2 (en) 2024-04-18
JP7072068B2 (en) 2022-05-19
AU2018395924A1 (en) 2020-07-02

Similar Documents

Publication Publication Date Title
US11164172B2 (en) Application programming interfaces for structuring distributed systems
US20190205834A1 (en) Application programming interfaces for structuring distributed systems
US20210312413A1 (en) Application programming interfaces for structuring distributed systems
US11593786B2 (en) Examples of delivery and/or referral service SMS ordering
US11010819B2 (en) Application programming interfaces for fulfilment services
JP7470735B2 (en) An application programming interface for structuring distributed systems.
US9928540B1 (en) System for integrating courier service with customer applications
US11288729B1 (en) Predicting orders from buyer behavior
US20170293950A1 (en) System and method for user selected arranging of transport
US10181111B1 (en) Electronic device communications for item handoffs
US20210272221A1 (en) Item selection for fast deliveries
US20170236088A1 (en) Delivery method and system
US20130090959A1 (en) Restaurant management and reservation systems and methods
US20210089995A1 (en) Merchant Controls for Preparation Times
US11934991B2 (en) Processing and notifications for missing and unavailable items
US20220398608A1 (en) Application program interfaces for order and delivery service recommendations
US20160284006A1 (en) System and method for advertising items
US10949796B1 (en) Coordination of inventory ordering across merchants
US11741528B1 (en) Application program interfaces for vendor recommendations
US10909486B1 (en) Inventory processing using merchant-based distributed warehousing
JP7121847B1 (en) Information processing system, information processing method, and program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230721

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231023

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240408

R150 Certificate of patent or registration of utility model

Ref document number: 7470735

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150