Versões comparadas

Chave

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

CONTEÚDO

...

Este endpoint é utilizado para envio de requisição para novos pedidos na API Order mesa via barrament.


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

...

URLmeuelevestage
Método
POSThttps://api-barramento.
meueleve.com.br/order/newOrderProdução


...


03.

...

DICIONÁRIO
Âncora
dicionario
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 itens fracionando  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.

...

Bloco de código
titleJSON para pedido com inteiro
linenumberstrue
{
   "integrationHubServiceId":"933aadb4-c33b-40b8-8285-bf1e575d8b38",
   "data":{
      "id":"9ec389e5-7582-4768-875b-ee7c309aa34f",
      "type":"TABLE",
      "displayId":"29",
      "createdAt":"2024-06-24T17:35:00",
      "orderTiming":"2024-06-24T17:40:24",
      "preparationStartDateTime":"2024-06-24T18:00:00",
      "merchant":{
         "id":"c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
         "name":"BOTECO DO ALBINO"
      },
      "items":[
         {
            "id":"3973594021",
            "index":"21",
            "name":"MARACUJA",
            "externalCode":"58",
            "unit":"UN",
            "quantity":1.0,
            "specialInstructions":"Teste",
            "unitPrice":{
               "value":61.00,
               "currency":"R$"
            },
            "optionsPrice":{
               "value":0.0,
               "currency":"R$"
            },
            "totalPrice":{
               "value":61.00,
               "currency":"R$"
            },
            "otherFees":[]
         }
      ],
      "total":{
         "items":61.00,
         "otherFees":0,
         "discount":0.00,
         "orderAmount":61.00,
         "additionalFees":0,
         "deliveryFee":0
      },
      "payments":{
         "prepaid":0.0,
         "pending":0.0,
         "methods":[
            {
               "value":61.00,
               "currency":"BRL",
               "type":"PREPAID",
               "method":"credit",
               "methodInfo":"Visa",
               "changeFor":0.0
            }
         ]
      },
      "delivery":null,
      "extraInfo":"Teste",
      "schedule":null,
      "indoor":null,
      "takeout":null,
      "table":{
         "waiterCode":"9999",
         "tableNumber":"29",
         "chairNumber":"1"
      },
      "card":null
   }
}
Nota
titleNota: HTTP Status Code = 200 OK

Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status.

...

Bloco de código
titleJSON para pedido com item fracionado
linenumberstrue
{
   "integrationHubServiceId":"a13ea12d-1ffc-4f4c-a3e8-a384fe0e9e05",
   "data":{
      "id":"f853a079-d0cb-4612-847f-430460485c02",
      "type":"TABLE",
      "displayId":"29",
      "createdAt":"2024-06-24T17:35:00",
      "orderTiming":"2024-06-24T17:40:24",
      "preparationStartDateTime":"2024-06-24T18:00:00",
      "merchant":{
         "id":"3d0cbd44-a6c4-469c-8ab3-c83700672ee1",
         "name":"BOTECO DO ALBINO"
      },
      "items":[
         {
            "id":"3973594022",
            "index":"22",
            "name":"MARACUJA",
            "externalCode":"58",
            "unit":"UN",
            "quantity":0.5,
            "specialInstructions":"Teste",
            "unitPrice":{
               "value":61.00,
               "currency":"R$"
            },
            "optionsPrice":{
               "value":0.0,
               "currency":"R$"
            },
            "totalPrice":{
               "value":30.50,
               "currency":"R$"
            },
            "otherFees":[]
         }
      ],
      "total":{
         "items":30.50,
         "otherFees":0,
         "discount":0.00,
         "orderAmount":20.50,
         "additionalFees":0,
         "deliveryFee":0
      },
      "payments":{
         "prepaid":0.0,
         "pending":0.0,
         "methods":[
            {
               "value":30.50,
               "currency":"BRL",
               "type":"PREPAID",
               "method":"credit",
               "methodInfo":"Visa",
               "changeFor":0.0
            }
         ]
      },
      "delivery":null,
      "extraInfo":"Teste",
      "schedule":null,
      "indoor":null,
      "takeout":null,
      "table":{
         "waiterCode":"9999",
         "tableNumber":"29",
         "chairNumber":"1"
      },
      "card":null
   }
}
Nota
titleNota: HTTP Status Code = 200 OK

Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status.

...

Bloco de código
titleJSON pedidos com desconto
linenumberstrue
{
  "integrationHubServiceId":"4c9952fd-90d6-46f1-afd2-381c21e73cfc",
  "data":{
     "id":"4c9952fd-90d6-46f1-afd2-381c21e73cfc",
     "type":"TABLE",
     "displayId":"9",
     "createdAt":"2024-06-24T17:35:00",
     "orderTiming":"2024-06-24T17:40:24",
     "preparationStartDateTime":"2024-06-24T18:00:00",
     "merchant":{
        "id":"c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
        "name":"BOTECO DO ALBINO"
     },
     "items":[
        {
           "id":"9",
           "index":"9",
           "name":"MARACUJA",
           "externalCode":"58",
           "unit":"UN",
           "quantity":1.0,
           "specialInstructions":"Teste",
           "unitPrice":{
              "value":61.00,
              "currency":"R$"
           },
           "optionsPrice":{
              "value":0.0,
              "currency":"R$"
           },
           "totalPrice":{
              "value":61.00,
              "currency":"R$"
           }
        }
     ],
     "otherFees":[],
     "discounts":[
        {
           "value":10.0,
           "target":"ITEM",
           "targetId":"9",
           "sponsorshipValues":[
              {
                 "name":"MARKETPLACE",
                 "value":0.0
              }
           ]
        }
     ],
     "total":{
        "items":61.00,
        "otherFees":0,
        "discount":10.0,
        "orderAmount":51.00,
        "additionalFees":0,
        "deliveryFee":0
     },
     "payments":{
        "prepaid":0.0,
        "pending":0.0,
        "methods":[
           {
              "value":51.00,
              "currency":"BRL",
              "type":"PREPAID",
              "method":"credit",
              "methodInfo":"Visa",
              "changeFor":0.0
           }
        ]
     },
     "delivery":null,
     "extraInfo":"Teste",
     "schedule":null,
     "indoor":null,
     "takeout":null,
     "table":{
        "waiterCode":"9999",
        "tableNumber":"9",
        "chairNumber":"1"
     },
     "card":null
  }
}

...

Bloco de código
titleJSON pedidos com item fracionando
linenumberstrue
{
	"integrationHubServiceId": "72ec722e-b643-4076-b1cd-ef388901ba66",
	"data": {
		"id": "57e20fc5-bea5-4372-9bfc-126e1961d99b",
		"type": "TABLE",
		"displayId": "9",
		"createdAt": "2024-06-24T17:35:00",
		"orderTiming": "2024-06-24T17:40:24",
		"preparationStartDateTime": "2024-06-24T18:00:00",
		"merchant": {
			"id": "c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
			"name": "BOTECO DO ALBINO"
		},
		"items": [
			{
				"id": "10",
				"index": "10",
				"name": "MARACUJA",
				"externalCode": "58",
				"unit": "UN",
				"quantity": 0.5,
				"specialInstructions": "Teste",
				"unitPrice": {
					"value": 61.00,
					"currency": "R$"
				},
				"optionsPrice": {
					"value": 0.0,
					"currency": "R$"
				},
				"totalPrice": {
					"value": 30.50,
					"currency": "R$"
				}
			}
		],
		"otherFees": [],
		"discounts": [
			{
				"value": 10.0,
				"target": "ITEM",
				"targetId": "10",
				"sponsorshipValues": [
					{
						"name": "MARKETPLACE",
						"value": 0.0
					}
				]
			}
		],
		"total": {
			"items": 30.50,
			"otherFees": 0,
			"discount": 10.0,
			"orderAmount": 20.50,
			"additionalFees": 0,
			"deliveryFee": 0
		},
		"payments": {
			"prepaid": 0.0,
			"pending": 0.0,
			"methods": [
				{
					"value": 20.50,
					"currency": "BRL",
					"type": "PREPAID",
					"method": "credit",
					"methodInfo": "Visa",
					"changeFor": 0.0
				}
			]
		},
		"delivery": null,
		"extraInfo": "Teste",
		"schedule": null,
		"indoor": null,
		"takeout": null,
		"table": {
			"waiterCode": "9999",
			"tableNumber": "10",
			"chairNumber": "1"
		},
		"card": null
	}
}
Bloco de código
titleNota: HTTP Status Code = 200 OK
linenumberstrue
Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status.
Informações
titleNota:

Neste exemplo, os dados retornados incluem:

  • success: Indica se a operação foi bem-sucedida.
  • error: Contém informações sobre erros, se houver.
  • integrationHubServiceId: O identificador do serviço de integração.
  • orderKeyType: O tipo da chave do pedido (neste caso, "TABLE").
  • orderKey: A chave do pedido, que pode ser uma lista de identificadores.
  • lastestUpdatedStatus: A data e hora da última atualização do status do pedido.
  • items: Uma lista de itens relacionados ao pedido, onde cada item inclui:
    • id: O identificador do item.
    • status: O status atual do item, incluindo um código e uma descrição.
    • deliveryAgent: Informações sobre o agente de entrega, se aplicável.
    • deliveryDateTime: Data e hora de entrega, se aplicável.
    • cancellationReason: Motivo do cancelamento, se aplicável.
    • tableCardNumber: O número da mesa associada ao pedido.
Informações
titleInformação:

integrationHubServiceId: é um código da integração da loja com o Integration Hub

orderKey: é o código do pedido

04. ERROS

A seguir, alguns dos erros comuns que podem ser apresentados ao lidar com requisições HTTP e suas respectivas respostas:

...

O código de status HTTP 400, conhecido como "Bad Request" (Requisição Inválida), indica que o servidor não pôde processar a requisição do cliente devido a uma sintaxe inválida, estrutura malformada ou dados inválidos presentes na requisição.

01. Formando inválido do JSON esperado.

Bloco de código
titleJSON Inválido
linenumberstrue
{
    "integrationHubServiceId": "393d9572-2ec9-4cda-9ad3-5b69e02c988d",
	  "orderKeyType": "string",
	   "orderKey": ["string"]
}
Bloco de código
titleJSON Resposta
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
		}
	]
}

02. JSON enviando faltando um ou mais campos.

Bloco de código
titleJSON Inválido
linenumberstrue
{
    "integrationHubServiceId": "a5c4e135-aacd-49c1-b051-160a78a83b56"
}
Bloco de código
titleJSON Resposta
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType is required"
		},
		{
			"key": "orderKey",
			"message": "body.orderKey is required"
		}
	]
}

03. GUID incorreto 

Bloco de código
titleJSON com o GUID inválido
linenumberstrue
{
    "integrationHubServiceId": "9a1cf326-c962-456f-8c49-c1bb2f340fc6A",
	  "orderKeyType": "TABLE",
	  "orderKey": []
}
Bloco de código
titleJSON Inválido GUID incorreto
linenumberstrue
{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "body.integrationHubServiceId must be a valid GUID"
		}
	]
}

04. Enviando uma requisição sem informar o código da orderKey corretamente

Bloco de código
titleJSON com sem informar o código da orderKey
linenumberstrue
{
    "integrationHubServiceId": "808c143d-d6d4-4b95-8c37-efa3a934f222",
	  "orderKeyType": "TABLE",
	  "orderKey": [""]
}
Bloco de código
titleJSON Response
linenumberstrue
{
	"errors": [
		{
			"key": 0,
			"message": "body.orderKey[0] is not allowed to be empty"
		}
	]
}
Nota
titleNota: HTTP Status Code = 400 Bad Request

A solicitação é inválida e não pôde ser processada devido a erros na entrada fornecida. Verifique os dados enviados e tente novamente.

...

O código de status HTTP 401, conhecido como "Unauthorized" (Não Autorizado), indica que a requisição não foi aplicada porque carece de credenciais de autenticação válidas para o recurso alvo. Diferente do código 403 (Forbidden), que significa que o servidor entendeu a requisição, mas se recusa a autorizá-la, o 401 é usado especificamente quando a autenticação é necessária e falhou ou ainda não foi fornecida.

Nota
titleNota: HTTP Status Code = 401 Unauthorized

A solicitação não pôde ser processada porque o usuário não possui as permissões necessárias. Verifique suas credenciais e tente novamente.

...

O código de status HTTP 403, conhecido como "Forbidden" (Proibido), indica que o servidor não entendeu a requisição do cliente por está tentando acessar uma URL incorreta

Bloco de código
titleURL enviada incorreda
https://api-barramento.meuelevestage.com/order/getStatuS
Bloco de código
titleJSON Response para URL incorreta
linenumberstrue
{
	"message": "Missing Authentication Token"
}
Nota
titleNota: HTTP Status Code = 403 - Forbidden

O cliente não enviou uma requisição para a URL  incorreta.

...

O código de status HTTP 404, conhecido como "Not Found" (Não Encontrado), indica que o servidor não encontrou o recurso solicitado. Isso pode ocorrer quando o integrationHubId  está incorreto ou inválido.

Bloco de código
titleIntegration Hub Code Inválido
linenumberstrue
{
    "integrationHubServiceId": "f1b874af-96ab-4535-aac3-25118fe586cc",
	  "orderKeyType": "TABLE",
	  "orderKey": ["5"]
}
Bloco de código
titleJSON Response
linenumberstrue
{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "Provider Merchant for integrationHubServiceId \"f1b874af-96ab-4535-aac3-25118fe586cc\" not found or disabled"
		}
	]
}
Nota
titleNota: HTTP Status Code = 404 - Not Found

IntegrationHubId incorreto ou inválido

...

O código de status HTTP 412, conhecido como "Precondition Failed" (Pré-condição Falhou), indica que o servidor não atendeu a uma das pré-condições que o cliente colocou no cabeçalho da requisição. 

Bloco de código
titleJSON
linenumberstrue
{
    "integrationHubServiceId": "8f7949c3-cdd6-4db0-8746-369e651026b4",
	  "orderKeyType": "TABLE",
	  "orderKey": []
}
Bloco de código
titleHTTP Status Code 412 = Precpndition Failed
linenumberstrue
{
	"message": "NOT_FOUND",
	"code": 412
}
Nota
titleNota: HTTP Status Code = 412 Precondition Failed

Alguma regra necessária para a execução da solicitação não foi atendida. É necessário analisar o conteúdo da resposta retornada para identificar os motivos.

...

O código de status HTTP 429, conhecido como "Too Many Requests" (Muitas Requisições), indica que o cliente excedeu o limite de requisições permitido para um determinado período de tempo. Esse limite é definido pelo servidor e pode variar de acordo com a política de limitação de taxa implementada.

Bloco de código
titleJSON da requisição
linenumberstrue
{
    "integrationHubServiceId": "7d7d205b-83ba-47c5-91ba-e4f32a2bbd9e",
	  "orderKeyType": "TABLE",
		"orderKey": ["5"]
}
Bloco de código
titleResposta da última execução
linenumberstrue
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "7d7d205b-83ba-47c5-91ba-e4f32a2bbd9e",
	"orderKeyType": "TABLE",
	"orderKey": [
		"5"
	],
	"lastestUpdatedStatus": "2024-07-02 18:54:28",
	"items": [
		{
			"id": "de9fd388-c223-4325-a64d-08889250f839",
			"status": {
				"code": 504,
				"description": "OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "5"
		}
	]
}
Nota
titleNota: HTTP Status Code = 429 - Too Many Requests

Alguma regra para atender ao seu pedido não foi cumprida; analise o corpo da resposta para descobrir as razões.

...


Templatedocumentos