Ir para o conteúdo

7.8. Título Rejeitado

🔔 Tipo de Notificação

Campo Valor
tipoEvento titulo.rejeitado Título foi rejeitado dentro de um lote
Id 10 Identificador do tipo de evento na tabela tipo_evento_webhook

🧾 Descrição

Esta notificação é enviada via POST para o endpoint configurado quando um título é rejeitado dentro de um lote. Pode acontecer em qualquer ocorrência (Cessão, Recompra, Liquidação, etc.) quando:

  • O sacado fica fora do limite de exposição configurado.
  • O título não passa em alguma regra de elegibilidade bloqueante.
  • A administradora rejeita explicitamente via webhook ou retorno.
  • O gestor rejeita manualmente um título específico no lote.

Use este evento para:

  • Identificar e tratar títulos não cedidos / não liquidados.
  • Notificar o cedente sobre rejeições (ex: para que envie outro título no lugar).
  • Alimentar dashboards de qualidade de carteira.

📤 Payload Enviado

{
  "idWebhook": "019e0892-8d99-778c-9fa5-47bd07cd9ffb",
  "tipoEvento": "titulo.rejeitado",
  "dataHora": "2026-05-08T14:23:11.512Z",
  "grupoEconomico": "MeuGrupo",
  "dados": {
    "idTitulo": 2001,
    "numeroDocumento": "NF-000123",
    "especieTitulo": 2,
    "ocorrencia": 1,
    "idLote": 1001,
    "idLoteTitulo": 3001,
    "idCedente": 301,
    "documentoCedente": "12.345.678/0001-90",
    "idSacado": 401,
    "documentoSacado": "98.765.432/0001-10",
    "dataVencimento": "2026-06-07",
    "valorNominal": 50000.00,
    "valorAquisicao": 48750.00,
    "valorAbertoAtualizadoAdministradora": null,
    "dataConsultaValorAdministradora": null,
    "statusAnterior": 0,
    "statusAtual": 2,
    "motivoRejeicao": "Sacado fora do limite de exposição configurado para a operação."
  },
  "etiquetas": null
}

🧾 Detalhamento dos Campos de dados

Campo Tipo Descrição
idTitulo integer Identificador do título no VeHub
numeroDocumento string — null Número do documento
especieTitulo integer (enum) — null Código da espécie do título (ver tabela em 7.3. Título Cedido)
ocorrencia integer (enum) Código do tipo de ocorrência em que o título foi rejeitado (ver tabela em 7.2. Status do Lote alterado)
idLote integer Identificador do lote
idLoteTitulo integer Identificador do registro lote × título
idCedente integer — null Identificador do cedente
documentoCedente string — null CPF/CNPJ do cedente
idSacado integer — null Identificador do sacado
documentoSacado string — null CPF/CNPJ do sacado
dataVencimento string (date) — null Data de vencimento do título
valorNominal number — null Valor nominal do título
valorAquisicao number — null Valor de aquisição esperado (caso a operação tivesse sucedido)
valorAbertoAtualizadoAdministradora number — null Presente no contrato, porém não preenchido neste evento — enviado sempre como null
dataConsultaValorAdministradora string (ISO 8601) — null Presente no contrato, porém não preenchido neste evento — enviado sempre como null
statusAnterior integer (enum) — null Código do status anterior do LoteTitulo (ver tabela abaixo). Pode ser null se não detectável
statusAtual integer (enum) Sempre 2 (Rejeitado) neste evento
motivoRejeicao string — null Motivo textual da rejeição preenchido no LoteTitulo

🔢 Status do LoteTitulo (statusAnterior / statusAtual)

Os campos são enviados como código numérico do enumerador:

Código Nome Significado
0 EmAnalise Título em análise pelas regras de elegibilidade
1 Aprovado Título aprovado nas regras
2 Rejeitado Título rejeitado nas regras (status atual deste evento)

📪 Exemplo de envio

POST /webhook/vehub HTTP/1.1
Host: app.cliente.com.br
Content-Type: application/json; charset=utf-8
X-Idempotency-Key: 019e0892-8d99-778c-9fa5-47bd07cd9ffb
X-Event-Type: titulo.rejeitado
X-Webhook-Signature: sha256=ab12cd...

{
  "idWebhook": "019e0892-8d99-778c-9fa5-47bd07cd9ffb",
  "tipoEvento": "titulo.rejeitado",
  "dataHora": "2026-05-08T14:23:11.512Z",
  "grupoEconomico": "MeuGrupo",
  "dados": {
    "idTitulo": 2001,
    "numeroDocumento": "NF-000123",
    "especieTitulo": 2,
    "ocorrencia": 1,
    "idLote": 1001,
    "idLoteTitulo": 3001,
    "idCedente": 301,
    "documentoCedente": "12.345.678/0001-90",
    "idSacado": 401,
    "documentoSacado": "98.765.432/0001-10",
    "dataVencimento": "2026-06-07",
    "valorNominal": 50000.00,
    "valorAquisicao": 48750.00,
    "valorAbertoAtualizadoAdministradora": null,
    "dataConsultaValorAdministradora": null,
    "statusAnterior": 0,
    "statusAtual": 2,
    "motivoRejeicao": "Sacado fora do limite de exposição configurado para a operação."
  },
  "etiquetas": null
}

Resposta esperada

HTTP/1.1 200 OK
Content-Type: application/json

{ "received": true }

🕒 Observações

  • Este evento dispara uma vez por título rejeitado. Em validações automáticas que rejeitam vários títulos de um mesmo lote, espere múltiplas notificações em sequência.
  • O motivoRejeicao é preenchido pelo motor de elegibilidade ou pela ação que rejeitou o título (ex: webhook de retorno da administradora). Quando preenchido, é uma string livre informativa — não use para roteamento programático, prefira o statusAtual e o contexto da ocorrencia.
  • Após a rejeição, o título não é mais processado neste lote.
  • Para detectar a rejeição do lote inteiro (estado terminal), escute também lote.status_alterado com statusAtual = 11 (Rejeitado).