L'entità Service
definisce i servizi di ordinazione di cibo disponibili in un
ristorante, ad esempio l'asporto o la consegna a domicilio. Quando definisci un'entità Service
, utilizza il tipo Service.
Ogni ristorante deve essere collegato ad almeno un'entità di servizio di tipo asporto o consegna
e a un massimo di due entità di servizio: un tipo di asporto e un tipo di consegna.
Un'entità Servizio definisce proprietà come il tipo di servizio, l'orario di apertura e l'area servita. L'entità del servizio dovrebbe cambiare e aggiornarsi a ogni caricamento del feed di dati.
Esempio di entità di servizio
L'esempio seguente definisce un'entità Service
di base che accetta ordini
ogni giorno.
{
"@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
}
Ore ASAP e Advance
Gli utenti possono effettuare ordini ASAP durante le ServiceHours ASAP del ristorante oppure possono effettuare ordini in anticipo durante le OperationHours del ristorante per farli evadere durante le ServiceHours in anticipo. Per definire gli orari di servizio in anticipo, crea un'entità ServiceHours con la proprietà orderType
impostata su ADVANCE
. Per ulteriori dettagli ed esempi, consulta la sezione Orari di consegna e ritiro.
Disattivare temporaneamente un'entità Service
Puoi sospendere temporaneamente o sovrascrivere ServiceHours per un periodo di tempo specifico noto in anticipo impostando festività e orari speciali. Per disattivare un'entità Servizio per un motivo imprevisto, invia una richiesta di aggiornamento in tempo reale con la proprietà isDisabled
dell'entità Servizio impostata su true
.
Per ulteriori dettagli ed esempi, consulta la sezione Eliminare e disattivare le entità.