Schéma d'inventaire relationnel

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

Exigences générales

Les entités doivent être structurées de sorte qu'une seule ligne par entité soit utilisée dans les flux (les entités sont séparées par des caractères de nouvelle ligne). Pour des raisons de lisibilité, les exemples JSON de cette page ne suivent pas cette structure. Toutefois, vous devez suivre 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 chaque type 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 les valeurs JSON

Contrainte 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 dans le type requis. Par exemple, les propriétés de chaîne peuvent accepter à la fois des chaînes et des valeurs entières en entrée. De même, les propriétés entières peuvent accepter une valeur de chaîne tant que la chaîne peut ê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. Sauf indication contraire, il doit suivre 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 correspond à l'heure locale du fuseau horaire d'un restaurant ou d'un établissement de services donné. Il est également basé sur le type schema.org et doit également suivre le format ISO 8601. L'heure utilise la syntaxe suivante:

// Time format:
THH:MM:SS

Exemple :

T08:08:00 // 8:08 AM

Tenez compte des points suivants lorsque vous spécifiez un DateTime ou un Time:

  • Le préfixe "T" avant 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 indiquée dans l'heure locale 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 du type Restaurant:

Propriété Type Description
@type Const

Obligatoire.

Valeur : Restaurant

@id String

Obligatoire.

Identifiant unique du restaurant ou du fournisseur 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 représentant le restaurant. Le domaine du restaurant est préférable au 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 à la plage [[-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 à la plage [[-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

L'empreinte 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. Ces informations peuvent être mises en forme à 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é au restaurant, le cas échéant Ces informations s'afficheront dans la section "Informations sur le marchand". Vous pouvez mettre en forme le texte à l'aide de " ".

Exemple :

XYZ Corp
123 Main Street
555-555-5555

dateModified Code temporel ISO

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

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

L'exemple suivant montre 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 du type Deal:

Propriété Type Description
@type Const

Obligatoire.

Valeur : Deal

@id String

Obligatoire.

Identifiant unique de l'offre.

Exemple : FREEDELIVERY

dealCode String

Obligatoire.

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

Exemple : ADETRE23

applicableServiceType List<ServiceType>

Service auquel cet accord s'applique. Par défaut, l'offre s'applique à tous.

eligibleMaxOrders Entier

Cette offre n'est éligible que si l'utilisateur a passé moins de commandes réussies ou égal à ce nombre.

availabilityId List<String>

Valeurs @id des entités "Disponibilité" qui fournissent des informations sur la période de disponibilité de la section de menu.

Exemple : [ "availability_1" ]

isDisabled Valeur booléenne

Cette valeur remplace les autres vérifications de validité.

dealType DealType

Obligatoire.

Catégorie de l'offre à laquelle appliquer la remise. La catégorie peut être le montant total du panier, les frais de service ou les 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 transactions, exprimé en unité monétaire, pour lequel cette promotion est valide.

termsOfServiceUrl URL

Obligatoire.

Documentation des conditions d'utilisation lisible par l'utilisateur.

dateModified Code temporel ISO

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

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

Vous devez spécifier 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 en pourcentage du prix d'origine.

L'exemple suivant montre 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éfinit les détails du service de commande de repas d'un restaurant. Service est une entité requise à implémenter.

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

Propriété Type Description
@type Const

Obligatoire.

Valeur : Service

@id String

Obligatoire.

Identifiant du service de traitement.

Exemple : service_1

serviceType ServiceType

Obligatoire.

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

Exemple : DELIVERY

restaurantId String

Obligatoire.

La valeur @id de l'entité Restaurant est corrélée à cette entité Service.

Exemple : restaurant_1

menuId String

Obligatoire.

La valeur @id de l'entité Menu est corrélée à cette entité Service.

Exemple : menu_1

dateModified Code temporel 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 pour les vacances).

Exemple : true

servingConfig ServingConfig

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

actionLinkUrl String

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

L'exemple suivant montre 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

Indique la région géographique dans laquelle les repas peuvent être livrés. Cette entité doit être implémentée si l'entité Service associée a serviceType défini sur "DELIVERY".

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

Propriété Type Description
@type Const

Obligatoire.

Valeur : ServiceArea

@id String

Obligatoire.

Identifiant unique de la zone de service.

Exemple : service_area_1

serviceId List<String>

Obligatoire.

La valeur @id de l'entité "Service" est corrélée à cette entité "ServiceArea".

Exemple : [ "service_1" ]

dateModified Code temporel ISO

Date et heure de la dernière modification du flux d'entités ServiceArea au format d'horodatage ISO, mais avec le 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, vous pouvez exclure un code postal d'une zone polygonale plus grande.

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

Polygone ou multipolygone exprimé sous la forme d'une série de trois points ou plus séparés par des espaces. Il est recommandé que les premiers et derniers 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 spécifier 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 coordonnée de latitude au centre de la zone CIRCLE.

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 CIRCLE.

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 montre 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 période de commande pendant laquelle les utilisateurs peuvent accéder au parcours et passer une commande immédiate ou future. L'implémentation de OperationHours est obligatoire et représente par défaut l'opération à toutes les heures de tous les jours.

Les attributs opens et closes de OperationHours spécifient les heures d'ouverture et de fermeture du système en ligne qui permet aux utilisateurs de passer des commandes. Pendant ces heures de fonctionnement 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 spécifiées dans l'heure locale du service. N'incluez pas de fuseau horaire dans une valeur opens. Si un fuseau horaire est spécifié, Google ignore ces informations. Pour en savoir plus, consultez Formats "Date/Heure" et "Heure".

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

Propriété Type Description
@type Const

Obligatoire.

Valeur : OperationHours

@id String

Obligatoire.

Identifiant unique de l'entité décrivant la période de commande pendant laquelle les utilisateurs peuvent accéder au parcours et passer des commandes immédiates ou futures.

Exemple : operation_hour_1

serviceId List<String>

Obligatoire.

La valeur @id de l'entité "Service" est corrélée à cette entité "OperationHours".

Exemple : [ "service_1" ]

opens Heure ISO (locale)

Indique l'heure spécifique de la journée au format ISO à partir de laquelle les utilisateurs peuvent passer des commandes.

Exemple : T00:00

closes Heure ISO (locale)

Indique l'heure spécifique de la journée au format ISO à partir de laquelle les utilisateurs ne peuvent plus passer de commande.

Exemple : T16:00

dayOfWeek List<DayOfWeek>

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

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Code temporel ISO

Obligatoire lorsque isSpecialHour = true.

Code temporel ISO indiquant l'heure de début de la période de commande pendant laquelle les utilisateurs peuvent accéder au parcours et passer des commandes immédiates ou futures.

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

validThrough Code temporel ISO

Obligatoire lorsque isSpecialHour = true.

Code temporel ISO indiquant l'heure de fin de la période de commande au-delà de laquelle les utilisateurs ne peuvent plus accéder au parcours et passer des commandes ASAP/future.

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

isSpecialHour Valeur booléenne

Valeur booléenne indiquant si les horaires d'ouverture correspondent à des horaires exceptionnels. Les valeurs acceptées sont "false" et "true".

Exemple : False

dateModified Code temporel ISO

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

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

L'exemple suivant montre 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 période de traitement au cours de laquelle les utilisateurs peuvent choisir des créneaux de traitement (ASAP ou créneaux futurs). L'implémentation de ServiceHours est obligatoire.

Les attributs opens et closes de OperationHours spécifient les heures d'ouverture et de fermeture du système en ligne qui permet aux utilisateurs de passer des commandes. Pendant ces heures de fonctionnement 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 spécifiées dans l'heure locale du service. N'incluez pas de fuseau horaire dans une valeur opens. Si un fuseau horaire est spécifié, Google ignore ces informations. Pour en savoir plus, consultez Formats "Date/Heure" et "Heure".

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

Propriété Type Description
@type Const

Obligatoire.

Valeur : ServiceHours

@id String

Obligatoire.

Identifiant unique de l'entité décrivant la période de traitement au cours de laquelle les utilisateurs peuvent choisir des créneaux de traitement (par exemple, dès que possible ou des créneaux futurs).

Exemple : service_hour_1

orderType OrderType

Obligatoire.

Chaîne indiquant si les heures de service s'appliquent aux commandes urgentes ou avancées. Les valeurs acceptées sont "ASAP" (Dès que possible) et "ADVANCE" (Avancer).

Exemple : ASAP

serviceId List<String>

Obligatoire.

La valeur @id de l'entité "Service" est corrélée à l'entité "ServiceHours".

Exemple : [ "service_1" ]

operationHoursId List<String>

Obligatoire lorsque isSpecialHour = false.

La valeur @id de l'entité "OperationHours" est corrélée à l'entité "ServiceHours".

Exemple : [ "operation_hour_1" ]

opens Heure ISO (locale)

Indique l'heure spécifique de la journée au format ISO à partir de laquelle les commandes des utilisateurs peuvent être traitées.

Exemple : T00:00

closes Heure ISO (locale)

Indique l'heure spécifique de la journée au format ISO à partir de laquelle les commandes des utilisateurs ne peuvent plus être traitées.

Exemple : T16:00

dayOfWeek List<DayOfWeek>

Liste des jours de la semaine pour lesquels ces horaires d'ouverture sont valides.

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Code temporel ISO

Obligatoire lorsque isSpecialHour = true.

Code temporel ISO indiquant l'heure de début de la période de commande pendant laquelle les utilisateurs peuvent accéder au parcours et passer des commandes immédiates ou futures.

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

validThrough Code temporel ISO

Obligatoire lorsque isSpecialHour = true.

Code temporel ISO indiquant l'heure de fin de la période de commande au-delà de laquelle les utilisateurs ne peuvent plus accéder au parcours et passer des commandes ASAP/future.

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

isSpecialHour Valeur booléenne

Valeur booléenne indiquant si les horaires d'ouverture correspondent à des horaires exceptionnels. Les valeurs acceptées sont "false" et "true".

Exemple : False

leadTimeMin Entier

Délai de livraison/ramassage estimé minimal, en minutes, une fois la commande "ASAP" passée. Nous vous recommandons vivement de définir cette propriété.

Exemple : 60

leadTimeMax Entier

Délai de livraison/retrait estimé maximal, en minutes, une fois la commande "ASAP" 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 commande à laquelle la commande anticipée peut être traitée. Par exemple, si une commande à l'avance nécessite au moins 60 minutes pour être traitée, la valeur de advanceBookingRequirementMin est 60.

Exemple : 15

advanceBookingRequirementMax Entier

Obligatoire lorsque orderType = "ADVANCE".

Nombre maximal de minutes à partir de l'heure de commande pendant lesquelles la commande anticipée peut être traitée. Par exemple, si une commande anticipée ne peut pas être traitée plus de deux jours plus tard, la valeur de advanceBookingRequirementMax est 2880.

Exemple : 10080

advanceBookingSlotInterval String

Obligatoire lorsque orderType = "ADVANCE".

Intervalle entre deux créneaux de réservation à l'avance successifs. Par exemple, si les heures d'ouverture et de fermeture sont 8h00 et 20h00, et que l'intervalle de réservation anticipée est de 15 minutes, l'utilisateur peut choisir des heures de traitement de 8h00, 8h15, 8h30, 8h45, etc. jusqu'à 20h00. La durée doit être spécifiée sous la forme d'une période ISO. Par exemple, "PT15M" signifie "intervalles de 15 minutes".

Exemple : PT15M

dateModified Code temporel ISO

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

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

L'exemple suivant montre 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 des frais. Si la valeur serviceType de l'entité Service associée est définie sur "DELIVERY", une Fee avec feeType défini sur "DELIVERY" est requise.

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

Propriété Type Description
@type Const

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é "Service" mise en corrélation avec cette 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" (LIVRAISON) et "SERVICE" (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 : limite la valeur des frais lorsque percentageOfCart ou pricePerMeter est utilisé.

Exemple : 2.0

maxPrice Number

"Frais max." limite la valeur des frais lorsque percentageOfCart ou pricePerMeter est utilisé.

Exemple : 10.0

eligibleRegion List<String>

@id de la zone de service pour la ou les régions géopolitiques pour lesquelles les frais sont valables. N'utilisez cette propriété que si les frais de livraison varient selon la région.

Exemple : [ "service_area_1" ]

eligibleTransactionVolumeMin Number

Volume de transactions minimal, en unité monétaire, pour lequel cette spécification de frais est valide.

Exemple : 50

eligibleTransactionVolumeMax Number

Volume de transactions maximal, exprimé en unité monétaire, pour lequel cette spécification de frais est valide. Par exemple, les frais ne s'appliquent pas si vous dépassez un certain volume de commandes.

Exemple : 10

validFrom Code temporel ISO

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

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

validThrough Code temporel ISO

Code temporel ISO indiquant l'heure de fin à partir de laquelle les frais ne sont plus valides.

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

dateModified Code temporel ISO

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

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

priority Number

Valeur positive non nulle. Lorsqu'un panier contient plusieurs frais, le plus prioritaire prévaut sur les autres. Si ce champ est fourni, la priorité aura toujours la priorité sur une priorité calculée.

Exemple : 3

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

Montant des frais. Si le prix n'est pas fixe, vous pouvez fournir minPrice et maxPrice à la place de price.

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 par mètre pour la distance radiale par rapport à l'utilisateur. Par exemple, si la distance par rapport à l'utilisateur est de 5 km et que le tarif est de 0,001 $, les frais pour l'utilisateur seront de 5 $.

Exemple : 0.001

L'exemple suivant montre 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 du type Menu:

Propriété Type Description
@type Const

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é pour le menu. (par exemple, les informations nutritionnelles et les allergènes) ;

Exemple : Items may contain peanuts.

disclaimerUrl URL

URL pointant vers une page fournissant plus d'informations sur la clause de non-responsabilité.

dateModified Code temporel ISO

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

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

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

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

Entité facultative à implémenter. Décrit une section spécifique du menu.

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

Propriété Type Description
@type Const

Obligatoire.

Valeur : MenuSection

@id String

Obligatoire.

Identifiant unique de la section de menu.

Exemple : menu_section_1

menuId List<ReverseReference>

La valeur @id de l'entité "Menu" est associée à cette entité MenuSection.

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

menuSectionId List<String>

Liste des valeurs @id des entités MenuSection enfants qui correspondent à 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 List<ReverseReference>

Valeur @id de l'entité MenuSection parente 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 le MenuSection lorsqu'un utilisateur parcourt le menu.

Exemple : Foo

description String

Description de la section de 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 List<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 List<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 "Modules complémentaires".

Exemple : 5

eligibleQuantityMin Entier

Nombre minimal de modules complémentaires à sélectionner dans la section "Modules complémentaires".

Exemple : 1

defaultItemId List<String>

Liste d'ID référençant des 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 MenuItem n'est présélectionné.

Exemple : [ "item1", "item2" ]

availabilityId List<String>

Valeurs @id des entités "Disponibilité" qui fournissent des informations sur la période de 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. Valable uniquement pour les sections de menu des modules complémentaires.

Exemple : 3

dateModified Code temporel ISO

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

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

applicableServiceType List<ServiceType>

Service auquel cette MenuSection s'applique. Par défaut, on suppose qu'un MenuSection s'applique à tous.

offeredById List<String>

Valeurs @id des entités Restaurant pour lesquelles cet élément MenuSection est disponible. Par défaut, on suppose qu'un MenuSection est disponible dans tous les emplacements.

Exemple : [ "restaurant_id_1", "restaurant_id_55" ]

L'exemple suivant montre 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"
}

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 du type Availability:

Propriété Type Description
@type Const

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)

Code temporel ISO indiquant l'heure de début de la période de validité de la section de menu.

Exemple : T00:00

availabilityEnds Heure ISO (locale)

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

Exemple : T16:00

availableDay List<DayOfWeek>

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

Exemple : [ "MONDAY", "TUESDAY" ]

validFrom Code temporel ISO

Code temporel ISO indiquant l'heure de début de la période de validité de la section de menu.

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

validThrough Code temporel ISO

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

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

dateModified Code temporel ISO

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

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

L'exemple suivant montre 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 du type MenuItem:

Propriété Type Description
@type Const

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 le 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 List<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 de la section "Module complémentaire" qui correspondent à cette entité MenuItem.

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

Exemple : menu_addon_1

nutrition NutritionInformation

Les informations nutritionnelles du plat, en particulier les calories

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

allergen List<Allergen>

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

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

additive List<Additive>

Additifs de cet élément de menu.

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

suitableDiet List<RestrictedDiet>

Le plat respecte la restriction alimentaire décrite.

Exemple : [ "DIABETIC", "GLUTEN_FREE" ]

depositInfo DepositInfo

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

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

numberOfServings Entier

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

Exemple : 2

dateModified Code temporel ISO

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

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

L'exemple suivant montre 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 doit effectuer lorsqu'il sélectionne un plat/un menu. L'utilisateur doit sélectionner une option, sinon la commande est considérée comme non valide (par exemple, l'utilisateur doit choisir une taille de pizza : petite, moyenne ou grande).

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

Propriété Type Description
@type Const

Valeur : MenuItemOption

@id String

Obligatoire.

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

Exemple : menu_item_1_option

menuItemId ReverseReference

Obligatoire.

Valeur @id de l'entité MenuItem mise en correspondance avec 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 catégorisée en fonction de la taille, de l'option ou de la garniture de la pizza. Les valeurs acceptées sont "SIZE", "OPTION" et "PIZZA_SIDE". "SIZE": taille de MenuItemOption. Par exemple, "petite", "moyenne" ou "grande". "OPTION": toute variante autre que la taille (par exemple, un plat disponible en salade ou en sandwich). Si vous ne pouvez pas faire la distinction entre "SIZE" et "OPTION", utilisez "OPTION". "PIZZA_SIDE" : spécifique aux pizzas. Par exemple, cet MenuItemOption n'est valide que pour une pizza entière ou à la part (champignons sur le côté gauche, côté droit ou 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 l'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 de la section "Module complémentaire" qui correspondent à cette entité MenuItemOption.

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

Exemple : menuAddOnId

nutrition NutritionInformation

Informations nutritionnelles sur le plat, en particulier les calories

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

allergen List<Allergen>

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

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

additive List<Additive>

Additifs de cet élément de menu.

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

depositInfo DepositInfo

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

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 Code temporel ISO

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

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

L'exemple suivant montre 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 du type MenuItemOffer:

Propriété Type Description
@type Const

Obligatoire.

Valeur : MenuItemOffer

@id String

Obligatoire.

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

Exemple : menu_item_offer

sku String

Obligatoire.

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

Exemple : Menu_item_offer_sku

price Number

Obligatoire.

Prix de l'offre sur l'élément du menu.

Exemple : 2.5

priceCurrency String

Obligatoire.

Code de devise ISO 4217 à trois lettres.

Exemple : USD

availabilityId List<String>

Valeurs @id des entités "Disponibilité" qui indiquent quand l'offre de l'élément de menu est disponible.

Exemple : [ "menu_availability_1" ]

eligibleQuantityMin Number

Quantité minimale de commande pour laquelle MenuItemOffer est valide.

Exemple : 1

eligibleQuantityMax Number

Quantité maximale de commande pour laquelle MenuItemOffer est valide.

Exemple : 25

inventoryLevel Number

Niveau approximatif actuel de l'inventaire de l'article ou des articles correspondant à cette MenuItemOffer.

Exemple : 10

dateModified Code temporel ISO

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

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

applicableServiceType List<ServiceType>

Service auquel cette MenuItemOffer s'applique. Par défaut, on suppose qu'un MenuItemOffer s'applique à tous.

offeredById List<String>

Valeurs @id des entités Restaurant pour lesquelles cet élément MenuItemOffer est disponible. Par défaut, on suppose qu'un MenuItemOffer est disponible dans tous les emplacements.

Exemple : [ "restaurant_id_5", "restaurant_id_26" ]

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

Valeur @id de l'entité MenuItem mise en correspondance avec cette entité MenuItemOffer.

Exemple : menu_item_1

menuItemOptionId Groupe 2 String

Valeur @id de l'entité MenuItemOption mise en correspondance avec cette entité MenuItemOffer.

Exemple : menu_item_option_1

L'exemple suivant montre 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 du type ReverseReference:

Propriété Type Description
@id String

Obligatoire.

@id de l'entité parente.

displayOrder Entier

Obligatoire.

Ordre d'affichage de l'élément dans le parent.

NutritionInformation

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

Propriété Type Description
description String

Informations nutritionnelles au format de texte libre. (par 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 montre un élément NutritionInformation:

Exemple

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

Allergène

Le tableau suivant répertorie les propriétés du 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 de menu.

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

Exemple

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

Le modelage

Le tableau suivant répertorie les propriétés du 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 montre un élément Additive:

Exemple

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

DepositInfo

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

Propriété Type Description
depositCode DepositCode

Code de l'acompte.

depositValue Number

Valeur numérique de la caution de l'article, par exemple lors de son recyclage.

depositValueCurrency String

Devise de la valeur de l'acompte

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

Exemple

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

ServingConfig

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

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

Propriété Type Description
disableOrderInstructions Valeur booléenne

Masque la possibilité de spécifier des instructions de commande.

disableMenuItemSpecialInstructions Valeur booléenne

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

disableTipWidget Valeur booléenne

Masque le widget de pourboire sur la page "Passer commande" du parcours de commande.

disablePromoWidget Valeur booléenne

Masque le widget de promotion sur la page "Passer commande" du parcours de commande.

menuItemSpecialInstructionsMaxLength Number

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

orderInstructionsMaxLength Number

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

L'exemple suivant montre 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ènes 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 de l'offre à laquelle appliquer la remise. La catégorie peut être le montant total du panier ou les frais de livraison.

Le type DealType peut avoir les valeurs suivantes:

  • CART_OFF
  • DELIVERY_OFF

RestrictedDiet

Type de régime restrictif, 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