Webhooks

O sistema realiza uma validação ativa das URLs registradas para recebimento de webhooks, garantindo que estejam operacionais. Essa validação é feita por meio de uma requisição HTTP POST ao endpoint correspondente.

Registro de Webhook - Margem

Endpoint de registro: POST /user/webhook/private-consignment/consult

"url": "https://urlwebhook.com" 

Ao registrar o webhook, a API irá realizar uma request POST para o endpoint informado, para validar se o mesmo está ativo e apto a receber as notificações com o seguinte payload

Payload de requisição:

{
  "type": "webhook.test",
  "timestamp": "2000-01-01T00:00:00Z"
}

Confirmação de registro

após o recebimento do webhook de teste, receberá um novo webhook confirmando o registro da url

{
  "type": "webhook.registered",
  "timestamp": "2000-01-01T00:00:00Z",
  "url": "https://example.com/webhook"
}

Consulta de margem:

Após o registro bem-sucedido da URL, o sistema enviará notificações relacionadas ao status de consulta de margem no seguinte formato:

<scalar-heading level="7" slug="" uid="">Exemplo de Payloads Recebidos:</scalar-heading>

Sucesso na consulta de margem:

{
  "type": "private.consignment.consult.updated",
  "timestamp": "2025-11-12T16:41:00.412Z",
  "consultId": "8b523e72-bccc-4997-96d0-95f2d299d9d5",
  "status": "SUCCESS",
  "availableMarginValue": "350.00",
  "admissionDateMonthsDifference": 67,
  "simulationLimit": {
    "monthMin": 49,
    "monthMax": 72,
    "installmentsMin": 6,
    "installmentsMax": 24,
    "valueMin": 800,
    "valueMax": 25000
  }
}

Falha na consulta de margem:

{   
"type": "balance.status.received.success",   
"documentNumber": "00000000001",   
"provider": "bms",   
"balance": "585.73",   
"timestamp": "2025-01-30T13:29:15.183Z" 
}
<scalar-heading level="7" slug="" uid=""><strong>...</strong></scalar-heading>
  • WAITING_CONSENT : Aguardando consentimento do cliente

  • CONSENT_APPROVED : Consentimento aprovado

  • WAITING_CONSULT : Aguardando consulta Dataprev

  • WAITING_CREDIT_ANALYSIS : Aguardando Análise de Crédito

  • SUCCESS : Sucesso

  • FAILED : Falha

  • REJECTED : Rejeitada na Análise de Crédito

<scalar-heading level="8" slug="" uid="">As seguintes propriedades estarão presentes apenas quando o status for <code>...</code>. Do contrário, elas serão enviadas como <code>...</code>:</scalar-heading>
  • availableMarginValue: valor da margem consignável disponível para o cliente

  • admissionDateMonthsDifference: diferença em meses entre a data atual e a data de admissão do cliente

  • simulationLimit: informações sobre os limites de simulação, contendo:

    • monthMin: número mínimo de meses da faixa na qual o cliente se enquadra

    • monthMax: número máximo de meses da faixa na qual o cliente se enquadra

    • installmentsMin: quantidade mínima de parcelas

    • installmentsMax: quantidade máxima de parcelas

    • valueMin: valor mínimo de operação

    • valueMax: valor máximo de operação

Registro de Webhook - Propostas

Configurando o webhook de operação, o usuário receberá notificações sempre que houver uma atualização no status de uma operação de consignado privado ou quando uma nova operação for criada. O payload enviado será o seguinte:

Endpoint de registro:
POST /user/webhook/private-consignment/operation

Payload de requisição:

"url": "https://urlwebhook.com"
<scalar-heading level="7" slug="" uid="">Exemplo de Payload Recebido:</scalar-heading>
{
  "type": "private.consignment.operation.created",
  "timestamp": "2000-01-01T00:00:00Z",
  "operationId": "123e4567-e89b-12d3-a456-426614174000",
  "status": "generating_ccb"
}
  • type: tipo do evento, podendo ser:

    • private.consignment.operation.created: operação criada

    • private.consignment.operation.updated: operação atualizada

  • timestamp: data e hora do envio do webhook

  • operationId: identificador único da operação

  • status: status atual da operação, podendo ser:

    • generating_ccb

    • formalization

    • analysis

    • manual_analysis

    • awaiting_call

    • processing

    • paid

    • canceled

    • awaiting_cancel

    • pending

    • refunded

    • rejected

Observações
  • O sistema exige que a URL informada esteja acessível e responda adequadamente no momento do registro.

  • As notificações são enviadas via HTTP POST, e espera-se que o endpoint da aplicação cliente retorne status HTTP 2xx para confirmação de recebimento.