# Webhook

Por padrão, as notificações de atualizações em uma transação serão realizadas através de webhooks enviados da CAF (Combate à Fraude) para seus clientes.

# Configurando o webhook

Existem duas formas de configurar um webhook: vinculando a um modelo de consulta ou informando diretamente na request ao iniciar uma transação. Para configurar a URL padrão do webhook de um modelo de consulta, basta acessar a plataforma do cliente (opens new window) no menu Modelos de consulta, entrar no modelo desejado e editar o campo Webhook de consulta.

Observações:

  • Cada modelo de consulta possui uma URL de webhook diferente (você pode usar a mesma em diferentes modelos de consulta);
  • O webhook configurado deve esperar uma requisição do tipo POST;
  • Uma transação pode receber como parâmetro opcional uma URL de webhook (atributo _callbackUrl). Ao utilizar esse parâmetro, a URL padrão configurada no modelo de consulta não será utilizada. Para mais detalhes, acesse a página Criar uma transação.

# Quando eu receberei uma notificação?

# 1. Alteração de status

Quando acontecer uma alteração de status da transação você receberá uma notificação do tipo status_updated.

VALE LEMBRAR

O status de uma transação é definido com base nas validações configuradas no modelo de consulta.

# 2. Enviado para documentoscopia

Quando o documento for enviado para documentoscopia você receberá uma notificação do tipo documentscopy_requested. O status da transação continua como PROCESSANDO até que a perícia documental seja concluída.

# 3. Nova transação oriunda do onboarding web

Especificamente no onboarding web, uma transação é iniciada quando um usuário finalizar o fluxo e você receberá uma notificação do tipo process_started. Significa que os documentos foram capturados e enviados para análise.


# Exemplo de resposta

{
  "type": "status_updated",
  "report": "000000000000000000000000",
  "templateId": "xxxxxxxxxxxxxxxxxxxxxxxx",
  "uuid": "yyyyyyyyyyyyyyyyyyyyyyyy",
  "status": "REPROVED",
  "date": "2019-08-01T18:01:38.413Z"
}

# Atributos da resposta

# type String
Tipo do evento (process_started, status_updated ou documentscopy_requested).
# report String
Identificador do relatório (suporte ao fluxo legado). Caso a transação não possua relatório, o valor retornará como 000000000000000000000000.
# templateId String Opcional
Identificador do modelo de consulta da transação, quando houver.
# uuid String
Identificador da transação.
# status String
Status da transação (APPROVED, REPROVED, PENDING, PENDING_OCR, PROCESSING).
# date String
Data de envio do webhook.
# onboardingId String Opcional
Identificador do link de onboarding utilizado na captura dos dados, quando houver.

# E se acontecer algum erro no meu webhook?

Caso não consigamos nos comunicar com o seu webhook, iremos realizar até 5 tentativas em um prazo máximo de 5 horas. Durante este intervalo das requisições, mudanças podem ocorrer no status da transação. Caso a entrega das notificações ocorra fora da ordem cronológica, o status pode não ser o mais atualizado. Por isso, recomenda-se considerar o atributo date e consultar sempre a versão mais recente da transação.