Sumário
1. Visão geral #
O webhook-proposal-status é um mecanismo de notificação assíncrona responsável por enviar, via HTTP POST, atualizações de status da proposta de
Empréstimo Consignado (INSS) para um endpoint configurado por cliente (ClientId).
2. Contexto na esteira de aquisição #
O webhook de status é acionado durante a esteira de aquisição, principalmente nas etapas de STATUS (webhook), cobrindo estágios como Validação Crivo,
Averbação, Integração Documental, Desembolso e Encarteiramento
3. Contrato do webhook enviado ao cliente (saída HTTP) #
Para cada evento consumido, o Worker envia um HTTP POST para o endpoint configurado.
4. Método e headers #
| Item | Valor |
|---|---|
| Método | POST |
| Content-Type | application/json |
| Timeout | 5 segundos |
| Headers de autenticação | Dependem de webhook_config.auth_type |
#
5. Autenticação e autorização (envio do webhook) #
O Worker adiciona o header conforme o campo auth_type.
| auth_type (webhook_config) | Comportamento | Exemplo de header enviado |
| BEARER | Adiciona Authorization: Bearer {auth_config} | Authorization: Bearer eyJ… |
| API_KEY | Adiciona x-api-key: {auth_config} | x-api-key: 7f9c… |
6. Respostas esperadas e tratamento de erros #
O endpoint do cliente deve retornar:
- HTTP 2xx: entrega considerada bem-sucedida (delivery_status = SENT).
- HTTP 4xx: falha definitiva (delivery_status = FAILED) e evento segue para retentativa/erro conforme RetryAmount.
- HTTP 5xx: falha do servidor do cliente (delivery_status = FAILED) e evento segue para retentativa/erro conforme RetryAmount.
- Timeout/Exceção HTTP: falha técnica (delivery_status = FAILED) e evento segue para retentativa/erro conforme RetryAmount.
#
7. Exemplos de Webhook por Evento #
7.1. Averbação #
Sucesso
{
"webhook_type": "worker_credit.endorsement",
"success": true,
"data": {
"id": "<<uuid da proposta>>",
"raw_dataprev_data": {}
}
}
Falha
{
"webhook_type": "worker_credit.endorsement",
"success": false,
"data": {
"id": "<<uuid da proposta>>",
"code": "OV",
"message": "Descrição da falha",
"raw_dataprev_data": {
"message": "Json do retorno cru da dataprev"
}
}
}
7.2. Desembolso #
Sucesso
{
"webhook_type": "worker_credit.disbursement",
"success": true,
"data": {
"id": "<<uuid da proposta>>",
"payment_datetime": "2025-05-02T10:10:10-03:00"
}
}
Falha
{
"webhook_type": "worker_credit.disbursement",
"success": false,
"data": {
"id": "<<uuid da proposta>>",
"code": "DISBURSEMENT_ERROR",
"message": "Descrição da falha"
}
}
7.3. Crivo #
Sucesso
{
"webhook_type": "worker_credit.eligibility",
"success": true,
"data": {
"id": "<<uuid da proposta>>"
}
}
Falha
{
"webhook_type": "worker_credit.eligibility",
"success": false,
"data": {
"id": "<<uuid da proposta>>",
"message": "Descrição da falha"
}
}
7.4. Integração Documental #
Sucesso
{
"webhook_type": "worker_credit.document_integration",
"success": true,
"data": {
"id": "<<uuid da proposta>>",
"raw_documental_data": {}
}
}
Falha
{
"webhook_type": "worker_credit.document_integration",
"success": false,
"data": {
"id": "<<uuid da proposta>>",
"code": "OV",
"message": "Descrição da falha",
"raw_documental_data": {
"message": "Json do retorno cru da integração documenta
l"
}
}
}
7.5. Integração Documental #
Sucesso
{
"webhook_type": "worker_credit.portfolio",
"success": true,
"data": {
"id": "<<uuid da proposta>>"
}
}
Falha
{
"webhook_type": "worker_credit.portfolio",
"success": false,
"data": {
"id": "<<uuid da proposta>>",
"code": "PORTFOLIO_ERROR",
"message": "Descrição da falha"
}
}
8. Observações Importantes #
- Os exemplos acima representam payloads reais utilizados atualmente.
- O campo success = false indica falha de negócio/processo, não falha no envio do webhook.