Pular para o conteúdo principal

2.1.3. Refinanciamento de Contrato

Na modalidade Refinanciamento, é realizada a renegociação de uma operação de crédito já existente na base da bancarizadora. O saldo devedor atual é liquidado e substituído por um novo contrato, permitindo a atualização de prazos e taxas, além da possibilidade de liberação de margem adicional ao cliente, gerando um novo instrumento contratual que substitui o anterior.

Autenticação​

Para realizar requisições aos nossos endpoints, é necessário utilizar uma API Key válida. Esta chave é o identificador que garante a segurança e o controle de acesso às operações da plataforma.

KeyValue
apikey{{apikey}}
aviso

Importante: Mantenha sua API Key em segurança. Ela é pessoal, intransferível e dá acesso direto às operações de crédito e dados de clientes da sua conta.


POST Listar Produtos por tipo de operação​

/v3/loan-products/search/basic

Este endpoint permite listar os produtos de empréstimo disponíveis filtrando por tipo e operação.

Parâmetros do Body​

Visualizar Parâmetros
CampoTipoObrigatórioDescrição
type.code.eqnumberSimCódigo do tipo de produto a filtrar
operation.code.eqnumberSimCódigo da operação desejada

Exemplo de Requisição e Resposta​

Visualizar Body
{
"type": {
"code": {
"eq": 20
}
},
"operation": {
"code": {
"eq": 3
}
}
}

POST Listar Tabelas por tipo de operação​

/v3/loan-product-rules/search/basic

Este endpoint permite listar as tabelas de regras de produtos de empréstimo filtrando por tipo de operação.

Visualizar Parâmetros
CampoTipoObrigatórioDescrição
offsetnumberSimÍndice inicial para paginação
limitnumberSimQuantidade máxima de registros retornados (Máximo de 20 por página)
operation.code.eqnumberSimCódigo da operação desejada

Exemplo de Requisição e Resposta​

Visualizar Body
{
"offset": 0,
"limit": 0,
"operation": {
"code": {
"eq": 3
}
}
}

POST Listar contratos disponíveis para refinanciamento​

/v3/loan-inss-simulations/refinanceable-contracts

Este endpoint lista os contratos de empréstimo INSS ativos do cliente que estão elegíveis para refinanciamento.

Parâmetros do Body​

CampoTipoDescrição
identitystringCPF do cliente
benefitstringNúmero do benefício INSS
ruleIdstringID da tabela de produto

Exemplo de Requisição e Resposta​

Visualizar Body
{
{
"identity": "00000000000",
"benefit": "0000000000",
"ruleid": "5a8e0a27-410c-4153-8ecf-c94021be72ad"
}
}

POST Calcular Contratos de Refinanciamento​

/v3/loan-inss-simulations/calculation

Calcula os valores de um refinanciamento a partir dos contratos de origem informados, retornando o novo contrato com todos os dados financeiros calculados.

Parâmetros​

Visualizar Parâmetros

Campos Obrigatórios

CampoTipoObrigatórioDescrição
ruleIdstringSimID da tabela de produto
termintegerSimPrazo em meses
ratedecimalSimTaxa de juros mensal (ex: 1.8 para 1,8%)
installmentValuedecimalSimValor da parcela. Informar 0.00 para cálculo automático
originContractsarraySimLista de contratos a refinanciar

originContracts — Contratos de Origem

CampoTipoObrigatórioDescrição
originContracts[].contractNumberstringSimNúmero do contrato de origem
originContracts[].dueBalanceValuedecimalSimSaldo devedor. Informar 0.00 para busca automática
originContracts[].installmentValuedecimalSimValor da parcela. Informar 0.00 para busca automática
originContracts[].installmentsRemainingintegerSimParcelas restantes
originContracts[].lenderCodeintegerSimCódigo do credor

Exemplo de Requisição e Resposta​

Visualizar Body
{
"ruleId": "00000000-0000-0000-0000-000000000000",
"term": 96,
"rate": 1.8,
"installmentValue": 0.00,
"originContracts": [
{
"contractNumber": "xxx0000000000",
"dueBalanceValue": 0.00,
"installmentValue": 0.00,
"installmentsRemaining": 72,
"lenderCode": 329
}
]
}

POST Criar simulação de refinanciamento​

/v3/loan-inss-simulations

Este endpoint permite criar uma simulação de refinanciamento de contratos próprios do cliente (contratos já formalizados pela mesma instituição).

Parâmetros do Body​

Visualizar Parâmetros

Borrower — Dados do Tomador

CampoTipoObrigatórioDescrição
borrower.namestringSimNome completo
borrower.identitystringSimCPF
borrower.benefitstringSimNúmero do benefício
borrower.benefitStatestringSimUF do benefício (ex: "SP")
borrower.benefitStartDatestringSimData de início do benefício (YYYY-MM-DD)
borrower.benefitPaymentMethodintegerSimMétodo de pagamento do benefício
borrower.benefitTypeintegerSimTipo do benefício
borrower.birthDatestringSimData de nascimento (YYYY-MM-DD)
borrower.motherNamestringSimNome da mãe
borrower.maritalStatusstringSimEstado civil (ex: "Solteiro", "Casado")
borrower.sexstringSimSexo (ex: "Feminino", "Masculino")
borrower.incomedecimalSimRenda mensal
borrower.phonestringSimTelefone
borrower.emailstringSimEndereço de e-mail

Borrower — Endereço

CampoTipoObrigatórioDescrição
borrower.address.streetstringSimLogradouro
borrower.address.numberstringSimNúmero
borrower.address.complementstringSimComplemento
borrower.address.districtstringSimBairro
borrower.address.citystringSimCidade
borrower.address.statestringSimUF (ex: "SP")
borrower.address.zipCodestringSimCEP

Borrower — Documento

CampoTipoObrigatórioDescrição
borrower.document.type.codestringSimCódigo do tipo do documento (ex: "RG")
borrower.document.type.namestringSimNome do tipo do documento (ex: "Registro Geral")
borrower.document.numberstringSimNúmero do documento
borrower.document.issuingDatestringSimData de emissão (YYYY-MM-DD)
borrower.document.issuingEntitystringSimÓrgão emissor (ex: "SSP")
borrower.document.issuingStatestringSimUF emissora (ex: "SP")

Items — Dados do Contrato

CampoTipoObrigatórioDescrição
items[].ruleIdstringSimID da regra (UUID v4)
items[].termintegerSimPrazo em meses
items[].ratedecimalSimTaxa de juros (ex: 1.72 para 1,72%)
items[].installmentValuedecimalSimValor da parcela
items[].loanValuedecimalSimValor do empréstimo
items[].hasInsurancebooleanSimSe possui seguro
items[].referenceCodestringNãoCódigo de referência externo

Items — Contratos de Origem

CampoTipoObrigatórioDescrição
items[].originContracts[].keystringSimChave do contrato de origem (UUID v4)
items[].originContracts[].lenderCodeintegerSimCódigo do credor
items[].originContracts[].contractNumberstringSimNúmero do contrato
items[].originContracts[].termintegerSimPrazo total do contrato
items[].originContracts[].installmentsRemainingintegerSimParcelas restantes
items[].originContracts[].installmentValuedecimalSimValor da parcela
items[].originContracts[].dueBalanceValuedecimalSimSaldo devedor

CreditBankAccount — Conta de Crédito

CampoTipoObrigatórioDescrição
creditBankAccount.bankstringSimCódigo do banco (ex: "001")
creditBankAccount.branchstringSimNúmero da agência
creditBankAccount.numberstringSimNúmero da conta
creditBankAccount.digitstringSimDígito verificador

Step — Etapa

CampoTipoObrigatórioDescrição
step.codeintegerSimCódigo da etapa
step.namestringNãoNome da etapa

Files — Arquivos

CampoTipoObrigatórioDescrição
files[].idstringSimID do arquivo (UUID v4)
files[].typestringSimTipo do arquivo: "doc_front", "doc_back"

Outros Campos

CampoTipoObrigatórioDescrição
notestringNãoObservações livres
brokerIdstringNãoID do corretor
accessIdstringSimIdentificador de acesso do operador

Exemplo de Requisição e Resposta​

Visualizar Body
{
"borrower": {
"name": "USUÁRIO MASCARADO",
"identity": "00000000000",
"benefit": "0000000000",
"benefitState": "SP",
"benefitStartDate": "1999-01-15",
"benefitPaymentMethod": 1,
"benefitType": 42,
"birthDate": "1965-08-19",
"motherName": "NOME MASCARADO",
"maritalStatus": "Solteiro",
"sex": "Feminino",
"income": 1800.50,
"phone": "00000000000",
"email": "[email protected]",
"address": {
"street": "AVENIDA MASCARADA",
"number": "0",
"complement": "Bloco A",
"district": "Centro",
"city": "São Paulo",
"state": "SP",
"zipCode": "00000000"
},
"document": {
"type": {
"code": "RG",
"name": "Registro Geral"
},
"number": "00000000",
"issuingDate": "1990-05-21",
"issuingEntity": "SSP",
"issuingState": "SP"
}
},
"items": [
{
"ruleId": "00000000-0000-0000-0000-000000000000",
"term": 95,
"rate": 1.72,
"installmentValue": 525.16,
"loanValue": 24004.25,
"originContracts": [
{
"key": "00000000-0000-0000-0000-000000000000",
"lenderCode": 329,
"contractNumber": "FIN0000000000",
"term": 95,
"installmentsRemaining": 95,
"installmentValue": 525.16,
"dueBalanceValue": 24004.25
}
],
"hasInsurance": false,
"referenceCode": null
}
],
"creditBankAccount": {
"bank": "001",
"branch": "0000",
"number": "000000",
"digit": "0"
},
"step": {
"code": 0,
"name": null
},
"files": [
{
"id": "00000000-0000-0000-0000-000000000000",
"type": "doc_front"
},
{
"id": "00000000-0000-0000-0000-000000000000",
"type": "doc_back"
}
],
"note": "Teste de Refinanciamento - Dados Mascarados",
"brokerId": null,
"accessId": "joao.marani"
}

GET Obter termo de autorização​

/v3/loan-inss-simulations/{{simulation_id}}/auth-term

Este endpoint retorna o termo de autorização para consulta do benefício INSS. O campo key retornado deve ser utilizado no próximo passo para assinatura do termo.

Exemplo de Requisição e Resposta​

Visualizar cURL
curl --location 'https://integration.ajin.io/v3/loan-inss-simulations/{{simulation_id}}/auth-term' \
--header 'apikey: {{apikey}}'

PUT Assinar termo de autorização​

/v3/signer/{{auth_term_key}}/accept

Este endpoint realiza a assinatura do termo de autorização. Atenção: só deve ser executado se status.key != 'signed' no response do endpoint anterior.

Exemplo de Requisição e Resposta​

Visualizar Body
{
"position": {
"latitude": "-235489",
"longitude": "-466388"
}
}

POST Gerar Contratos de Empréstimo​

/v3/loan-inss-simulations/{{simulation_id}}/actions

Este endpoint é responsável por transformar uma simulação aprovada em contratos efetivos, iniciando o processo de formalização e assinatura.

Exemplo de Requisição e Resposta​

Visualizar Body
{ 
"command": "create_loans"
}

GET Consultar Contratos de Empréstimo pelo ID da Simulação​

/v3/loans/simulation/{{simulation_id}}

Este endpoint permite consultar todos os contratos de empréstimo vinculados a uma simulação específica.

Exemplo de Requisição e Resposta​

Visualizar cURL
curl --location 'https://integration.ajin.io/v3/loans/simulation/{{simulation_id}}' \
--header 'apikey: {{apikey}}'