Campo | Tipo | Descripción |
---|---|---|
id | uuid | Id único del pedido |
displayId | string | Id fácil de usar para que sea más fácil para la tienda identificar el pedido. Debe mostrarse en la interfaz de su aplicación. |
orderType | enum | tipo de pedido |
orderTiming | enum | tiempo de entrega del pedido |
salesChannel | string | canal de ventas por el que ingresa el pedido a la plataforma (se pueden agregar nuevos canales) |
category | string | categoría del pedido (FOOD, GROCERY, ANOTAI) |
createdAt | date | Fecha de creación del pedido |
preparationStartDateTime | date | Indicación para iniciar la preparación |
isTest | boolean | Indica si el pedido está en modo prueba o no |
extraInfo | string | Información adicional del pedido |
{
"id": "32c15e00-9861-4548-b5f0-15580defc999",
"displayId": "fc999",
"orderType": "DELIVERY / INDOOR / TAKEOUT",
"orderTiming": "IMMEDIATE/SCHEDULED",
"salesChannel": "IFOOD / DIGITAL_CATALOG / POS / ECONOMIC / TOTEM / IFOOD_SHOP",
"category": "FOOD / GROCERY / ANOTAI / FOOD_SELF_SERVICE",
"createdAt": "2020-01-01T00:00:00.000Z",
"preparationStartDateTime": "2020-01-01T00:00:00.000Z",
"isTest": false,
"extraInfo": "Pago Online. NÃO LEVAR MÁQUINA",
...
}
Campo | Tipo | Descripción |
---|---|---|
id | uuid | Id único del merchant (tienda) |
name | string | Nombre del merchant (tienda) |
"merchant": {
"id": "50647eee-5eb6-41a2-b2d8-999998ed677f",
"name": "Nome da Loja"
}
Campo | Tipo | Descripción |
---|---|---|
id | uuid | Id único del cliente |
name | string | Nombre del cliente |
documentNumber | -- | número de documento de cliente (c.c.) que sólo debe utilizarse para la emisión de un documento fiscal cuando el cliente lo solicite, ya que el campo es opcional. |
ordersCountOnMerchant | integer | número de pedidos ya realizados por este cliente en esta tienda |
phone.number | string | número de teléfono del cliente o número 0800 proporcionado por iFood |
phone.localizer | string | código localizador que se debe informar al llamar al número 0800 |
phone.localizerExpiration | date | fecha de caducidad del localizador 0800 |
segmentation | string | calificación de los clientes para Súper Segmentación (Explorer, Bronce, Plata, Oro, Platino). Campo opcional. Eventualmente no podrá ser devuelto. |
"customer": {
"id": "50647eee-5eb6-41a2-b2d8-999998ed677f",
"name": "Nome do Cliente",
"documentNumber": "07544829999",
"ordersCountOnMerchant": 8,
"phone": {
"number": "0800 XXX XXXX",
"localizer": "27534642",
"localizerExpiration": "2020-01-01T00:00:00.000Z"
},
"segmentation": "Platinum"
}
Campo | Tipo | Descripción |
---|---|---|
index | integer | posición/orden de los elementos |
id | uuid | Id único del ítem |
uniqueId | uuid | identificador único del item en el pedido (necesario ya que el mismo item puede aparecer varias veces en el pedido) |
name | string | nombre del ítem |
imageUrl | string | url de la imagen/imagen del ítem. Cuando está disponible, la URL devuelve, de forma predeterminada, una imagen de "alta" calidad. Es posible cambiar el recorrido de esta imagen para obtener la imagen en otras calidades. |
externalCode | string | código del ítem en tu aplicación (codPDV). Es opcional y se puede configurar en el catálogo |
ean | string | código de barras (European Article Number) |
quantity | double | cantidad de ítems |
unit | string | unidad del ítem (Ej: UN, g, Kg, ml, L) |
unitPrice | double | precio unitario |
addition | double | valor adicional que puede ser incluido en el valor del ítem |
price | double | precio del ítem = quantity x (unitPrice + addition) |
scalePrices | object | información de cantidades y precios de venta al por mayor |
optionsPrice | double | precio de las adiciones (options) |
totalPrice | double | precio total incluyendo las adiciones (totalPrice = price + optionsPrice) |
observations | string | Observaciones del pedido (Ej: "Sin cebolla") Tamaño máximo: 256. |
low
: Devuelve la imagen en baja calidad. Ideal para vistas rápidas o cuando el ancho de banda es una preocupación.medium
: Ofrece un equilibrio entre calidad y tamaño de archivo.high
: Proporciona la imagen en la mejor calidad disponible, recomendada para detalles precisos.Exemplos
:low
): https://static-images.ifood.com.br/image/upload/t_low/pratos/4c714577-fe5d-4d31-9531-f9ebb7f89249/202104071957_0mfD_.jpeg
medium
): https://static-images.ifood.com.br/image/upload/t_medium/pratos/4c714577-fe5d-4d31-9531-f9ebb7f89249/202104071957_0mfD_.jpeg
high
): https://static-images.ifood.com.br/image/upload/t_high/pratos/4c714577-fe5d-4d31-9531-f9ebb7f89249/202104071957_0mfD_.jpeg
"items": [
{
"index": 1,
"id": "1bd9cbac-a4a6-497e-953d-e6d0661180d5",
"uniqueId": "092ce140-b809-4a13-b776-31d9792eee99",
"name": "Nome do Produto",
"imageUrl": "https://static-images.ifood.com.br/image/upload/t_high/pratos/4c714577-fe5d-4d31-9531-f9ebb7f89249/202104071957_0mfD_.jpeg",
"externalCode": "2331",
"ean": "7898903529999",
"quantity": 2,
"unit": "UN/G/KG/L/ML",
"unitPrice": 10,
"addition": 0,
"price": 20,
"scalePrices": {
...
},
"optionsPrice": 4,
"totalPrice": 24,
"observations": "Retirar cebola",
"options": [
...
]
}
]
Campo | Tipo | Descripción |
---|---|---|
index | integer | posición/orden de las adiciones |
id | uuid | Id único de la adición |
name | string | Nombre de la adición |
externalCode | string | código de la adición en la aplicación (codPDV). Es opcional, puede ser configurado en el catálogo. |
quantity | double | Cantidad del ítem |
unit | string | unidade do item (Ex: UN, g, Kg, ml, L) |
unitPrice | double | preço unitário |
addition | double | Valor adicional que pode ser incluido en la adición. (Ej: Para pizza con más de un sabor, es posible configurar el catálogo para que se cobre por el sabor de mayor precio. (En estos casos, esta es la diferencia entre el precio original del sabor con menor precio y el sabor con precio de mayor valor). |
price | double | precio de la adición: price = quantity x (unitPrice + addition) |
"options": [
{
"index": 1,
"id": "3dc09021-be6b-4be6-92a1-15a07b464141",
"name": "Nome do Complemento",
"externalCode": "ABC123",
"quantity": 2,
"unit": "UN/G/KG/L/ML",
"unitPrice": 2,
"addition": 1,
"price": 6
}
]
Campo | Tipo | Descripción |
---|---|---|
defaultPrice | double | Precio por defecto del ítem sin alteración |
scales | array | Lista que contiene información de cantidades y precios para venta al por mayor |
"scalePrices": {
"defaultPrice": 20,
"scales": [
...
]
}
Campo | Tipo | Descripción |
---|---|---|
price | double | Precio del ítem con descuento al por mayor |
minQuantity | integer | Cantidad mínima de ítems para aplicar el descuento |
"scales": [
{
"price": 15,
"minQuantity": 5
}
]
Campo | Tipo | Descripción |
---|---|---|
value | double | Valor del descuento/ incentivo |
target | string | Información sobre donde se aplicará el descuento |
targetId | string | index del ítem (items.index) sobre el cual el descuento debe ser aplicado. Solamente para los casos en que el target es del tipo ITEM o PROGRESSIVE_DISCOUNT_ITEM |
sponsorshipValues.name | string | Nombre del patrocinador del beneficio |
sponsorshipValues.value | double | valor subsidiado por patrocinador |
target | Descripción |
---|---|
CART | El descuento es aplicado sobre el subtotal del carrito (sumatoria de los ítems del pedido). |
DELIVERY_FEE | El descuento es aplicado sobre la tarifa de entrega. |
ITEM | El descuento es aplicado sobre un ítem específico del carrito. El campo targerId específica sobre cual ítem el descuento es aplicado. Esta especificación es hecha en la campaña. |
PROGRESSIVE_DISCOUNT_ITEM | Descuento progresivo en ítems iguales del pedido, formando un combo. |
sponsorship | Tratamiento |
---|---|
IFOOD | El valor del/los cupón/es debe/n ser tratado/s como como un tipo de pago, ya que iFood transferirá este valor al restaurante. |
MERCHANT | El valor del/los cupón/es debe/n ser tratado/s como un descuento, ya que el subsidio en este caso es responsabilidad del merchant (tienda). |
"benefits": [
{
"value": 10,
"target": "CART",
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 0
},
{
"name": "MERCHANT",
"value": 10
}
]
},
{
"value": 4.99,
"target": "DELIVERY_FEE",
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 4.99
},
{
"name": "MERCHANT",
"value": 0
}
]
},
{
"value": 4.99,
"target": "ITEM",
"targetId": "1",
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 4.99
},
{
"name": "MERCHANT",
"value": 0
}
]
}
]
Campo | Tipo | Descripción |
---|---|---|
type | string | tipo de tarifa (SMALL_ORDER_FEE / MERCHANT_SUBSCRIPTION_FEE / etc.) |
value | double | valor de la tarifa adicional |
"additionalFees": [
{
"type": "SMALL_ORDER_FEE",
"value": 1.00
},
{
"type": "MERCHANT_SUBSCRIPTION_FEE",
"value": 5.00
}
]
Tipos de tarifas adicionalestype | Descripción |
---|---|
SMALL_ORDER_FEE | La tarifa adicional para pedidos por debajo del valor mínimo |
Campo | Tipo | Descripción |
---|---|---|
subTotal | double | Sumatoria del valor de los ítems |
deliveryFee | double | valor de la tarifa de entrega |
benefits | double | Sumatoria de los benefits (cupones de descuento) |
additionalFees | double | Sumatoria de las tarifas adicionales |
orderAmount | double | valor total del pedido (orderAmount = subTotal + deliveryFee + additionalFees - benefits) |
"total": {
"subTotal": 50,
"deliveryFee": 10,
"additionalFees": 2,
"benefits": 5,
"orderAmount": 57
}
Campo | Tipo | Descripción |
---|---|---|
prepaid | double | Valor pagado (ONLINE) |
pending | double | valor pendiente que debe ser cobrado en el momento de la entrega (OFFLINE) |
methods.value | double | valor del pago |
methods.currency | string | Moneda |
methods.type | string | tipo de pago: ONLINE (pago hecho online por medio de la aplicación y no debe ser cobrado en la entrega) u OFFLINE (pago que debe ser hecho en el momento de la entrega del pedido) |
methods.method | string | Método de pago (CASH / CREDIT / DEBIT / MEAL_VOUCHER / FOOD_VOUCHER / GIFT_CARD / DIGITAL_WALLET / PIX / OTHER) |
methods.wallet.name | string | Nombre de la billetera (solamente para pagos con billetera digital) |
methods.card.brand | string | Nombre de la tarjeta de marca |
methods.cash.changeFor | double | valor del cambio |
"payments": {
"prepaid": 20,
"pending": 45,
"methods": [
{
"value": 10,
"currency": "BRL",
"type": "ONLINE",
"method": "CREDIT / DEBIT / MEAL_VOUCHER / FOOD_VOUCHER",
"card": {
"brand": "Nome da Bandeira"
}
},
{
"value": 10,
"currency": "BRL",
"type": "ONLINE",
"method": "DIGITAL_WALLET",
"wallet": {
"name": "APPLE_PAY/GOOGLE_PAY/SAMSUNG_PAY"
},
"card": {
"brand": "Nome da Bandeira"
}
},
{
"value": 0.01,
"currency": "BRL",
"method": "PIX",
"type": "ONLINE",
"card": {
"brand": "PIX"
},
}
{
"value": 45,
"currency": "BRL",
"type": "OFFLINE",
"method": "CASH ",
"cash": {
"changeFor": 50
}
}
]
}
Campo | Tipo | Descripción |
---|---|---|
picker | string | responsable por la separación los ítems del pedido (Ej.: DRIVER_SHOPPER). Cuando no se informa, el propio merchant se encarga de separar los ítems y preparar el pedido. |
replacementOptions | string | Opciones para substituir un ítem en caso de ruptura (Ej.: STORE_CHOOSE_OTHER_ITEMS / STORE_CONTACT_CUSTOMER / STORE_CANCEL_ORDER / STORE_REMOVE_ITEMS) |
"picking": {
"picker": "DRIVER_SHOPPER",
"replacementOptions": "STORE_CHOOSE_OTHER_ITEMS / STORE_CONTACT_CUSTOMER / STORE_CANCEL_ORDER / STORE_REMOVE_ITEMS"
}
Campo | Tipo | Descripción |
---|---|---|
mode | string | método de entrega do pedido. Valores posibles: DEFAULT/EXPRESS. DEFAULT: método de entrega estándar; EXPRESS: método de entrega que se considerada rápido. Actualmente, existen dos tipos: entregas en menos de 15 minutos exclusivas de Darkstores y entrega prioritária donde el cliente elige pagar una tarifa de entrega ligeramente más alta para recibir su pedido en un tiempo más corto. |
deliveredBy | string | Responsable de hacer la entrega: IFOOD (logística iFood) o MERCHANT (entrega propia) |
deliveryDateTime | date | Fecha y hora de la entrega |
observations | string | observaciones sobre la entrega (Ej.: "No hay portería. Por favor, usar citófono”.) |
deliveryAddress | -- | Dirección donde debe ser entregado el pedido |
"delivery": {
"mode": "DEFAULT / EXPRESS",
"deliveredBy": "IFOOD / MERCHANT",
"deliveryDateTime": "2020-01-01T00:00:00.000Z",
"observations": "Entrega sem Contato - Deixar na portaria",
"deliveryAddress": {...}
}
Campo | Tipo | Descripción |
---|---|---|
streetName | string | Nombre de la calle o avenida. |
streetNumber | string | número (Obs: puede contener letras) |
formattedAddress | string | eDirección formato convencional (Calle, número) |
neighborhood | string | Barrio/Sector |
complement | string | complemento (Ej.: Apartamento, Conjunto, Lote) |
reference | string | Punto de referencia |
postalCode | string | código postal (CEP). Campo opcional, eventualmente se puede enviar a cero |
city | string | Ciudad |
state | string | Departamento |
country | string | País |
coordinates.latitude | double | Latitud |
coordinates.longitude | double | Longitud |
"deliveryAddress": {
"streetName": "RUA X",
"streetNumber": "20A",
"formattedAddress": "RUA X, 20A",
"neighborhood": "Bairro / Setor",
"complement": "Apto 101",
"reference": "perto da praça",
"postalCode": "99999999",
"city": "SAO PAULO",
"state": "SP",
"country": "BR",
"coordinates": {
"latitude": -26.999999,
"longitude": -48.999999
}
}
Campo | Tipo | Descripción |
---|---|---|
mode | string | Forma de retiro: DEFAULT (cliente recoge el pedido por ventanilla) / PICKUP_AREA (cliente espera o pedido en un lugar del parqueadero) |
takeoutDateTime | date | Fecha y hora del retiro del pedido |
observations | string | Observaciones sobre el retiro del pedido |
"takeout": {
"mode": "DEFAULT / PICKUP_AREA:",
"takeoutDateTime": "2020-01-01T00:00:00.000Z",
"observations": "Observações sobre a retirada"
}
Campo | Tipo | Descripción |
---|---|---|
mode | string | forma de retiro: DEFAULT (el cliente recoge el pedido por ventanilla) / TABLE (el cliente espera el pedido en una mesa del establecimiento) |
table | string | número o código de la mesa donde el cliente hizo el pedido (solo en condiciones de mode = TABLE) |
deliveryDateTime | date | fecha y hora de la entrega o del retiro del pedido |
observations | string | observaciones sobre el retiro del pedido |
"indoor": {
"mode": "DEFAULT / TABLE:",
"table": "01",
"deliveryDateTime": "2020-01-01T00:00:00.000Z",
"observations": "Observações sobre a entrega ou retirada"
}
Campo | Tipo | Descripción |
---|---|---|
schedule.deliveryDateTimeStart | date | inicio del horario (intervalo) programado |
schedule.deliveryDateTimeEnd | date | Cierre del horario (intervalo) programado |
"schedule": {
"deliveryDateTimeStart": "2020-01-01T00:20:00.000Z",
"deliveryDateTimeEnd": "2020-01-01T01:20:00.000Z"
}
Campo | Tipo | Descripción |
---|---|---|
metadata | map<string,string> | Campo abierto del tipo clave,valor que permite que los merchants incluyan información de interés en su propio pedido |
salesChannel=POS
)"additionalInfo": {
"metadata": {
"codigoInternoPdv": "18bf73f64715",
"nomeVendedor": "João"
}
}
{
"id": "63895716-37c3-4372-afd0-3240bfef708d",
"orderTiming": "IMMEDIATE",
"orderType": "DELIVERY",
"salesChannel": "IFOOD",
"category": "FOOD",
"delivery": {
"mode": "ECONOMIC",
"deliveredBy": "IFOOD",
"deliveryDateTime": "2021-02-09T18:10:32Z",
"deliveryAddress": {
"streetName": "Example",
"streetNumber": "1234",
"formattedAddress": "Example St., 1234, Apt. 1234",
"neighborhood": "Examplehood",
"complement": "Apt. 1234",
"reference": "perto da praça",
"postalCode": "12345678",
"city": "Example City",
"state": "Example State",
"country": "BR",
"coordinates": {
"latitude": -2.1059418202311173e141,
"longitude": -49545.71
}
}
},
"displayId": "XPTO",
"createdAt": "2021-02-16T18:10:27Z",
"preparationStartDateTime": "2021-02-09T20:15:13Z",
"merchant": {
"id": "c54bb20a-bce0-4e38-bd4a-fe5f0a7b6b5a",
"name": "Example Merchant"
},
"customer": {
"id": "22587f70-60b4-423c-8cd2-27d288f47f99",
"name": "Example Customer",
"documentNumber": "123456789",
"phone": {
"number": "123456789",
"localizer": "12345678",
"localizerExpiration": "2021-02-09T18:11:07Z"
},
"ordersCountOnMerchant": 1234,
"segmentation": "Gold"
},
"items": [
{
"index": 0,
"id": "f1e48636-4bf0-4656-bce8-0e2214fcd3d4",
"uniqueId": "092ce140-b809-4a13-b776-31d9792eee99",
"name": "Example Item",
"imageUrl": "https://static-images.ifood.com.br/image/upload/t_high/pratos/4c714577-fe5d-4d31-9531-f9ebb7f89249/202104071957_0mfD_.jpeg",
"externalCode": "ex01",
"ean": "12345678910",
"unit": "G",
"quantity": 12,
"unitPrice": 0.12,
"addition": 0,
"price": 1.44,
"optionsPrice": 1.69,
"totalPrice": 3.13,
"observations": "This is an example item.",
"options": [
{
"index": 0,
"id": "acea6ac1-f595-4a6b-af00-cc2f1fa0886a",
"name": "Example Option",
"externalCode": "ex02",
"ean": "12345678911",
"unit": "UN",
"quantity": 13,
"unitPrice": 0.13,
"addition": 0,
"price": 1.69
}
]
}
],
"benefits": [
{
"value": 1.0,
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 0.5
},
{
"name": "MERCHANT",
"value": 0.5
}
],
"target": "CART"
},
{
"value": 0.5,
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 0.5
},
{
"name": "MERCHANT",
"value": 0
}
],
"target": "ITEM",
"targetId": "1"
},
{
"value": 0.49,
"sponsorshipValues": [
{
"name": "IFOOD",
"value": 0
},
{
"name": "MERCHANT",
"value": 0.49
}
],
"target": "DELIVERY_FEE"
}
],
"additionalFees": [
{
"type": "SMALL_ORDER_FEE",
"value": 1.0
}
],
"total": {
"subTotal": 3.13,
"deliveryFee": 5.99,
"additionalFees": 1,
"benefits": 1.99,
"orderAmount": 8.13
},
"payments": {
"prepaid": 2.13,
"pending": 5,
"methods": [
{
"value": 5,
"currency": "BRL",
"method": "CASH",
"type": "OFFLINE",
"prepaid": false
},
{
"value": 2.13,
"currency": "BRL",
"method": "MEAL_VOUCHER",
"type": "ONLINE",
"prepaid": true
}
]
},
"picking": {
"picker": "DRIVER_SHOPPER",
"replacementOptions": "STORE_REMOVE_ITEMS"
},
"test": false,
"additionalInfo": {
"metadata": {
"codigoInternoPdv": "18bf73f64715",
"nomeVendedor": "João"
}
}
}