Pular para o conteúdo

Qualificar cliente

POST
/v1/credit/qualification
curl --request POST \
--url https://ms-credit-api-az.kemosoft.com.br/v1/credit/qualification \
--header 'Content-Type: application/json' \
--header 'api-key: <api-key>' \
--data '{ "creditGroup": "inss", "type": "full", "clientInfo": { "federalId": "12345678909" } }'

Consulta o cliente por CPF em um convênio e retorna as oportunidades de crédito com as condições simuladas.

Use creditDetail para montar a visão comercial. Ele agrupa os créditos por categoria e matrícula, as oportunidades por produto ou contrato e as simulações de cada oportunidade, com a oferta priorizada em primeiro lugar. O campo opportunities é mantido apenas por compatibilidade.

O ID da qualificação, usado em Simular nova condição, vem em qualification.id.

Operação tarifável: quando a cobrança está ativa para a sua rede parceira, cada execução processada consome créditos da carteira do parceiro.

Tipo de mídiaapplication/json
object
creditGroup
obrigatório

Slug do convênio ativo no catálogo. A disponibilidade é resolvida pela aplicação.

string
<= 100 caracteres
product

Slug semântico do produto a ser qualificado.

string
aceita null
type
obrigatório

Tipo da qualificação. Use full para a qualificação completa, a mesma feita pelo painel. simple calcula somente oportunidades de margem livre.

string
Valores permitidos: potential full simple
mode
string
Valores permitidos: best-commission all all-banks
clientInfo
obrigatório
object
federalId
obrigatório
string
name
string
aceita null
phone
string
city
string
aceita null
state
string
aceita null
zipcode
string
aceita null
address
string
aceita null
district
string
aceita null
customerNumber

Identificador informado pelo cliente para o contexto do produto, como UC ou número da fatura.

string
aceita null
enrollment
string
aceita null
department
string
aceita null
representativeFederalId
string
aceita null
birthDate
string
aceita null
unableToSign

Informa se o cliente não consegue assinar a documentação da operação. O fato é válido somente para esta requisição; quando omitido, assume false.

boolean
aceita null
email
string
aceita null
useBanks
Array<object>
aceita null
object
bank
obrigatório
string
banker
string
Valores permitidos: cartos_j17 bms_cartos
file
object
url
obrigatório

URL do arquivo, retornada por Enviar extrato de consignações.

string
type
obrigatório

Tipo do arquivo. Para o extrato enviado em Enviar extrato de consignações, use statement.

string
Valores permitidos: in100 statement paystub
simulationInfo
object
analyzeBrands
boolean
aceita null
requestedAmount
number
aceita null
tableId
string
aceita null
term
number
aceita null
installment
number
aceita null
netAmount
number
aceita null
banks
Array<object>
aceita null
object
bank
obrigatório
string
banker
string
Valores permitidos: cartos_j17 bms_cartos
mode
string
Valores permitidos: best-commission all all-banks
type
string
Valores permitidos: all margin-only contracts-only
externalDataConsent
object
attestation
obrigatório

Atestação JWS do consentimento para qualificação INSS externa

string
<= 16384 caracteres

Exemplo

{
"creditGroup": "inss",
"type": "full",
"clientInfo": {
"federalId": "12345678909"
}
}

Resultado da qualificação.

Tipo de mídiaapplication/json
object
success
obrigatório

Indica se a requisição foi processada.

boolean
id
string
status
string
message
string
creditGroup
object
qualification
obrigatório
object
id

ID da qualificação. Usado como qualificationRequestId em POST /v1/credit/qualification/:qualificationRequestId/simulate.

string
aceita null
status
obrigatório

Resultado da qualificação no convênio.

string
Valores permitidos: qualificado nao-qualificado captcha-requerido qualificacao-falhou desconhecido indisponivel faltando-info info-invalida faltando-configuracao
message

Mensagem complementar sobre o resultado, quando houver.

string
aceita null
creditGroup
obrigatório

True quando o cliente foi qualificado no convênio.

boolean
creditStatus
object
clientData
object
federalId
obrigatório
string
unableToSign
boolean
aceita null
name
obrigatório
string
birthDate
obrigatório
string
phone
obrigatório
string
gender
obrigatório
string
email
obrigatório
string
representativeFederalId
obrigatório
string
representativeName
obrigatório
string
warrantyBalance
obrigatório
number
warrantyBalanceAt
obrigatório
string
warrantyInstallments
obrigatório
Array<string>
motherName
obrigatório
string
docInfo
object
type
string
Valores permitidos: RG CNH CTPS
number
string
issueDate
string
agency
string
agencyState
string
addressInfo
object
address
string
addressNumber
string
district
string
city
string
state
string
zipcode
string
bankAcctInfo
object
enrollment
string
bankNo
string
branch
string
acctNo
string
acctType
string
pixKey
string
pixType
string
paychecks
obrigatório
Array<object>
object
enrollment
obrigatório
string
paymtState
obrigatório
string
benefitTypeId
obrigatório
number
benefitStatus
obrigatório
string
contributionDescription
obrigatório
string
contributionAmount
obrigatório
number
pensionAlimenticia
obrigatório
boolean
department
obrigatório
string
employmentType
obrigatório
string
jobTitle
obrigatório
string
originalEnrollment
obrigatório
string
pensionist
obrigatório
boolean
hasRepresentative
obrigatório
boolean
creditType
obrigatório
string
bankNo
obrigatório
string
branchNo
obrigatório
string
acctNo
obrigatório
string
accountType
obrigatório
string
startDate
obrigatório
string
endDate
obrigatório
string
lastInspectionAt
obrigatório
string
salary
obrigatório
number
marginBaseAmount
obrigatório
number
freeMarginLoans
obrigatório
number
freeMarginRmc
obrigatório
number
freeMarginRcc
obrigatório
number
freeMarginSalaryAdvance
obrigatório
number
marginsAt
obrigatório
string
loanQty
obrigatório
number
loanBlocked
obrigatório
boolean
loanAllowed
obrigatório
boolean
contracts
obrigatório
Array<string>
opportunities

Lista bruta de oportunidades/simulações mantida por compatibilidade.

Array<object>
object
simulationId

Identificador da simulação. Pode ser nulo quando a condição foi calculada offline.

string
aceita null
creditDetail

Visão estruturada e recomendada das oportunidades de crédito. Agrupa totais, categorias, produtos, contratos e simulações sem adicionar campos derivados em clientData.paychecks[].

object
creditAmount
obrigatório

Soma de availableCredits.totalAmount. Representa o total comercial das ofertas principais na resposta.

number
availableCredits
obrigatório

Créditos disponíveis agrupados por categoria e, quando aplicável, por matrícula.

Array<object>
object
category
obrigatório

Categoria do bloco de crédito: paycheck para créditos vinculados a matrícula/folha; other para créditos pessoais ou sem matrícula.

string
Valores permitidos: paycheck other
enrollment

Matrícula/benefício associado quando category=paycheck.

string
totalAmount
obrigatório

Soma dos productAmount das ofertas principais das oportunidades deste bloco.

number
opportunities
obrigatório

Oportunidades de crédito específicas desta categoria/matrícula.

Array<object>
object
type
obrigatório

Tipo da oportunidade: margin para crédito por margem livre; contract para crédito derivado de contrato original.

string
Valores permitidos: margin contract
productName

Nome legível do produto de crédito.

string
productSlug
obrigatório

Slug do produto de crédito.

string
productAmount
obrigatório

Valor comercial da oferta principal da oportunidade. Em fluxos governados por regras, corresponde à primeira simulação priorizada; nos demais fluxos, mantém a seleção financeira compatível.

number
originalContract

Contrato original associado à oportunidade quando type=contract.

object
simulations
obrigatório

Simulações/ofertas desta oportunidade na ordem definida pelo produtor. No fluxo governado por regras, a primeira é a oferta priorizada; sources sem essa semântica mantêm sua seleção financeira.

Array<object>
object
simulationId

Identificador da simulação retornado pelo banco/integrador.

string
aceita null
simulationDate

Data em que a simulação foi gerada.

string
bankSlug

Slug do banco que gerou a oferta.

string
bankName

Nome legível do banco que gerou a oferta.

string
bankLogo

URL do logo do banco que gerou a oferta.

string
loanAmount

Valor financiado/bruto da operação antes de abatimentos.

number
grossAmount

Valor bruto total usado na simulação.

number
iofFee

Valor de IOF embutido na operação.

number
tacFee

Valor de TAC embutido na operação, quando houver.

number
insuranceFee

Valor de seguro embutido na operação, quando houver.

number
creditAmount

Valor de crédito liberado antes de saldo devedor.

number
balanceDue

Saldo devedor abatido na operação, quando aplicável.

number
netAmount

Valor líquido estimado para o cliente.

number
installment

Valor da parcela simulada.

number
term

Prazo da simulação em meses/parcelas.

number
simulationGracePeriod

Carência da primeira parcela, em dias, quando informada.

number
requiredCardLimit

Limite que o cartão precisa suportar para esta condição. Não representa limite disponível do cliente.

number
interest

Taxa de juros mensal da simulação.

number
cet

Custo Efetivo Total mensal da simulação.

number
simulationType

Tipo/estratégia de simulação usada pelo banco.

string
message

Aviso comercial associado à condição simulada.

string
interestCode

Código da tabela de juros usada na simulação.

string
aceita null
interestTable

Nome ou código comercial da tabela de juros.

string
aceita null
firstPayment

Data prevista do primeiro pagamento.

string
lastPayment

Data prevista do último pagamento.

string
commission

Comissão associada à simulação, quando disponível.

number
maxRefinInterestRate

Teto de taxa usado em refin da portabilidade quando há cálculo ponderado.

number
simulationAction

Ação contextual disponível para esta condição. Ausência significa somente leitura.

object
opportunityReference
obrigatório

Referência desta condição. Envie em Simular nova condição.

string
editableFields
obrigatório

Campos que podem ser informados para uma nova simulação.

Array<string>
itens únicos
Valores permitidos: requestedAmount installment term
requestedSimulations

Novas simulações solicitadas após a qualificação original, na ordem de append.

Array<object>
object
id
obrigatório

Identificador UUID da solicitação de nova simulação.

string
sourceOpportunityReference
obrigatório

Referência da oportunidade original que originou o pedido.

string
params
obrigatório

Parâmetros efetivamente informados pelo usuário.

object
requestedAmount

Valor líquido solicitado. Não pode ser enviado junto com installment.

number
>= 0.01
installment

Parcela solicitada. Não pode ser enviada junto com requestedAmount.

number
>= 0.01
term

Novo prazo em meses/parcelas.

number
>= 1
result
obrigatório

Resultado canônico da nova simulação.

object
simulationId

Identificador da simulação retornado pelo banco/integrador.

string
aceita null
simulationDate

Data em que a simulação foi gerada.

string
bankSlug

Slug do banco que gerou a oferta.

string
bankName

Nome legível do banco que gerou a oferta.

string
bankLogo

URL do logo do banco que gerou a oferta.

string
loanAmount

Valor financiado/bruto da operação antes de abatimentos.

number
grossAmount

Valor bruto total usado na simulação.

number
iofFee

Valor de IOF embutido na operação.

number
tacFee

Valor de TAC embutido na operação, quando houver.

number
insuranceFee

Valor de seguro embutido na operação, quando houver.

number
creditAmount

Valor de crédito liberado antes de saldo devedor.

number
balanceDue

Saldo devedor abatido na operação, quando aplicável.

number
netAmount

Valor líquido estimado para o cliente.

number
installment

Valor da parcela simulada.

number
term

Prazo da simulação em meses/parcelas.

number
simulationGracePeriod

Carência da primeira parcela, em dias, quando informada.

number
requiredCardLimit

Limite que o cartão precisa suportar para esta condição. Não representa limite disponível do cliente.

number
interest

Taxa de juros mensal da simulação.

number
cet

Custo Efetivo Total mensal da simulação.

number
simulationType

Tipo/estratégia de simulação usada pelo banco.

string
message

Aviso comercial associado à condição simulada.

string
interestCode

Código da tabela de juros usada na simulação.

string
aceita null
interestTable

Nome ou código comercial da tabela de juros.

string
aceita null
firstPayment

Data prevista do primeiro pagamento.

string
lastPayment

Data prevista do último pagamento.

string
commission

Comissão associada à simulação, quando disponível.

number
maxRefinInterestRate

Teto de taxa usado em refin da portabilidade quando há cálculo ponderado.

number
simulationAction

Ação contextual disponível para esta condição. Ausência significa somente leitura.

object
opportunityReference
obrigatório

Referência desta condição. Envie em Simular nova condição.

string
editableFields
obrigatório

Campos que podem ser informados para uma nova simulação.

Array<string>
itens únicos
Valores permitidos: requestedAmount installment term

Exemplo

{
"qualification": {
"status": "qualificado"
},
"clientData": {
"unableToSign": false,
"docInfo": {
"type": "RG"
}
},
"creditDetail": {
"creditAmount": 16278.54,
"availableCredits": [
{
"category": "paycheck",
"enrollment": "123456789",
"totalAmount": 12278.54,
"opportunities": [
{
"type": "margin",
"productName": "Refin da Portabilidade",
"productSlug": "consignado_refin_port",
"productAmount": 9278.54,
"originalContract": {
"contractNumber": "55123095",
"bankNo": "999",
"bankName": "Banco Exemplo S.A.",
"installment": 424.2,
"term": 84,
"paidInstallments": 43,
"remainingInstallments": 41,
"balanceDue": 10092.18,
"balanceDuePort": 12127.3,
"installmentPort": 353.01,
"interest": 2.92,
"startDate": "2022-10-18"
},
"simulations": [
{
"simulationId": "sim-123",
"simulationDate": "2026-06-15",
"bankSlug": "banco-exemplo",
"bankName": "Banco Exemplo",
"bankLogo": "https://exemplo.com.br/logos/banco-exemplo.png",
"loanAmount": 19681.06,
"grossAmount": 45813.6,
"iofFee": 310.34,
"tacFee": 0,
"insuranceFee": 0,
"creditAmount": 19370.72,
"balanceDue": 10092.18,
"netAmount": 9278.54,
"installment": 424.2,
"term": 108,
"simulationGracePeriod": 5,
"requiredCardLimit": 2229.3,
"interest": 1.85,
"cet": 1.85,
"simulationType": "taxa-de-juros",
"message": "Cotação indicativa. A aprovação final ocorre após o envio da proposta ao banco.",
"interestCode": null,
"interestTable": null,
"firstPayment": "2026-07-07",
"lastPayment": "2035-06-07",
"commission": 0,
"maxRefinInterestRate": 1.85,
"simulationAction": {
"opportunityReference": "qopp:v1:Qk7example",
"editableFields": [
"installment",
"term"
]
}
}
],
"requestedSimulations": [
{
"id": "00000000-0000-4000-8000-000000000001",
"sourceOpportunityReference": "qopp:v1:Qk7example",
"params": {
"requestedAmount": 8500,
"installment": 350,
"term": 72
},
"result": {
"simulationId": "sim-123",
"simulationDate": "2026-06-15",
"bankSlug": "banco-exemplo",
"bankName": "Banco Exemplo",
"bankLogo": "https://exemplo.com.br/logos/banco-exemplo.png",
"loanAmount": 19681.06,
"grossAmount": 45813.6,
"iofFee": 310.34,
"tacFee": 0,
"insuranceFee": 0,
"creditAmount": 19370.72,
"balanceDue": 10092.18,
"netAmount": 9278.54,
"installment": 424.2,
"term": 108,
"simulationGracePeriod": 5,
"requiredCardLimit": 2229.3,
"interest": 1.85,
"cet": 1.85,
"simulationType": "taxa-de-juros",
"message": "Cotação indicativa. A aprovação final ocorre após o envio da proposta ao banco.",
"interestCode": null,
"interestTable": null,
"firstPayment": "2026-07-07",
"lastPayment": "2035-06-07",
"commission": 0,
"maxRefinInterestRate": 1.85,
"simulationAction": {
"opportunityReference": "qopp:v1:Qk7example",
"editableFields": [
"installment",
"term"
]
}
}
}
]
}
]
}
]
}
}