Aperçu

Les partenaires Google peuvent fournir des données de menu structurées à Google via l'intégration des listes d'attente et des réservations. Ces données sont utilisées dans la section Menu de la fiche d'établissement Google d'un restaurant et dans d'autres points d'entrée sur les surfaces Google destinées aux consommateurs.

Les données de menu sont ingérées à l'aide des flux génériques. Avant de commencer :

  1. Assurez-vous d'avoir terminé la configuration de votre compte.
  2. Comprendre le processus d'importation de flux génériques
  3. Découvrez comment configurer votre compte pour importer des flux génériques.

Créer et importer des flux de menus

Lorsque vous créez et importez des flux de menus, suivez ces consignes et conventions :
  • Pour fournir des informations sur un restaurant, suivez les spécifications de données décrites dans le flux des marchands. Pour obtenir un exemple de fichier JSON, consultez l'exemple de fichier JSON. Les noms de fichiers de données doivent être uniques entre les importations. Il est recommandé d'inclure un code temporel dans le nom du fichier, par exemple menu1_1633621547.json.
  • Dans le descripteur de l'ensemble de fichiers pour le flux de menu, définissez le champ name sur google.food_menu. Pour voir un exemple du contenu du fichier descripteur, consultez l'exemple JSON du fichier descripteur. Les noms des fichiers descripteurs doivent être uniques entre les importations. Nous vous recommandons d'inclure un code temporel dans le nom du fichier, par exemple descriptor_1633621547.filesetdesc.json. Le fichier descripteur doit être importé sur le serveur SFTP générique en tant qu'élément du flux de menu.
  • Les flux doivent être importés sur le serveur SFTP générique tous les jours en tant qu'actualisations complètes.
  • Limitez les flux à 1 000 partitions (fichiers), comme indiqué dans Utiliser le SFTP de flux générique.

L'état de l'ingestion des flux est indiqué dans la section Ingestion > Historique du portail des partenaires. Vous trouverez les informations sur le serveur SFTP des flux dans la section Configuration > Flux du portail des partenaires.

Sélectionner le serveur SFTP du flux

Figure 1 : Informations génériques sur le serveur SFTP

L'état de l'ingestion des flux est indiqué dans la section Ingestion > Historique du portail des partenaires. Vous trouverez les informations sur le serveur SFTP des flux dans la section Configuration > Flux du portail des partenaires.

Utiliser les options des éléments de menu

Les options des éléments de menu peuvent être spécifiées à l'aide du proto MenuItemOption.

Les partenaires qui proposent plusieurs ensembles d'options obligatoires pour un même élément de menu (par exemple, un latte avec des options de taille et de lait) doivent choisir la meilleure façon d'afficher ces options sur Google. Google recommande les pratiques suivantes :

  • Le flux de menus doit correspondre au site de commande du partenaire (ou au menu du restaurant si vous n'avez pas de site de commande pour l'établissement). Si l'article est affiché avec un prix individuel sur le site de commande, vous devez utiliser MenuItem. Si l'article est affiché avec un prix de base et plusieurs options, un MenuItemOption doit être utilisé.
  • Évitez d'inclure une longue liste d'options, par exemple :
    • Burrito au poulet
    • Burrito au poulet et au fromage
    • Burrito au poulet avec sauce
    • Burrito au poulet avec sauce et fromage
    • Burrito au poulet avec guacamole
    • Burrito au poulet avec guacamole et salsa
  • Les options de menu ne sont acceptées que si le plat nécessite la sélection d'une des options. Par exemple, lorsque vous commandez une pizza, la taille est une option obligatoire. Les options d'éléments de menu qui concernent les modules complémentaires (par exemple, "option pour ajouter de l'avocat") ne sont pas acceptées et ne doivent pas être incluses dans les flux.

Le prix de l'option d'un élément de menu doit correspondre au prix total de l'élément avec cette option sélectionnée. Le prix doit être défini pour l'élément de menu ou pour ses options, mais pas pour les deux.

Restaurants avec plusieurs menus

Un seul menu peut être associé à un restaurant (entité). Pour un restaurant qui propose plusieurs menus (par exemple, un menu du midi et un menu du soir distincts), vous pouvez combiner tous les menus en un seul à l'aide de MenuSections (par exemple, un menu avec une section pour le déjeuner et une section pour le dîner). Le menu obtenu aurait la structure suivante :

  • Menu
    • Section "Déjeuner"
      • Soupes
        • Soupe 1
        • Soupe 2
      • Sandwichs
        • Sandwich 1
        • Sandwich 2
    • Section Dîner
      • Titulaires
        • Starter 1
        • Starter 2
      • Plats
        • Plat principal 1
        • Plat principal 2

Partager des menus entre restaurants

Un même menu peut être partagé entre plusieurs restaurants en incluant tous les restaurants dans la liste merchant_ids du menu. Notez que cette liste accepte les ID d'entité pour les partenaires utilisant le flux Entity.

Bonnes pratiques

Voici les bonnes pratiques à suivre lorsque vous développez des flux de menus.

  • N'associez qu'un seul menu à un restaurant.
  • Le nombre maximal d'objets MenuItem uniques autorisés est de 3 000 au total (toutes sections et sous-sections imbriquées confondues).
  • Vous pouvez inclure jusqu'à 100 000 entités uniques par type d'entité (MenuSection, MenuItem, MenuItemOption) dans un même Menu.
  • La taille de l'Menu entièrement assemblé (avec toutes ses sections, tous ses éléments et toutes ses options combinés après déduplication) ne doit pas dépasser 3, 8 Mo.
  • Tous les champs d'ID (menu_id, merchant_ids, menu_section_ids, menu_item_ids, menu_item_option_ids, addon_menu_section_ids) doivent comporter 580 caractères ou moins.
  • Indiquez la langue de votre choix comme première langue dans le TextField. Si vous envoyez plusieurs objets LocalizedText, le premier objet de la liste de texte est affiché aux utilisateurs.
  • Tous les éléments de menu doivent être ajoutés aux sections de menu. N'ajoutez pas d'éléments de menu directement à l'objet de menu.
  • Fournissez du contenu en utilisant l'encodage UTF-8. Il n'est pas nécessaire d'échapper les caractères non ASCII.
  • Si vous lancez votre application dans plusieurs régions, assurez-vous d'utiliser les codes de devise et les dénominations appropriés dans les champs "unités" et "nanos". Soyez particulièrement vigilant avec le champ "nanos", qui correspond à 10^-9 unité. Utilisez le visualiseur de menu dans le visualiseur d'inventaire pour vérifier que vous avez correctement défini les prix.
  • Pour offrir une expérience utilisateur utile et attrayante, il est essentiel de proposer aux utilisateurs des menus complets, récents et visuellement riches. Les prix, les descriptions, les photos et les informations sur les régimes alimentaires sont des éléments clés pour la prise de décision. Nous encourageons les partenaires à fournir autant de données que possible pour offrir une expérience optimale aux utilisateurs et aux marchands.
  • Pour ne pas afficher de prix, incluez un proto Price vide dans le proto Offer.

Une fois les flux de menus lancés, les données de votre flux de menus pourront s'afficher dans les expériences de découverte et dans l'onglet "Menu" de la fiche de restaurant. L'onglet "Menu" est disponible dans la recherche Google (sur mobile et ordinateur). Il sera bientôt disponible sur d'autres surfaces, y compris Google Maps. L'expérience affichée peut varier selon la surface.

Exemple de menu affichant des éléments avec des descriptions

Figure 3 : Exemple d'affichage du contenu du flux de menu dans une fiche d'établissement sur mobile

Pour vous assurer que votre menu est correctement structuré, utilisez le visualiseur de menu dans le visualiseur d'inventaire pour prévisualiser vos menus.

Les menus de restaurants peuvent provenir de nombreuses sources, y compris des restaurants eux-mêmes via leur fiche d'établissement Google, des partenaires de commande de plats et de réservation, des photos de menus prises par les utilisateurs, etc. Si plusieurs sources fournissent des menus pour le même restaurant, le marchand peut choisir un fournisseur préféré dans l'éditeur de menu de la fiche d'établissement Google.

Schéma

Pour consulter le schéma complet du menu, cliquez ici.

FoodMenuFeed

Nom du champTypeExigenceDescription
dataTableau d'objets
(MenuComponent)

Nom du champTypeExigenceDescription
oneOf
(type)

Un seul des champs de ce oneOf peut être défini.

Catalogue de premier niveau des produits alimentaires proposés par un établissement de restauration. Menu contient une liste d'ID de marchands et le menu qui s'applique à ces marchands. Un menu peut être utilisé pour représenter un seul marchand avec le menu, ou plusieurs marchands (généralement des chaînes de restaurants) avec les menus.

Nom du champTypeExigenceDescription
menu_idchaîne

Obligatoire

Chaîne opaque fournie par un partenaire qui identifie de manière unique le menu dans le flux du partenaire. Obligatoire.
merchant_idstableau de chaînes

Obligatoire

Marchands auxquels le menu s'applique. Remarque : Ce champ est répété pour que les chaînes de restaurants puissent partager le même menu dans plusieurs établissements, chacun étant un marchand distinct. Obligatoire.
display_nameobject
(TextField)

Nom permettant d'identifier le menu lorsqu'un utilisateur le parcourt. Facultatif.
languagechaîne

Code de langue par défaut associé aux libellés textuels contenus dans le menu. Code de langue BCP-47 attendu, tel que "en-US" ou "sr-Latn". Pour en savoir plus, consultez http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Facultatif.

TextField

Charge utile de texte contenant une ou plusieurs valeurs localisées.

Nom du champTypeExigenceDescription
textTableau d'objets
(LocalizedText)

Obligatoire

Valeurs textuelles par paramètre régional. Si vous ne souhaitez prendre en charge qu'un seul paramètre régional, il n'est pas nécessaire de définir le language_code dans chaque texte. La langue sera déduite de la langue par défaut du menu. S'il existe plusieurs textes dans différentes langues, le code de langue doit être défini pour chaque texte. Le premier texte de la liste est considéré comme la représentation préférée. Obligatoire.

LocalizedText

Variante localisée d'un texte dans une langue spécifique.

Nom du champTypeExigenceDescription
textchaîne

Chaîne localisée dans la langue correspondant à [language_code][google.type.LocalizedText.language_code] ci-dessous.
language_codechaîne

Code de langue BCP-47 du texte ("en-US" ou "sr-Latn", par exemple). Pour en savoir plus, consultez http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.

Une section de menu est un regroupement d'éléments dans un menu. Des MenuSections distinctes sont généralement créées pour chaque regroupement logique d'éléments d'un menu. Par exemple, les types de plats (entrée, plat principal, dessert) et les catégories d'aliments (burgers, boissons) sont des sections typiques.

Nom du champTypeExigenceDescription
menu_section_idchaîne

Obligatoire

Chaîne opaque d'un partenaire qui identifie de manière unique la MenuSection dans le flux du partenaire. Obligatoire.
display_nameobject
(TextField)

Obligatoire

Nom permettant d'identifier la section du menu lorsqu'un utilisateur parcourt le menu. Obligatoire.
descriptionobject
(TextField)

Description de la section du menu. Facultatif.
imagesTableau d'objets
(Image)

Image(s) de la section du menu. Facultatif.

Image

Représente une image associée à une entité de menu.

Nom du champTypeExigenceDescription
urichaîne

Obligatoire

URL contenant les pixels bruts de l'image. Obligatoire.

Représente un seul plat ou une seule boisson proposés par un établissement alimentaire.

Nom du champTypeExigenceDescription
menu_item_idchaîne

Obligatoire

Chaîne opaque d'un partenaire qui identifie de manière unique le MenuItem dans le flux du partenaire. Obligatoire.
display_nameobject
(TextField)

Obligatoire

Nom permettant d'identifier le MenuItem lorsqu'un utilisateur parcourt le menu. Obligatoire.
descriptionobject
(TextField)

Description de l'élément de menu. Facultatif.
imagesTableau d'objets
(Image)

Image(s) de l'élément de menu. Facultatif.
oneOf
(pricing)

Obligatoire

Un seul des champs de ce oneOf peut être défini.
item_attributesobject
(MenuItemAttributes)

Attributs de cet élément de menu. Facultatif.

OfferSet

Conteneur pour une liste d'offres disponibles sur un élément / une option de menu. Une seule offre doit être applicable/valide à un moment donné. Par exemple, une boisson peut faire l'objet de deux offres : l'une le matin et l'autre le soir pendant les happy hours.

Nom du champTypeExigenceDescription
offersTableau d'objets
(Offer)

Obligatoire

Liste des offres possibles. Obligatoire.

Offre

Représente les informations sur les prix et la disponibilité des MenuItems et MenuItemOptions.

Nom du champTypeExigenceDescription
priceobject
(Money)

Les cas suivants ne sont pas valides et entraîneront la suppression de l'élément de menu : Prix sans code de devise, mais avec une unité ou des nanos, ou les deux : price {units: 100, nanos: 1000000} price {units: 100} price {nanos: 1000000} Prix avec un code de devise non valide, mais avec une unité ou des nanos, ou les deux : price {currency_code: 'gXYZ', units: 100, nanos: 1000000} price {currency_code: 'gXYZ', units: 100} price {currency_code: 'gXYZ', nanos: 1000000} Prix avec un code de devise, mais avec des unités ou des nanos non valides : price {currency_code: 'USD', units: 100, nanos: -100} price {currency_code: 'USD', units: -100, nanos: 100}

Valeur monétaire

Représente un montant associé à un type de devise.

Nom du champTypeExigenceDescription
currency_codechaîne

Code de devise à trois lettres défini dans la norme ISO 4217.
unitsnombre

Unités entières du montant. Par exemple, si currencyCode est défini sur "USD", une unité correspond à un dollar américain.
nanosnombre

Nombre de nano-unités (10^-9) du montant. La valeur doit être comprise entre -999 999 999 et +999 999 999 inclus. Si units est positif, nanos doit être positif ou nul. Si units est égal à zéro, nanos peut être positif, nul ou négatif. Si units est négatif, nanos doit être négatif ou nul. Par exemple, -1,75 $ est représenté par units=-1 et nanos=-750 000 000.

Conteneur qui spécifie une liste d'options disponibles pour un élément.

Nom du champTypeExigenceDescription
menu_item_option_idstableau de chaînes

Obligatoire

ID des options de menu applicables à cet élément de menu. Obligatoire.

Décrit les attributs d'une option ou d'un élément de menu spécifique.

Nom du champTypeExigenceDescription
number_of_servingsnombre

Nombre de portions disponibles dans un élément de menu donné. Facultatif.
nutrition_informationobject
(NutritionInformation)

Décrit toutes les informations nutritionnelles de l'article, par exemple les calories et la teneur en matières grasses. Facultatif.
suitable_dietstableau d'énumérations
(DietaryRestriction)

Restrictions alimentaires auxquelles cet élément de menu est soumis. Facultatif.
additiveTableau d'objets
(Additive)

Additifs de cet élément de menu. Facultatif.
allergenTableau d'objets
(Allergen)

Allergènes de cet élément de menu. Facultatif.
packaging_deposit_infoobject
(DepositInfo)

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

NutritionInformation

Décrit toutes les mesures nutritionnelles d'un MenuItem ou d'un complément.

Nom du champTypeExigenceDescription
energyobject
(NutritionValue)

Quantité d'énergie nutritionnelle de la portion d'aliment. Peut être défini en calories ou en kilojoules. Facultatif.
sodium_contentobject
(NutritionValue)

La quantité de sodium, mesurée en grammes ou en milligrammes. Facultatif.
serving_sizenombre

Nombre de portions auxquelles s'applique la valeur nutritionnelle. Facultatif.
descriptionobject
(TextField)

Informations nutritionnelles en texte libre. Par exemple, "Contient des conservateurs". Facultatif.

NutritionValue

Décrit une seule mesure nutritionnelle de la portion d'aliment.

Nom du champTypeExigenceDescription
oneOf
(value)

Un seul des champs de ce oneOf peut être défini.
unitenum
(NutritionValueUnit)

Obligatoire

Unité associée au montant, telle que spécifiée par le partenaire. Nous validerons le flux afin que l'unité de chaque type de valeur nutritionnelle soit celle attendue pour ce type de valeur. Par exemple, seules les valeurs ENERGY_CALORIES et ENERGY_KILOJOULES sont attendues pour la propriété énergétique de NutritionalInformation. Obligatoire.

Plage

Décrit une plage fermée pour la valeur nutritionnelle. Par exemple : "100-150 cal"

Nom du champTypeExigenceDescription
minnombre

Obligatoire

Quantité minimale de valeur nutritionnelle. Obligatoire.
maxnombre

Obligatoire

Quantité maximale de valeur nutritionnelle. Obligatoire.

Modification additive

Complément affiché pour l'utilisateur dans MenuItem. Un additif permet de préserver ou d'améliorer la qualité des aliments.

Nom du champTypeExigenceDescription
nameobject
(TextField)

Obligatoire

Texte descriptif de l'additif, par exemple "conservateurs". Obligatoire.
containment_level_codeenum
(ContainmentLevelCode)

Indique si le MenuItem contient, peut contenir ou ne contient pas cet additif. La valeur par défaut est "contains" (contient). Facultatif.

Allergène

Allergène affiché à l'utilisateur dans MenuItem. Un allergène est lié aux qualités d'un aliment qui provoque des réactions allergiques.

Nom du champTypeExigenceDescription
allergen_type_codeenum
(AllergenTypeCode)

Obligatoire

Type d'allergène. Obligatoire.
containment_level_codeenum
(ContainmentLevelCode)

Indique si le MenuItem contient, peut contenir ou ne contient pas cet allergène. La valeur par défaut est "contains" (contient). Facultatif.

DepositInfo

Informations sur la consigne fournies par le partenaire pour indiquer à l'utilisateur comment consigner un aliment ou une bouteille, et la valeur de cette consigne.

Nom du champTypeExigenceDescription
deposit_codeenum
(DepositCode)

Stratégie de dépôt à utiliser (par exemple, "réutilisable"). Facultatif.
deposit_valueobject
(Money)

Valeur remboursée pour le dépôt correct de l'article. Facultatif.

Décrit les choix qu'un utilisateur doit faire lorsqu'il sélectionne un plat ou 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 petite, moyenne ou grande pizza).

Nom du champTypeExigenceDescription
menu_item_option_idchaîne

Obligatoire

Chaîne opaque d'un partenaire qui identifie de manière unique l'option MenuItemOption dans le flux de partenaires. Obligatoire.
valueobject
(MenuItemOptionProperty)

Obligatoire

Propriété et valeur de l'option (par exemple, "Taille : petite"). Obligatoire.

Décrit la propriété d'une option de menu et sa valeur.

Nom du champTypeExigenceDescription
property_typeenum
(PropertyType)

Obligatoire

Type de cette propriété d'option. Obligatoire.
oneOf
(value)

Obligatoire

Un seul des champs de ce oneOf peut être défini.

NutritionValueUnit

NomDescription
NUTRITION_VALUE_UNIT_UNSPECIFIEDNe pas utiliser. L'unité de valeur nutritionnelle n'est pas définie explicitement.
ENERGY_CALORIESUnités utilisées pour exprimer la quantité d'énergie dans un élément de menu.
ENERGY_KILOJOULES
WEIGHT_MILLIGRAMSUnités utilisées pour exprimer la quantité d'une substance présente dans l'élément de menu.
WEIGHT_GRAMS

DietaryRestriction

Indique une restriction ou une directive alimentaire respectée lors de la préparation des aliments.

NomDescription
DIET_UNSPECIFIEDNe pas utiliser. La restriction alimentaire n'est pas explicitement spécifiée.
DIET_DIABETIC
DIET_GLUTEN_FREE
DIET_HALAL
DIET_HINDU
DIET_KOSHER
DIET_LOW_CALORIE
DIET_LOW_FAT
DIET_LOW_LACTOSE
DIET_LOW_SALT
DIET_VEGAN
DIET_VEGETARIAN

ContainmentLevelCode

Indique le niveau de présence d'un certain attribut dans un produit alimentaire, comme les allergènes ou les additifs.

NomDescription
CONTAINMENT_LEVEL_CODE_UNSPECIFIEDNe pas utiliser. Le code de niveau de confinement n'est pas explicitement spécifié.
CONTAINMENT_LEVEL_CODE_CONTAINS
CONTAINMENT_LEVEL_CODE_DOES_NOT_CONTAIN
CONTAINMENT_LEVEL_CODE_MAY_CONTAIN

AllergenTypeCode

Type d'allergène dérivé de GS1 : http://gs1.org/voc/AllergenTypeCode

NomDescription
ALLERGEN_TYPE_CODE_UNSPECIFIEDNe pas utiliser. Le code de type d'allergène n'est pas explicitement spécifié.
ALLERGEN_TYPE_CODE_ALMONDS
ALLERGEN_TYPE_CODE_ALPHA_ISOMETHYL_IONONE
ALLERGEN_TYPE_CODE_ALCOHOL
ALLERGEN_TYPE_CODE_AMYL_CINNAMAL
ALLERGEN_TYPE_CODE_ANISE_ALCOHOL
ALLERGEN_TYPE_CODE_BARLEY
ALLERGEN_TYPE_CODE_BENZYL_ALCOHOL
ALLERGEN_TYPE_CODE_BENZYL_BENZOATE
ALLERGEN_TYPE_CODE_BENZYL_CINNAMATE
ALLERGEN_TYPE_CODE_BENZYL_SALICYLATE
ALLERGEN_TYPE_CODE_BRAZIL_NUTS
ALLERGEN_TYPE_CODE_BUTYLPHENYL_METHYLPROPIONATE
ALLERGEN_TYPE_CODE_CARROTS
ALLERGEN_TYPE_CODE_CASHEW_NUTS
ALLERGEN_TYPE_CODE_CELERY
ALLERGEN_TYPE_CODE_CEREALS_CONTAINING_GLUTEN
ALLERGEN_TYPE_CODE_CINNAMAL
ALLERGEN_TYPE_CODE_CINNAMYL_ALCOHOL
ALLERGEN_TYPE_CODE_CITRAL
ALLERGEN_TYPE_CODE_CITRONELLOL
ALLERGEN_TYPE_CODE_COCOA
ALLERGEN_TYPE_CODE_CORIANDER
ALLERGEN_TYPE_CODE_CORN
ALLERGEN_TYPE_CODE_COUMARIN
ALLERGEN_TYPE_CODE_CRUSTACEANS
ALLERGEN_TYPE_CODE_EGGS
ALLERGEN_TYPE_CODE_EUGENOL
ALLERGEN_TYPE_CODE_EVERNIA_FURFURACEA
ALLERGEN_TYPE_CODE_EVERNIA_PRUNASTRI
ALLERGEN_TYPE_CODE_FARNESOL
ALLERGEN_TYPE_CODE_FISH
ALLERGEN_TYPE_CODE_GERANIOL
ALLERGEN_TYPE_CODE_GLUTEN
ALLERGEN_TYPE_CODE_HAZELNUTS
ALLERGEN_TYPE_CODE_HEXYL_CINNAMAL
ALLERGEN_TYPE_CODE_HYDROXYCITRONELLAL
ALLERGEN_TYPE_CODE_HYDROXYISOHEXYL_3_CYCLOHEXENE_CARBOXALDEHYDE_ISOEUGENOL_LIMONENE_LINAL
ALLERGEN_TYPE_CODE_KAMUT
ALLERGEN_TYPE_CODE_LACTOSE
ALLERGEN_TYPE_CODE_LUPINE
ALLERGEN_TYPE_CODE_MACADAMIA_NUTS
ALLERGEN_TYPE_CODE_METHYL_2_OCTYNOATE
ALLERGEN_TYPE_CODE_MILK
ALLERGEN_TYPE_CODE_MOLLUSCS
ALLERGEN_TYPE_CODE_MUSTARD
ALLERGEN_TYPE_CODE_NO_DECLARED_ALLERGENS
ALLERGEN_TYPE_CODE_OAT
ALLERGEN_TYPE_CODE_PEANUTS
ALLERGEN_TYPE_CODE_PEAS
ALLERGEN_TYPE_CODE_PECAN_NUTS
ALLERGEN_TYPE_CODE_PISTACHIOS
ALLERGEN_TYPE_CODE_POD_FRUITS
ALLERGEN_TYPE_CODE_QUEENSLAND_NUTS
ALLERGEN_TYPE_CODE_RYE
ALLERGEN_TYPE_CODE_SESAME_SEEDS
ALLERGEN_TYPE_CODE_SOYBEANS
ALLERGEN_TYPE_CODE_SPELT
ALLERGEN_TYPE_CODE_SULPHUR_DIOXIDE
ALLERGEN_TYPE_CODE_TREE_NUTS
ALLERGEN_TYPE_CODE_TREE_NUT_TRACES
ALLERGEN_TYPE_CODE_WALNUTS
ALLERGEN_TYPE_CODE_WHEAT

DepositCode

Indique comment déposer correctement un aliment ou une bouteille.

NomDescription
DEPOSIT_CODE_UNSPECIFIEDNe pas utiliser. Le code de dépôt n'est pas spécifié explicitement.
DEPOSIT_CODE_REUSABLE
DEPOSIT_CODE_RECYCLABLE

PropertyType

Types de propriétés auxquels l'option s'applique.

NomDescription
UNKNOWN_PROPERTY_TYPENe pas utiliser. Le type de propriété n'est pas explicitement spécifié.
OPTIONPropriété générique d'option d'élément de menu, qui ne fait pas partie des types plus spécifiques ci-dessous. Utilisez cette option si la propriété n'est pas de type SIZE ou PIZZA_SIDE.
SIZEIndique la propriété de taille de l'option du menu (par exemple, petite, moyenne ou grande).
PIZZA_SIDEPropriété spécifique aux pizzas. Par exemple, cette MenuItemOption n'est valable que pour une partie ou l'intégralité d'une pizza (par exemple, des champignons sur le côté gauche, le côté droit ou l'intégralité de la pizza).

PropertyValue

Valeurs bien définies pour la propriété de l'option.

NomDescription
UNKNOWN_PROPERTY_VALUENe pas utiliser. La valeur de la propriété n'est pas spécifiée de manière explicite.
PIZZA_SIDE_LEFTMenuItemOption ne s'applique qu'au côté gauche d'une pizza.
PIZZA_SIDE_RIGHTMenuItemOption ne s'applique qu'au côté droit d'une pizza.
PIZZA_SIDE_WHOLEL'option MenuItemOption s'applique à la pizza entière.

type

Nom du champTypeExigenceDescription
menuobject
(Menu)

Exclusif avec section, item, option

sectionobject
(MenuSection)

Exclusif avec menu, item, option

itemobject
(MenuItem)

Exclusif avec menu, section, option

optionobject
(MenuItemOption)

Exclusif avec menu, section, item

tarifs

L'élément de menu doit avoir un prix ou un ensemble d'options. Obligatoire.

Nom du champTypeExigenceDescription
offer_setobject
(OfferSet)

Exclusivité mutuelle avec menu_item_option_set

Offres disponibles pour acheter cet aliment.
menu_item_option_setobject
(MenuItemOptionSet)

Exclusivité mutuelle avec offer_set

Options disponibles pour cet élément de menu.

valeur

Obligatoire.

Nom du champTypeExigenceDescription
amountnombre

Exclusivité mutuelle avec range

Nombre unique représentant la valeur nutritionnelle.
rangeobject
(Range)

Exclusivité mutuelle avec amount

Plage représentant la quantité de valeur nutritionnelle.

valeur

Obligatoire.

Nom du champTypeExigenceDescription
property_valenum
(PropertyValue)

Exclusivité mutuelle avec text_val

Valeur bien définie pour la propriété de l'option. Actuellement, cette propriété n'est attendue que si property_type est défini sur PIZZA_SIDE.
text_valobject
(TextField)

Exclusivité mutuelle avec property_val

Texte libre pour la valeur de la propriété. Attendu pour les types de propriété OPTION et SIZE.