A entidade Service
define os serviços de pedidos de comida disponíveis em um
para um restaurante, como retirada ou entrega. Ao definir uma entidade Service
, use
o tipo de Serviço.
Cada restaurante precisa estar conectado a pelo menos uma entidade de serviço do tipo "retirada" ou "entrega".
e no máximo duas entidades de serviço; um tipo de entrega e um para viagem.
Uma entidade de serviço define propriedades como tipo de serviço, horários disponíveis, e a área atendida. A entidade de serviço deve ser alterada e atualizada a cada upload do feed de dados.
Exemplo de entidade de serviço
O exemplo a seguir define uma entidade Service
básica que aceita pedidos
todos os dias.
{
"@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
}
Assim que possível e horário avançado
Os usuários podem fazer pedidos "Assim que possível" durante o ServiceHours "Assim que possível" do restaurante ou com antecedência, dentro do OperationHours do restaurante, para que sejam atendidos durante o ServiceHours com antecedência. Para definir horários de atendimento com antecedência, crie uma entidade ServiceHours com a propriedade orderType
definida como ADVANCE
. Consulte Horários de entrega e retirada para mais detalhes e exemplos.
Desativar temporariamente uma entidade Service
É possível suspender ou substituir temporariamente o ServiceHours por um período específico conhecido com antecedência. Basta definir o horário de funcionamento especial e em feriados. Para desativar uma entidade de Serviço por um motivo imprevisto, envie uma solicitação de atualização em tempo real com a propriedade isDisabled
da entidade de Serviço definida como true
.
Consulte Como excluir e desativar entidades para mais detalhes e exemplos.