Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO


01. VISÃO GERAL
Âncora
ver_geral
ver_geral

Este endpoint é utilizado para enviar requisições de novos pedidos de mesa via barramento na API Order, focado em consumo no local. Ele permite gerenciar pedidos associados a mesas específicas, incluindo informações de itens, descontos, extras, métodos de pagamento, e identificação de mesa e/ou cartão consumo


...

02. ENDPOINT
Âncora
endpoint
endpoint


MétodoURLAmbiente
POSThttps://api-barramento.meuelevestage.com/order/newOrderHomogação
POSThttps://api-barramento.meueleve.com.br/order/newOrderProdução


...


03.

...

DICIONÁRIO
Âncora

...

dicionario

...

Corpo da requisição de envio de novo: 

...

titleNota:

RequestOrderNewOrder

Este JSON é utilizado para criar um novo pedido, passando informações detalhadas sobre o pedido, como identificação da integração, tipos de pedido, origem do pedido, e eventos associados. Ele é composto pelos seguintes campos:

...

integrationHubServiceId (string, obrigatório)
Descrição: Chave de identificação da integração. Este campo é utilizado para identificar de maneira única o serviço de integração responsável pela criação do pedido.
Exemplo: "string"

data (objeto, obrigatório)
Descrição: Objeto contendo os detalhes completos do pedido.

Campos dentro de data:

...

id (string, obrigatório)
Título: Data.id
Descrição: Identificador único do pedido. Este ID é gerado pelo aplicativo de pedidos e deve ser utilizado para identificar o pedido em todo o sistema.
Exemplo: "string"

...

type (OrderType, obrigatório)
Título: OrderType
Descrição: Tipo de pedido, indicando a modalidade de entrega ou consumo do pedido.
Valores possíveis:

  • DELIVERY - Pedidos que serão entregues no endereço do cliente.
  • TAKEOUT - Pedidos que serão retirados pelo cliente no estabelecimento.
  • INDOOR - Pedidos que serão consumidos dentro do estabelecimento.
  • TABLE - Pedidos que serão consumidos em uma mesa no local.
  • CARD - Pedidos cuja o consumo será alocado ao cartão do estabelecimento.
  • COUNTER - Pedidos que serão preparados para consumo no balcão do estabelecimento.
    Exemplo: "DELIVERY"

...

displayId (string, obrigatório)
Título: Data.displayId
Descrição: Identificação do pedido que será exibida na interface do Aplicativo de Pedidos para o cliente.
Exemplo: "string"

...

sourceAppId (string)
Título: Data.sourceAppId
Descrição: Este campo deve ser preenchido com o AppId do Aplicativo de Pedidos que originou o pedido. Ele é útil para os aplicativos que atuam como um Hub, intermediando os pedidos entre o Aplicativo de Pedidos e o Serviço de Software.
Exemplo: "string"

...

salesChannel (string)
Título: Data.salesChannel
Descrição: Canal de vendas pelo qual o pedido foi originado, como website, aplicativo, ou outros canais.
Exemplo: "string"

...

createdAt (string, obrigatório)
Título: Data.createdAt
Descrição: Data e hora de criação do pedido, no formato de data e hora UTC, conforme padrão ISO.
Exemplo: "2023-08-12T12:34:56Z"

...

lastEvent (OrderLastEvent, opcional)
Título: OrderLastEvent
Descrição: O último evento válido do pedido, que pode ter sido confirmado, enviado via webhook ou não reconhecido.
Valores possíveis:

  • CREATED
  • CONFIRMED
  • DISPATCHED
  • READY_FOR_PICKUP
  • PICKUP_AREA_ASSIGNED
  • DELIVERED
  • CONCLUDED
  • CANCELLATION_REQUESTED
  • CANCELLATION_REQUEST_DENIED
  • CANCELLED
  • ORDER_CANCELLATION_REQUEST
  • CANCELLED_DENIED

...

orderTiming (OrderTiming, obrigatório)
Título: OrderTiming
Descrição: Tempo de entrega do pedido, indicando se o pedido terá entrega imediata ou agendada.
Valores possíveis:

  • INSTANT - Entrega imediata.
  • SCHEDULED - Entrega agendada.

...

preparationStartDateTime (string, obrigatório)
Título: Data.preparationStartDateTime
Descrição: Sugestão de horário de início da preparação do pedido após sua criação. O padrão é o mesmo horário da criação do pedido, mas pode ser ajustado para atrasar o início por qualquer motivo.
Exemplo: "2023-08-12T13:00:00Z"

...

merchant (objeto, obrigatório)
Descrição: Contém as informações do estabelecimento (merchant) relacionado ao pedido.

Campos dentro de merchant:

  • id (string, obrigatório)
    Título: Merchant.id
    Descrição: Identificador único do estabelecimento nos diferentes sistemas com os quais ele se comunica. Esse ID deve ser gerado pelo Serviço de Software do estabelecimento. Para evitar duplicação entre diferentes estabelecimentos, recomenda-se criar o merchantId usando:
    Documento do Estabelecimento + UUID.
    Caso não seja possível, recomenda-se pelo menos usar um UUID.

  • name (string, obrigatório)
    Título: Merchant.name
    Descrição: Nome público do estabelecimento.
    Exemplo: "Loja Exemplo"

...

items (array de objetos, obrigatório)
Descrição: Contém a lista de itens do pedido, detalhando cada produto ou serviço solicitado.

Campos dentro de items:

  • id (string, obrigatório)
    Título: OrderItems.id
    Descrição: Identificador único de cada item no pedido.
    Exemplo: "item123"

  • index (string, opcional)
    Título: OrderItems.index
    Descrição: Posição do item no pedido, caso o número da posição seja relevante.
    Exemplo: "1"

  • name (string, obrigatório)
    Título: OrderItems.name
    Descrição: Nome do produto ou serviço solicitado no pedido.
    Exemplo: "Hambúrguer Clássico"

  • externalCode (string, obrigatório)
    Título: OrderItems.externalCode
    Descrição: Código externo do produto, utilizado para referência em sistemas de controle de estoque ou catálogos de produtos.
    Exemplo: "EXT00123"

  • unit (string, obrigatório)
    Título: Unit
    Descrição: Unidade de medida do item.
    Valores possíveis:

    • UN - Unidade
    • KG - Quilograma
    • L - Litro
    • OZ - Onça
    • LB - Libra
    • GAL - Galão
      Exemplo: "UN"
  • ean (string, opcional)
    Título: OrderItems.ean
    Descrição: O código de barras EAN usado nos itens.
    Exemplo: "7891234567890"

  • quantity (número, obrigatório)
    Título: OrderItems.quantity
    Descrição: Quantidade de itens solicitados. Valores fracionados são permitidos para unidades menores, como gramas ou mililitros.
    Exemplo: "2"

  • specialInstructions (string, opcional)
    Título: OrderItems.specialInstructions
    Descrição: Instruções especiais relacionadas ao item, como pedidos personalizados ou restrições alimentares.
    Exemplo: "Sem cebola"

  • unitPrice (objeto, obrigatório)
    Descrição: Preço por unidade do item, considerando o valor pago pelo cliente e utilizado no cálculo dos totais do pedido.

    Campos dentro de unitPrice:

    • value (número, obrigatório)
      Título: UnitPrice.value
      Descrição: Valor unitário do item. São aceitos valores com até 4 casas decimais.
      Exemplo: "10.50"

    • currency (string, obrigatório)
      Título: UnitPrice.currency
      Descrição: Código da moeda, seguindo o padrão ISO 4217 (código de 3 letras).
      Exemplo: "BRL"

  • originalPrice (objeto, opcional)
    Descrição: Preço original do produto, antes de quaisquer descontos ou promoções aplicadas. Utilizado apenas para fins informativos.

    Campos dentro de originalPrice:

    • value (número, obrigatório)
      Título: OriginalPrice.value
      Descrição: Valor original do item. São aceitos valores com até 4 casas decimais.
      Exemplo: "12.00"

    • currency (string, obrigatório)
      Título: OriginalPrice.currency
      Descrição: Código da moeda, conforme o padrão ISO 4217.
      Exemplo: "BRL"

  • optionsPrice (objeto, opcional)
    Descrição: Soma dos preços de todas as opções ou adicionais selecionados para o item.

    Campos dentro de optionsPrice:

    • value (número, obrigatório)
      Título: OptionsPrice.value
      Descrição: Valor das opções adicionais. São aceitos valores com até 4 casas decimais.
      Exemplo: "1.50"

    • currency (string, obrigatório)
      Título: OptionsPrice.currency
      Descrição: Código da moeda, conforme o padrão ISO 4217.
      Exemplo: "BRL"

  • totalPrice (objeto, obrigatório)
    Descrição: Preço total do item, calculado como a quantidade multiplicada pelo preço unitário somado ao valor das opções (se houver).

    Campos dentro de totalPrice:

    • value (número, obrigatório)
      Título: TotalPrice.value
      Descrição: Valor total do item.
      Exemplo: "21.00"

    • currency (string, obrigatório)
      Título: TotalPrice.currency
      Descrição: Código da moeda, conforme o padrão ISO 4217.
      Exemplo: "BRL"

  • options (array de objetos, opcional)
    Descrição: Lista de opções adicionais selecionadas para o item.

    Campos dentro de options:

    • id (string, obrigatório)
      Título: OrderItemsOptions.id
      Descrição: Identificador único da opção adicional selecionada.
      Exemplo: "option001"

    • name (string, obrigatório)
      Título: OrderItemsOptions.name
      Descrição: Nome da opção adicional.
      Exemplo: "Adicional de Queijo"

    • quantity (número, obrigatório)
      Título: OrderItemsOptions.quantity
      Descrição: Quantidade da opção selecionada.
      Exemplo: "1"

    • unitPrice (objeto, obrigatório)
      Descrição: Preço unitário da opção adicional.

      Campos dentro de unitPrice:

      • value (número, obrigatório)
        Título: UnitPrice.value
        Descrição: Valor unitário da opção.
        Exemplo: "2.00"

      • currency (string, obrigatório)
        Título: UnitPrice.currency
        Descrição: Código da moeda.
        Exemplo: "BRL"

    • specialInstructions (string, opcional)
      Título: OrderItemsOptions.specialInstructions
      Descrição: Instruções especiais relacionadas à opção selecionada.
      Exemplo: "Queijo extra derretido"

  • productionPoint (string, obrigatório)
    Título: OrderItems.productionPoint
    Descrição: Ponto de produção do item dentro do estabelecimento.
    Exemplo: "Cozinha"

otherFees (array de objetos, opcional)
Descrição: Outras taxas que podem ser aplicadas ao pedido, como taxa de entrega, taxa de serviço, ou gorjeta.

Campos dentro de otherFees:

...

name (string, obrigatório)
Título: OtherFees.name
Descrição: Nome relacionado à taxa aplicada.
Exemplo: "Taxa de Entrega"

...

type (string, obrigatório)
Título: OrderFeesType
Descrição: Tipo da taxa aplicada. Pode ser uma taxa de entrega, serviço, ou gorjeta.
Valores possíveis:

  • DELIVERY_FEE - Taxa de entrega
  • SERVICE_FEE - Taxa de serviço
  • TIP - Gorjeta
    Exemplo: "DELIVERY_FEE"

...

receivedBy (string, obrigatório)
Título: OrderReceivedBy
Descrição: Define quem recebe a taxa aplicada, podendo ser o marketplace, o próprio estabelecimento ou um serviço de logística.
Valores possíveis:

  • MARKETPLACE - Marketplace recebe
  • MERCHANT - Estabelecimento recebe
  • LOGISTIC_SERVICES - Serviços de logística recebem
    Exemplo: "MARKETPLACE"

...

receiverDocument (string, opcional)
Título: OtherFees.receiverDocument
Descrição: Documento do recebedor da taxa. Obrigatório em casos de marketplace.
Exemplo: "123.456.789-00"

...

price (objeto, obrigatório)
Descrição: Preço da taxa aplicada.

Campos dentro de price:

  • value (número, obrigatório)
    Título: OtherFeesPrice.value
    Descrição: Valor da taxa. São aceitos valores com até 4 casas decimais.
    Exemplo: "5.00"

  • currency (string, obrigatório)
    Título: OtherFeesPrice.currency
    Descrição: Código da moeda, conforme padrão ISO 4217 (código de 3 letras).
    Exemplo: "BRL"

observation (string, opcional)
Título: OtherFees.observation
Descrição: Comentários ou observações adicionais sobre a taxa.
Exemplo: "Taxa adicional por área remota"

  • total (objeto, obrigatório)
    Descrição: Conjunto de campos que contém a soma dos valores previamente descritos no pedido.

    Campos dentro de total:

    • items (número, obrigatório)
      Título: Total.items
      Descrição: Soma do preço total dos itens listados no atributo items.
      Exemplo: "150.00"

    • otherFees (número, opcional)
      Título: Total.otherFees
      Descrição: Soma do valor total de outras taxas listadas no atributo otherFees. Se não houver, use 0.
      Exemplo: "10.00"

    • discount (número, opcional)
      Título: Total.discount
      Descrição: Soma de quaisquer descontos listados no atributo discounts. Se não houver, use 0.
      Exemplo: "5.00"

    • orderAmount (número, obrigatório)
      Título: Total.orderAmount
      Descrição: Valor final do pedido (itens + otherFees + additionalFees + deliveryFee - descontos).
      Exemplo: "155.00"

    • additionalFees (número, opcional)
      Título: Total.additionalFees
      Descrição: Soma do valor total das taxas adicionais listadas no atributo additionalFees. Se não houver, use 0.
      Exemplo: "0.00"

    • deliveryFee (número, opcional)
      Título: Total.deliveryFee
      Descrição: Soma do valor total da taxa de entrega listada no atributo deliveryFee. Se não houver, use 0.
      Exemplo: "5.00"

payments (objeto, obrigatório)
Descrição: Todos os detalhes sobre o pagamento, como métodos, pré-pagamentos, troco, etc.

Campos dentro de payments:

...

prepaid (número, obrigatório)
Título: OrderPayments.prepaid
Descrição: Quantidade paga antecipadamente.
Exemplo: "50.00"

...

pending (número, obrigatório)
Título: OrderPayments.pending
Descrição: Quantidade que ainda precisa ser paga.
Exemplo: "105.00"

methods (array de objetos, obrigatório)
Descrição: Métodos de pagamento usados. Se foi pago online, na entrega, por cartão de crédito, voucher, dinheiro, etc.

Campos dentro de methods:

...

value (número, obrigatório)
Título: OrderPaymentsMethods.value
Descrição: Valor do pagamento. São aceitos valores com até 4 casas decimais.
Exemplo: "105.00"

...

currency (string, obrigatório)
Título: OrderPaymentsMethods.currency
Descrição: Código da moeda, conforme padrão ISO 4217 (código de 3 letras).
Exemplo: "BRL"

...

type (string, obrigatório)
Título: PaymentMethodType
Descrição: Indica se o pagamento foi feito online ou offline.
Valores possíveis:

  • ONLINE
  • OFFLINE
    Exemplo: "ONLINE"

...

method (string, obrigatório)
Título: Method
Descrição: Método de pagamento escolhido.
Valores possíveis:

  • CREDIT - Crédito
  • DEBIT - Débito
  • MEAL_VOUCHER - Vale-refeição
  • FOOD_VOUCHER - Vale-alimentação
  • DIGITAL_WALLET - Carteira digital
  • PIX - PIX
  • CASH - Dinheiro
  • CREDIT_DEBIT - Cartão de crédito/débito
  • COUPON - Cupom
  • REDEEM - Resgate
  • PREPAID_REDEEM - Resgate pré-pago
  • OTHER - Outro
    Exemplo: "CREDIT"

...

brand (string, opcional)
Título: Brand
Descrição: Indica a bandeira do cartão escolhido no campo method. Este campo deve ser preenchido somente se method for CREDIT, DEBIT, CREDIT_DEBIT, MEAL_VOUCHER, ou FOOD_VOUCHER.
Valores possíveis:

  • VISA
  • MASTERCARD
  • DINERS
  • AMEX
  • HIPERCARD
  • ELO
  • OUTRAS
    Exemplo: "VISA"

...

methodInfo (string, opcional)
Título: OrderPaymentsMethods.methodInfo
Descrição: Informações adicionais sobre o método de pagamento. Pode ser usado para indicar algo útil, como o nome da carteira digital ou número de autorização. Este campo é recomendado quando o método escolhido for OTHER.
Exemplo: "Autorização 123456"

changeFor (número, opcional)
Título: OrderPaymentsMethods.changeFor
Descrição: Indica o total que será pago em dinheiro pelo cliente e que deve ser considerado para o cálculo do troco (ex: cliente pagará um pedido de R$ 43 com uma nota de R$ 50). Este campo é obrigatório quando o método for CASH.
Exemplo: "50.00"

  • schedule (objeto, obrigatório se o orderTiming for SCHEDULED)
    Descrição: Informações para pedidos agendados.

    Campos dentro de schedule:

    • scheduledDateTimeStart (string, obrigatório)
      Título: Schedule.scheduledDateTimeStart
      Descrição: Data e hora para quando o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedido com base no tempo médio de preparação dos pratos. O padrão é o mesmo horário da criação do pedido.

    • scheduledDateTimeEnd (string, obrigatório)
      Título: Schedule.scheduledDateTimeEnd
      Descrição: Data e hora para quando o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedido com base no tempo médio de preparação dos pratos. O padrão é o mesmo horário da criação do pedido.customer (objeto, obrigatório se o tipo escolhido for DELIVERY)

      • Descrição: Informações relacionadas ao cliente.

        Campos dentro de customer:

        • id (string, obrigatório)
          Título: OrderCustomer.id
          Descrição: Um identificador exclusivo relacionado ao cliente. Se o aplicativo de pedido não tiver um Id para o cliente, este Id pode ser gerado ao criar o pedido.

        • name (string, obrigatório)
          Título: OrderCustomer.name
          Descrição: Nome do cliente.

        • documentNumber (string, opcional)
          Título: OrderCustomer.documentNumber
          Descrição: Documento do cliente. Este documento pode ser enviado para tratar de questões fiscais.

        • phone (objeto, obrigatório)
          Descrição: Telefone do cliente. Pode-se inserir o número do cliente diretamente (desde que o cliente tenha dado permissão para o compartilhamento de seus dados, conforme as políticas locais), ou outro número de telefone (como o número do call center do aplicativo de pedidos) onde o comerciante pode se comunicar sobre problemas no pedido.

          Campos dentro de phone:

          • number (string, obrigatório)
            Título: OrderCustomerPhone.number
            Descrição: Número de telefone do cliente.

          • extension (string, opcional)
            Título: OrderCustomerPhone.extension
            Descrição: Ramal de telefone, se aplicável.

        • email (string, opcional)
          Título: OrderCustomer.email
          Descrição: E-mail do cliente. Este dado pode ser enviado para tratar de questões fiscais.

        • ordersCountOnMerchant (string, obrigatório)
          Título: OrderCustomer.ordersCountOnMerchant
          Descrição: Total de pedidos que o cliente já fez no comerciante.

delivery (objeto, obrigatório se o tipo escolhido for DELIVERY)
Descrição: Informações para pedidos de entrega.

Campos dentro de delivery:

...

deliveredBy (string, obrigatório)
Título: OrderDeliveryBy
Descrição: Quem é responsável pela entrega do pedido.
Valores possíveis:

  • MARKETPLACE
  • MERCHANT

...

deliveryAddress (objeto, obrigatório)
Descrição: O endereço para o qual o pedido será entregue.

Campos dentro de deliveryAddress:

  • country (string, obrigatório)
    Título: OrderTypeDeliveryAddress.country
    Descrição: Código de dois dígitos do país, conforme a norma ISO 3166-1 alpha-2.

  • state (string, obrigatório)
    Título: OrderTypeDeliveryAddress.state
    Descrição: Estado ou subdivisão do país. Recomenda-se (mas não é obrigatório) usar a representação ISO 3166-2.

  • city (string, obrigatório)
    Título: OrderTypeDeliveryAddress.city
    Descrição: Nome da cidade.

  • district (string, obrigatório)
    Título: OrderTypeDeliveryAddress.district
    Descrição: Bairro ou distrito.

  • street (string, obrigatório)
    Título: OrderTypeDeliveryAddress.street
    Descrição: Nome da rua.

  • number (string, obrigatório)
    Título: OrderTypeDeliveryAddress.number
    Descrição: Número da rua.

  • complement (string, opcional)
    Título: OrderTypeDeliveryAddress.complement
    Descrição: Complemento do endereço.

  • reference (string, opcional)
    Título: OrderTypeDeliveryAddress.reference
    Descrição: Referência do endereço.

  • formattedAddress (string, obrigatório)
    Título: OrderTypeDeliveryAddress.formattedAddress
    Descrição: Endereço completo formatado.

  • postalCode (string, obrigatório)
    Título: OrderTypeDeliveryAddress.postalCode
    Descrição: Código postal.

  • coordinates (objeto, obrigatório)
    Descrição: Coordenadas do endereço de entrega.

    Campos dentro de coordinates:

    • latitude (número, obrigatório)
      Título: OrderTypeDeliveryAddressCoordinates.latitude
      Descrição: Latitude em graus, com valores limitados à faixa [-90, 90].

    • longitude (número, obrigatório)
      Título: OrderTypeDeliveryAddressCoordinates.longitude
      Descrição: Longitude em graus, com valores limitados à faixa [-180, 180].

...

estimatedDeliveryDateTime (string, obrigatório)
Título: OrderTypeDelivery.estimatedDeliveryDateTime
Descrição: Data e hora estimadas de entrega. A mesma data exibida ao cliente na interface do Aplicativo de Pedido.

deliveryDateTime (string, opcional)
Título: OrderTypeDelivery.deliveryDateTime
Descrição: Data de entrega. A data e hora em que a entrega realmente ocorreu.

  • sendTracking (booleano)
    Título: Data.sendTracking
    Descrição: Este campo indica se é necessário que o serviço de software faça uma requisição ao endpoint para informar o Aplicativo de Pedido sobre atualizações de entrega.
    • true: O Aplicativo de Pedido está aguardando uma requisição.
    • false ou não informado: Não é necessário fazer a requisição.sendDelivered (booleano)
      • Título: Data.sendDelivered
        Descrição: Este campo indica se é necessário que o serviço de software faça uma requisição ao endpoint para indicar ao Aplicativo de Pedido que o pedido foi entregue ao cliente.
        • true: O Aplicativo de Pedido está aguardando uma requisição.
        • false ou não informado: Não é necessário fazer a requisição.card (objeto, obrigatório se o tipo escolhido for CARD)
          • Descrição: Informações para pedidos feitos com cartões de controle.

            Campos dentro de card:

            • waiterCode (número, obrigatório)
              Título: OrderTypeCard.waiterCode
              Descrição: Identificador do garçom.

            • cardNumber (número, obrigatório)
              Título: OrderTypeCard.cardNumber
              Descrição: Identificador do cartão de controle.

              • indoor (objeto, obrigatório se o tipo escolhido for INDOOR)
                Descrição: Informações para pedidos a serem consumidos no local.

                Campos dentro de indoor:

                • mode (string, obrigatório)
                  Título: OrderIndoorMode
                  Descrição: Identificador de modo interno.
                  Valores possíveis:

                  • DEFAULT: Para pedidos feitos no Aplicativo de Pedido e consumidos dentro do estabelecimento, sem localização específica.
                  • PLACE: Para pedidos feitos no Aplicativo de Pedido e consumidos dentro do estabelecimento em um local específico (mesa ou balcão).
                  • TAB: Para estabelecimentos que controlam pedidos via tabs ou cartões de controle (pode ser usado em conjunto com o campo place).
                • indoorDateTime (string, obrigatório)
                  Título: OrderTypeIndoor.indoorDateTime
                  Descrição: Data e hora para quando o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedido com base no tempo médio de preparação dos pratos. O padrão é o mesmo horário da criação do pedido.

                • place (string, obrigatório se mode for PLACE)
                  Título: OrderTypeIndoor.place
                  Descrição: O identificador do local (mesa ou balcão).

                  • Campos dentro de takeout:

                    • mode (string, obrigatório)
                      Título: OrderTakeoutMode
                      Descrição: Identificador de modo de retirada.
                      Valores possíveis:
                      • DEFAULT
                      • PICKUP_AREA
                    • takeoutDateTime (string, obrigatório)
                      Título: OrderTypeTakeout.takeoutDateTime
                      Descrição: Data e hora para quando o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedido com base no tempo médio de preparação dos pratos. O padrão é o mesmo horário da criação do pedido.deliveryTableNumber (número, obrigatório)
                      Título: OrderTypeCard.deliveryTableNumber
                      Descrição: Identificador da mesa para entrega.takeout (objeto, obrigatório se o tipo escolhido for TAKEOUT)tab (string, obrigatório se mode for TAB)
                      Título: OrderTypeIndoor.tab
                      Descrição: Identificador do cartão de controle ou tab.Descrição: Informações para pedidos de retirada.
              • table (objeto, obrigatório se o tipo escolhido for TABLE)
                Descrição: Informações para pedidos feitos em mesa.

                Campos dentro de table:

                • waiterCode (número, obrigatório)
                  Título: OrderTypeTable.waiterCode
                  Descrição: Identificador do garçom.

                • tableNumber (número, obrigatório)
                  Título: OrderTypeTable.tableNumber
                  Descrição: Identificador da mesa.

                • chairNumber (número, obrigatório)
                  Título: OrderTypeTable.chairNumber
                  Descrição: Identificador da cadeira.

dicionario


  • Estrutura newOrder:

Campo

Valor

Descrição

integrationHubServiceId *stringIdentificador único da integração

data *

arrayDados necessário para o pedido


Tabela de auxiliares e enumerações:

  • Estrutura newOrder (dentro de data):

Campo

Valor

Descrição

id *

string

O identificador exclusivo do pedido. O ID do pedido é gerado pelo Aplicativo de Pedidos

type *

enum

Tipo de pedido (veja na tabela type)

displayId *

string

ID do pedido mostrado na interface do aplicativo de pedidos do cliente

sourceAppId

string

Este campo deverá ser preenchido com o AppId do Aplicativo de Pedido que originou o pedido. Este campo serve para auxiliar as aplicações que funcionarão como Hub, intermediando as solicitações da Aplicação de Pedido com o Serviço de Software

salesChannel

string

Você pode indicar por qual canal de vendas este pedido foi originado

createdAt *

string

Data e hora de criação do pedido (data e hora UTC no formato de carimbo de data/hora ISO). **

lastEvent

string

O último evento válido pesquisado (reconhecido ou não) ou enviado via webhook.** (veja na tabela lastEvent)

orderTiming *

string

Tempo do pedido. Indica se o PEDIDO terá entrega imediata ou programada (veja na tabela orderTiming)

preparationStartDateTime *

string

Sugestão de horário de início da preparação após a criação do Pedido. Isso pode ser usado pelo Aplicativo de Pedidos para informar o estabelecimento comercial sobre o atraso no início da preparação por qualquer motivo. O padrão é o mesmo horário de criação do pedido

merchant *

string

Informações do comerciante (veja na merchant)

items

array

Encomendar itens (veja na tabela items)

otherFees

array

Outras taxas que podem ser aplicadas (veja na tabela otherFees)

discounts

array

Quaisquer descontos que possam ser aplicados (veja na tabela discounts)

total

array

Conjunto de campos com a soma dos valores descritos anteriormente no pedido (veja na tabela total)

payments

string

Toda a descrição do pagamento, como formas, pré-pagamentos, troco, etc. (veja na tabela payments)

customer

string

Informações relacionadas ao cliente. OBRIGATÓRIO se o tipo escolhido for DELIVERY (veja na tabela customer)

schedule

string

Informações para pedidos agendados. OBRIGATÓRIO se orderTiming estiver AGENDADO (veja na tabela schedule)

delivery

string

Informações para pedidos DELIVERY. OBRIGATÓRIO se o tipo escolhido for DELIVERY (veja na tabela delivery)

takeout

string

Informações para pedidos TAKEOUT. OBRIGATÓRIO se o tipo escolhido for TAKEOUT (veja na tabela takeout)

indoor

string

Informações para pedidos INDOOR. OBRIGATÓRIO se o tipo escolhido for INTERIOR (veja na tabela indoor)

table

string

Informações para pedidos de TABLE. OBRIGATÓRIO se o tipo escolhido for TABLE (veja na tabela table)

card

string

Informações para pedidos CARD. OBRIGATÓRIO se o tipo escolhido for CARTÃO (vejna na tabela card)

sendDelivered

boolean

Este campo indica se é necessário que o Serviço de Software faça uma solicitação ao terminal para indicar ao Aplicativo de Pedido que o pedido foi entregue ao cliente.
true: Indica que o Aplicativo de Pedido está aguardando uma solicitação.
falso: ou não informado: Não é obrigatório fazer solicitação.

sendTracking

boolean

Este campo indica se é necessário que o Serviço de Software faça uma solicitação ao terminal para informar o Aplicativo de Pedido sobre atualizações de entrega.
true: Indica que o Aplicativo de Pedido está aguardando uma solicitação.
falso: ou não informado: Não é obrigatório fazer solicitação.

extraInfo

string

Informações extras, se necessário


  • Estrutura Data (dentro de type):
    Âncora
    table_type
    table_type
EnumValorDescrição
DELIVERY DELIVERY 
Para pedidos que serão entregues no endereço do cliente.
TAKEOUT TAKEOUT 
Pedidos que serão retirados no estabelecimento pelo cliente.
INDOOR INDOOR 
Pedidos que serão consumidos dentro do estabelecimento.
TABLE TABLE 
Pedidos que serão consumidos à mesa.
CARD CARD 
Pedidos que terão seu consumo alocado no cartão do estabelecimento.
COUNTER COUNTER 
Pedidos que serão atendidos no balcão do estabelecimento.*


  • Estrutura Enumeração lastEvent (dentro de data):
    Âncora
    table_lastEvent
    table_lastEvent
EnumValueDescrição
CREATEDCREATEDCriado o pedido foi criado no sistema
CONFIRMEDCONFIRMEDConfirmado o pedido foi confirmado pelo estabelecimento
DISPATCHEDDISPATCHEDDespachado o pedido foi enviado para entrega
READY_FOR_PICKUPREADY_FOR_PICKUPPronto para Retirada o pedido está pronto para ser retirado
PICKUP_AREA_ASSIGNEDPICKUP_AREA_ASSIGNEDÁrea de Retirada Atribuída uma área específica para retirada foi designada para o pedido
DELIVEREDDELIVERED

Entregue o pedido foi entregue ao cliente

CONCLUDEDCONCLUDEDConcluído o pedido foi totalmente processado e finalizado
CANCELLATION_REQUESTEDCANCELLATION_REQUESTEDCancelamento Solicitado um pedido de cancelamento foi feito
CANCELLATION_REQUEST_DENIEDCANCELLATION_REQUEST_DENIEDSolicitação de Cancelamento Negada o pedido de cancelamento foi negado
CANCELLEDCANCELLEDCancelado: o pedido foi cancelado
ORDER_CANCELLATION_REQUESTORDER_CANCELLATION_REQUESTSolicitação de Cancelamento de Pedido uma solicitação de cancelamento do pedido foi enviada
CANCELLED_DENIED CANCELLED_DENIED Cancelamento Negado o cancelamento do pedido foi negado


  • Estrutura Enumeração orderTiming (dentro de data):
    Âncora
    table_orderTiming
    table_orderTiming
EnumValueDescrição
INSTANTINSTANTInstantâneo pedido será processado e entregue imediatamente
SCHEDULEDSCHEDULEDAgendado pedido foi programado para ser entregue em um horário específico no futuro


  • Estrutura Data (dentro de merchant):
    Âncora
    table_merchant
    table_merchant
CampoValorDescrição
idstringIdentificador Único. Identifica o estabelecimento comercial nos diferentes sistemas com os quais o estabelecimento comercial irá se comunicar.
Este ID deve ser gerado pelo Software Service do comerciante.
Para evitar duplicatas entre diferentes comerciantes, é recomendado que o software crie o MerchantId usando:
Documento do comerciante + UUID. Se isso não for possível, recomenda-se usar pelo menos um UUID.
namestringNome público do comerciante


  • Estrutura Data (dentro de items):
    Âncora
    table_items
    table_items
CampoValorDescrição
idstringIdentificador único do item
indexstringPosição do item (opcional)
namestringNome do produto
externalCodestringCódigo externo do produto (opcional)
unitstringUnidade de medida do item (veja na tabela unit)
eanstringCódigo de barras EAN do item (opcional)
quantitynumberQuantidade de itens
specialInstructionsstringInstruções especiais sobre o item (opcional)
unitPricearrayPreço por unidade, considerando 4 casas decimais (veja tabela de unitPrice)
originalPricearrayPreço original do produto (opcional) (veja tabela de originalPrice)
optionsPricearrayPreço total das opções (opcional) (veja tabela de optionsPrice)
totalPricenumberPreço total do item (veja tabela de totalPrice)
optionsarrayExtras opcionais escolhidos pelo consumidor. (veja na tabela de options)
productionPointstringPonto de produção do produto


  • Estrutura Enumeração Consumption - items (dentro de unit):
    Âncora
    table_unit
    table_unit
EnumValorDescrição
UNUNUnidade de medida simples
KGKGQuilograma
LLLitro
OZOZOnça
LBLBLibra
GALGALGalão


  • Estrutura Consumption - items (dentro de unitPrice):
    Âncora
    table_unitPrice
    table_unitPrice
CampoValorDescrição
valuenumberValor do preço
currencystringCódigo da moeda ISO 4217


  • Estrutura Consumption - items (dentro de originalPrice):
    Âncora
    table_originalPrice
    table_originalPrice
CampoValorDescrição
valuenumberValor do preço
currencystringCódigo da moeda ISO 4217


  • Estrutura Consumption - items (dentro de optionsPrice):
    Âncora
    table_optionsPrice
    table_optionsPrice
CampoValorDescrição
valuenumberValor do preço
currencystringCódigo da moeda ISO 4217


  • Estrutura Consumption - items (dentro de totalPrice):
    Âncora
    table_totalPrice
    table_totalPrice
CampoValorDescrição
valuenumberValor do preço
currencystringCódigo da moeda ISO 4217


  • Estrutura Data - items (dentro de options):
    Âncora
    table_options
    table_options
CampoValorDescrição
indexstringPosição da opção (opcional)
idstringIdentificador único da opção
namestringNome da opção

externalCode

stringCódigo do produto externo
unitenumUnidade de medida da opção (veja na tabela unit)
eanstringEAN é o padrão de código de barras usado nos itens.
quantitynumberQuantidade de itens opcionais
unitPricearrayPreço por unidade, considerando 4 casas decimais (veja tabela de unitPrice).

originalPrice

arrayPreço original do produto (opcional) (veja tabela de originalPrice).
totalPricearrayPreço total da opção (veja tabela de totalPrice)
specialInstructionsstringInstruções especiais sobre a opção (opcional)
productionPointstringPonto de produção da opção (opcional)


  • Estrutura Data (dentro de otherFees):
    Âncora
    table_otherFees
    table_otherFees
CampoValorDescrição
namestringNome relacionado às taxas
typeenumTipo da taxa (veja na tabela type)
receivedByenumPedido recebido por (veja na tabela receivedBy)
receiverDocumentstringDocumento do receptor de outras taxas
pricearrayPreço da taxa(veja tabela de price).
observationstringObservação de outras taxas. Quaisquer comentários extras


  • Estrutura Enumeração Data - otherFees (dentro de type):
    Âncora
    table_OrderFeesType
    table_OrderFeesType
EnumValorDescrição
DELIVERY_FEEDELIVERY_FEETaxa de entrega
SERVICE_FEESERVICE_FEETaxa de serviço
TIPTIPGorjeta


  • Estrutura Enumeração Data - otherFees (dentro de receivedBy):
    Âncora
    table_receivedBy
    table_receivedBy
EnumValorDescrição
MARKETPLACEMARKETPLACEEntidade que recebeu o pedido é o marketplace
MERCHANTMERCHANTEntidade que recebeu o pedido é o comerciante
LOGISTIC_SERVICESLOGISTIC_SERVICESEntidade que recebeu o pedido é a logística


  • Estrutura Data - otherFees (dentro de price):
    Âncora
    table_price
    table_price
CampoValorDescrição
valuenumberValor do preço
currencystringCódigo da moeda ISO 4217


  • Estrutura Data (dentro de discounts):
    Âncora
    table_discounts
    table_discounts
CampoValorDescrição
valuenumberValor do desconto
targetenumDestino do desconto (vejna na tabela de cart)
targetIdstring

Identificador do alvo (obrigatório quando target = ITEM).

sponsorshipValues

arrayValores patrocinados por qualquer uma das partes. A soma dos valores listados neste atributo deverá corresponder ao valor informado no atributo valor acima (veja na tabela sponsorshipValues)


  • Estrutura Data - discounts - (dentro de target):
    Âncora
    table_price
    table_price
EnumValorDescrição
CARTCARTCarrinho o desconto aplica-se ao valor total do carrinho
DELIVERY_FEEDELIVERY_FEETaxa de entrega o desconto aplica-se ao valor da taxa de entrega. Código da moeda ISO 4217
ITEM ITEM Item o desconto aplica-se a um item específico do pedido. Obrigatório apenas para target = ITEM


  • Estrutura Enumeração Data - discounts(dentro de sponsorshipValues):
    Âncora
    table_sponsorshipValues
    table_sponsorshipValues
EnumValorDescrição
MARKETPLACEMARKETPLACEEntidade responsável pela entrega é o marketplace
MERCHANTMERCHANTEntidade responsável pela entrega é o comerciante


  • Estrutura Data (dentro de total):
    Âncora
    table_total
    table_total
CampoValorDescrição
itemsnumberSoma do preço total dos itens listados no atributo itens
otherFeesnumberSoma do valor total das demais taxas listadas no atributo otherFees. Se não houver, use 0
discountnumberSoma de quaisquer descontos que possam estar listados no atributo descontos. Se não houver, use 0
orderAmountnumberO valor final da encomenda (itens + outrasTaxas +Taxas adicionais +Taxa de entrega - descontos)
additionalFeesnumberSoma do valor total das taxas adicionais listadas no atributo adicionalFees. Se não houver, use 0
deliveryFeenumberSoma do valor total da taxa de entrega listada no atributo deliveryFee. Se não houver, use 0


  • Estrutura Data (dentro de payment):
    Âncora
    table_payments
    table_payments
CampoValorDescrição

prepaid

numberValor pago antecipadamente

pending

numberValor que ainda será pago

methods

arrayA forma de pagamento utilizada. Seja online, na entrega, cartão de crédito, voucher, dinheiro, etc. (veja tabela methods)


  • Estrutura Enumeração Data - payment (dentro de methodos):
    Âncora
    table_methods
    table_methods
EnumValorDescrição

CREDIT

CREDITCrédito pagamento realizado com cartão de crédito

DEBIT

DEBITDébito pagamento realizado com cartão de débito

MEAL_VOUCHER

MEAL_VOUCHERVale-refeição pagamento realizado com um vale-refeição

FOOD_VOUCHER

FOOD_VOUCHERVale-alimentação pagamento realizado com um vale-alimentação

DIGITAL_WALLET

DIGITAL_WALLET

Carteira digital pagamento realizado via uma carteira digital.

PIX

PIXPix pagamento realizado via o sistema de pagamento instantâneo Pix

CASH

CASHDinheiro pagamento realizado em espécie

CREDIT_DEBIT

CREDIT_DEBITCrédito/Débito combinação de cartão de crédito e débito

COUPON

COUPONCupom pagamento realizado com um cupom de desconto

REDEEM

REDEEMResgatar pagamento feito através de um programa de recompensas

PREPAID_REDEEM

PREPAID_REDEEMResgatar pré-pago pagamento feito com valores pré-pagos em um programa de recompensas

OTHER

OTHEROutro pagamento realizado com outro método que não está listado


  • Estrutura Data (dentro de customer):
    Âncora
    table_customer
    table_customer
CampoValorDescrição

id

stringUm identificador exclusivo relacionado ao consumidor. Caso o Aplicativo de Pedidos não possua um Id para o cliente, este Id poderá ser gerado no momento da criação do pedido

name

stringNome do cliente

document

stringDocumento do cliente. Este documento poderá ser enviado para tratar de questões tributárias

phone

stringTelefone do cliente. Aqui você pode inserir diretamente o número de telefone do cliente (desde que o cliente tenha dado permissão para que esses dados sejam compartilhados, de acordo com as políticas locais) ou outro número de telefone (como o número de telefone da central de atendimento do aplicativo de pedidos) onde o comerciante possa se comunicar sobre problemas do pedido que afetam o cliente (como problemas de saúde) (veja tabela phone)

email

stringE-mail do cliente. Este documento poderá ser enviado para tratar de questões tributárias

ordersCountOnMerchant

stringNúmero total de pedidos que o cliente já fez no estabelecimento


  • Estrutura Data - customer (dentro de phone):
    Âncora
    table_phone
    table_phone
CampoValorDescrição
numberstringNúmero de telefone do cliente do pedido
extensionstringSolicitar extensão de telefone do cliente


  • Estrutura Data (dentro de schedule):
    Âncora
    table_schedule
    table_schedule
CampoValorDescrição

scheduledDateTimeStart

stringData e hora em que o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedidos utilizando o tempo médio de preparo dos pratos. O padrão é o mesmo horário de criação do pedido

scheduledDateTimeEnd

stringData e hora em que o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedidos utilizando o tempo médio de preparo dos pratos. O padrão é o mesmo horário de criação do pedido


  • Estrutura Data (dentro de delevery):
    Âncora
    table_delivery
    table_delivery
CampoValorDescrição

deliveredBy

enumSolicitar entrega por (veja na tabela de deliveredBy)

deliveryAddress

arrayO endereço onde o pedido será entregue (veja na tabela deliveryAddress)

estimatedDeliveryDateTime

stringData e hora estimada de entrega. A mesma data mostrada ao cliente, na interface do Aplicativo de Pedidos

deliveryDateTime

stringData de entrega. A data e hora em que a entrega realmente ocorreu.


  • Estrutura Enumeração Data - delivery (dentro de deliveredBy):
    Âncora
    table_deliveredBy
    table_deliveredBy
EnumValorDescrição
MARKETPLACEMARKETPLACEEntidade responsável pela entrega é o marketplace
MERCHANTMERCHANTEntidade responsável pela entrega é o comerciante


  • Estrutura Data - delivery (dentro de deliveryAddress):
    Âncora
    table_deliveryAddress
    table_deliveryAddress
CampoValorDescição

country

stringTipo de pedido País do endereço de entrega. *Código de país ISO 3166-1 alfa-2 de duas letras.

state

stringSubdivisão de estado ou país. É recomendado (mas não obrigatório) que você use a representação ISO 3166-2

city

stringNome da cidade

district

stringBairro ou Distrito

street

stringNome da rua

number

stringNúmero da rua

complement

stringComplemento de endereço

reference

stringReferência de endereço

formattedAddress

stringTexto de endereço totalmente formatado

postalCode

stringCódigo postal

coordinates

arrayTipo de pedido Endereço de entrega Coordenadas latitude (veja na tabela coordinates)


  • Estrutura Data - delivery - deliveryAddress (dentro de coordinates):
    Âncora
    table_coordinates
    table_coordinates
CampoValorDescrição

latitude

numberLatitude em graus. Os valores estão restritos ao intervalo [[-90, 90]]

longitude

numberLongitude em graus. Os valores estão restritos ao intervalo [[-180, 180]]


  • Estrutura Data (dentro de takeout):
    Âncora
    table_takeout
    table_takeout
CampoValorDescrição
modeenumModo de pedido para viagem

takeoutDateTime

stringData e hora em que o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedidos utilizando o tempo médio de preparo dos pratos. O padrão é o mesmo horário de criação do pedido


  • Estrutura Data (dentro de indoor):
    Âncora
    table_indoor
    table_indoor
CampoValorDescrição
modeenumModo de pedido para viagem

indoorDateTime

stringData e hora em que o pedido estará pronto. Pode ser calculado pelo Aplicativo de Pedidos utilizando o tempo médio de preparo dos pratos. O padrão é o mesmo horário de criação do pedido

place

stringO identificador do local (obrigatório se o modo for PLACE)

tab

stringA guia ou identificador do cartão de controle (obrigatório se o modo for TAB)


  • Estrutura Enumeração Data - indoor (dentro de mode):
EnumValorDescrição
DEFAULTDEFAULTPadrão isado para pedidos feitos no Aplicativo de Pedido para serem consumidos dentro do estabelecimento sem uma localização específica
PLACEPLACELugar usado para pedidos feitos no Aplicativo de Pedido para serem consumidos dentro do estabelecimento em uma localização específica já informada, como uma mesa ou balcão
TABTABComanda usado para estabelecimentos que controlam pedidos por meio de comandas ou cartões de controle (pode ser usado junto com o campo de localização)


  • Estrutura Consumption (dentro de table):
    Âncora
    table_table
    table_table
CampoValorDescrição

waiterCode

numberO identificador do garçom

tableNumber

numberO identificador da tabela

chairNumber

numberO identificador do presidente


  • Estrutura Consumption (dentro de card):
    Âncora
    table_card
    table_card
CampoValorDescrição

waiterCode

numberO identificador do garçom

tableNumber

numberO identificador da tabela

deliveryTableNumber

numberO identificador da mesa
Dica
titleCampos obrigatórios

Campos marcaos com o * (asteristico) o seu preenchimento é obrigatório


...


...

Dica
titleSaiba mais!

Para obter detalhes técnicos sobre o envio de requisições ao endpoint newOrder, incluindo a estrutura do corpo da requisição para itens com valor integral  acesse a documentação clicando aqui.

...

Dica
titleSaiba mais!

Para obter detalhes técnicos sobre o envio de requisições ao endpoint newOrder, incluindo a estrutura do corpo da requisição para varios itens  acesse a documentação clicando aqui.

...


Templatedocumentos