Schéma d'inventaire relationnel

Cette page décrit le format des flux de données de commande de bout en bout (spécifications du catalogue alimentaire) que vous fournissez à Google. Pour obtenir une version lisible par un ordinateur de ces informations, vous pouvez télécharger le schéma JSON.

Exigences générales

Les entités doivent être structurées sur une ligne par entité dans les flux (les entités sont séparées par un retour à la ligne). Pour des raisons de lisibilité, les exemples JSON de cette page ne respectent pas cette structure. Cependant, vous devez respecter cette structure lorsque vous envoyez vos flux. Par exemple, une entité de menu doit être structurée comme suit:

{"@type": "Menu","name": "Coffee Shop A","@id": "1535"}

Chaque entité "Restaurant" peut avoir deux entités de service (une pour les types de service "DELIVERY" et "TAKEOUT"). Chaque entité "Service" ne peut avoir qu'une seule entité "Menu".

Toutes les sous-entités peuvent être réutilisées dans plusieurs restaurants.

Consignes concernant la valeur JSON

Coercition de type

Le type d'une valeur JSON peut être différent du type défini dans le schéma, à condition que la valeur puisse être forcée pour obtenir le type requis. Par exemple, les propriétés de chaîne peuvent accepter à la fois des valeurs de chaîne et des entiers comme entrée. De même, les propriétés de type entier peuvent accepter des valeurs de chaîne, à condition que la chaîne puisse être analysée en entier valide.

La coercition de type fonctionne également pour les propriétés répétées. Les propriétés répétées peuvent accepter des valeurs en entrée sans être placées entre crochets []. Par exemple, la propriété OperationHours.serviceId accepte à la fois "service_id" et ["service_id"] comme entrées valides.

Valeurs de date et d'heure

DateTime est basé sur le type schema.org et, sauf indication contraire, doit respecter le format ISO 8601 et inclure la date, l'heure et le fuseau horaire. Utilisez la syntaxe suivante pour DateTime:

// DateTime format:
YYYY-MM-DDTHH:MM:SS[∓HH:MM|Z]

Exemple :

2017-05-01T06:30:00-07:00 // UTC minus 7 hours
2017-05-01T06:30:00Z  // UTC time zone. The optional "Z" suffix represents the UTC time zone.

Time est l'heure locale du fuseau horaire d'un restaurant ou d'un lieu de service donné. Elle est également basée sur le type de schema.org et doit également respecter le format ISO 8601. Time utilise la syntaxe suivante:

// Time format:
THH:MM:SS

Exemple :

T08:08:00 // 8:08 AM

Tenez compte des points suivants chaque fois que vous spécifiez DateTime ou Time:

  • Le préfixe "T" devant l'heure fait partie du format et est obligatoire.
  • Le fuseau horaire doit être spécifié pour DATETIME. Il n'est pas obligatoire pour TIME.
  • L'heure doit être spécifiée dans le fuseau horaire local du restaurant ou du service.

Données sur les restaurants

Restaurant (obligatoire)

Entité obligatoire à implémenter. Décrit un restaurant.

Le tableau suivant répertorie les propriétés pour le type Restaurant:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Restaurant

@id String

Obligatoire.

Identifiant unique du restaurant ou du prestataire de livraison.

Exemple : restaurant_1

name String

Obligatoire.

Nom du restaurant.

Exemple : Foo

description String

Description du restaurant.

Exemple : Best seafood in town

url URL

URL du restaurant. Le domaine du restaurant est prioritaire sur le domaine de l'agrégateur.

Exemple : http://www.provider.com/somerestaurant

sameAs URL

Site Web officiel du restaurant.

Exemple : http://www.provider2.com/somerestaurant

telephone String

Numéro de téléphone du restaurant.

Exemple : +12345665898

streetAddress String

Obligatoire.

Adresse postale du restaurant.

Exemple : 12345 Bar Avenu

addressLocality String

Obligatoire.

Localité ou ville.

Exemple : San Francisco

addressRegion String

Obligatoire.

Région ou État.

Exemple : CA

postalCode String

Obligatoire.

Code postal.

Exemple : 94124

addressCountry String

Obligatoire.

Code pays ISO 3166-1 alpha-2 à deux lettres.

Exemple : US

latitude Number

Latitude en degrés. Les valeurs sont limitées à [-90, 90]]. La précision doit être d'au moins cinq décimales.

Exemple : 35.7392607

longitude Number

Longueur en degrés. Les valeurs sont limitées à [[-180, 180]]. La précision doit être d'au moins cinq décimales.

Exemple : -120.3895522

dealId List<String>

Deal applicables du restaurant.

imprint String

La marque d'éditeur d'un restaurant est une section d'informations supplémentaires sur le restaurant, telles que son nom légal, son adresse légale et son numéro d'enregistrement. Vous pouvez mettre en forme ces informations à l'aide de " ".

Exemple :

Three Brothers Tacos
123 FooSt
Mountain View
CA 94041, United States
email: contact@threebrotherstacos.com

Commercial Register: 123456789

economicOperator String

Informations sur l'opérateur économique associés au restaurant, le cas échéant. Ces informations s'afficheront dans la section "Informations sur le professionnel". Vous pouvez mettre en forme le texte à l'aide de " ".

Exemple :

XYZ Corp
123 Main Street
555-555-5555

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités "Restaurant" au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément Restaurant:

Exemple

{
  "@type": "Restaurant",
  "@id": "10824",
  "name": "Pronto Wood Fired Pizzeria",
  "url": "https://www.provider.com/pronto-wood-fired-pizzeria",
  "telephone": "+16503659978",
  "streetAddress": "2560 El Camino Real",
  "addressLocality": "Palo Alto",
  "addressRegion": "CA",
  "postalCode": "94061",
  "addressCountry": "US",
  "latitude": 37.472842,
  "longitude": -122.217144
}

Accord

Types de remises pouvant être appliquées à un panier.

Le tableau suivant répertorie les propriétés pour le type Deal:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Deal

@id String

Obligatoire.

Identifiant unique de l'accord.

Exemple : FREEDELIVERY

dealCode String

Obligatoire.

ID d'accord unique par accord et par partenaire. Cet identifiant doit identifier l'offre de manière unique dans votre système de promotion. Google vous envoie cet identifiant dans le champ promotions.coupon d'une CheckoutRequest pour validation.

Exemple : ADETRE23

applicableServiceType Liste<ServiceType>

Service auquel cette offre s'applique. L'offre par défaut suppose un accord applicable à tous.

eligibleMaxOrders Entier

Cette offre n'est éligible que si le nombre de commandes passées effectuées par l'utilisateur est inférieur ou égal à ce nombre.

availabilityId List<String>

Valeurs @id des entités de disponibilité qui fournissent des détails sur la disponibilité de la section de menu.

Exemple : [ "availability_1" ]

isDisabled Valeur booléenne

Elle remplace les autres vérifications de validité.

dealType DealType

Obligatoire.

Catégorie d'offre spéciale à laquelle appliquer la remise. La catégorie peut correspondre au montant total du panier, aux frais de service ou aux frais de livraison.

priceCurrency String

Obligatoire lorsque discount is defined.

Obligatoire lorsque eligibleTransactionVolumeMin is defined.

Devise (au format ISO 4217 à trois lettres) de la remise.

Exemple : USD

eligibleTransactionVolumeMin Number

Volume de transaction, dans une unité monétaire, pour lequel cette promotion est valable.

termsOfServiceUrl URL

Obligatoire.

Documentation sur les conditions d'utilisation lisible par l'humain.

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités "Accords" au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

Vous devez indiquer exactement l'un des groupes de propriétés suivants.
discount Groupe 1 Number

Valeur de la remise sous forme de nombre.

discountPercentage Groupe 2 Number

Valeur de la remise sous forme de pourcentage du prix d'origine.

L'exemple suivant illustre un élément Deal:

Exemple 1

{
  "@type": "Deal",
  "@id": "ONEDOLLARFEE",
  "dealCode": "THREEDOLLARFEE",
  "dealType": "CART_OFF",
  "availabilityId": [
    "availability_may2020"
  ],
  "termsOfServiceUrl": "http://www.provider.com/onedollardeal",
  "applicableServiceType": [
    "TAKEOUT"
  ],
  "discount": 3,
  "priceCurrency": "USD"
}

Exemple 2

{
  "@type": "Deal",
  "@id": "10PERCOFF",
  "dealCode": "10PERCOFF",
  "dealType": "CART_OFF",
  "availabilityId": [
    "availability_weekdays_evening"
  ],
  "termsOfServiceUrl": "http://www.provider.com/deal",
  "discountPercentage": 10,
  "priceCurrency": "USD"
}

Exemple 3

{
  "@type": "Deal",
  "@id": "FREEDELIVERY",
  "dealCode": "FREEDELIVERY",
  "dealType": "DELIVERY_OFF",
  "availabilityId": [
    "availability_may"
  ],
  "applicableServiceType": [
    "DELIVERY"
  ],
  "termsOfServiceUrl": "http://www.provider.com/free_delivery_deal",
  "discountPercentage": 100,
  "eligibleTransactionVolumeMin": 25,
  "priceCurrency": "USD"
}

Données de service

Service (obligatoire)

Décrit les détails du service de commande de repas d'un restaurant. Service est une entité obligatoire à mettre en œuvre.

Le tableau suivant répertorie les propriétés pour le type Service:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Service

@id String

Obligatoire.

Identifiant du service de fulfillment.

Exemple : service_1

serviceType ServiceType

Obligatoire.

Type de service proposé. Les valeurs possibles sont "DELIVERY" ou "TAKEOUT".

Exemple : DELIVERY

restaurantId String

Obligatoire.

Valeur @id de l'entité Restaurant en corrélation avec cette entité Service.

Exemple : restaurant_1

menuId String

Obligatoire.

Valeur @id de l'entité Menu en corrélation avec cette entité Service.

Exemple : menu_1

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités de service, au format d'horodatage ISO.

Exemple : 2017-01-02T00:00:00-07:00

isDisabled Valeur booléenne

Indique si l'entité est désactivée. N'utilisez ce type que lorsque vous devez désactiver l'entité en raison d'un événement inattendu et que vous ne savez pas quand le service sera rétabli (par exemple, ne l'utilisez pas pendant les jours fériés).

Exemple : true

servingConfig ServingConfig

Configuration de la diffusion pour le service permettant de contrôler diverses fonctionnalités (par exemple, désactivation du widget promotionnel, etc.).

actionLinkUrl String

Contient l'URL d'un service de livraison/à emporter qui sera utilisé lors de la migration de l'expérience de commande de repas de bout en bout vers la redirection.

L'exemple suivant illustre un élément Service:

Exemple 1

{
  "@type": "Service",
  "@id": "10824/takeout",
  "serviceType": "TAKEOUT",
  "menuId": "10824",
  "restaurantId": "10824",
  "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderpickup/merchant_foepa_3"
}

Exemple 2

{
  "@type": "Service",
  "@id": "10824/delivery",
  "serviceType": "DELIVERY",
  "menuId": "10824",
  "restaurantId": "10824",
  "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderdelivery/merchant_foepa_3"
}

ServiceArea

Décrit la zone géographique dans laquelle la nourriture peut être livrée. Cette entité doit être implémentée si serviceType est défini sur "DELIVERY" pour l'entité Service associée.

Le tableau suivant répertorie les propriétés pour le type ServiceArea:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : ServiceArea

@id String

Obligatoire.

Identifiant unique de la zone desservie.

Exemple : service_area_1

serviceId List<String>

Obligatoire.

Valeur @id de l'entité Service corrélée à cette entité ServiceArea.

Exemple : [ "service_1" ]

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités ServiceArea au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

exclude Valeur booléenne

Excluez cette zone desservie de la région de livraison totale. Par exemple, un code postal peut être exclu d'un polygone plus vaste.

Vous devez indiquer exactement l'un des groupes de propriétés suivants.
polygon Groupe 1 List<String>

Polygone ou multipolygone exprimé par une série de trois points ou plus délimités par un espace. Il est recommandé que les premier et dernier points soient identiques, mais ce n'est pas obligatoire. Chaque point d'un polygone ou d'un multipolygone est défini par un point de latitude suivi d'un point de longitude. Vous devez également indiquer les points dans le sens inverse des aiguilles d'une montre.

Exemple : [ "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747" ]

geoMidpointLatitude Groupe 2 Number

Indique la latitude au centre de la zone CERCLE.

Exemple : 37.806000

geoMidpointLongitude Groupe 2 Number

Indique la coordonnée de longitude au centre de la zone Circle.

Exemple : -122.425592

geoRadius Groupe 2 Entier

Indique le rayon approximatif (en mètres) de la zone CERCLE.

Exemple : 10000

postalCode Groupe 3 String

Indique le code postal.

Exemple : 91234

addressCountry Groupe 3 String

Indique le code pays ISO 3166-1 alpha-2 à deux lettres

Exemple : US

L'exemple suivant illustre un élément ServiceArea:

Exemple

{
  "@type": "ServiceArea",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "polygon": [
    "37.4818562 -122.25801303 37.48247836 -122.25801303 37.48434484 -122.25621319 37.48621133 -122.25424681 37.49181077 -122.24704744 37.49305509 -122.24541414 37.49429942 -122.2436143 37.49803238 -122.23821477 37.49803238 -122.21285044 37.49367726 -122.15885517 37.49056645 -122.15722187 37.48621133 -122.15542202 37.48558917 -122.15525548 37.4818562 -122.15525548 37.43191387 -122.17865343 37.43191387 -122.23444854"
  ]
}

OperationHours (obligatoire)

Décrit la fenêtre de commande dans laquelle les utilisateurs peuvent accéder au flux et passer des commandes dès que possible ou futures. L'implémentation de OperationHours est requise. Par défaut, elle représente les opérations à toute heure du jour et de la semaine.

Les attributs opens et closes OperationHours spécifient les heures d'ouverture et de fermeture du système en ligne qui permet aux utilisateurs de passer des commandes. Au cours de ces horaires d'ouverture du système en ligne, utilisez ServiceHours pour spécifier les heures d'ouverture et de fermeture pendant lesquelles les commandes des utilisateurs peuvent être traitées.

Les heures doivent être indiquées dans le fuseau horaire local du service. N'incluez pas de fuseau horaire dans la valeur opens. Si un fuseau horaire est spécifié, Google ignore ces informations. Pour en savoir plus, consultez la section Formats de date et d'heure.

Le tableau suivant répertorie les propriétés pour le type OperationHours:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : OperationHours

@id String

Obligatoire.

Identifiant unique de l'entité décrivant la fenêtre de commande à laquelle les utilisateurs peuvent accéder au flux et passer des commandes dès que possible ou futures.

Exemple : operation_hour_1

serviceId List<String>

Obligatoire.

Valeur @id de l'entité Service en corrélation avec cette entité OperationHours.

Exemple : [ "service_1" ]

opens Heure ISO (locale)

Indique l'heure précise au format ISO à partir de laquelle les utilisateurs peuvent passer des commandes.

Exemple : T00:00

closes Heure ISO (locale)

Heure de la journée (au format ISO) au-delà de laquelle les utilisateurs ne peuvent pas passer commande.

Exemple : T16:00

dayOfWeek Liste<DayOfWeek>

La liste des jours de la semaine pendant lesquels ces horaires d'ouverture sont valides. Les valeurs acceptées sont "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" et "SUNDAY".

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Horodatage ISO

Obligatoire lorsque isSpecialHour = true.

Horodatage ISO indiquant l'heure de début de la période de commande à laquelle les utilisateurs peuvent accéder au flux et passer des commandes dès que possible ou futures.

Exemple : 2017-01-01T00:00:00-07:00

validThrough Horodatage ISO

Obligatoire lorsque isSpecialHour = true.

Horodatage ISO indiquant l'heure de fin de la période de commande au-delà de laquelle les utilisateurs ne peuvent pas accéder au flux et passer des commandes dès que possible ou futures.

Exemple : 2017-01-02T00:00:00-07:00

isSpecialHour Valeur booléenne

Booléen indiquant si OperationHours est destiné à des horaires d'ouverture exceptionnels. Les valeurs acceptables sont "false" et "true".

Exemple : False

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités OperationHours au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément OperationHours:

Exemple 1

{
  "@type": "OperationHours",
  "@id": "10824/deliveryOh",
  "serviceId": [
    "10824/delivery"
  ],
  "isSpecialHour": false
}

Exemple 2

{
  "@type": "OperationHours",
  "@id": "10824/takeoutOh",
  "serviceId": [
    "10824/takeout"
  ],
  "isSpecialHour": false
}

ServiceHours (obligatoire)

Décrit la fenêtre de traitement dans laquelle les utilisateurs peuvent choisir des emplacements de traitement (dès que possible ou futurs). L'implémentation de ServiceHours est requise.

Les attributs opens et closes OperationHours spécifient les heures d'ouverture et de fermeture du système en ligne qui permet aux utilisateurs de passer des commandes. Au cours de ces horaires d'ouverture du système en ligne, utilisez ServiceHours pour spécifier les heures d'ouverture et de fermeture pendant lesquelles les commandes des utilisateurs peuvent être traitées.

Les heures doivent être indiquées dans le fuseau horaire local du service. N'incluez pas de fuseau horaire dans la valeur opens. Si un fuseau horaire est spécifié, Google ignore ces informations. Pour en savoir plus, consultez la section Formats de date et d'heure.

Le tableau suivant répertorie les propriétés pour le type ServiceHours:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : ServiceHours

@id String

Obligatoire.

Identifiant unique de l'entité décrivant la fenêtre de traitement dans laquelle les utilisateurs peuvent choisir des emplacements de traitement, c'est-à-dire les créneaux "Dès que possible" ou futurs.

Exemple : service_hour_1

orderType OrderType

Obligatoire.

Chaîne indiquant si les horaires d'ouverture s'appliquent aux commandes dès que possible ou avancées. Les valeurs acceptées sont "Dès que possible" et "AVANCE".

Exemple : ASAP

serviceId List<String>

Obligatoire.

Valeur @id de l'entité Service corrélée à cette entité ServiceHours.

Exemple : [ "service_1" ]

operationHoursId List<String>

Obligatoire lorsque isSpecialHour = false.

Valeur @id de l'entité OperationHours corrélée à cette entité ServiceHours.

Exemple : [ "operation_hour_1" ]

opens Heure ISO (locale)

Indique l'heure précise au format ISO à partir de laquelle les commandes des utilisateurs peuvent être traitées.

Exemple : T00:00

closes Heure ISO (locale)

Heure de la journée spécifique au format ISO au-delà de laquelle les commandes des utilisateurs ne peuvent pas être traitées.

Exemple : T16:00

dayOfWeek Liste<DayOfWeek>

La liste des jours de la semaine pendant lesquels ces horaires d'ouverture sont valides.

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Horodatage ISO

Obligatoire lorsque isSpecialHour = true.

Horodatage ISO indiquant l'heure de début de la période de commande à laquelle les utilisateurs peuvent accéder au flux et passer des commandes dès que possible ou futures.

Exemple : 2017-01-01T00:00:00-07:00

validThrough Horodatage ISO

Obligatoire lorsque isSpecialHour = true.

Horodatage ISO indiquant l'heure de fin de la période de commande au-delà de laquelle les utilisateurs ne peuvent pas accéder au flux et passer des commandes dès que possible ou futures.

Exemple : 2017-01-02T00:00:00-07:00

isSpecialHour Valeur booléenne

Booléen indiquant si OperationHours est destiné à des horaires d'ouverture exceptionnels. Les valeurs acceptables sont "false" et "true".

Exemple : False

leadTimeMin Entier

Heure de livraison/de retrait minimale estimée, en minutes, une fois que vous avez passé la commande dès que possible. Nous vous recommandons vivement de définir cette propriété.

Exemple : 60

leadTimeMax Entier

Heure de livraison/de retrait maximale estimée, en minutes, une fois que la commande "Dès que possible" a été passée. Nous vous recommandons vivement de définir cette propriété.

Exemple : 70

advanceBookingRequirementMin Entier

Obligatoire lorsque orderType = "ADVANCE".

Nombre minimal de minutes à partir de l'heure de la commande pendant lesquelles la commande à l'avance peut être traitée. Par exemple, si une commande à l'avance a besoin d'au moins 60 minutes pour être honorée, la valeur de la valeur d'anticipation de réservation requise pour la valeur minimale de réservation est de 60.

Exemple : 15

advanceBookingRequirementMax Entier

Obligatoire lorsque orderType = "ADVANCE".

Nombre maximal de minutes à compter de l'heure de commande où la commande anticipée peut être traitée. Par exemple, si le traitement d'une commande à l'avance est impossible plus de deux jours plus tard, la valeur de la valeur "advancedBookingRequiredmentMax" est de 2 880.

Exemple : 10080

advanceBookingSlotInterval String

Obligatoire lorsque orderType = "ADVANCE".

Intervalle entre deux créneaux de réservation à l'avance successifs. Par exemple, si les horaires d'ouverture et de fermeture ont lieu à 8h et 20h, et que le paramètre "advancedBookingSlotInterval" est de 15 minutes, l'utilisateur peut choisir les heures de traitement suivantes : 8 h, 8 h 15, 8 h 30, 8 h 45, etc. La durée doit être indiquée sous la forme d'une durée de période ISO. Par exemple, "PT15M" signifie des intervalles de 15 minutes.

Exemple : PT15M

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités ServiceHours au format d'horodatage ISO, mais de type "String" (Chaîne).

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément ServiceHours:

Exemple 1

{
  "@type": "ServiceHours",
  "@id": "613741/delivery",
  "orderType": "ASAP",
  "serviceId": [
    "10824/delivery"
  ],
  "opens": "T00:00",
  "closes": "T00:00",
  "isSpecialHour": true,
  "validFrom": "2017-12-25T00:00:00-07:00",
  "validThrough": "2017-12-25T23:59:00-07:00"
}

Exemple 2

{
  "@type": "ServiceHours",
  "@id": "10824/takeoutSh_0",
  "orderType": "ASAP",
  "serviceId": [
    "10824/takeout"
  ],
  "operationHoursId": [
    "10824/takeoutOh"
  ],
  "opens": "11:00",
  "closes": "21:00",
  "dayOfWeek": [
    "MONDAY",
    "TUESDAY",
    "WEDNESDAY",
    "THURSDAY"
  ],
  "isSpecialHour": false
}

Fee

Décrit les frais. Si l'entité Service associée a serviceType défini sur "DELIVERY", un Fee avec feeType défini sur "DELIVERY" est requis.

Le tableau suivant répertorie les propriétés pour le type Fee:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Fee

@id String

Obligatoire.

Identifiant unique de l'entité décrivant les frais.

Exemple : service_fee_1

serviceId List<String>

Obligatoire.

Valeur @id de l'entité de service mise en corrélation avec l'entité "Frais"

Exemple : [ "service_1" ]

feeType FeeType

Obligatoire.

Chaîne indiquant si les frais s'appliquent aux commandes de livraison ou de service. Les valeurs acceptées sont "DELIVERY" et "SERVICE".

Exemple : DELIVERY

priceCurrency String

Obligatoire.

Code de devise ISO 4217 à trois lettres.

Exemple : USD

basePrice Number

Prix de base des frais, applicable lorsque percentageOfCart ou pricePerMeter est utilisé.

Exemple : 2.0

minPrice Number

Frais minimaux, plafonnement de la valeur des frais lorsque percentageOfCart ou pricePerMeter est utilisé.

Exemple : 2.0

maxPrice Number

Frais maximaux, plafonnant la valeur des frais lorsque percentageOfCart ou pricePerMeter sont utilisés.

Exemple : 10.0

eligibleRegion List<String>

@id de la ServiceArea pour la ou les régions géopolitiques pour lesquelles les frais sont valides. N'utilisez cet établissement que si les frais de livraison varient selon la région.

Exemple : [ "service_area_1" ]

eligibleTransactionVolumeMin Number

Volume de transaction minimal, en unité monétaire, pour lequel cette spécification de frais s'applique.

Exemple : 50

eligibleTransactionVolumeMax Number

Volume de transaction maximal, en unité monétaire, pour lequel cette spécification de frais s'applique. Par exemple, ils ne s'appliquent pas pour les commandes supérieures à un certain volume.

Exemple : 10

validFrom Horodatage ISO

Horodatage ISO indiquant l'heure de début de validité des frais.

Exemple : 2017-01-01T00:00:00-07:00

validThrough Horodatage ISO

Horodatage ISO indiquant l'heure de fin au-delà de laquelle les frais ne sont pas valides.

Exemple : 2017-01-02T00:00:00-07:00

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités "Frais" au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

priority Number

Valeur positive non nulle. Lorsque plusieurs frais s'appliquent au panier de l'utilisateur, les frais les plus élevés prévalent sur les moins élevés. Lorsque ce champ est renseigné, la priorité est toujours prioritaire sur une priorité calculée.

Exemple : 3

Vous devez indiquer exactement l'un des groupes de propriétés suivants.
price Groupe 1 Number

Prix des frais. Si le prix n'est pas fixe, vous pouvez indiquer minPrice et maxPrice à la place du prix.

Exemple : 1.5

percentageOfCart Groupe 2 Number

Frais en pourcentage de la valeur du panier. Les valeurs acceptables sont des valeurs flottantes comprises entre 0 et 100 inclus.

Exemple : 9.00

pricePerMeter Groupe 3 Number

Frais au mètre pour la distance radiale de l'utilisateur. Par exemple, si la distance est de 5 km et que le tarif est de 0,001 $, les frais d'utilisation sont de 5 $.

Exemple : 0.001

L'exemple suivant illustre un élément Fee:

Exemple 1

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "price": 5
}

Exemple 2

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "pricePerMeter": 0.0005,
  "basePrice": 4
}

Exemple 3

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "pricePerMeter": 0.0005,
  "basePrice": 4,
  "minPrice": 5,
  "maxPrice": 50
}

Exemple 4

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "percentageOfCart": 5,
  "basePrice": 4
}

Exemple 5

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "percentageOfCart": 5,
  "basePrice": 4,
  "minPrice": 5,
  "maxPrice": 50
}

Entité obligatoire à implémenter. Décrit un menu.

Le tableau suivant répertorie les propriétés pour le type Menu:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Menu

@id String

Obligatoire.

Identifiant unique du menu.

Exemple : menu_1

name String

Texte permettant d'identifier le menu lorsqu'un utilisateur le parcourt.

Exemple : Foo

disclaimer String

Clause de non-responsabilité concernant le menu. Par exemple, la divulgation d'informations nutritionnelles et d'allergènes.

Exemple : Items may contain peanuts.

disclaimerUrl URL

URL renvoyant vers une page fournissant plus de détails sur la clause de non-responsabilité.

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités de menu au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément Menu:

{
  "@type": "Menu",
  "@id": "10824"
}

Entité facultative à implémenter. Décrit une section particulière du menu.

Le tableau suivant répertorie les propriétés pour le type MenuSection:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : MenuSection

@id String

Obligatoire.

Identifiant unique de la section du menu.

Exemple : menu_section_1

menuId Liste<ReverseReference>

Valeur @id de l'entité Menu en corrélation avec cette entité MenuSection.

Exemple : [ { "@id": "menu_id", "displayOrder": 4 } ]

menuSectionId List<String>

Liste des valeurs @id des entités MenuSection enfants correspondant à cette entité MenuSection.

Important:Vous ne devez utiliser qu'une seule référence menuSectionId ou parentMenuSectionId(in child).

Exemple : [ "child_menu_section_1", "child_menu_section_2" ]

parentMenuSectionId Liste<ReverseReference>

La valeur @id de l'entité parente MenuSection est corrélée à cette entité MenuSection.

Important:Vous ne devez utiliser qu'une seule référence parentMenuSectionId ou menuSectionId(in parent).

Exemple : [ { "@id": "parent_menu_section_id", "displayOrder": 4 } ]

name String

Obligatoire.

Texte permettant d'identifier l'élément MenuSection lorsqu'un utilisateur parcourt le menu.

Exemple : Foo

description String

Description de la section du menu.

Exemple : Example menu section description that helps users.

image URL

URL d'une image de la section de menu.

Exemple : https://provider.com/someimage

menuItemId List<String>

Liste des valeurs @id des entités MenuItem correspondant à cette entité MenuSection.

Important:Vous ne devez utiliser qu'une seule référence menuItemId ou MenuItem.parentMenuSectionId.

Exemple : [ "menu_item1", "menu_item2" ]

parentMenuItemId Liste<ReverseReference>

Liste des valeurs @id des entités MenuItem parentes qui correspondent à cette entité MenuSection.

Important:Vous ne devez utiliser qu'une seule référence parentMenuItemId ou MenuItem.menuAddOnId.

Exemple : [ { "@id": "parent_menu_item_id", "displayOrder": 4 } ]

parentMenuItemOptionId Liste<ReverseReference>

Liste des valeurs @id des entités MenuItemOption parentes qui correspondent à cette entité MenuSection.

Important:Vous ne devez utiliser qu'une seule référence parentMenuItemOptionId ou MenuItemOption.menuAddOnId.

Exemple : [ { "@id": "parent_menu_item_option_id", "displayOrder": 4 } ]

eligibleQuantityMax Entier

Nombre maximal de modules complémentaires pouvant être sélectionnés dans la section dédiée.

Exemple : 5

eligibleQuantityMin Entier

Nombre minimal de modules complémentaires devant être sélectionnés dans la section dédiée.

Exemple : 1

defaultItemId List<String>

Liste de @id faisant référence aux entités MenuItem à présélectionner par défaut pour les utilisateurs du module complémentaire MenuSection. Les utilisateurs peuvent modifier les sélections finales. Si defaultItemId n'est pas spécifié, aucun élément MenuItem n'est présélectionné.

Exemple : [ "item1", "item2" ]

availabilityId List<String>

Valeurs @id des entités de disponibilité qui fournissent des détails sur la disponibilité de la section de menu.

Exemple : [ "menu_availability_1" ]

numberOfFreeAddOns Entier

Indique le nombre de modules complémentaires qu'un utilisateur peut sélectionner sans frais. Valide uniquement pour les sections de menu complémentaire.

Exemple : 3

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités MenuSection au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

applicableServiceType Liste<ServiceType>

Service auquel ce MenuSection s'applique. La valeur par défaut suppose qu'une MenuSection s'applique à tous.

offeredById List<String>

Les valeurs @id des entités Restaurant auxquelles ce MenuSection est disponible. La valeur par défaut suppose qu'une MenuSection est disponible dans tous les emplacements.

Exemple : [ "restaurant_id_1", "restaurant_id_55" ]

L'exemple suivant illustre un élément MenuSection:

{
  "@type": "MenuSection",
  "@id": "853705",
  "menuId": [
    {
      "@id": "10824",
      "displayOrder": 853705
    }
  ],
  "menuSectionId": [
    12345,
    43645
  ],
  "name": "Pasta",
  "applicableServiceType": [
    "TAKEOUT"
  ],
  "offeredById": [
    "italian_restaurant_location_1"
  ]
}
{
  "@type": "MenuSection",
  "@id": "427484",
  "menuId": [
    {
      "@id": "4287",
      "displayOrder": 964376
    }
  ],
  "menuItemId": [
    46784,
    42728
  ],
  "name": "Burger",
  "applicableServiceType": [
    "TAKEOUT",
    "DELIVERY"
  ]
}
{
  "@type": "MenuSection",
  "@id": "3138486",
  "name": "Choose a side:",
  "parentMenuItemId": [
    {
      "@id": "6680295",
      "displayOrder": 3138486
    }
  ],
  "eligibleQuantityMax": "5",
  "numberOfFreeAddOns": "2"
}
{
  "@type": "MenuSection",
  "@id": "3138482",
  "name": "Additional Pizza Toppings",
  "parentMenuItemId": [
    {
      "@id": "6680246",
      "displayOrder": 3138482
    }
  ],
  "eligibleQuantityMax": "3"
}

Garantie de disponibilité

Entité facultative à implémenter. Décrit la période pendant laquelle une entité MenuSection est diffusée.

Le tableau suivant répertorie les propriétés pour le type Availability:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : Availability

@id String

Obligatoire.

Identifiant unique de l'entité décrivant la disponibilité de la section de menu.

Exemple : menu_section_avail_1

availabilityStarts Heure ISO (locale)

Horodatage ISO indiquant l'heure de début de validité de la disponibilité de la section de menu.

Exemple : T00:00

availabilityEnds Heure ISO (locale)

Horodatage ISO indiquant l'heure de fin au-delà de laquelle la disponibilité de la section de menu n'est pas valide.

Exemple : T16:00

availableDay Liste<DayOfWeek>

Liste des jours de la semaine pendant lesquels la disponibilité de la section de menu est valide.

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Horodatage ISO

Horodatage ISO indiquant l'heure de début de validité de la disponibilité de la section de menu.

Exemple : 2017-01-01T00:00:00-07:00

validThrough Horodatage ISO

Horodatage ISO indiquant l'heure de fin au-delà de laquelle la disponibilité de la section de menu n'est pas valide.

Exemple : 2017-01-02T00:00:00-07:00

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités de disponibilité au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément Availability:

Exemple

{
  "@type": "Availability",
  "@id": "85343705",
  "availabilityStarts": "06:00",
  "availabilityEnds": "22:30",
  "availableDay": [
    "SATURDAY",
    "SUNDAY"
  ]
}

Entité obligatoire à implémenter. Décrit un élément dans une entité Menu.

Le tableau suivant répertorie les propriétés pour le type MenuItem:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : MenuItem

@id String

Obligatoire.

Identifiant unique de l'élément de menu.

Exemple : menu_item_1

name String

Obligatoire.

Texte permettant d'identifier l'élément MenuItem lorsqu'un utilisateur parcourt le menu.

Exemple : Foo

description String

Description de l'élément de menu.

Exemple : Foo

image URL

URL d'une image de l'élément de menu.

Exemple : http://someprovider.com/someimage

parentMenuSectionId Liste<ReverseReference>

Liste des valeurs @id des entités MenuSection parentes qui correspondent à cette entité MenuItem.

Important:Vous ne devez utiliser qu'une seule référence parentMenuSectionId ou MenuSection.menuItemId.

Exemple : { "@id": "menu_section_parent_id", "displayOrder": 4 }

menuAddOnId List<String>

Liste des valeurs @id des entités MenuSection provenant de la section des modules complémentaires et correspondant à cette entité MenuItem.

Important:Vous ne devez utiliser qu'une seule référence menuAddOnId ou MenuSection.parentMenuItemId.

Exemple : menu_addon_1

nutrition NutritionInformation

Informations nutritionnelles du plat, notamment les calories.

Exemple : { "calories": "120-150 Cal" }

allergen Liste<Allergen>

Allergènes de cet élément de menu.

Exemple : [ { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" } ]

additive Liste<Additive>

Additifs de cet élément MenuItem.

Exemple : [ { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" } ]

suitableDiet Liste<RestrictedDiet>

Le plat respecte les restrictions alimentaires décrites.

Exemple : [ "DIABETIC", "GLUTEN_FREE" ]

depositInfo DepositInfo

Informations sur l'emballage et le recyclage de cet élément MenuItem.

Exemple : { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Entier

Nombre de portions disponibles pour un élément de menu donné.

Exemple : 2

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités MenuItem au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément MenuItem:

{
  "@type": "MenuItem",
  "@id": "18931508",
  "name": "Sauteed Baby Spinach",
  "parentMenuSectionId": [
    {
      "@id": "3138479",
      "displayOrder": 18931508
    }
  ]
}
{
  "@type": "MenuItem",
  "@id": "18931508",
  "name": "Hamburger",
  "parentMenuSectionId": [
    {
      "@id": "4645747",
      "displayOrder": 12345
    }
  ],
  "nutrition": {
    "calories": "400 cal"
  },
  "allergen": [
    {
      "allergenType": "GLUTEN",
      "levelOfContainment": "CONTAINS"
    }
  ],
  "additive": [
    {
      "additiveName": "Sodium nitrite",
      "levelOfContainment": "CONTAINS"
    }
  ],
  "suitableDiet": [
    "DIABETIC",
    "LOW_FAT"
  ]
}

Entité facultative à implémenter. Décrit les choix qu'un utilisateur devrait faire lorsqu'il sélectionne un plat/combo. L'utilisateur doit sélectionner une option, sinon la commande est considérée comme non valide (par exemple, il doit choisir petite, moyenne ou grande pour une pizza).

Le tableau suivant répertorie les propriétés pour le type MenuItemOption:

Propriété Type Description
@type Continuité

Valeur : MenuItemOption

@id String

Obligatoire.

Identifiant unique de l'option d'élément de menu.

Exemple : menu_item_1_option

menuItemId ReverseReference

Obligatoire.

La valeur @id de l'entité MenuItem est corrélée à cette entité MenuItemOption.

Exemple : { "@id": "menu_item_1", "displayOrder": 4 }

optionType OptionType

Chaîne indiquant si l'option de l'élément de menu est classée en fonction de la taille, de l'option ou du côté de la pizza. Les valeurs acceptées sont "SIZE", "OPTION" et "PIZZA_SIDE". "SIZE": taille de l'option MenuItemOption. Par exemple, petit, moyen ou grand. "OPTION": toute variante autre que la taille (par exemple, une salade ou un sandwich). Si vous ne parvenez pas à faire la distinction entre "SIZE" et "OPTION", utilisez "OPTION". "PIZZA_SIDE" : spécifique aux pizzas. Par exemple, l'attribut MenuItemOption n'est valable que pour une part ou une pizza entière (par exemple, des garnitures aux champignons sur le côté gauche ou droit, ou une pizza entière).

Exemple : SIZE

value Chaîne ou PizzaSide

Obligatoire lorsque optionType is defined.

Valeur de chaîne ou valeur d'énumération. Les valeurs d'énumération sont spécifiques au type d'option PIZZA_SIDE.

applicableParentOptionValue String

Chaîne contenant la valeur de la valeur d'option de l'élément parent pour laquelle cette option est disponible.

Exemple : Small

menuAddOnId List<String>

Liste des valeurs @id des entités MenuSection provenant de la section des modules complémentaires et correspondant à cette entité MenuItemOption.

Important:Vous ne devez utiliser qu'une seule référence menuAddOnId ou MenuSection.parentMenuItemId.

Exemple : menuAddOnId

nutrition NutritionInformation

Informations nutritionnelles du plat, notamment les calories.

Exemple : { "calories": "120-150 Cal" }

allergen Liste<Allergen>

Allergènes de cet élément de menu.

Exemple : { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" }

additive Liste<Additive>

Additifs de cet élément MenuItem.

Exemple : { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" }

depositInfo DepositInfo

Informations sur l'emballage et le recyclage de cet élément MenuItem.

Exemple : { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Entier

Nombre de portions disponibles pour une option d'élément de menu donnée.

Exemple : 2

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités MenuItemOption, au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

L'exemple suivant illustre un élément MenuItemOption:

{
  "@type": "MenuItemOption",
  "@id": "56177944",
  "menuItemId": {
    "@id": "18930213",
    "displayOrder": 1234
  },
  "optionType": "PIZZA_SIDE",
  "value": "PIZZA_SIDE_LEFT"
}
{
  "@type": "MenuItemOption",
  "@id": "56177944",
  "menuItemId": {
    "@id": "18930213",
    "displayOrder": 1234
  },
  "applicableParentOptionValue": "Small Pizza"
}

Entité obligatoire à implémenter. Décrit une offre pour une entité MenuItem ou MenuItemOption.

Le tableau suivant répertorie les propriétés pour le type MenuItemOffer:

Propriété Type Description
@type Continuité

Obligatoire.

Valeur : MenuItemOffer

@id String

Obligatoire.

Identifiant unique de l'offre de menu.

Exemple : menu_item_offer

sku String

Obligatoire.

Identifiant de l'offre associée au menu. Les valeurs du code SKU peuvent être différentes ou identiques pour plusieurs entités d'offres d'éléments de menu. La valeur du code SKU sera définie dans l'ordre lorsque nous effectuerons un appel d'API.

Exemple : Menu_item_offer_sku

price Number

Obligatoire.

Prix de l'offre.

Exemple : 2.5

priceCurrency String

Obligatoire.

Code de devise ISO 4217 à trois lettres.

Exemple : USD

availabilityId List<String>

Valeurs @id des entités de disponibilité qui fournissent des détails sur la disponibilité de l'offre d'élément de menu.

Exemple : [ "menu_availability_1" ]

eligibleQuantityMin Number

Quantité minimale à commander pour laquelle le MenuItemOffer est valide.

Exemple : 1

eligibleQuantityMax Number

Quantité commandée maximale pour laquelle MenuItemOffer est valide.

Exemple : 25

inventoryLevel Number

Niveau d'inventaire approximatif actuel du ou des articles correspondant à MenuItemOffer.

Exemple : 10

dateModified Horodatage ISO

Date et heure de la dernière modification du flux d'entités MenuItemOffer au format d'horodatage ISO, mais de type "Chaîne".

Exemple : 2017-01-02T00:00:00-07:00

applicableServiceType Liste<ServiceType>

Service auquel ce MenuItemOffer s'applique. La valeur par défaut suppose qu'une MenuItemOffer s'applique à tous.

offeredById List<String>

Les valeurs @id des entités Restaurant auxquelles ce MenuItemOffer est disponible. La valeur par défaut suppose qu'une MenuItemOffer est disponible dans tous les emplacements.

Exemple : [ "restaurant_id_5", "restaurant_id_26" ]

Vous devez indiquer exactement l'un des groupes de propriétés suivants.
menuItemId Groupe 1 String

La valeur @id de l'entité MenuItem est corrélée à cette entité MenuItemOffer.

Exemple : menu_item_1

menuItemOptionId Groupe 2 String

La valeur @id de l'entité MenuItemOption est corrélée à cette entité MenuItemOffer.

Exemple : menu_item_option_1

L'exemple suivant illustre un élément MenuItemOffer:

{
  "@type": "MenuItemOffer",
  "@id": "6680262",
  "sku": "offer-mediterranean-bagel",
  "menuItemId": "896532",
  "price": 15.5,
  "priceCurrency": "USD",
  "applicableServiceType": [
    "DELIVERY"
  ],
  "offeredById": [
    "bagel_shop_location_5"
  ]
}

Courant

ReverseReference

Le tableau suivant répertorie les propriétés pour le type ReverseReference:

Propriété Type Description
@id String

Obligatoire.

@id de l'entité parente.

displayOrder Entier

Obligatoire.

Ordre d'affichage des éléments dans le parent.

NutritionInformation

Le tableau suivant répertorie les propriétés pour le type NutritionInformation:

Propriété Type Description
description String

Informations nutritionnelles en texte libre. Exemple : "Contient des conservateurs".

calories String

Nombre de calories en Cal, kcal ou kJ, au format suivant: valeur Cal ou min-max Cal

Exemple : 120.34 Cal

sodiumContent String

Nombre de mg ou g de sodium, au format suivant: valeur g ou min-max g

Exemple : 1200 mg

L'exemple suivant illustre un élément NutritionInformation:

Exemple

{
  "calories": "120-150 Cal",
  "sodiumContent": "100 mg"
}

Allergènes

Le tableau suivant répertorie les propriétés pour le type Allergen:

Propriété Type Description
allergenType AllergenType

Obligatoire.

Type d'allergène.

levelOfContainment ContainmentLevel

Niveau d'un allergène donné dans l'élément du menu.

L'exemple suivant illustre un élément Allergen:

Exemple

{
  "allergenType": "PEANUTS",
  "levelOfContainment": "MAY_CONTAIN"
}

Le modelage

Le tableau suivant répertorie les propriétés pour le type Additive:

Propriété Type Description
additiveName String

Obligatoire.

Nom de l'additif.

levelOfContainment ContainmentLevel

Niveau d'un additif donné dans l'élément de menu.

L'exemple suivant illustre un élément Additive:

Exemple

{
  "additiveName": "Sodium nitrite",
  "levelOfContainment": "CONTAINS"
}

DepositInfo

Le tableau suivant répertorie les propriétés pour le type DepositInfo:

Propriété Type Description
depositCode DepositCode

Code d'acompte.

depositValue Number

Valeur numérique du dépôt de l'article, lorsqu'il est recyclé, par exemple.

depositValueCurrency String

Devise de la valeur du virement

L'exemple suivant illustre un élément DepositInfo:

Exemple

{
  "depositCode": "RECYCLABLE",
  "depositValue": 0.05,
  "depositValueCurrency": "USD"
}

ServingConfig

Configuration de la diffusion pour le service permettant de contrôler diverses fonctionnalités (par exemple, désactivation du widget promotionnel, etc.).

Le tableau suivant répertorie les propriétés pour le type ServingConfig:

Propriété Type Description
disableOrderInstructions Valeur booléenne

Masque la possibilité de spécifier des instructions d'ordre.

disableMenuItemSpecialInstructions Valeur booléenne

Masque la possibilité de spécifier des instructions spéciales sur un élément de menu.

disableTipWidget Valeur booléenne

Masque le widget de pourboire sur la page "Commander" du flux de commande.

disablePromoWidget Valeur booléenne

Masque le widget promotionnel sur la page "Commander" du processus de commande.

menuItemSpecialInstructionsMaxLength Number

Spécifie le nombre maximal de caractères qu'une instruction spéciale d'élément de menu peut contenir.

orderInstructionsMaxLength Number

Spécifie le nombre maximal de caractères qu'une instruction de commande peut contenir.

L'exemple suivant illustre un élément ServingConfig:

Exemple 1

{
  "disableMenuItemSpecialInstructions": true
}

Exemple 2

{
  "disableTipWidget": true,
  "disablePromoWidget": true
}

Exemple 3

{
  "menuItemSpecialInstructionsMaxLength": 250,
  "orderInstructionsMaxLength": 1000
}

Enums

DayOfWeek

Le type DayOfWeek peut avoir les valeurs suivantes:

  • MONDAY
  • TUESDAY
  • WEDNESDAY
  • THURSDAY
  • FRIDAY
  • SATURDAY
  • SUNDAY

ServiceType

Le type ServiceType peut avoir les valeurs suivantes:

  • DELIVERY
  • TAKEOUT

OrderType

Le type OrderType peut avoir les valeurs suivantes:

  • ASAP
  • ADVANCE

FeeType

Le type FeeType peut avoir les valeurs suivantes:

  • DELIVERY
  • SERVICE

OptionType

Le type OptionType peut avoir les valeurs suivantes:

  • SIZE
  • OPTION
  • PIZZA_SIDE

PizzaSide

Le type PizzaSide peut avoir les valeurs suivantes:

  • PIZZA_SIDE_LEFT
  • PIZZA_SIDE_RIGHT
  • PIZZA_SIDE_WHOLE

AllergenType

Type d'allergène selon gs1:AllergenTypeCode.

Le type AllergenType peut avoir les valeurs suivantes:

  • ALMONDS
  • ALPHA_ISOMETHYL_IONONE
  • ALCOHOL
  • AMYL_CINNAMAL
  • ANISE_ALCOHOL
  • BARLEY
  • BENZYL_ALCOHOL
  • BENZYL_BENZOATE
  • BENZYL_CINNAMATE
  • BENZYL_SALICYLATE
  • BRAZIL_NUTS
  • BUTYLPHENYL_METHYLPROPIONATE
  • CARROTS
  • CASHEW_NUTS
  • CELERY
  • CEREALS_CONTAINING_GLUTEN
  • CINNAMAL
  • CINNAMYL_ALCOHOL
  • CITRAL
  • CITRONELLOL
  • COCOA
  • CORIANDER
  • CORN
  • COUMARIN
  • CRUSTACEANS
  • EGGS
  • EUGENOL
  • EVERNIA_FURFURACEA
  • EVERNIA_PRUNASTRI
  • FARNESOL
  • FISH
  • GERANIOL
  • GLUTEN
  • HAZELNUTS
  • HEXYL_CINNAMAL
  • HYDROXYCITRONELLAL
  • HYDROXYISOHEXYL_3_CYCLOHEXENE_CARBOXALDEHYDE_ISOEUGENOL_LIMONENE_LINAL
  • KAMUT
  • LACTOSE
  • LUPINE
  • MACADAMIA_NUTS
  • METHYL_2_OCTYNOATE
  • MILK
  • MOLLUSCS
  • MUSTARD
  • NO_DECLARED_ALLERGENS
  • OAT
  • PEANUTS
  • PEAS
  • PECAN_NUTS
  • PISTACHIOS
  • POD_FRUITS
  • QUEENSLAND_NUTS
  • RYE
  • SESAME_SEEDS
  • SOYBEANS
  • SPELT
  • SULPHUR_DIOXIDE
  • TREE_NUTS
  • TREE_NUT_TRACES
  • WALNUTS
  • WHEAT

ContainmentLevel

Le type ContainmentLevel peut avoir les valeurs suivantes:

  • CONTAINS
  • FREE_FROM
  • MAY_CONTAIN

DepositCode

Le type DepositCode peut avoir les valeurs suivantes:

  • REUSABLE
  • RECYCLABLE

DealType

Catégorie d'offre spéciale à laquelle appliquer la remise. La catégorie peut correspondre au montant total du panier ou aux frais de livraison.

Le type DealType peut avoir les valeurs suivantes:

  • CART_OFF
  • DELIVERY_OFF

RestrictedDiet

Type de régimes soumis à des restrictions conformément à schema.org:RestrictedDiet.

Le type RestrictedDiet peut avoir les valeurs suivantes:

  • DIABETIC
  • GLUTEN_FREE
  • HALAL
  • HINDU
  • KOSHER
  • LOW_CALORIE
  • LOW_FAT
  • LOW_LACTOSE
  • LOW_SALT
  • VEGAN
  • VEGETARIAN