A entidade de Offer contém os parâmetros flexíveis que determinarão as condições do que podem ser oferecidas ao cliente, considerando fatores de risco. A disponibilização desta flexibilidade para cada tipo de usuário (cliente, operador, líder...), determinada por regras de negócio, também está contida na Offer.
Objeto
{
"id": "4389d78579485k78d",
"type": "LoanConcession",
"is_auto_approve": true,
"provider": {
"provider_id": "CreditAnalysis",
"reference_id": "98d749847d9853498",
"reference_date": "2022-04-19T19:30:12Z"
},
"expiration_date": "2022-05-12",
"customer": {
"document": "12345678912",
"document_type": "CPF"
},
"approval": {
"status": "Pending",
"approved_at": "2022-04-19T19:30:12Z",
"denied_at": "2022-04-19T19:30:12Z",
"expired_at": "2022-04-19T19:30:12Z",
"analyzed_by": "[email protected]"
},
"negotiation": {
"status": "Created",
"accepted_at": "2022-04-19T19:30:12Z",
"expired_at": "2022-04-19T19:30:12Z",
"cancelled_at": "2022-04-19T19:30:12Z",
"cancellation_reason": "RiskDecision",
"cancelled_by": "[email protected]"
},
"loan_concession": {
"estimated_cash_flow": 20000.0,
"conditions": [
{
"risk_level": 1,
"term": 6,
"interest_rate": 0.05,
"credit_limit": 10546.875
},
{
"risk_level": 2,
"term": 7,
"interest_rate": 0.05,
"credit_limit": 11546.875
},
{
"risk_level": 3,
"term": 8,
"interest_rate": 0.05,
"credit_limit": 12546.875
},
{
"risk_level": 4,
"term": 9,
"interest_rate": 0.05,
"credit_limit": 13546.875
},
{
"risk_level": 5,
"term": 10,
"interest_rate": 0.05,
"credit_limit": 14546.875
},
{
"risk_level": 6,
"term": 11,
"interest_rate": 0.05,
"credit_limit": 15546.875
},
{
"risk_level": 7,
"term": 12,
"interest_rate": 0.05,
"credit_limit": 16546.875
}
]
},
"roles": [
{
"user_type": "Customer",
"max_risk_level": 3,
"conditions": [
{
"min": 100.0,
"max": 10546.875,
"allowed_terms": [
6,
7,
8
]
},
{
"min": 10546.875,
"max": 11546.875,
"allowed_terms": [
7,
8
]
},
{
"min": 11546.875,
"max": 12546.875,
"allowed_terms": [
8
]
}
]
},
{
"user_type": "Operator",
"max_risk_level": 5,
"conditions": [
{
"min": 100.0,
"max": 10546.875,
"allowed_terms": [
6,
7,
8,
9,
10
]
},
{
"min": 10546.875,
"max": 11546.875,
"allowed_terms": [
7,
8,
9,
10
]
},
{
"min": 11546.875,
"max": 12546.875,
"allowed_terms": [
8,
9,
10
]
},
{
"min": 12546.875,
"max": 13546.875,
"allowed_terms": [
9,
10
]
},
{
"min": 13546.875,
"max": 14546.875,
"allowed_terms": [
10
]
}
]
}
],
"roles_updated_by": "[email protected]",
"created_at": "2022-04-19T19:30:12Z",
"created_by": "[email protected]",
"updated_at": "2022-04-19T19:30:12Z"
}
{
"id": "jqt6nj9wk3gwdxs4uk8sfqaxq",
"type": "Renegotiation",
"is_auto_approve": true,
"provider": {
"provider_id": "CreditAnalysis",
"reference_id": "6f54f6f546",
"reference_date": "2022-06-06T13:42:12Z"
},
"customer": {
"document": "38340708000164",
"document_type": "CNPJ"
},
"approval": {
"status": "Approved",
"is_auto_approve": true,
"approved_at": "2023-03-15T22:26:39Z"
},
"negotiation": {
"status": "Available"
},
"expiration_date": "2023-04-18",
"renegotiation": {
"estimated_cashflow": 20000.0,
"securities": [
{
"type": "Credit",
"external_reference": "jqshwb4c5az6f9y3smn2t92vy",
"is_overdue": true,
"installment_plan": {
"amount": 390.7596220517,
"count": 6,
"total_sum": 2344.5577323102,
"payment_reference_date": "2023-02-20"
},
"rate": {
"tax_amount": 24.99,
"annual_interest_rate": 0.1942,
"annual_total_effective_cost_rate": 0.242,
"retention_rate": 0.1954,
"interest_rate": 0.0149,
"iof_rate": 0.000041
},
"summary": {
"due_date": "2023-08-20",
"days_overdue": 0
},
"last_update_date": "2023-03-15T22:26:38Z"
}
],
"conditions": [
{
"type": "InterestRate",
"calculation_direction": "Down",
"range": {
"min": 0.002,
"max": 0.008
},
"risk_levels": [
{
"level": 1,
"proportional_percentage": 30.0
},
{
"level": 2,
"proportional_percentage": 79.0
},
{
"level": 3,
"proportional_percentage": 100.0
}
]
},
{
"type": "Term",
"calculation_direction": "Up",
"range": {
"min": 6.0,
"max": 12.0
},
"risk_levels": [
{
"level": 1,
"proportional_percentage": 30.0
},
{
"level": 2,
"proportional_percentage": 79.0
},
{
"level": 3,
"proportional_percentage": 100.0
}
]
}
]
},
"roles": [
{
"user_type": "Customer",
"max_risk_level": 1,
"conditions": [
{
"type": "InterestRate",
"min": 0.0062,
"max": 0.008
},
{
"type": "Term",
"min": 6.0,
"max": 7.0
}
]
},
{
"user_type": "Operator",
"max_risk_level": 2,
"conditions": [
{
"type": "InterestRate",
"min": 0.00326,
"max": 0.008
},
{
"type": "Term",
"min": 6.0,
"max": 10.0
}
]
},
{
"user_type": "Leadership",
"max_risk_level": 3,
"conditions": [
{
"type": "InterestRate",
"min": 0.002,
"max": 0.008
},
{
"type": "Term",
"min": 6.0,
"max": 12.0
}
]
}
],
"creation_date": "2023-03-15T22:26:38Z",
"created_by": "[email protected]",
"last_update_date": "2023-03-15T22:26:39Z"
}
{
"id": "jqusgch3uy7486mtqga7jd99q",
"type": "DiscountSettlement",
"provider": {
"provider_id": "CreditAnalysis",
"reference_id": "6f54f6f546",
"reference_date": "2023-05-19T00:00:00Z"
},
"customer": {
"document": "47445577000170",
"document_type": "CNPJ"
},
"approval": {
"status": "Approved",
"is_auto_approve": true,
"approved_at": "2023-05-19T15:08:17Z"
},
"negotiation": {
"status": "Available"
},
"expiration_date": "2023-06-18",
"discount_settlement": {
"securities": [
{
"type": "Credit",
"external_reference": "jqt2j2dmde6zfhnbkke1pd114",
"is_overdue": true,
"installment_numbers": [
1,
2,
3,
4,
5,
6
],
"last_update_date": "2023-05-19T15:08:17Z"
}
],
"condition": {
"type": "DiscountAmount",
"calculation_direction": "Up",
"range": {
"min": 6,
"max": 12
},
"risk_levels": [
{
"level": 1,
"proportional_percentage": 30
},
{
"level": 2,
"proportional_percentage": 79
},
{
"level": 3,
"proportional_percentage": 100
}
]
}
},
"roles": [
{
"user_type": "Customer",
"max_risk_level": 1,
"conditions": [
{
"type": "DiscountAmount",
"min": 6,
"max": 7.8
}
]
},
{
"user_type": "Operator",
"max_risk_level": 2,
"conditions": [
{
"type": "DiscountAmount",
"min": 6,
"max": 10.74
}
]
},
{
"user_type": "Leadership",
"max_risk_level": 3,
"conditions": [
{
"type": "DiscountAmount",
"min": 6,
"max": 12
}
]
}
],
"creation_date": "2023-05-19T15:08:17Z",
"created_by": "[email protected]",
"last_update_date": "2023-05-19T15:08:17Z"
}
Máquina de estado
A oferta possui duas máquinas de estado, uma representando o ciclo de aprovação e outro de negociação.

Máquina de estado da aprovação
Status | Descrição |
---|---|
Pending | Indica que a oferta está pendente de aprovação e, portanto, indisponível para geração de simulações e propostas |
Approved | Indica que a oferta foi analisada e aprovada e, portanto, pode ser disponibilizada para geração de simulações e propostas |
Denied | Indica que a oferta foi analisada e não atingiu os requisitos necessários e, portanto, não pode ser disponibilizada para geração de simulações e propostas |
Expired | Indica que a oferta expirou antes que a mesma fosse aprovada ou negada |

Máquina de estado da negociação
Status | Descrição |
---|---|
Pending | A negociação foi criada, mas ainda não está disponível para geração de simulações e propostas |
Available | A negociação encontra-se disponível para geração de simulações e propostas |
Expired | A negociação expirou antes que uma proposta fosse aceita |
Accepted | Alguma proposta gerada a partir da oferta foi aceita |
Cancelled | A oferta foi cancelada e, portanto, não está disponível para geração de simulações e propostas |
Campos
Campo | Descrição | Tipo |
---|---|---|
id | Identificador da oferta | String |
type | Tipo da oferta | string |
is_auto_approve | Flag de auto aprovação | Boolean |
provider | Originador da oferta | Object |
expiration_date | Data de expiração da oferta | Date |
customer | Cliente a qual a oferta é pertencente | Object |
approval | Representa os status do fluxo de aprovação | Object |
negotiation | Representa os status do fluxo de negociação | Object |
loan_concession | Especificações de uma oferta de concessão de crédito (retornado apenas quando o type for LoanConcession) | Object |
renegotiation | Especificações de uma oferta de renegociação (retornado apenas quando o type for Renegotiation) | Object |
discount_settlement | Especificações de uma oferta de quitação com desconto (retornado apenas quando o type for DiscountSettlement) | Object |
roles | Alçadas que especificam as condições de contratação para cada tipo de usuário | Object[] |
roles_updated_by | Email do usuário que atualizou as alçadas | String |
created_at | Data e hora da criação | DateTime |
created_by | Email do usuário que criou a oferta | String |
updated_at | Data e hora da última atualização | DateTime |
Tipos de oferta
Atualmente a oferta conta com dois tipos:
Tipo | Descrição |
---|---|
LoanConcession | Concessão de crédito |
Renegotiation | Renegociação de um empréstimo |
DiscountSettlement | Quitação com desconto |