Skip to main content
Um produto de empréstimo é o template a partir do qual todo empréstimo é originado. Definir um é uma sequência curta: crie o produto, versione os termos dele, descreva como ele é contabilizado no ledger e depois ative o produto. Você origina cada empréstimo contra uma versão de produto, e a ativação precisa que essa versão carregue um perfil contábil.

Antes de começar


  • Você precisa de um bearer token do Lender (um JWT emitido pelo seu Access Manager). Cada operação é autenticada e delimitada por tenant.
  • Decida a qual jurisdição o produto pertence. O crédito é registrado sob a jurisdição Brasil. A base genérica, XX, não registra crédito. Produtos brasileiros carregam campos extras cobertos no Pacote regulatório Brasil.

Passos


1

Crie o produto

POST /api/v1/loan-products registra o produto nomeado. Esta é a entrada de catálogo de onde as versões partem. O corpo traz o nome, o tipo de empréstimo e o código da jurisdição, e nada mais: um corpo com um campo que a operação não declara responde 422. O Brasil tem um alias, POST /api/v1/br/loan-products, que recebe o mesmo corpo.
2

Crie uma versão

POST /api/v1/loan-products/{id}/versions congela um conjunto de termos (configuração de taxa, prazo e formato do cronograma) como uma versão imutável. Todo empréstimo remonta à versão que usou na originação. Você nunca edita uma versão, publica uma nova. Uma versão deve declarar a faixa de taxa e os tipos de tomador que admite, ou não origina nada. Os terms opcionais definem o que a versão admite: sistemas de amortização, periodicidades de pagamento, a contagem de dias (monthly_30 por padrão), os valores pelos quais uma proposta pode ser pedida, as frentes de originação, quem emite o instrumento de crédito, se contratos podem ser cedidos, o modo de pagamento antecipado, encargos por atraso, limites de principal, prazo e parcelas, e a validade da cotação de quitação de 1 a 168 horas. Uma firstDueDateWindow limita a primeira data de vencimento que uma proposta pode escolher. Em uma versão brasileira, jurisdictionExtensions aceita apenas taxRegime, admittedTaxRegimes, capitalizationClauseRequired, consumerProtectionRegime, cdcLateFeeCapPct, cdcDefaultInterestMonthlyPct, normPortfolioClass, normModality e scrModality. Qualquer outra chave responde 422 (LENDER-0115).
3

Anexe encargos

POST /api/v1/loan-product-versions/{id}/charge-templates declara um template de encargo em uma versão. Uma versão aceita no máximo um template origination_fee (LENDER-0241), nunca um reembolsável (LENDER-0243) nem um em outra moeda (LENDER-0244), e uma revisão não pode mudar o chargeType do template (LENDER-0246). POST /api/v1/loan-products/{id}/charges aplica um template a uma conta de empréstimo. Um encargo datado depois de hoje responde 422 (LENDER-0990). O Lender cobra um encargo aplicado na próxima parcela aberta.
4

Vincule um perfil contábil

POST /api/v1/loan-products/{id}/accounting-profiles declara como o produto lança no . O perfil traz as regras de lançamento (quais pernas de partida dobrada disparam para cada evento), e cada perna declara a nature da conta dela, debit ou credit. O array tem ao menos dez regras: disbursement, repayment, prepayment, accrual, accrual_withholding, renegotiation_gain, renegotiation_loss, collection_unapplied, collection_reapply e collection_refund. Uma perna que lança uma posição do tomador define perOperation, e o account dela vira um prefixo de até 17 letras, dígitos, _ ou -. As demais pernas nomeiam uma conta compartilhada. Um produto cujas versões declaram atraso ou um template de encargo que um operador pode aplicar precisa de mais pernas e regras (LENDER-0426, LENDER-0989). O perfil nomeia a organização e o ledger do Midaz em que lança, e o Lender pode buscar ou criar o ledger quando você nomeia apenas a organização. Um perfil não pode nomear um ledger com validação de rotas do Midaz ligada (LENDER-0452), e toda versão de um produto lança em um único ledger (LENDER-0453). A ativação recusa uma versão sem perfil. Veja Contabilidade e rodadas de apropriação.
5

Ative o produto

POST /api/v1/loan-products/{id}/activate deixa o produto ativo e fixa a versão que você nomeia como a versão atual dele. Até a ativação, o produto não origina nada. Uma versão brasileira também precisa da sua carteira, normPortfolioClass, antes de ser ativada. Cada proposta nomeia a versão que ela usa na originação, então os empréstimos existentes ficam com a versão em que começaram.

Promova uma versão nova


A ativação fixa a primeira versão. A promoção fixa todas as seguintes. Ela reaponta um produto que já está vivo para outra versão corrente, sem derrubar o produto e subir de novo. POST /api/v1/loan-products/{id}/promote nomeia a versão a fixar. O Brasil tem um alias, POST /api/v1/br/loan-products/{id}/promote, que se comporta de forma idêntica. A promoção carrega as mesmas duas checagens de prontidão que a ativação carrega: um perfil contábil presente e uma versão completa para a jurisdição dela. Ela as carrega porque é o mesmo ato. Um segundo caminho sem elas seria uma forma silenciosa de burlar o primeiro.
A promoção não muda contrato nenhum nem proposta nenhuma. Todo empréstimo já escrito fica com a versão em que nasceu. O cronograma, a precificação e os encargos dele leem daquela versão a vida inteira do empréstimo. Toda proposta ainda em voo também fica com a versão dela. Só propostas novas leem a versão corrente.

Inspecionando produtos


O que acontece downstream


Criar e ativar produtos emite loan_product.created, loan_product_version.created, loan_product.activated, accounting_profile.configured e loan_charge.applied no backbone de eventos (veja O Lender na plataforma).

Próximos passos


Origine um empréstimo

Pegue um produto ativo e origine um empréstimo contra ele.