Um pedido contém as seguintes informações:
| Campo | Tipo | Descrição | 
|---|---|---|
| id | uuid | Identificador único do pedido | 
| shortCode | string | Id amigável para facilitar a identificação do pedido pela loja. | 
| status | boolean | O status do pedido | 
| test | boolean | Indica se é um pedido de teste ou não. | 
| createdAt | datetime | Data de criação do pedido. | 
| category | string | categoria do pedido (FOOD, GROCERY, ANOTAI ou FOOD_SELF_SERVICE | 
Exemplo:
{
  "id": "32c15e00-9861-4548-b5f0-15580defc999",
  "shortCode": "fc999",
  "status": "PICKED",
  "test": false,
  "createdAt": "2020-01-01T00:00:00.000Z",
  ...
}| Campo | Tipo | Descrição | 
|---|---|---|
| dryBag | integer | quantidade de sacolas secas | 
| coldBag | integer | quantidade de sacolas frias | 
Exemplo:
"package": {
  "dryBag": 1,
  "coldBag": 2
}| Campo | Tipo | Descrição | 
|---|---|---|
| name | string | nome do canal de vendas (por exemplo, IFOOD, POS, DIGITAL_CATALOG) | 
Exemplo:
"salesChannel": {
  "name": "IFOOD"
}| Campo | Tipo | Descrição | 
|---|---|---|
| id | uuid | identificador único da loja | 
| name | string | nome da loja | 
| cnpj | string | CNPJ da loja | 
| phones[].phoneNumber | string | número de telefone da loja | 
| address.streetName | string | logradouro do endereço da loja | 
| address.streetNumber | string | número na rua do endereço da loja | 
| address.complement | string | complemento do endereço da loja | 
| address.zipCode | string | CEP do endereço da loja | 
| address.district | string | bairro do endereço da loja | 
| address.city | string | cidade do endereço da loja | 
| address.state | string | estado do endereço da loja | 
| address.country | string | país do endereço da loja | 
| address.latitude | double | latitude do endereço da loja | 
| address.longitude | double | longitude do endereço da loja | 
Exemplo:
"merchant": {
  "id": "50647eee-5eb6-41a2-b2d8-999998ed677f",
  "name": "Nome do Comerciante",
  "cnpj": "12345678901234",
  "address": {
    "streetName": "Rua do Comerciante",
    "city": "Cidade do Comerciante",
    "complement": "Complemento do Comerciante",
    "country": "País do Comerciante",
    "district": "Distrito do Comerciante",
    "latitude": 123.456,
    "longitude": 789.012,
    "state": "Estado do Comerciante",
    "streetNumber": "123",
    "zipCode": "12345-678"
  },
  "phones": [
    {
      "phoneNumber": "0800 000 0000"
    },
    {
      "phoneNumber": "0800 000 0000"
    }
  ]
}| Campo | Tipo | Descrição | 
|---|---|---|
| identification.value | string | valor do documento de identificação | 
| identification.type | string | tipo do documento de identificação (por exemplo, CPF) | 
Exemplo:
"taxPayer": {
  "identification": {
    "value": "12345678901",
    "type": "CPF"
  }
}
| Campo | Tipo | Descrição | 
|---|---|---|
| id | uuid | identificador único do cliente | 
| name | string | nome do cliente | 
| phones[].phoneNumber | string | lista de números de telefone do cliente | 
| string | e-mail do cliente | |
| birthDate | datetime | data de nascimento do cliente | 
| type | string | tipo de cliente, NATURAL_PERSON ou LEGAL_PERSON | 
| localizer.Code | string | código localizador do cliente | 
| localizer.phone | string | telefone localizador do cliente | 
| document.Type | string | tipo de documento do cliente (por exemplo, CPF, RG) | 
| document.Value | string | valor do documento do cliente | 
| billingAddress.streetName | string | logradouro do endereço de cobrança do cliente | 
| billingAddress.streetNumber | string | número na rua do endereço de cobrança do cliente | 
| billingAddress.complement | string | complemento do endereço de cobrança do cliente | 
| billingAddress.zipCode | string | CEP do endereço de cobrança do cliente | 
| billingAddress.district | string | bairro do endereço de cobrança do cliente | 
| billingAddress.city | string | cidade do endereço de cobrança do cliente | 
| billingAddress.state | string | estado do endereço de cobrança do cliente | 
| billingAddress.country | string | país do endereço de cobrança do cliente | 
| billingAddress.latitude | double | latitude do endereço de cobrança do cliente | 
| billingAddress.longitude | double | longitude do endereço de cobrança do cliente | 
Exemplo:
"customer": {
  "id": "50647eee-5eb6-41a2-b2d8-999998ed677f",
  "name": "Nome do Cliente",
  "phones": [
    {
      "phoneNumber": "0800 XXX XXXX"
    },
    {
      "phoneNumber": "(11) 99999-XXXX"
    }
  ],
  "email": "cliente@example.com",
  "birthDate": "1990-01-01",
  "document": {
    "Type": "CPF",
    "Value": "12345678901"
  },
  "billingAddress": {
    "streetName": "Rua do Cliente",
    "city": "Cidade do Cliente",
    "complement": "Complemento do Cliente",
    "country": "País do Cliente",
    "district": "Distrito do Cliente",
    "latitude": 123.456,
    "longitude": 789.012,
    "state": "Estado do Cliente",
    "streetNumber": "123",
    "zipCode": "12345-678"
  },
  "type": "NATURAL_PERSON",
  "localizer": {
    "code": "27534642",
    "phone": "0800 100 9988"
  }
}| Campo | Tipo | Descrição | 
|---|---|---|
| items.UniqueId | string | identificador único do item na sacola | 
| items.Index | integer | índice do item | 
| items.Quantity | integer | quantidade do item | 
| items.Name | string | nome do item | 
| items.Ean | string | código de barras do item | 
| items.Note | string | comentários adicionados pelo cliente no item (por exemplo, remover salada, sem molho, etc.) | 
| items.Weight.Value | double | valor da medida de peso do item | 
| items.Prices.UnitValue.Value | double | valor em centavos de UM item sem nenhum desconto | 
| items.Prices.UnitValue.Currency | string | moeda | 
| items.Prices.SalePriceKg.Value | double | valor em centavos de UM KG do item sem nenhum desconto | 
| items.Prices.SalePriceKg.Currency | string | moeda | 
| items.Prices.GrossValue.Value | double | valor em centavos do preço unitário multiplicado pela quantidade de itens mais o preço total das escolhas (guarnição legada) multiplicado pela quantidade de itens | 
| items.Prices.GrossValue.Currency | string | modeda | 
| items.Product.Plu | string | código interno do parceiro para controle do pacote proprietário | 
| items.Product.IsVariableWeight | bool | identifica se é um item de peso variável | 
| prices.GrossValue.Value | double | valor em centavos todos os itens e itens de guarnição do pedido sem nenhum desconto | 
| prices.GrossValue.Currency | string | moeda | 
| replacementOptions.Mode | string | o que o mercado deve fazer se algum tipo de item estiver ausente do pedido: STORE_CONTACT_CUSTOMER; STORE_CHOOSE_OTHER_ITEMS; STORE_REMOVE_ITEMS | 
Exemplo:
"bag": {
  "items": [
    {
      "uniqueId": "abc123",
      "index": 1,
      "quantity": 2,
      "name": "Produto 1",
      "ean": "7890123456789",
      "note": "Sem cebola",
      "weight": {
        "value": 500
      },
      "prices": {
        "unitValue": {
          "value": 1000,
          "currency": "BRL"
        },
        "salePriceKg": {
          "value": 5000,
          "currency": "BRL"
        },
        "grossValue": {
          "value": 2000,
          "currency": "BRL"
        }
      },
      "product": {
        "plu": "123456",
        "isVariableWeight": false
      }
    }
  ],
  "prices": {
    "grossValue": {
      "value": 2000,
      "currency": "BRL"
    }
  },
  "replacementOptions": {
    "mode": "STORE_CONTACT_CUSTOMER"
  }
}| Campo | Tipo | Descrição | 
|---|---|---|
| type | string | tipo da operação de entrega (por exemplo, DELIVERY, TAKE-OUT) | 
| schedulingType | string | IMMEDIATE, TIME_SLOT ou TIME_INTERVAL | 
| delivery.Provider | string | provedor logístico responsável pela entrega (por exemplo, ifood, merchant, etc) | 
| delivery.Type | string | tipo de entrega (por exemplo, EXPRESS, IMMEDIATE, SCHEDULED) | 
| delivery.Code | string | identificador único do método de entrega | 
| delivery.Destination.id | uuid | identificador único do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.streetName | string | logradouro do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.streetNumber | string | número na rua do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.complement | string | complemento do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.zipCode | string | CEP do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.district | string | bairro do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.city | string | cidade do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.state | string | estado do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.country | string | país do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.latitude | double | latitude do endereço de entrega escolhido pelo cliente | 
| delivery.Destination.longitude | double | longitude do endereço de entrega escolhido pelo cliente | 
| delivery.Prices.GrossValue.Value | double | valor da entrega em centavos | 
| delivery.Prices.GrossValue.Currency | string | moeda | 
| delivery.DeliveryTime.Window.From | datetime | início da janela de agendamento da entrega | 
| delivery.DeliveryTime.Window.To | datetime | fim da janela de agendamento da entrega | 
| takeout.TakeoutTime.Window.From | datetime | início da janela de agendamento da retirada | 
| takeout.TakeoutTime.Window.To | datetime | fim da janela de agendamento da retirada | 
| preparation.Start | datetime | início da preparação | 
| preparation.End | datetime | fim da preparação | 
Exemplo:
"operationMode": {
  "type": "DELIVERY",
  "schedulingType": "IMMEDIATE",
  "delivery": {
    "provider": "ifood",
    "type": "EXPRESS",
    "destination": {
      "id": "12345",
      "streetName": "Rua do Cliente",
      "city": "Cidade do Cliente",
      "complement": "Complemento do Cliente",
      "country": "País do Cliente",
      "district": "Distrito do Cliente",
      "latitude": 123.456,
      "longitude": 789.012,
      "state": "Estado do Cliente",
      "streetNumber": "123",
      "zipCode": "12345-678"
    },
    "prices": {
      "grossValue": {
        "value": 2000,
        "currency": "BRL"
      }
    },
    "deliveryTime": {
      "window": {
        "from": "2024-03-13T10:00:00",
        "to": "2024-03-13T12:00:00"
      }
    },
    "code": "EXPRESS"
  },
  "preparation": {
    "start": "2024-03-13T09:00:00",
    "end": "2024-03-13T10:00:00"
  }
}| Campo | Tipo | Descrição | 
|---|---|---|
| methods[].UniqueId | string | identificador único | 
| methods[].Name | string | nome do método de pagamento (por exemplo, Crédito, Débito e etc) | 
| methods[].InPerson | bool | pagamento presencial | 
| methods[].Liability | string | quem deve ser pago (por exemplo, ifood, comerciante, etc) | 
| methods[].Amount.Value | double | quanto foi pago em centavos | 
| methods[].Amount.Currency | string | moeda | 
| methods[].Cash.ChangeFor.Value | double | quando o método de pagamento é dinheiro, este nó é usado para mostrar quanto o cliente pagará para que possamos calcular o troco | 
| methods[].Cash.ChangeFor.Currency | string | moeda | 
| methods[].Card.Brand | string | bandeira do cartão | 
| methods[].Card.CardNumber | string | o número do cartão | 
| methods[].Card.Provider | string | o provedor do cartão (por exemplo, MasterCard) | 
| methods[].Wallet.Provider | string | o provedor da carteira digital | 
| methods[].Digital.Data | string | o dado do pagamento digital (por exemplo, chave pix) | 
Exemplo:
"payment": {
  "methods": [
    {
      "name": "Crédito",
      "inPerson": false,
      "liability": "ifood",
      "amount": {
        "value": 2500,
        "currency": "BRL"
      },
      "card": {
        "brand": "Visa",
        "cardNumber": "************1234",
        "provider": "visa"
      },
      "uniqueId": "abc123"
    },
    {
      "name": "Dinheiro",
      "inPerson": true,
      "liability": "merchant",
      "amount": {
        "value": 3000,
        "currency": "BRL"
      },
      "cash": {
        "changeFor": {
          "value": 5000,
          "currency": "BRL"
        }
      },
      "uniqueId": "def456"
    }
  ]
}| Campo | Tipo | Descrição | 
|---|---|---|
| BenefitsList.TargetId | string | o ID de destino (para descontos em itens, aqui é usado o catalogItemId) | 
| BenefitsList.Target | string | onde o desconto se aplica (por exemplo, carrinho, um item específico, taxa de entrega, outra taxa, etc) | 
| BenefitsList.Sponsorships.Liability | string | o patrocinador (ifood, comerciante, coca-cola, etc) | 
| BenefitsList.Sponsorships.Amount.Value | double | o valor do benefício em centavos | 
| BenefitsList.Sponsorships.Amount.Currency | string | moeda | 
Exemplo:
"benefits": {
  "benefitsList": [
    {
      "targetId": "123456",
      "target": "cart",
      "sponsorships": [
        {
          "liability": "ifood",
          "amount": {
            "value": 2000,
            "currency": "BRL"
          }
        },
        {
          "liability": "merchant",
          "amount": {
            "value": 1500,
            "currency": "BRL"
          }
        }
      ]
    },
    {
      "targetId": "789012",
      "target": "item",
      "sponsorships": [
        {
          "liability": "coca-cola",
          "amount": {
            "value": 500,
            "currency": "BRL"
          }
        }
      ]
    }
  ]
}| Campo | Tipo | Descrição | 
|---|---|---|
| StateRegistration | string | registro estadual | 
Exemplo:
"invoiceInformation": {
  "stateRegistration": "123456789"
}