> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bulkroute.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Como Rastrear uma Entrega

> Veja onde está sua carga em tempo real, com timeline unificada de todas as transportadoras.

## Quando usar

Você despachou e quer saber onde a carga está, quando chega, ou por que atrasou. O BulkRoute rastreia todas as transportadoras em um só lugar.

## Onde ver o rastreio

### Pipeline (visão geral)

1. Acesse **Visão** > **Pipeline** (`/admin/pipeline`)
2. Veja o quadro Kanban com todos os envios por status:
   * `PENDING` → `DISPATCHED` → `PICKED_UP` → `IN_TRANSIT` → `OUT_FOR_DELIVERY` → `DELIVERED`
   * Coluna `FAILED` para entregas com problema
3. Filtre por transportadora ou por frota própria/terceirizada
4. Clique em qualquer envio para ver detalhes

### Detalhe do envio (timeline completa)

1. Clique em qualquer envio do pipeline ou da lista
2. Veja a **timeline** com todos os eventos:
   * Data e hora de cada evento
   * Status normalizado (padrão BulkRoute)
   * Descrição do que aconteceu
   * Local (quando disponível)

### Tracking Live (tempo real)

1. Acesse **Campo** > **Tracking Live** (`/admin/tracking-live`)
2. Veja a posição GPS dos motoristas da frota própria em tempo real
3. Eventos são atualizados via SSE (Server-Sent Events) — não precisa recarregar

<Note>
  Tracking Live com GPS funciona **apenas para frota própria** (motorista com o app PWA). Transportadoras terceirizadas são rastreadas por polling a cada 15 minutos ou por webhook.
</Note>

## Como o rastreio funciona (3 camadas)

O BulkRoute usa 3 camadas para manter o status sempre atualizado:

### 1. Webhook (tempo real)

Transportadoras modernas enviam atualizações push imediatas:

* Lalamove, Kombex, DHL, FedEx

### 2. Polling (a cada 15 minutos)

Para transportadoras que não enviam webhook:

* Correios, Braspress, Jadlog, SSW, etc.
* O BulkRoute consulta automaticamente a cada 15 minutos
* Só consulta envios ativos (coletados, em trânsito, em rota de entrega)

### 3. App do Motorista (frota própria)

Motoristas da frota própria atualizam pelo celular:

* Saída para entrega
* Tentativa frustrada (com foto e motivo)
* Entrega concluída (com assinatura digital)
* Geolocalização GPS de cada evento

## Página de rastreio com sua marca (Branded Tracking)

Em vez de mandar seu cliente para o site da transportadora, envie o link do BulkRoute:

```
https://www.bulkroute.com.br/tracking/BRFMSF5NRT9S0M
```

A página mostra:

* **Logo da sua empresa** (light e dark mode)
* **Cores da sua marca**
* **Título e rodapé customizados**
* **Timeline visual** limpa e descomplicada

Para configurar: **Parceiros** > **Minha Empresa** > **Branding**.

<Accordion title="Domínio próprio (Enterprise)">
  Clientes Enterprise podem usar seu próprio domínio:

  ```
  https://rastreio.suaempresa.com.br/tracking/BRFMSF5NRT9S0M
  ```

  Para configurar:

  1. Crie um CNAME `rastreio.suaempresa.com.br` → `saas.bulkroute.com.br`
  2. Entre em contato com `suporte@bulkroute.com.br` para ativar o Cloudflare for SaaS
  3. Configure o domínio customizado no painel de Branding
</Accordion>

## Notificações automáticas ao cliente

O BulkRoute envia notificações por **E-mail** e **SMS** ao destinatário em eventos-chave:

| Evento            | Quando                                    |
| :---------------- | :---------------------------------------- |
| Coletado          | Carga coletada na expedição               |
| Saiu para entrega | Em rota final de entrega                  |
| Entregue          | Entrega concluída + link de avaliação NPS |
| Exceção           | Ocorrência ou tentativa frustrada         |
| Reagendado        | Reagendamento confirmado                  |

Para configurar: **Sistema** > **Notificações** > **Configuração**.

<Accordion title="Webhook para seu sistema (avançado)">
  Se você tem um sistema próprio, pode receber atualizações via webhook:

  ```json theme={null}
  {
    "event": "shipment.status_updated",
    "data": {
      "shipmentId": "shp_987654321",
      "trackingCode": "BR123456789BR",
      "carrierCode": "braspress",
      "previousStatus": "IN_TRANSIT",
      "currentStatus": "DELIVERED"
    }
  }
  ```

  Cada requisição inclui o header `X-BulkRoute-Signature` com HMAC-SHA256. Veja [Webhooks](/api-reference/webhooks) para detalhes.
</Accordion>
