> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wincred.digital/llms.txt
> Use this file to discover all available pages before exploring further.

# 04 - Cancelamento Automático de Proposta

> Receba notificações quando propostas de e-consignado forem canceladas automaticamente

## Visão Geral

Este evento é disparado automaticamente pela Wincred quando uma proposta de e-consignado é cancelada por inatividade ou ao atingir um status terminal sem possibilidade de progressão.

O sistema monitora constantemente o estado das propostas e aciona o cancelamento automático seguindo regras específicas de timeout e validação.

<Warning>
  **Importante:** Cancelamentos manuais realizados via API não disparam este evento. Este webhook é exclusivo para cancelamentos automáticos do sistema.
</Warning>

## Header do tipo do evento no Webhook:

```http theme={null}
x-event-type: e-consignado.contratacao-ativa.cancelamento
```

## Estrutura do Evento

```json theme={null}
{
  "idContrato": "019a9cb2-257b-7610-aa32-834149c99bbc",
  "status": "CONTRATO_CANCELADO",
  "evento": "v1.e-consignado.contratacao-ativa.cancelamento",
  "dataCriacao": "2025-11-19T15:28:23Z"
}
```

### Parâmetros

<ParamField path="idContrato" type="UUID" required>
  Identificador único do contrato que foi cancelado no formato UUID
</ParamField>

<ParamField path="status" type="string" required>
  Status atual do contrato após o cancelamento

  **Valor fixo:** `CONTRATO_CANCELADO`
</ParamField>

<ParamField path="evento" type="string" required>
  Tipo do evento disparado

  **Valor fixo:** `v1.e-consignado.contratacao-ativa.cancelamento`
</ParamField>

<ParamField path="dataCriacao" type="string" required>
  Data e hora em que o evento de cancelamento foi gerado no formato ISO 8601 (UTC)
</ParamField>

## Regras de Cancelamento Automático

O sistema aplica duas categorias de regras para cancelamento automático de propostas:

### Categoria 1: Cancelamento Imediato

Propostas são canceladas **instantaneamente** ao atingir os seguintes status terminais sem possibilidade de progressão:

<AccordionGroup>
  <Accordion title="FALHA_VALIDACAO_DADOS_BANCARIOS" icon="ban">
    Os dados bancários fornecidos são inválidos e todas as tentativas de correção foram esgotadas. O contrato não pode prosseguir.

    **Quando ocorre:** Após tentativas de validação dos dados bancários que resultaram em falha.

    **Ação do sistema:** Cancelamento imediato e automático da proposta.
  </Accordion>

  <Accordion title="PROCESSO_REJEITADO_PELO_KYC" icon="user-xmark">
    A análise de Know Your Customer (KYC) foi concluída com rejeição. O cliente não passou nas verificações de segurança e conformidade.

    **Quando ocorre:** Após análise completa do processo de KYC que resultou em reprovação.

    **Ação do sistema:** Cancelamento imediato e automático da proposta.
  </Accordion>

  <Accordion title="FALHA_PROCESSO_KYC" icon="user-slash">
    O processo de KYC encontrou uma falha técnica que impossibilitou a conclusão da análise.

    **Quando ocorre:** Durante o processamento do KYC, se ocorrer um erro técnico ou de sistema.

    **Ação do sistema:** Cancelamento imediato e automático da proposta.
  </Accordion>

  <Accordion title="FALHA_AVERBACAO" icon="file-circle-xmark">
    O processo de averbação falhou e não foi possível registrar o contrato junto ao órgão pagador.

    **Quando ocorre:** Quando o sistema tenta averbar o contrato mas encontra falhas técnicas ou de processamento.

    **Ação do sistema:** Cancelamento imediato e automático da proposta.
  </Accordion>
</AccordionGroup>

### Categoria 2: Cancelamento com Timeout

Propostas são canceladas **às 01:00 do dia seguinte** se permanecerem de um dia para o outro nos seguintes status de inatividade:

<AccordionGroup>
  <Accordion title="PROCESSANDO_KYC" icon="clock">
    O contrato está aguardando que o cliente complete o processo de KYC. Se o cliente não concluir o preenchimento até o final do dia, o contrato é cancelado automaticamente.

    **Quando ocorre:** Aguardando ação do cliente para completar o formulário de KYC.

    **Regra de timeout:** Se permanecer neste status da criação até às 01:00 do dia seguinte, será cancelado automaticamente.

    **Exemplo:** Contrato criado às 21:30 do dia 15/05 → Cancelado às 01:00 do dia 16/05 se ainda estiver neste status.
  </Accordion>

  <Accordion title="VALIDANDO_DADOS_BANCARIOS" icon="clock">
    O sistema está validando os dados bancários fornecidos. Se a validação não for concluída até o final do dia, o contrato é cancelado.

    **Quando ocorre:** Durante o processo automático de validação dos dados bancários.

    **Regra de timeout:** Se permanecer neste status da criação até às 01:00 do dia seguinte, será cancelado automaticamente.
  </Accordion>

  <Accordion title="LIMITE_MAXIMO_TENTATIVAS_VALIDACAO_DADOS_BANCARIOS_EXCEDIDO" icon="clock">
    O cliente excedeu o limite de 3 tentativas de correção dos dados bancários. Se nenhuma ação for tomada até o final do dia, o contrato é cancelado.

    **Quando ocorre:** Após o cliente tentar corrigir os dados bancários 3 vezes sem sucesso.

    **Regra de timeout:** Se permanecer neste status até às 01:00 do dia seguinte, será cancelado automaticamente.
  </Accordion>

  <Accordion title="FALHA_VALIDACAO_DADOS_BANCARIOS" icon="clock">
    Uma tentativa de correção dos dados bancários falhou. Se não houver nova correção até o final do dia, o contrato é cancelado.

    **Quando ocorre:** Após uma tentativa de correção dos dados bancários que falhou na validação.

    **Regra de timeout:** Se permanecer neste status até às 01:00 do dia seguinte, será cancelado automaticamente.

    **Nota:** Este status também pode resultar em cancelamento imediato se for a última tentativa permitida.
  </Accordion>
</AccordionGroup>

<Note>
  **Janela de Timeout:** A janela de cancelamento automático funciona das 00:00 às 23:59 do mesmo dia. Qualquer proposta que permaneça em um dos status de timeout durante essa janela será cancelada exatamente às 01:00 do dia seguinte.
</Note>

## Exemplos de Payload

```json Cancelamento theme={null}
{
  "idContrato": "019a9cb2-257b-7610-aa32-834149c99bbc",
  "status": "CONTRATO_CANCELADO",
  "evento": "v1.e-consignado.contratacao-ativa.cancelamento",
  "dataCriacao": "2025-11-19T15:28:23Z"
}
```
