Este documento detalha a estrutura e funcionamento do webhook de pedidos, que é acionado automaticamente em situações específicas. O webhook é configurado para ser acionado sempre que um pedido é criado ou atualizado no sistema, garantindo que todas as alterações e novos pedidos sejam enviados em tempo real para sistemas integrados ou de terceiros.
O webhook transmite informações detalhadas sobre o pedido, incluindo dados como ID do pedido, localização, itens, datas de criação e atualização, estado do pedido, informações da empresa e site/filial, entre outros detalhes relevantes para o acompanhamento e processamento logístico. Essa integração permite que sistemas externos mantenham a consistência de dados e atualizações sem a necessidade de consultas contínuas, proporcionando um fluxo de trabalho mais eficiente e atualizado.
Os dados são enviados no formato JSON e contêm informações específicas sobre cada aspecto do pedido, conforme detalhado na tabela abaixo.
Exemplo do Objeto de Pedidos
Campo | Tipo | Descrição | Exemplo |
---|---|---|---|
entity.id | String | ID da entidade do pedido | "123abc456def789ghi012jkl" |
entity.type | String | Tipo da entidade | "order" |
data.type | String | Tipo de serviço | "service" |
data.service_type | String | Tipo específico de serviço | "delivery" |
data.loads | Array of Numbers | Cargas associadas ao pedido | [5, 15, 25, 35, 45, 55] |
data.additional_info | Array of Strings | Informações adicionais relacionadas ao pedido | ["Nota importante", "Detalhe adicional", "Aviso"] |
data.state | String | Estado atual do pedido | "new" |
data._id | String | ID do pedido | "abc123def456ghi789jkl012" |
data.location | Object | Localização associada ao pedido | |
data.location.geocode_status | String | Status do geocode | "found" |
data.location._id | String | ID da localização | "loc789ghi123abc456def012" |
data.location.code | String | Código da localização | "1001" |
data.location.name | String | Nome do cliente | "Cliente Fictício" |
data.location.address | Object | Endereço completo do cliente | |
data.location.address.geocode | Object | Coordenadas geográficas | {"lat": -10.123456, "lng": -50.654321} |
data.location.address._id | String | ID do endereço | "addr123def456ghi789jkl012" |
data.location.address.route | String | Rua do endereço | "Rua Exemplo" |
data.location.customer_profile | String/Null | Perfil do cliente | null |
data.location.fullAddress | String | Endereço completo formatado | "Rua Exemplo, 100, Bairro Central, Cidade Fictícia, 12345678" |
data.location.id | String | ID de referência da localização | "loc789ghi123abc456def012" |
data.schedule_date | Array | Datas programadas para o pedido | [] |
data.items | Array of Objects | Lista de itens do pedido | [{...}, {...}] |
data.items._id | String | ID do item | "item123abc456def789jkl012" |
data.items.code | String | Código do item | "101" |
data.items.name | String | Nome do item | "Produto Fictício" |
data.items.qty | Number | Quantidade do item | 8 |
data.order_number | String | Número do pedido | "ORD123456" |
data.date | String/Date | Data de criação do pedido | "2024-11-07T12:00:00.000Z" |
data.variable_service_time | Array of Objects | Tempo de serviço variável associado | [{...}] |
data.variable_service_time._id | String | ID do tempo de serviço variável | "time123abc456def789jkl012" |
data.variable_service_time.value | Number | Valor do tempo de serviço | 45 |
data.variable_service_time.field | String | Campo associado ao tempo de serviço | "loads.1" |
data.routes_assigned | Array of Objects | Informações sobre as rotas atribuídas | [{...}] |
data.routes_assigned._id | String | ID da atribuição de rota | "route123abc456def789jkl012" |
data.routes_assigned.route | String | ID da rota atribuída | "routeXYZ123" |
data.routes_assigned.reason | String | Razão para a atribuição de rota | "Ajuste operacional" |
data.routes_assigned.date | String/Date | Data da atribuição de rota | "2024-11-07T14:00:00.000Z" |
data.shipment_number | String | Número da remessa | "3" |
data.updatedAt | String/Date | Data da última atualização | "2024-11-12T16:00:00.000Z" |
data.company | Object | Informações da empresa | |
data.company.id | String | ID da empresa | "comp123456789" |
data.company.name | String | Nome da empresa | "Empresa Fictícia" |
data.company.company_info | Object | Informações adicionais da empresa | |
data.company.company_info.logo | String | URL do logo da empresa | "https://empresa-ficticia.com/logo.png" |
data.site | Object | Informações sobre o site/filial | |
data.site.id | String | ID do site | "site123456789" |
data.site.code | String | Código do site | "5001" |
data.site.name | String | Nome do site/filial | "Filial Fictícia" |
action | String | Ação realizada | "update" |
date | String/Date | Data da execução da ação | "2024-11-12T16:00:00.000Z" |
Como Configurar o Webhook de Exportação de Pedidos
Para configurar o webhook de exportação de pedidos, siga os seguintes passos:
1 - Acesse a Página de Webhook. Leia o documento: https://routeasy.readme.io/reference/configurando-os-webhooks
2 - Configuração da Exportação:
- Dentro da seção de configurações, localize a opção Exportação de Pedido.
- Selecione a funcionalidade Exportar criação ou atualização de pedido para ativar o webhook que enviará as informações sempre que um pedido for criado ou atualizado.
3 - Salvar Configuração:
- Revise as informações e parâmetros que foram configurados.
- Confirme e salve as configurações para que o webhook seja ativado e comece a operar de acordo com as ações definidas.
Uma vez configurada, a exportação de pedidos garantirá que todas as criações e atualizações de pedidos sejam automaticamente enviadas para os sistemas integrados, proporcionando um fluxo de dados contínuo e atualizado.