--- title: 8.2. Eventos de Simulação url: https://docs.vehub.com.br/Emiss%C3%A3o%20de%20Ativos/API/Cr%C3%A9dito/8.%20Notifica%C3%A7%C3%B5es%20-%20WebHook/8.2.%20Eventos%20de%20Simula%C3%A7%C3%A3o/ --- # 8.2. Eventos de Simulação !!! warning "Especificação — em construção" Os serviços descritos nesta área ainda não estão disponíveis. Eventos disparados pela conclusão da [simulação da proposta](../6.%20Proposta/6.2.%20Simulação%20da%20Proposta.md). A [simulação avulsa](../5.%20Simulação/5.1.%20Simular.md) é síncrona e **não** gera evento. O envelope, os headers, a assinatura HMAC e a política de retry estão em [8.1. Visão Geral](8.1.%20Visão%20Geral.md). --- ## `credito.simulacao.concluida` Disparado quando o cálculo é concluído e os valores são persistidos na proposta. ### 📦 Payload ```json { "idWebhook": "019e0892-8d99-778c-9fa5-47bd07cd9ffb", "tipoEvento": "credito.simulacao.concluida", "dataHora": "2026-08-20T13:06:02.145Z", "grupoEconomico": "MeuGrupo", "dados": { "idProposta": 1001, "idEsteira": 12, "produto": "ep", "tipoSimulacao": 1, "valorSolicitado": 18000.00, "quantidadeParcelas": 24, "taxa": 1.99, "valorParcela": 850.00, "valorTotal": 20400.00, "valorDesembolso": 18000.00, "cetMensal": 2.10, "cetAnual": 28.30, "iof": 412.30, "dataPrimeiroVencimento": "2026-10-13" }, "etiquetas": null } ``` ### 🧾 Detalhamento dos Campos — `dados` | Campo | Tipo | Descrição | |-------|------|-----------| | idProposta | integer | Proposta simulada | | idEsteira | integer | Esteira da operação | | produto | string | `ep` ou `cdc` | | tipoSimulacao | integer | `1` por valor financiado, `2` por valor da parcela | | valorSolicitado | number | Valor financiado. No modo `2`, é o valor calculado | | quantidadeParcelas | integer | Número de parcelas | | taxa | number | Taxa mensal aplicada | | valorParcela | number | Valor da prestação | | valorTotal | number | Total a pagar | | valorDesembolso | number | Valor a ser liberado | | cetMensal / cetAnual | number | Custo Efetivo Total | | iof | number | IOF em reais | | dataPrimeiroVencimento | string | Vencimento da 1ª parcela, já ajustado para dia útil | ### 🧭 O que fazer ao receber Consulte `GET /credito/propostas/{idProposta}` para obter o **fluxo completo de parcelas** — o evento traz o resumo, não a grade. Em seguida, siga `proximaEtapa`. --- ## `credito.simulacao.falhou` Disparado quando o cálculo é recusado. A proposta vai para o status `10` — **Falha na simulação**. ### 📦 Payload ```json { "idWebhook": "019e0893-1a2b-7712-8c04-5f7e2a91d3b6", "tipoEvento": "credito.simulacao.falhou", "dataHora": "2026-08-20T13:06:02.145Z", "grupoEconomico": "MeuGrupo", "dados": { "idProposta": 1001, "idEsteira": 12, "produto": "ep", "erros": "Prazo informado é inválido para o produto." }, "etiquetas": null } ``` ### 🧾 Detalhamento dos Campos — `dados` | Campo | Tipo | Descrição | |-------|------|-----------| | idProposta | integer | Proposta que falhou | | idEsteira | integer | Esteira da operação | | produto | string | `ep` ou `cdc` | | erros | string | Mensagem devolvida pela bancarizadora | ### 🧭 O que fazer ao receber 1. Leia `erros` — a mensagem indica o que precisa ser corrigido. 2. Chame [`POST /credito/propostas/{id}/reabertura`](../6.%20Proposta/6.12.%20Reabertura.md) para liberar a proposta. 3. Corrija os valores e simule novamente. Sem a reabertura, a proposta permanece travada: nesse status ela não aceita nova simulação. --- ## ⚠️ Observações - A simulação **avulsa** não gera evento — ela é síncrona e o resultado vem na resposta. - Resimular uma proposta gera um **novo** evento a cada cálculo concluído. Use `dataHora` e o estado atual da proposta para resolver ordem. - Um cálculo pode falhar por política da esteira (valor ou prazo fora da faixa) ou por política do produto na bancarizadora. O primeiro caso você pode evitar validando contra [3.2. Parâmetros da Esteira](../3.%20Referências/3.2.%20Parâmetros%20da%20Esteira.md) antes de chamar.