1. Inicio
  2. Documentos
  3. NS BPe
  4. Emissão BPe Contingência ...
  5. WebHook

WebHook

O que é webhook?

Webhook é uma forma de receber informações, que são enviadas quando um evento acontece. Dessa forma, o webhook na prática, é a forma de receber informações entre dois sistemas de uma forma passiva.
Da mesma forma, ele fornece dados para outros aplicativos, e são muito eficientes tanto para o prestador de serviço, como para o consumidor.

Como funciona o webhook de contingencia da NS?
Todo documento que entrar no fluxo de “Contingência Offline” será reprocessado devidamente dentro dos limites estabelecidos e sempre irá gerar uma notificação para o parceiro, a fim de que ele saiba o resultado daquela emissão.

Para entregar esta notificação de forma conveniente, foi desenvolvido um recurso de Webhook que será descrito melhor abaixo.

Como configurar
O parceiro que possui o recurso “Contingência Offline” contratado deverá fornecer os seguintes dados no painel do parceiro:

  • URL Notificação;
  • Usuário e senha para Auth Basic;

URL Notificação
Neste campo o parceiro informará em qual endpoint quer receber a notificação.

A URL deve necessariamente estar disponível em uma conexão segura (https).

Exemplo: https://dominio-do-parceiro.com.br/meu-app/notify

A notificação sempre será enviada através do método POST e terá o body no seguinte padrão:

Documento autorizado:

{
  "status": 200,
  "motivo": "Consulta realizada com sucesso",
  "chBPe": "43221007364617000135630050000030302223853846",
  "cStat": "100",
  "xMotivo": "Autorizado o uso do BP-e",
  "nProt": "143220000303255",
  "dhRecbto": "2022-10-04T11:33:50-03:00"
}

Documento rejeitado:

{
  "status": 200,
  "motivo": "Consulta realizada com sucesso",
  "chBPe": "43221007364617000135630050000030312988464429",
  "cStat": "417",
  "xMotivo": "Rejeição: Data de entrada em contingência posterior a data de emissão"
}

Usuário e senha para Auth Basic
O parceiro deve fornecer um usuário e senha exclusivamente para autenticar neste endpoint de notificação.

Exemplo:
user: nstecnologia
senha: senha!2#

Conforme a especificação de Authentication Basic, estas credenciais serão enviadas no cabeçalho da requisição conforme o padrão.

Autenticação Basic
Na autenticação basic as credenciais são parecidas com isto:

  • O nome de usuário com a senha combinados por dois pontos (nstecnologia:senha!2#).
  • A cadeia de caracteres resultante é uma codificação base64 (en-US) (bnN0ZWNub2xvZ2lhOnNlbmhhITIj).

Exemplos
Authorization: Basic bnN0ZWNub2xvZ2lhOnNlbmhhITIj

Como podemos ajudar?