Requisitos generales
Las entidades deben estar estructuradas para que se muestren en una línea por entidad en los feeds (las entidades se separan por caracteres de línea nueva). Para facilitar la lectura, los ejemplos de JSON en esta página no siguen esa estructura. Sin embargo, debes seguir esa estructura cuando envíes tus feeds. Por ejemplo, una entidad de menú debe tener la siguiente estructura de código:
{"@type": "Menu","name": "Coffee Shop A","@id": "1535"}
Cada entidad "Restaurante" puede tener dos entidades de Servicio (una para los tipos de servicio "ENTREGA" y "TakeOUT"). Cada entidad "Service" solo puede tener una entidad "Menu".
Cualquier subentidad se puede volver a usar en varios restaurantes.
Lineamientos para los valores JSON
Coerción de tipos
El tipo de un valor JSON puede ser diferente del tipo definido en el esquema, siempre que el valor se pueda forzar al tipo requerido. Por ejemplo, las propiedades de la cadena pueden aceptar valores de cadena y de números enteros como entrada. Del mismo modo, las propiedades de número entero pueden aceptar un valor de cadena, siempre que la cadena se pueda analizar en un número entero válido.
La coerción de tipos también funciona para las propiedades repetidas. Las propiedades repetidas pueden aceptar valores como entrada sin encerrarse entre corchetes []
. Por ejemplo, la propiedad OperationHours.serviceId
acepta "service_id"
y ["service_id"]
como entradas válidas.
Valores de DateTime y hora
DateTime
se basa en el tipo de schema.org y, a menos que se indique lo contrario, debe seguir el formato ISO 8601 y también incluir la fecha, la hora y la zona horaria. Usa la siguiente sintaxis para DateTime
:
// DateTime format: YYYY-MM-DDTHH:MM:SS[∓HH:MM|Z]
Por ejemplo:
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
es la hora local de la zona horaria de un restaurante o una ubicación de servicio determinada, también se basa en el tipo de schema.org y debe seguir el formato ISO 8601. El tiempo usa la siguiente sintaxis:
// Time format: THH:MM:SS
Por ejemplo:
T08:08:00 // 8:08 AM
Ten en cuenta lo siguiente cada vez que especifiques un DateTime
o Time
:
- El prefijo "T" antes de la hora es parte del formato y es obligatorio.
- Se debe especificar la zona horaria para
DATETIME
. No es obligatorio paraTIME
. - La hora se debe especificar en la hora local del restaurante o servicio.
Datos del restaurante
Restaurante (obligatorio)
Es una entidad obligatoria para implementar. Describe un restaurante.
En la siguiente tabla, se enumeran las propiedades del tipo Restaurant
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único del restaurante o proveedor de entrega. Ejemplo: |
|
name |
String | Obligatorio. Es el nombre del restaurante. Ejemplo: |
|
description |
String |
Es una descripción del restaurante. Ejemplo: |
|
url |
URL |
Es la URL que representa el restaurante. Se prefiere el dominio del restaurante al del agregador. Ejemplo: |
|
sameAs |
URL |
El sitio web oficial del restaurante. Ejemplo: |
|
telephone |
String |
Es el número de teléfono del restaurante. Ejemplo: |
|
streetAddress |
String | Obligatorio. Indica la dirección del restaurante. Ejemplo: |
|
addressLocality |
String | Obligatorio. Es la localidad o ciudad. Ejemplo: |
|
addressRegion |
String | Obligatorio. La región o el estado Ejemplo: |
|
postalCode |
String | Obligatorio. Corresponde al código postal, Ejemplo: |
|
addressCountry |
String | Obligatorio. Código de país ISO 3166-1 alpha-2 de dos letras. Ejemplo: |
|
latitude |
Número |
Es la latitud en grados. Los valores están restringidos al rango [[-90, 90]]. La precisión debe ser de al menos 5 decimales. Ejemplo: |
|
longitude |
Número |
Es la longitud en grados. Los valores están restringidos al rango [[-180, 180]]. La precisión debe ser de al menos 5 decimales. Ejemplo: |
|
dealId |
Lista<String> |
Los |
|
imprint |
String |
El sello editorial de un restaurante es una sección de información adicional sobre el restaurante, como el nombre legal, la dirección legal y el número de registro. Esta información se puede dar formato con " ". Ejemplo:
|
|
economicOperator |
String |
Información del operador económico asociada con el restaurante, si corresponde Esta información se mostrará en la sección Información del comerciante. El texto se puede dar formato con " ". Ejemplo:
|
|
dateModified |
Marca de tiempo ISO |
La fecha y hora de la última modificación del feed de entidad Restaurante, en formato de marca de tiempo ISO, pero con el tipo String. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento Restaurant
:
Ejemplo
{ "@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 }
Acuerdo
Son los tipos de descuentos que se pueden aplicar a un carrito.
En la siguiente tabla, se enumeran las propiedades del tipo Deal
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la oferta. Ejemplo: |
|
dealCode |
String | Obligatorio. Es el ID de acuerdo único por acuerdo y por socio. Este ID debe identificar de forma exclusiva la oferta en tu sistema de promociones. Google te envía este identificador en el campo Ejemplo: |
|
applicableServiceType |
Lista<ServiceType > |
Es el servicio al que se aplica esta oferta. La opción predeterminada supone que hay una oferta aplicable a todos. |
|
eligibleMaxOrders |
Número entero |
Esta oferta solo es apta cuando el usuario tiene menos o igual a esta cantidad de pedidos realizados con éxito. |
|
availabilityId |
Lista<String> |
Los valores de @id de las entidades de disponibilidad que proporcionan detalles sobre cuándo está disponible la sección del menú. Ejemplo: |
|
isDisabled |
Booleano |
Esto anula otras verificaciones de validez. |
|
dealType |
DealType |
Obligatorio. La categoría de la oferta a la que se aplicará el descuento. La categoría puede ser todo el total del carrito, cargos del servicio o cargos de envío. |
|
priceCurrency |
String | Obligatorio cuando Obligatorio cuando Es la moneda (en formato ISO 4217 de 3 letras) del descuento. Ejemplo: |
|
eligibleTransactionVolumeMin |
Número |
Es el volumen de transacciones, en una unidad monetaria, para el que es válida esta promoción. |
|
termsOfServiceUrl |
URL | Obligatorio. Documentación de las Condiciones del Servicio legible por humanos |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de la entidad de oferta en formato de marca de tiempo ISO, pero con el tipo Cadena. Ejemplo: |
|
Se requiere exactamente uno de los siguientes grupos de propiedades. | |||
discount |
Grupo 1 | Número |
Valor del descuento en forma de números. |
discountPercentage |
Grupo 2 | Número |
Es el valor del descuento como porcentaje del precio original. |
En el siguiente ejemplo, se muestra un elemento Deal
:
Ejemplo 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" }
Ejemplo 2
{ "@type": "Deal", "@id": "10PERCOFF", "dealCode": "10PERCOFF", "dealType": "CART_OFF", "availabilityId": [ "availability_weekdays_evening" ], "termsOfServiceUrl": "http://www.provider.com/deal", "discountPercentage": 10, "priceCurrency": "USD" }
Ejemplo 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" }
Datos de servicio
Servicio (obligatorio)
Describe los detalles del servicio de pedidos de comida de un restaurante. Service
es una entidad obligatoria para implementar.
En la siguiente tabla, se enumeran las propiedades del tipo Service
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es el identificador del servicio de entrega. Ejemplo: |
|
serviceType |
ServiceType |
Obligatorio. El tipo de servicio que se ofrece. Los valores posibles son "DELIVERY" o "TAKEOUT". Ejemplo: |
|
restaurantId |
String | Obligatorio. El valor de @id de la entidad Restaurant correlacionado con esta entidad Service Ejemplo: |
|
menuId |
String | Obligatorio. El valor @id de la entidad de menú correlacionado con esta entidad de servicio. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de la entidad de servicio en formato de marca de tiempo ISO. Ejemplo: |
|
isDisabled |
Booleano |
Indica si la entidad está inhabilitada. Usa este tipo solo cuando debas inhabilitar la entidad debido a un evento inesperado y no sepas cuándo se restablecerá el servicio (p.ej., no lo uses durante las festividades). Ejemplo: |
|
servingConfig |
ServingConfig |
Configuración de publicación para el servicio que se usa para controlar varias funciones, p. ej., inhabilitar el widget de promoción, etcétera. |
|
actionLinkUrl |
String |
Contiene una URL para un servicio de entrega o para llevar que se usará durante la migración de la experiencia de pedido de comida de extremo a extremo al redireccionamiento. |
En el siguiente ejemplo, se muestra un elemento Service
:
Ejemplo 1
{ "@type": "Service", "@id": "10824/takeout", "serviceType": "TAKEOUT", "menuId": "10824", "restaurantId": "10824", "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderpickup/merchant_foepa_3" }
Ejemplo 2
{ "@type": "Service", "@id": "10824/delivery", "serviceType": "DELIVERY", "menuId": "10824", "restaurantId": "10824", "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderdelivery/merchant_foepa_3" }
ServiceArea
Describe la región geográfica en la que se pueden entregar los alimentos. Esta entidad
se debe implementar si la entidad Service
asociada tiene
serviceType
configurado como “ENTREGA”.
En la siguiente tabla, se enumeran las propiedades del tipo ServiceArea
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único del área de servicio. Ejemplo: |
|
serviceId |
Lista<String> | Obligatorio. El valor de @id de la entidad Service correlacionado con esta entidad ServiceArea Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de la entidad ServiceArea en formato de marca de tiempo ISO, pero con el tipo String. Ejemplo: |
|
exclude |
Booleano |
Excluye esta área de servicio de la región de entrega total. Por ejemplo, se puede excluir un código postal de un área de polígono más grande. |
|
Se requiere exactamente uno de los siguientes grupos de propiedades. | |||
polygon |
Grupo 1 | Lista<String> |
Es un polígono o multipolígono expresado como una serie de tres o más puntos delimitados por espacios. Se recomienda que el primer y el último punto sean iguales, pero no es obligatorio. Cada punto de un polígono o multipolígono se define por un punto de latitud seguido de un punto de longitud. También debes especificar los puntos en el sentido contrario a las manecillas del reloj. Ejemplo: |
geoMidpointLatitude |
Grupo 2 | Número |
Indica la coordenada de latitud en el centro del área del CÍRCULO. Ejemplo: |
geoMidpointLongitude |
Grupo 2 | Número |
Indica la coordenada de longitud en el centro del área del CÍRCULO. Ejemplo: |
geoRadius |
Grupo 2 | Número entero |
Indica el radio aproximado (en metros) del área de CIRCLE. Ejemplo: |
postalCode |
Grupo 3 | String |
Indica el código postal. Ejemplo: |
addressCountry |
Grupo 3 | String |
Indica el código de país ISO 3166-1 alpha-2 de dos letras. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento ServiceArea
:
Ejemplo
{ "@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 (obligatorio)
Describe el período de pedido en el que los usuarios pueden acceder al flujo y realizar pedidos lo antes posible o futuros. La implementación de OperationHours
es obligatoria y, de forma predeterminada, representa la operación a todas horas y todos los días.
Los atributos opens
y closes
de OperationHours
especifican los horarios de apertura y cierre del sistema en línea que permite a los usuarios realizar pedidos. Dentro del horario de atención del sistema en línea, usa ServiceHours
para especificar las horas de apertura y cierre en las que se pueden entregar los pedidos de los usuarios.
Los horarios se deben especificar en la hora local del servicio. No incluyas una zona horaria en un valor opens
. Si se especifica una zona horaria, Google ignora esta información. Para obtener más información, consulta Formatos de fecha y hora.
En la siguiente tabla, se enumeran las propiedades del tipo OperationHours
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único para la entidad que describe la ventana de pedidos con la que los usuarios pueden acceder al flujo y realizar pedidos lo antes posible o futuros. Ejemplo: |
|
serviceId |
Lista<String> | Obligatorio. El valor @id de la entidad Service correlacionado con esta entidad OperationHours. Ejemplo: |
|
opens |
Hora ISO (local) |
Indica la hora específica del día en formato ISO a partir de la cual se pueden realizar los pedidos de los usuarios. Ejemplo: |
|
closes |
Hora ISO (local) |
Indica la hora del día específica en formato ISO a partir de la cual no se pueden realizar pedidos de los usuarios. Ejemplo: |
|
dayOfWeek |
List<DayOfWeek > |
Una lista de los días de la semana para los que son válidos estos horarios de operación. Los valores aceptados son “MONDAY”, “TUESDAY”, “WEDNESDAY”, “THURSDAY”, “FRIDAY”, “SATURDAY” y “SUNDAY”. Ejemplo: |
|
validFrom |
Marca de tiempo ISO | Obligatorio cuando Es una marca de tiempo ISO que indica la hora de inicio del período de pedido en el que los usuarios pueden acceder al flujo y realizar pedidos lo antes posible o en el futuro. Ejemplo: |
|
validThrough |
Marca de tiempo ISO | Obligatorio cuando Una marca de tiempo ISO que indica la hora de finalización del período de pedido después del cual los usuarios no pueden acceder al flujo ni realizar pedidos urgentes o futuros. Ejemplo: |
|
isSpecialHour |
Booleano |
Es un valor booleano que indica si OperationHours es para horarios especiales. Los valores aceptables son "false" y "true". Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
La última fecha y hora modificadas del feed de entidad OperationHours en formato de marca de tiempo ISO, pero con el tipo String. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento OperationHours
:
Ejemplo 1
{ "@type": "OperationHours", "@id": "10824/deliveryOh", "serviceId": [ "10824/delivery" ], "isSpecialHour": false }
Ejemplo 2
{ "@type": "OperationHours", "@id": "10824/takeoutOh", "serviceId": [ "10824/takeout" ], "isSpecialHour": false }
ServiceHours (obligatorio)
Describe el período de entrega en el que los usuarios pueden elegir los horarios de entrega (lo antes posible o en horarios futuros). Se requiere la implementación de ServiceHours
.
Los atributos opens
y closes
de OperationHours
especifican los horarios de apertura y cierre del sistema en línea que permite a los usuarios realizar pedidos. Dentro del horario de atención del sistema en línea, usa ServiceHours
para especificar las horas de apertura y cierre en las que se pueden entregar los pedidos de los usuarios.
Los horarios deben especificarse en la hora local del servicio. No incluyas una zona horaria en un valor opens
. Si se especifica una zona horaria, Google ignora esta información. Para obtener más información, consulta Formatos de fecha y hora.
En la siguiente tabla, se enumeran las propiedades del tipo ServiceHours
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la entidad que describe el período de entrega en el que los usuarios pueden elegir los horarios de entrega, es decir, lo antes posible o en horarios futuros. Ejemplo: |
|
orderType |
OrderType |
Obligatorio. Es una cadena que indica si el horario de servicio se aplica a pedidos anticipados o lo antes posible. Los valores aceptables son “ASAP” y “ADVANCE”. Ejemplo: |
|
serviceId |
Lista<String> | Obligatorio. El valor @id de la entidad Service correlacionado con esta entidad ServiceHours. Ejemplo: |
|
operationHoursId |
Lista<String> | Obligatorio cuando El valor de @id de la entidad OperationHours correlacionado con esta entidad ServiceHours Ejemplo: |
|
opens |
Hora ISO (local) |
Indica la hora específica del día en formato ISO a partir de la cual se pueden entregar los pedidos de los usuarios. Ejemplo: |
|
closes |
Hora ISO (local) |
Indica la hora del día específica en formato ISO a partir de la cual no se pueden entregar los pedidos de los usuarios. Ejemplo: |
|
dayOfWeek |
List<DayOfWeek > |
Es una lista de los días de la semana para los que son válidas estas horas de operación. Ejemplo: |
|
validFrom |
Marca de tiempo ISO | Obligatorio cuando Es una marca de tiempo ISO que indica la hora de inicio del período de pedido en el que los usuarios pueden acceder al flujo y realizar pedidos lo antes posible o en el futuro. Ejemplo: |
|
validThrough |
Marca de tiempo ISO | Obligatorio cuando Una marca de tiempo ISO que indica la hora de finalización del período de pedido después del cual los usuarios no pueden acceder al flujo ni realizar pedidos urgentes o futuros. Ejemplo: |
|
isSpecialHour |
Booleano |
Es un valor booleano que indica si OperationHours es para horarios especiales. Los valores aceptables son "false" y "true". Ejemplo: |
|
leadTimeMin |
Número entero |
Es el tiempo mínimo estimado de entrega o retiro, en minutos, una vez que se realiza el pedido lo antes posible. Te recomendamos que configures esta propiedad. Ejemplo: |
|
leadTimeMax |
Número entero |
Es el tiempo máximo estimado de entrega o retiro, en minutos, una vez que se realiza el pedido lo antes posible. Te recomendamos que configures esta propiedad. Ejemplo: |
|
advanceBookingRequirementMin |
Número entero | Obligatorio cuando La cantidad mínima de minutos desde el momento en que se puede completar el pedido por adelantado. Por ejemplo, si se necesita un pedido por adelantado de al menos 60 minutos para que se complete, el valor deAdvanceBookingRequirementMin es de 60. Ejemplo: |
|
advanceBookingRequirementMax |
Número entero | Obligatorio cuando Es la cantidad máxima de minutos a partir de la hora de pedido en la que se puede entregar el pedido anticipado. Por ejemplo, si se restringe la entrega de un pedido por adelantado más de 2 días después, el valorAdvanceBookingRequirementMax es de 2,880. Ejemplo: |
|
advanceBookingSlotInterval |
String | Obligatorio cuando Es el intervalo entre dos horarios de reserva anticipada consecutivos. Por ejemplo, si los horarios de apertura y cierre son a las 8 a.m. y a las 8 p.m., y el valor de advanceBookingSlotInterval es de 15 minutos, el usuario puede elegir los horarios de entrega de 8 a.m., 8:15 a.m., 8:30 a.m., 8:45 a.m., etcétera, hasta las 8 p.m. La duración se debe especificar como una duración de período ISO. Por ejemplo, "PT15M" significa intervalos de 15 minutos. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
La última fecha y hora modificadas del feed de entidad ServiceHours en formato de marca de tiempo ISO, pero con el tipo String. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento ServiceHours
:
Ejemplo 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" }
Ejemplo 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 }
Tarifas
Describe una tarifa. Si la entidad Service
asociada tiene serviceType
configurado como "DELIVERY", se requiere un Fee
con feeType
configurado como "DELIVERY".
En la siguiente tabla, se enumeran las propiedades del tipo Fee
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la entidad que describe la tarifa. Ejemplo: |
|
serviceId |
Lista<String> | Obligatorio. Es el valor de @id de la entidad Service correlacionada con esta entidad Fee. Ejemplo: |
|
feeType |
FeeType |
Obligatorio. Es una cadena que indica si la tarifa se aplica a los pedidos de entrega o de reparación. Los valores aceptables son "DELIVERY" y "SERVICE". Ejemplo: |
|
priceCurrency |
String | Obligatorio. Corresponde al código de moneda ISO 4217 de 3 letras. Ejemplo: |
|
basePrice |
Número |
Es el precio base de la tarifa, aplicable cuando se usa Ejemplo: |
|
minPrice |
Número |
Tarifa mínima, limita el valor de la tarifa cuando se usa Ejemplo: |
|
maxPrice |
Número |
Tarifa máxima, valor de la tarifa límite cuando se usan Ejemplo: |
|
eligibleRegion |
Lista<String> |
El @id del área de servicio correspondiente a las regiones geopolíticas para las cuales la tarifa es válida. Usa esta propiedad solo si las tarifas de entrega varían según la región. Ejemplo: |
|
eligibleTransactionVolumeMin |
Número |
Es el volumen mínimo de transacciones, en una unidad monetaria, para el que es válida esta especificación de tarifas. Ejemplo: |
|
eligibleTransactionVolumeMax |
Número |
Es el volumen máximo de transacciones, en una unidad monetaria, para el que es válida esta especificación de tarifa. Por ejemplo, la tarifa no se aplica si se supera un volumen de pedidos determinado. Ejemplo: |
|
validFrom |
Marca de tiempo ISO |
Una marca de tiempo ISO que indica la hora de inicio de la validez de la tarifa Ejemplo: |
|
validThrough |
Marca de tiempo ISO |
Una marca de tiempo ISO que indica la hora de finalización después de la cual la tarifa no es válida. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de la entidad de tarifas en formato de marca de tiempo ISO, pero con el tipo Cadena. Ejemplo: |
|
priority |
Número |
Un valor positivo distinto de cero. Cuando se aplica más de 1 tarifa al carrito del usuario, la tarifa de prioridad más alta tendrá prioridad sobre las más bajas. Si se proporciona este campo, la prioridad siempre tendrá prioridad sobre una prioridad calculada. Ejemplo: |
|
Se requiere exactamente uno de los siguientes grupos de propiedades. | |||
price |
Grupo 1 | Número |
Es el precio de la tarifa. Si el precio no es fijo, se pueden proporcionar minPrice y maxPrice en lugar de price. Ejemplo: |
percentageOfCart |
Grupo 2 | Número |
Es la tarifa como porcentaje del valor del carrito. Los valores aceptables son valores de punto flotante entre 0 y 100 inclusive. Ejemplo: |
pricePerMeter |
Grupo 3 | Número |
Tarifa por metro para la distancia radial del usuario. p.ej., si la distancia al usuario es de 5 km y la tarifa es de USD 0.001, la tarifa del usuario será de USD 5. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento Fee
:
Ejemplo 1
{ "@type": "Fee", "@id": "28427", "serviceId": [ "10824/delivery" ], "feeType": "DELIVERY", "priceCurrency": "USD", "eligibleRegion": [ "28427" ], "eligibleTransactionVolumeMin": 20, "price": 5 }
Ejemplo 2
{ "@type": "Fee", "@id": "28427", "serviceId": [ "10824/delivery" ], "feeType": "DELIVERY", "priceCurrency": "USD", "eligibleRegion": [ "28427" ], "eligibleTransactionVolumeMin": 20, "pricePerMeter": 0.0005, "basePrice": 4 }
Ejemplo 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 }
Ejemplo 4
{ "@type": "Fee", "@id": "28427", "serviceId": [ "10824/delivery" ], "feeType": "DELIVERY", "priceCurrency": "USD", "eligibleRegion": [ "28427" ], "eligibleTransactionVolumeMin": 20, "percentageOfCart": 5, "basePrice": 4 }
Ejemplo 5
{ "@type": "Fee", "@id": "28427", "serviceId": [ "10824/delivery" ], "feeType": "DELIVERY", "priceCurrency": "USD", "eligibleRegion": [ "28427" ], "eligibleTransactionVolumeMin": 20, "percentageOfCart": 5, "basePrice": 4, "minPrice": 5, "maxPrice": 50 }
Datos del menú
Menú (obligatorio)
Es una entidad necesaria para implementar. Describe un menú.
En la siguiente tabla, se enumeran las propiedades del tipo Menu
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único del menú. Ejemplo: |
|
name |
String |
Es el texto que puede identificar el menú cuando un usuario lo explora. Ejemplo: |
|
disclaimer |
String |
Renuncia de responsabilidad del menú. Por ejemplo, la divulgación de información nutricional y de alérgenos. Ejemplo: |
|
disclaimerUrl |
URL |
URL que dirige a una página que proporciona más detalles sobre la renuncia de responsabilidad. |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de entidades de menú en formato de marca de tiempo ISO, pero con el tipo Cadena. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento Menu
:
Ejemplo
{ "@type": "Menu", "@id": "10824" }
MenuSection
Una entidad opcional para implementar. Describe una sección particular del menú.
En la siguiente tabla, se enumeran las propiedades del tipo MenuSection
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la sección del menú. Ejemplo: |
|
menuId |
Lista<ReverseReference > |
El valor de @id de la entidad Menu correlacionado con esta entidad Ejemplo: |
|
menuSectionId |
Lista<String> |
Una lista de los valores @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
parentMenuSectionId |
List<ReverseReference > |
El valor de @id de la entidad Importante: Solo debes usar una de las referencias Ejemplo: |
|
name |
String | Obligatorio. Es el texto que puede identificar el Ejemplo: |
|
description |
String |
Es una descripción de la sección del menú. Ejemplo: |
|
image |
URL |
La URL de una imagen de la sección del menú. Ejemplo: |
|
menuItemId |
Lista<String> |
Una lista de los valores @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
parentMenuItemId |
List<ReverseReference > |
Es una lista de los valores de @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
parentMenuItemOptionId |
List<ReverseReference > |
Es una lista de los valores de @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
eligibleQuantityMax |
Número entero |
La cantidad máxima de complementos que se pueden seleccionar en la sección de complementos. Ejemplo: |
|
eligibleQuantityMin |
Número entero |
Es la cantidad mínima de complementos que se debe seleccionar en la sección de complementos. Ejemplo: |
|
defaultItemId |
Lista<String> |
Es una lista de @id que hace referencia a entidades Ejemplo: |
|
availabilityId |
Lista<String> |
Los valores de @id de las entidades de disponibilidad que proporcionan detalles sobre cuándo está disponible la sección del menú. Ejemplo: |
|
numberOfFreeAddOns |
Número entero |
Indica la cantidad de complementos que un usuario puede seleccionar sin cargo. Solo es válido para las secciones del menú de complementos. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de entidades Ejemplo: |
|
applicableServiceType |
List<ServiceType > |
Es el servicio al que se aplica este |
|
offeredById |
Lista<String> |
Los valores de @id de las entidades Ejemplo: |
En el siguiente ejemplo, se muestra un elemento MenuSection
:
Ejemplo 1
{ "@type": "MenuSection", "@id": "853705", "menuId": [ { "@id": "10824", "displayOrder": 853705 } ], "menuSectionId": [ 12345, 43645 ], "name": "Pasta", "applicableServiceType": [ "TAKEOUT" ], "offeredById": [ "italian_restaurant_location_1" ] }
Ejemplo 2
{ "@type": "MenuSection", "@id": "427484", "menuId": [ { "@id": "4287", "displayOrder": 964376 } ], "menuItemId": [ 46784, 42728 ], "name": "Burger", "applicableServiceType": [ "TAKEOUT", "DELIVERY" ] }
Ejemplo 3
{ "@type": "MenuSection", "@id": "3138486", "name": "Choose a side:", "parentMenuItemId": [ { "@id": "6680295", "displayOrder": 3138486 } ], "eligibleQuantityMax": "5", "numberOfFreeAddOns": "2" }
Ejemplo 4
{ "@type": "MenuSection", "@id": "3138482", "name": "Additional Pizza Toppings", "parentMenuItemId": [ { "@id": "6680246", "displayOrder": 3138482 } ], "eligibleQuantityMax": "3" }
Disponibilidad
Es una entidad opcional para implementar. Describe el período durante el cual se publica una entidad MenuSection
.
En la siguiente tabla, se enumeran las propiedades del tipo Availability
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la entidad que describe la disponibilidad de la sección del menú. Ejemplo: |
|
availabilityStarts |
Hora ISO (local) |
Es la marca de tiempo ISO que indica la hora de inicio en la que es válida la disponibilidad de la sección del menú. Ejemplo: |
|
availabilityEnds |
Hora ISO (local) |
Es la marca de tiempo ISO que indica la hora de finalización a partir de la cual la disponibilidad de la sección del menú no es válida. Ejemplo: |
|
availableDay |
List<DayOfWeek > |
Es una lista de los días de la semana para los que es válida la disponibilidad de la sección del menú. Ejemplo: |
|
validFrom |
Marca de tiempo ISO |
Es una marca de tiempo ISO que indica la hora de inicio en la que es válida la disponibilidad de la sección del menú. Ejemplo: |
|
validThrough |
Marca de tiempo ISO |
Una marca de tiempo ISO que indica la hora de finalización después de la cual la disponibilidad de la sección del menú no es válida. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de entidades de disponibilidad en formato de marca de tiempo ISO, pero con el tipo Cadena. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento Availability
:
Ejemplo
{ "@type": "Availability", "@id": "85343705", "availabilityStarts": "06:00", "availabilityEnds": "22:30", "availableDay": [ "SATURDAY", "SUNDAY" ] }
MenuItem (obligatorio)
Es una entidad obligatoria para implementar. Describe un elemento en una entidad Menu
.
En la siguiente tabla, se enumeran las propiedades del tipo MenuItem
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único del elemento de menú. Ejemplo: |
|
name |
String | Obligatorio. Es el texto que puede identificar el Ejemplo: |
|
description |
String |
Es una descripción del elemento de menú. Ejemplo: |
|
image |
URL |
Es la URL de una imagen del elemento de menú. Ejemplo: |
|
parentMenuSectionId |
List<ReverseReference > |
Es una lista de los valores de @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
menuAddOnId |
Lista<String> |
Es una lista de los valores de @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
nutrition |
NutritionInformation |
Información nutricional del plato, en especial las calorías Ejemplo: |
|
allergen |
List<Allergen > |
Son los alérgenos de este MenuItem. Ejemplo: |
|
additive |
List<Additive > |
Aditivos de este MenuItem. Ejemplo: |
|
suitableDiet |
List<RestrictedDiet > |
El plato cumple con la restricción alimentaria descrita. Ejemplo: |
|
depositInfo |
DepositInfo |
Información sobre el embalaje y el reciclaje de este elemento del menú. Ejemplo: |
|
numberOfServings |
Número entero |
Cantidad de porciones disponibles en un elemento de menú determinado. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de entidades Ejemplo: |
En el siguiente ejemplo, se muestra un elemento MenuItem
:
Ejemplo 1
{ "@type": "MenuItem", "@id": "18931508", "name": "Sauteed Baby Spinach", "parentMenuSectionId": [ { "@id": "3138479", "displayOrder": 18931508 } ] }
Ejemplo 2
{ "@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" ] }
MenuItemOption
Es una entidad opcional para implementar. Describe las opciones que un usuario debería elegir cuando selecciona un plato o una combinación. El usuario debe seleccionar una opción; de lo contrario, el pedido se considera no válido (p.ej., el usuario debe elegir una pizza pequeña, mediana o grande).
En la siguiente tabla, se enumeran las propiedades del tipo MenuItemOption
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const |
Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la opción del elemento de menú. Ejemplo: |
|
menuItemId |
ReverseReference |
Obligatorio. El valor de @id de la entidad Ejemplo: |
|
optionType |
OptionType |
Es una cadena que indica si la opción del elemento del menú se clasifica por tamaño, opción o complemento de pizza. Los valores aceptables son “SIZE”, “OPTION” y “PIZZA_SIDE”. "SIZE": Es el tamaño de MenuItemOption. Por ejemplo, pequeño, mediano o grande. "OPTION": Cualquier variación que no sea el tamaño (p.ej., un plato que se sirve como ensalada o sándwich). Si no puedes distinguir entre "SIZE" y "OPTION", usa "OPTION". "PIZZA_SIDE": Específico para pizzas: por ejemplo, este Ejemplo: |
|
value |
Cadena o
PizzaSide |
Obligatorio cuando Un valor de cadena o de enumeración. Los valores de enum son específicos del tipo de opción PIZZA_SIDE. |
|
applicableParentOptionValue |
String |
Es una cadena que contiene el valor de la opción del elemento superior para el que está disponible esta opción. Ejemplo: |
|
menuAddOnId |
Lista<String> |
Es una lista de los valores de @id de las entidades Importante: Solo debes usar una de las referencias Ejemplo: |
|
nutrition |
NutritionInformation |
Información nutricional del plato, en especial las calorías Ejemplo: |
|
allergen |
List<Allergen > |
Son los alérgenos de este MenuItem. Ejemplo: |
|
additive |
List<Additive > |
Aditivos de este MenuItem. Ejemplo: |
|
depositInfo |
DepositInfo |
La información de embalaje y reciclaje de este MenuItem. Ejemplo: |
|
numberOfServings |
Número entero |
Cantidad de porciones disponibles en una opción de un elemento de menú determinado. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
Es la fecha y hora de la última modificación del feed de entidades MenuItemOption en formato de marca de tiempo ISO, pero con el tipo String. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento MenuItemOption
:
Ejemplo 1
{ "@type": "MenuItemOption", "@id": "56177944", "menuItemId": { "@id": "18930213", "displayOrder": 1234 }, "optionType": "PIZZA_SIDE", "value": "PIZZA_SIDE_LEFT" }
Ejemplo 2
{ "@type": "MenuItemOption", "@id": "56177944", "menuItemId": { "@id": "18930213", "displayOrder": 1234 }, "applicableParentOptionValue": "Small Pizza" }
MenuItemOffer (obligatorio)
Es una entidad necesaria para implementar. Describe una oferta para una entidad MenuItem
o MenuItemOption
.
En la siguiente tabla, se enumeran las propiedades del tipo MenuItemOffer
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@type |
Const | Obligatorio. Valor: |
|
@id |
String | Obligatorio. Es un identificador único de la oferta del elemento del menú. Ejemplo: |
|
sku |
String | Obligatorio. Es un identificador de la oferta de un elemento de menú. Los valores del SKU pueden ser diferentes o iguales en varias entidades de ofertas de elementos del menú. El valor del sku se establecerá en orden cuando te hagamos una llamada a la API. Ejemplo: |
|
price |
Número | Obligatorio. Es el precio de la oferta del elemento del menú. Ejemplo: |
|
priceCurrency |
String | Obligatorio. Corresponde al código de moneda ISO 4217 de 3 letras. Ejemplo: |
|
availabilityId |
Lista<String> |
Los valores de @id de las entidades de disponibilidad que proporcionan detalles sobre cuándo está disponible la oferta del elemento del menú Ejemplo: |
|
eligibleQuantityMin |
Número |
La cantidad mínima de pedido para la que es válido el Ejemplo: |
|
eligibleQuantityMax |
Número |
Es la cantidad máxima de pedidos para la que es válida la Ejemplo: |
|
inventoryLevel |
Número |
Es el nivel de inventario aproximado actual del artículo o los artículos correspondientes a esta MenuItemOffer. Ejemplo: |
|
dateModified |
Marca de tiempo ISO |
La fecha y hora de la última modificación del feed de entidad Ejemplo: |
|
applicableServiceType |
Lista<ServiceType > |
Es el servicio al que se aplica este |
|
offeredById |
Lista<String> |
Los valores de @id de las entidades Ejemplo: |
|
Se requiere exactamente uno de los siguientes grupos de propiedades. | |||
menuItemId |
Grupo 1 | String |
El valor de @id de la entidad Ejemplo: |
menuItemOptionId |
Grupo 2 | String |
El valor de @id de la entidad Ejemplo: |
En el siguiente ejemplo, se muestra un elemento MenuItemOffer
:
Ejemplo
{ "@type": "MenuItemOffer", "@id": "6680262", "sku": "offer-mediterranean-bagel", "menuItemId": "896532", "price": 15.5, "priceCurrency": "USD", "applicableServiceType": [ "DELIVERY" ], "offeredById": [ "bagel_shop_location_5" ] }
Común
ReverseReference
En la siguiente tabla, se enumeran las propiedades del tipo ReverseReference
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
@id |
String | Obligatorio. @id de la entidad superior. |
|
displayOrder |
Número entero | Obligatorio. Es el orden de visualización del elemento dentro del elemento superior. |
NutritionInformation
En la siguiente tabla, se enumeran las propiedades del tipo NutritionInformation
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
description |
String |
Información nutricional en texto libre. Por ejemplo, “Contiene conservantes”. |
|
calories |
String |
Es la cantidad de calorías en calorías, kcal o kJ, con el siguiente formato: valor en calorías o calorías mínimas y máximas. Ejemplo: |
|
sodiumContent |
String |
Es la cantidad de mg o g de sodio, con el siguiente formato: valor en g o rango mínimo-máximo en g. Ejemplo: |
En el siguiente ejemplo, se muestra un elemento NutritionInformation
:
Ejemplo
{ "calories": "120-150 Cal", "sodiumContent": "100 mg" }
Alérgeno
En la siguiente tabla, se enumeran las propiedades del tipo Allergen
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
allergenType |
AllergenType |
Obligatorio. Tipo de alérgeno |
|
levelOfContainment |
ContainmentLevel |
Es el nivel de un alérgeno determinado en el elemento del menú. |
En el siguiente ejemplo, se muestra un elemento Allergen
:
Ejemplo
{ "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" }
Aditiva
En la siguiente tabla, se enumeran las propiedades del tipo Additive
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
additiveName |
String | Obligatorio. Es el nombre del aditivo. |
|
levelOfContainment |
ContainmentLevel |
Es el nivel de un aditivo determinado en el elemento de menú. |
En el siguiente ejemplo, se muestra un elemento Additive
:
Ejemplo
{ "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" }
DepositInfo
En la siguiente tabla, se enumeran las propiedades del tipo DepositInfo
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
depositCode |
DepositCode |
Código de depósito. |
|
depositValue |
Número |
Es el valor numérico del depósito del artículo, por ejemplo, cuando se recicla. |
|
depositValueCurrency |
String |
Moneda del valor del depósito |
En el siguiente ejemplo, se muestra un elemento DepositInfo
:
Ejemplo
{ "depositCode": "RECYCLABLE", "depositValue": 0.05, "depositValueCurrency": "USD" }
ServingConfig
La configuración de entrega del servicio que se usa para controlar varias funciones; p. ej., inhabilitar el widget promocional, etcétera.
En la siguiente tabla, se enumeran las propiedades del tipo ServingConfig
:
Propiedad | Tipo | Descripción | |
---|---|---|---|
disableOrderInstructions |
Booleano |
Oculta la capacidad de especificar instrucciones del pedido. |
|
disableMenuItemSpecialInstructions |
Booleano |
Oculta la capacidad de especificar instrucciones especiales en un elemento de menú. |
|
disableTipWidget |
Booleano |
Oculta el widget de propina en la página "Confirmar pedido" del flujo de pedidos. |
|
disablePromoWidget |
Booleano |
Oculta el widget de promoción en la página "Confirmar pedido" del flujo de pedidos. |
|
menuItemSpecialInstructionsMaxLength |
Número |
Especifica la cantidad máxima de caracteres que puede contener una instrucción especial de un elemento de menú. |
|
orderInstructionsMaxLength |
Número |
Especifica la cantidad máxima de caracteres que puede contener una instrucción de pedido. |
En el siguiente ejemplo, se muestra un elemento ServingConfig
:
Ejemplo 1
{ "disableMenuItemSpecialInstructions": true }
Ejemplo 2
{ "disableTipWidget": true, "disablePromoWidget": true }
Ejemplo 3
{ "menuItemSpecialInstructionsMaxLength": 250, "orderInstructionsMaxLength": 1000 }
Enumeraciones
DayOfWeek
El tipo DayOfWeek
tiene los siguientes valores posibles:
MONDAY
TUESDAY
WEDNESDAY
THURSDAY
FRIDAY
SATURDAY
SUNDAY
ServiceType
El tipo ServiceType
tiene los siguientes valores posibles:
DELIVERY
TAKEOUT
OrderType
El tipo OrderType
tiene los siguientes valores posibles:
ASAP
ADVANCE
FeeType
El tipo FeeType
tiene los siguientes valores posibles:
DELIVERY
SERVICE
OptionType
El tipo OptionType
tiene los siguientes valores posibles:
SIZE
OPTION
PIZZA_SIDE
PizzaSide
El tipo PizzaSide
tiene los siguientes valores posibles:
PIZZA_SIDE_LEFT
PIZZA_SIDE_RIGHT
PIZZA_SIDE_WHOLE
AllergenType
Tipo de alérgenos según gs1:AllergenTypeCode.
El tipo AllergenType
tiene los siguientes valores posibles:
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
El tipo ContainmentLevel
tiene los siguientes valores posibles:
CONTAINS
FREE_FROM
MAY_CONTAIN
DepositCode
El tipo DepositCode
tiene los siguientes valores posibles:
REUSABLE
RECYCLABLE
DealType
La categoría de la oferta a la que se aplicará el descuento. La categoría puede ser el total del carrito o los gastos de envío.
El tipo DealType
tiene los siguientes valores posibles:
CART_OFF
DELIVERY_OFF
RestrictedDiet
Tipo de dietas restringidas según schema.org:RestrictedDiet.
El tipo RestrictedDiet
tiene los siguientes valores posibles:
DIABETIC
GLUTEN_FREE
HALAL
HINDU
KOSHER
LOW_CALORIE
LOW_FAT
LOW_LACTOSE
LOW_SALT
VEGAN
VEGETARIAN