Entité de service

L'entité Service définit les services de commande de repas disponibles dans un restaurant, tels que la vente à emporter ou la livraison. Lorsque vous définissez une entité Service, utilisez le type Service. Chaque restaurant doit être associé à au moins une entité de service de type "Vente à emporter" ou "Type de livraison" et à deux entités de service au maximum : un type de plats à emporter et un type de livraison.

Schéma de la relation entre les entités de service
Figure 1:Entité de service indiquant sa relation avec ServiceArea, ServiceHours, OperationHours et Fee.

Une entité de service définit des propriétés telles que le type de service, les heures disponibles et la zone desservie. L'entité de service doit changer et s'actualiser à chaque importation d'un flux de données.

Exemple d'entité de service

L'exemple suivant définit une entité Service de base qui accepte les commandes quotidiennes.

{
  "@type":"Service",
  "@id":"takeout_1",
  "serviceType":"TAKEOUT",
  "menuId":"menu_1",
  "restaurantId":"restaraunt_1"
}
{
  "@type":"OperationHours",
  "@id":"takeout_1_op_hours",
  "serviceId":"takeout_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours_sun",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"16:00",
  "closes":"21:00",
  "dayOfWeek":["SUNDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"Service",
  "@id":"delivery_1",
  "serviceType":"DELIVERY",
  "menuId":"10824",
  "restaurantId":"10824"
}
{
  "@type":"OperationHours",
  "@id":"delivery_1_op_hours",
  "serviceId":"delivery_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"delivery_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"delivery_1",
  "operationHoursId":"delivery_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY",
  "SUNDAY"],
  "leadTimeMin":"50",
  "leadTimeMax":"50",
  "isSpecialHour":false
}
{
  "@type":"ServiceArea",
  "@id":"delivery_1_service_area",
  "serviceId":"delivery_1",
  "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"]
}
{
  "@type":"Fee",
  "@id":"delivery_1_fee",
  "serviceId":"delivery_1",
  "feeType":"DELIVERY",
  "priceCurrency":"USD",
  "eligibleRegion":"delivery_1_service_area",
  "eligibleTransactionVolumeMin":20,
  "percentageOfCart": 7
}

Dès que possible et horaires avancés

Les utilisateurs peuvent passer commande dès que possible sur la page ServiceHours dès que possible, ou dans le délai OperationHours prévu à cet effet. Pour définir des horaires de service à l'avance, créez une entité ServiceHours avec la propriété orderType définie sur ADVANCE. Pour en savoir plus et obtenir des exemples, consultez la section Heures de livraison et de retrait.

Désactiver temporairement une entité Service

Vous pouvez suspendre ou remplacer temporairement ServiceHours pendant une période déterminée à l'avance en indiquant des jours fériés et des horaires d'ouverture exceptionnels. Pour désactiver une entité Service pour une raison imprévue, envoyez une requête de mise à jour en temps réel en définissant la propriété isDisabled de l'entité Service sur true.

Pour en savoir plus et obtenir des exemples, consultez Supprimer et désactiver des entités.