Pular para o conteúdo principal

Notificações

O NDD Move utiliza webhook para realizar o envio de notificações de cada evento da viagem.

Atenção

Os dados devem ser enviados para a NDD para fins de configuração do webhook de notificações.

Como o webhook funciona no NDD Move?

Para cada etapa do processamento das informações da viagem, o NDD Move irá gerar notificações para acompanhamento do status.

Tipos de notificação que o NDD Move envia

TypeDescrição
1Viagem Criada
2Viagem iniciada
3Troca de motorista
4Confirmação de entrega (POD)
5Confirmação de Coletas
6Ocorrências
7Viagem finalizada

O que eu preciso para receber as notificações?

Para integrar a API do NDD Move e receber notificações importantes, como ocorrências da viagem e Confirmação de entrega, será necessário fornecer os dados de autorização e o endpoint POST, conforme abaixo:

Atenção

Os dados devem ser enviados para a NDD para fins de configuração do webhook de notificações.

Autorização

  • Disponibilizar para a NDD os dados de autorização para envio das notificações para a sua API.
CampoDescrição
URL do endpointEndpoint para gerar o token de autorização.
client_idIdentificador único para autenticação.
client_secretChave secreta para autenticação.

Endpoint de envio das notificações

  • Disponibilizar um endpoint POST para onde as notificações serão enviadas que seja capaz de processar os dados abaixo:
CampoDescrição
TypeTipo de notificação enviada.
IdIdentificador único do evento ou operação associado à notificação.
StatusStatus da operação. Pode ser 1 (Authorized) ou 2 (Failure).
MessageTexto descritivo detalhando o resultado do evento ou operação.

Exemplo de envio de notificação

  • Método: POST
  • URL: https://api.cliente.com.br/webhook/notifications

Cabeçalhos:

Content-Type: application/json
Authorization: Bearer <nosso_token_de_acesso>

Corpo

{
"ChaveAcessoCte": null,
"ChaveAcessoNfe": "42012583782446000142550500002017071123456786",
"ChaveAcessoMdfe": null,
"Numero": "201707",
"Serie": "50",
"NumeroViagem": "1300531",
"SerieViagem": "25",
"NumeroEntrega": "201707",
"SerieEntrega": "50",
"Status": "Ocorrência fora do raio",
"Recebimento": {
"NomeRecebedor": null,
"DocumentoRecebedor": null,
"Latitude": null,
"Longitude": null,
"FotoCanhoto": null,
"StatusProcessamentoSefaz": null
},
"Historico": [
{
"DataCriacao": "2025-01-22T20:03:58.350426",
"Descricao": "Local Fechado",
"StatusEvento": "Ocorrencia"
},
{
"DataCriacao": "2025-01-22T12:42:12.6310881",
"Descricao": "Criação da viagem",
"StatusEvento": "CriacaoViagem"
}
],
"Ocorrencia": [
{
"DataCriacao": "2025-01-22T20:03:57.6279424",
"Descricao": "Local fechado",
"NumeroOcorrencia": 7,
"TipoOcorrencia": "Local Fechado",
"Latitude": "-27.802427626855856",
"Longitude": "-50.3371023923115",
"FotosEvento": []
}
],
"fotosEvento": [],
"CNPJEmitente": "83782446000142"
}

Resposta esperada (em caso de sucesso):

HTTP/1.1 200 OK

Resposta esperada (em caso de erro):

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
"error": "Invalid payload format"
}