---
title: 6.7. Análise de Crédito
url: https://docs.vehub.com.br/Emiss%C3%A3o%20de%20Ativos/API/Cr%C3%A9dito/6.%20Proposta/6.7.%20An%C3%A1lise%20de%20Cr%C3%A9dito/
---
# 6.7. Análise de Crédito
!!! warning "Especificação — em construção"
Os serviços descritos nesta área ainda não estão disponíveis.
## 🔗 Endpoints
| Método | URL | Natureza |
|--------|-----|----------|
|  | `/credito/propostas/{idProposta}/analise-credito` | **Assíncrono** |
|  | `/credito/propostas/{idProposta}/analise-credito` | Síncrono |
---
## 🧾 Descrição
Submete a proposta ao **motor de crédito** e consulta o resultado.
A análise é executada pela bancarizadora e o resultado volta de forma **assíncrona**. A submissão
responde `202`; o resultado chega por
[webhook](../8.%20Notificações%20-%20WebHook/8.3.%20Eventos%20de%20Análise%20de%20Crédito.md)
(`credito.analise.concluida`) ou pela consulta.
!!! info "Etapa condicional"
Esta etapa existe apenas quando `enviarParaAnaliseCredito = true` na esteira. Se for `false`, a
submissão é recusada e a proposta vai direto para o
[envio](6.8.%20Envio%20da%20Proposta.md). Verifique em
[3.2. Parâmetros da Esteira](../3.%20Referências/3.2.%20Parâmetros%20da%20Esteira.md).
---
## Submeter à análise
Sem corpo. Use **`Idempotency-Key`**.
### 🧪 Exemplo de cURL
```bash
curl -X POST "https://api.vehub.com.br/credito/propostas/1001/analise-credito" \
-H "Authorization: Bearer {seu_token}" \
-H "GrupoEconomico: {seu_grupo_economico}" \
-H "Idempotency-Key: 5b7d9c31-88ea-4d02-b1f6-0a4c7e93d244"
```
### 📥 Response — `202 Accepted`
```json
{
"sucesso": true,
"mensagem": "Análise de crédito submetida.",
"dados": {
"status": "processando",
"consultarEm": "/credito/propostas/1001/analise-credito"
}
}
```
A proposta passa para o status `13` — **Aguardando motor de crédito**.
### ❌ 409 Conflict — esteira sem análise
```json
{
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.10",
"status": 409,
"errors": [
{ "campo": null, "mensagem": "Esta esteira não exige análise de crédito." }
]
}
```
### ❌ 422 Unprocessable Entity — ficha incompleta
```json
{
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.21",
"status": 422,
"errors": [
{ "campo": null, "mensagem": "A simulação da proposta não foi concluída." }
]
}
```
O que a análise exige antes de ser submetida depende da esteira: na jornada completa, a ficha do
tomador e a simulação; na **jornada simplificada**, apenas os dados básicos do tomador e a simulação.
As pendências específicas aparecem em
[6.10](6.10.%20Consultar,%20Listar%20e%20Pendências.md).
---
## Consultar o resultado
### 🧪 Exemplo de cURL
```bash
curl -X GET "https://api.vehub.com.br/credito/propostas/1001/analise-credito" \
-H "Authorization: Bearer {seu_token}" \
-H "GrupoEconomico: {seu_grupo_economico}"
```
### 📥 Response — `200 OK`, aprovada
```json
{
"sucesso": true,
"mensagem": null,
"dados": {
"status": { "id": 6, "nome": "Aprovado" },
"score": "742",
"limiteConcedido": "25000.00",
"motivo": null,
"dataHoraRetorno": "2026-08-20T13:22:40Z",
"novaAnaliseSolicitada": false
}
}
```
### 📥 Response — `200 OK`, recusada
```json
{
"sucesso": true,
"dados": {
"status": { "id": 4, "nome": "Recusado" },
"score": "512",
"limiteConcedido": "0.00",
"motivo": "Restrição cadastral no sócio",
"dataHoraRetorno": "2026-08-20T13:22:40Z",
"novaAnaliseSolicitada": false
}
}
```
### 📥 Response — `200 OK`, ainda em análise
```json
{
"sucesso": true,
"dados": {
"status": null,
"score": null,
"limiteConcedido": null,
"motivo": null,
"dataHoraRetorno": null,
"novaAnaliseSolicitada": false
}
}
```
`status` nulo significa **aguardando o retorno**. Continue consultando, ou assine o webhook.
### 🧾 Detalhamento dos Campos
| Campo | Tipo | Descrição |
|-------|------|-----------|
| status | object / null | Resultado da análise. Nulo enquanto não há retorno |
| score | string / null | Pontuação atribuída pelo motor |
| limiteConcedido | string / null | Limite de crédito concedido |
| motivo | string / null | Motivo da decisão. Preenchido nas recusas |
| dataHoraRetorno | string / null | Momento em que o resultado foi recebido, em UTC |
| novaAnaliseSolicitada | boolean | `true` quando esta proposta já usou a segunda chance |
---
## Resultados possíveis
| Código | Descrição | Permite enviar a proposta? |
|--------|-----------|-----------------------------|
| `6` | Aprovado | ✅ |
| `7` | Aprovado com alteração | ✅ |
| `4` | Recusado | ❌ |
| `11` | Pendente | ❌ |
| `27` | Cancelado | ❌ |
!!! danger "Aprovação é pré-requisito do envio"
Quando a esteira exige análise, a proposta **só pode ser enviada** à bancarizadora com resultado
aprovado. Tentar enviar com resultado recusado, pendente ou ainda em análise resulta em `409` —
ver [6.8. Envio da Proposta](6.8.%20Envio%20da%20Proposta.md).
---
## Segunda análise após recusa
Quando a esteira tem `sugerirNovaAnaliseComDados = true` **e** a jornada simplificada está ativa, uma
proposta recusada admite **uma única** nova submissão, depois de a ficha ser enriquecida:
```mermaid
flowchart TD
A[Análise com dados básicos] --> B{Resultado}
B -- Aprovado --> C[Seguir para o envio]
B -- Recusado --> D{sugerirNovaAnaliseComDados?}
D -- Não --> E[Fim: proposta recusada]
D -- Sim --> F[Completar a ficha:
complementares, bancários,
avalistas, garantias, documentos]
F --> G[Nova submissão ao motor]
G --> H{Resultado}
H -- Aprovado --> C
H -- Recusado --> E
```
Depois da segunda submissão, `novaAnaliseSolicitada` fica `true` e novas tentativas são recusadas.
---
## ⚠️ Observações
- **Score, limite e motivo são devolvidos integralmente.** A credencial pública tem acesso ao
resultado completo; cabe a você decidir o que exibir ao usuário final.
- A consulta responde `200` mesmo quando a proposta foi recusada. Recusa é **resultado**, não erro —
inspecione `status`.
- Consulta de bureau e SCR é uma jornada separada, não exposta nesta API.