Products
O Building Block Products fornece funcionalidades para configuração de produtos de crédito na Catalisa Platform.
Visão Geral
O módulo Products e tenant-scoped e permite:
- Configurar produtos de empréstimo
- Definir taxas de juros (min/max)
- Configurar limites de valores e parcelas
- Especificar método de amortização
- Gerenciar tarifas e encargos
Base URL
https://products.stg.catalisa.app
Recursos
| Recurso | Descrição |
|---|---|
| Produtos | Configuração de produtos de crédito |
Endpoints
| Método | Endpoint | Descrição | Permissão |
|---|---|---|---|
| POST | /api/v1/products | Criar produto | PRODUCTS_CREATE |
| GET | /api/v1/products | Listar produtos | PRODUCTS_READ |
| GET | /api/v1/products/:id | Obter produto | PRODUCTS_READ |
| PATCH | /api/v1/products/:id | Atualizar produto | PRODUCTS_UPDATE |
| DELETE | /api/v1/products/:id | Excluir produto | PRODUCTS_DELETE |
Tipos de Produto
| Tipo | Descrição |
|---|---|
PERSONAL_LOAN | Empréstimo pessoal |
PAYROLL_LOAN | Empréstimo consignado |
VEHICLE_LOAN | Financiamento de veículo |
HOME_EQUITY | Home equity |
CREDIT_CARD | Cartão de crédito |
WORKING_CAPITAL | Capital de giro |
INVOICE_FINANCING | Antecipação de recebíveis |
MORTGAGE | Financiamento imobiliário |
Métodos de Amortização
| Método | Descrição | Configuração Necessária |
|---|---|---|
PRICE | Tabela Price - parcelas fixas | Nenhuma |
SAC | Sistema de Amortização Constante | Nenhuma |
BALLOON | Parcelas menores + balão no final | balloonConfig |
BULLET | Apenas juros + principal no vencimento | Nenhuma |
INTEREST_ONLY | Carência de amortização | interestOnlyConfig |
STEP_UP | Parcelas crescentes | stepConfig |
STEP_DOWN | Parcelas decrescentes | stepConfig |
CUSTOM | Cronograma personalizado | customConfig |
Configurações de Amortização
BALLOON
Parcela final (balão) com percentual do principal:
{
"type": "BALLOON",
"config": {
"balloonPercentage": 0.30
}
}
| Campo | Tipo | Descrição |
|---|---|---|
balloonPercentage | number | Percentual do principal no balão (0.01 - 0.99) |
INTEREST_ONLY
Período de carência onde paga-se apenas juros:
{
"type": "INTEREST_ONLY",
"config": {
"interestOnlyPeriod": 6,
"postGraceMethod": "PRICE"
}
}
| Campo | Tipo | Descrição |
|---|---|---|
interestOnlyPeriod | integer | Meses de carência (mínimo 1) |
postGraceMethod | string | Método após carência: PRICE ou SAC |
STEP_UP / STEP_DOWN
Parcelas que aumentam (STEP_UP) ou diminuem (STEP_DOWN) periodicamente:
{
"type": "STEP_UP",
"config": {
"stepPercentage": 0.05,
"stepInterval": 12
}
}
| Campo | Tipo | Descrição |
|---|---|---|
stepPercentage | number | Percentual de ajuste (0.01 - 0.50) |
stepInterval | integer | Intervalo em meses entre ajustes |
CUSTOM
Cronograma de pagamentos personalizado:
{
"type": "CUSTOM",
"config": {
"paymentSchedule": [500, 500, 500, 600, 600, 700, 700, 800, 800, 900, 900, 1000]
}
}
| Campo | Tipo | Descrição |
|---|---|---|
paymentSchedule | number[] | Array com valor de cada parcela |
formula | string | Fórmula personalizada (alternativo) |
Estrutura de Dados
Produto
{
"data": {
"type": "products",
"id": "uuid",
"attributes": {
"name": "Empréstimo Pessoal Standard",
"productType": "PERSONAL_LOAN",
"description": "Empréstimo pessoal para clientes CLT",
"active": true,
"minAmount": { "amount": 1000, "currency": "BRL" },
"maxAmount": { "amount": 50000, "currency": "BRL" },
"minInterestRate": 0.0199,
"maxInterestRate": 0.0599,
"minInstallments": 6,
"maxInstallments": 48,
"registrationTariffRate": 0.02,
"insuranceRate": 0.003,
"iofAdditionalRate": 0.0038,
"iofDailyRate": 0.000082,
"amortizationMethod": "PRICE",
"amortizationConfig": null,
"gracePeriodMonths": null,
"metadata": null,
"minLtv": null,
"maxLtv": null
}
}
}
Produto MORTGAGE com LTV
{
"data": {
"type": "products",
"id": "uuid",
"attributes": {
"name": "Financiamento Imobiliário Premium",
"productType": "MORTGAGE",
"description": "Financiamento imobiliário com parcela balão",
"active": true,
"minAmount": { "amount": 100000, "currency": "BRL" },
"maxAmount": { "amount": 1000000, "currency": "BRL" },
"minInterestRate": 0.008,
"maxInterestRate": 0.012,
"minInstallments": 60,
"maxInstallments": 360,
"amortizationMethod": "BALLOON",
"amortizationConfig": {
"type": "BALLOON",
"config": {
"balloonPercentage": 0.30
}
},
"gracePeriodMonths": 3,
"minLtv": 0.50,
"maxLtv": 0.80,
"metadata": {
"segmento": "alta_renda",
"garantia": "imovel"
}
}
}
}
Taxas e Encargos
| Campo | Descrição | Exemplo |
|---|---|---|
minInterestRate | Taxa de juros mínima (mensal) | 0.0199 = 1.99% |
maxInterestRate | Taxa de juros máxima (mensal) | 0.0599 = 5.99% |
registrationTariffRate | Taxa de cadastro (sobre principal) | 0.02 = 2% |
insuranceRate | Taxa de seguro (mensal) | 0.003 = 0.3% |
iofAdditionalRate | IOF adicional | 0.0038 = 0.38% |
iofDailyRate | IOF diário | 0.000082 |
informação
Todas as taxas são expressas em decimal (0-1), onde 0.01 = 1%.
Campos Adicionais
| Campo | Tipo | Descrição | Exemplo |
|---|---|---|---|
gracePeriodMonths | integer | Meses de carência antes da amortização | 3 |
metadata | object | Dados customizados da organização | {"segmento": "premium"} |
minLtv | number | LTV mínimo (apenas MORTGAGE) | 0.50 = 50% |
maxLtv | number | LTV máximo (apenas MORTGAGE) | 0.80 = 80% |
LTV (Loan-to-Value)
O LTV representa a relação entre o valor financiado e o valor do imóvel. Um LTV de 0.80 significa que o cliente pode financiar até 80% do valor do imóvel. Campos minLtv e maxLtv são exclusivos para produtos do tipo MORTGAGE.