This use case is exclusive for the use of partners with [Partner Name].
Direct Consumer Credit (CDC) is a type of personal loan aimed at end consumers who wish to take out credit. Through this use case, [Partner Name] offers its customers the possibility of contracting a CDC directly on its platform, using BMP’s APIs for credit simulation, proposal, and formalization in a fast and secure manner.
Below, is the step by step for using the use case:
Before using this service, you need to configure authentication. Please refer to the authentication instructions for detailed guidance.
In our process refers to the optional use of the BMP Credit Desision Engine to perform a preliminary credit analysis of your customer. This step is designed to provide an automated pre-assessment based on predefined criteria, helping support decision-making before moving forward with the full process.
You can choose to use our Credit Desision Engine for a fast and efficient evaluation, or, if you prefer, integrate your own Credit Desision Engine into the workflow. The choice depends on your business needs and strategy.
Important: Even if you choose not to use the BMP Credit Desision Engine, you can still contract and integrate BMP’s bureau services for data consultation and customer profiling.
The response from this endpoint will be a link containing our capture experience, which includes both the customer’s facial biometrics and document collection, in a simple and secure way.
In this step it will be necessary to choose a single registration flow
1
Client Registration
In cases of updating the customer registration, it must be done through integration with our Customer Registration API
curl --location 'https://api.bmpdigital.moneyp.dev.br/Pessoa/Salvar' \--header 'IdempotencyKey: Unique-GUID-per-call' \--header 'Authorization: Bearer qXdZot13a6EbJkAbjpZ5ep_eTKH2F5ZHOwZrYZVN1lw' \--header 'Content-Type: application/json' \--data-raw '{ "dto": { "Codigo": "1", // Code to identify the customer in your system | NOT MANDATORY "Nome": "CLIENTE TESTE", // Your client's name | REQUIRED "DocumentoFederal": "75000000000", // Federal document (CPF: 11 digits | CNPJ: 14 digits | we have a validator, so it must be a valid document) | MANDATORY "PF": { // If your client is an Individual, fill in this object, if not, delete this object. "rg": "string",// Your client's ID | MANDATORY "rgOrgao": "string", // Your client's ID issuing body | NOT MANDATORY "rguf": "string", // Your client's ID number | NOT MANDATORY "rgData": "2023-07-10T20:01:07.689Z", // ID issue date | NOT MANDATORY "dtNasc": "2023-07-10T20:01:07.689Z", // Your client's date of birth | MANDATORY "sexo": "string", // Your client's gender | NOT MANDATORY "nacionalidade": "string", // Nationality of your client | NOT MANDATORY "naturalDeCidade": "string", // Your client's hometown | NOT MANDATORY "naturalDeUF": "string", // Your client's home state | NOT MANDATORY "estadoCivil": 0, // enum type, Query document sent by email | NOT MANDATORY "escolaridade": 0 // enum type, Query document sent by email | NOT MANDATORY }, "PJ": { // If your client is a Legal Entity, fill in this object, if not, delete this object. "nomeFantasia": "string", // Company trade name | MANDATORY "documentoEstadual": "string", // Enter the company's state document || NOT MANDATORY "documentoMunicipal": "string", // Enter the company's Municipal document || NOT MANDATORY "dtAberturaEmpresa": "2024-06-06T19:49:59.553Z", // Enter the date of opening of the CNPJ in timestamp || NOT MANDATORY "nomeResponsavelEmpresa": "string", // Enter the name of the person responsible for the company || NOT MANDATORY "cpfResponsavelEmpresa": "string", // Enter the name of the CPF of the person responsible for the company || NOT MANDATORY "rgResponsavelEmpresa": "string" // Enter the ID number of the person responsible for the company || NOT MANDATORY }, "PessoaDadosContato": { "Email": "teste@email.com.br", // Your customer's email | MANDATORY "TelefoneCelular1": "11923456781" // Your client's cell phone | MANDATORY } }}'
2
Address Registration
In this step, it will be necessary to register or update the address through integration with our Address Registration API
curl --location 'https://api.bmpdigital.moneyp.dev.br/Pessoa/SalvarEndereco' \--header 'Authorization: Bearer qXdZot13a6EbJkAbjpZ5ep_eTKH2F5ZHOwZrYZVN1lw' \--header 'IdempotencyKey: Unique-GUID-per-call' \--header 'Content-Type: application/json' \--data '{ "dto": { "codigo": "string", // Code to identify the address in your system | NOT MANDATORY "cep": "string", // Address ZIP Code | REQUIRED "logradouro": "string", // street address | NOT MANDATORY "nroLogradouro": "string", // Address street number | NOT MANDATORY "bairro": "string", // address neighborhood | NOT MANDATORY "complemento": "string", // address complement | NOT MANDATORY "cidade": "string", // address city | NOT MANDATORY "uf": "string", // address uf | NOT MANDATORY "tipoEndereco": 0, // Address type | NOT MANDATORY "tipoResidencia": 0, // street address | NOT MANDATORY "enderecoDesde": "2024-04-04T12:19:46.116Z", // inform since when the address belongs to the customer | NOT MANDATORY "enderecoPrincipal": true, // is the customer's primary address? | NOT MANDATORY "enderecoCorrespondencia": true // is the mailing address? | NOT MANDATORY }, "param": { "documentoCliente": "string" // Federal document (CPF: 11 digits | CNPJ: 14 digits | we have a validator, so it must be a valid document) | MANDATORY }}'
3
Credit limit approved
At this stage, it will be necessary to request the customer’s credit limit using the following endpoint:
Through this endpoint, it is possible to perform the simulation via integration with our API for Detailed Simulation
curl --location 'https://api.bmpdigital.moneyp.dev.br/Proposta/CalcularGridParcelasSimplificadoPrice' \ --header 'accept: text/plain' \ --header 'IdempotencyKey: UNIQUE GUID FOR EACH CALL' \ --header 'Content-Type: application/json' \ --data '{ "dto": { "vlrSolicitado": 0, // Amount requested by your client | REQUIRED "nroDiasAcrescimo": 0, // This field indicates how many grace days the proposal will have (considering the month with 30 or 31 days) "percJurosNegociado": 0, // Percentage of interest negotiated with your client | REQUIRED "tipoPessoa": 0, // For individual, enter 1; for company, enter 2 | REQUIRED "vlrTAC": 0, // If there is a TAC, provide this field. If not, you can exclude it | OPTIONAL "prazo": 0, // Provide the number of installments "fluxoIrregular": false // Enter false for an interval of 30 days or true for other intervals } }'
At this stage, it will be necessary to perform the simulation through integration with our API for Multi-Installment Simulation
curl --location 'https://api.bmpdigital.moneyp.dev.br/Proposta/CalcularGridParcelasSimplificado' \--header 'accept: text/plain' \--header 'IdempotencyKey: UNIQUE GUID FOR EACH CALL' \--header 'Content-Type: application/json' \--header 'Authorization: Bearer 2ec83da4-ddba-4b01-9c6a-5b5e718f5793' \--data ' { "dto": { "vlrSolicitado": 0, // Amount requested by your client | REQUIRED "nroDiasAcrescimo": 0, // This field indicates how many grace days the proposal will have (considering the month with 30 or 31 days) "percJurosNegociado": 0, // Percentage of interest negotiated with your client | REQUIRED "tipoPessoa": 0, // For individual, enter 1; for company, enter 2 | REQUIRED "vlrTAC": 0 // If there is a TAC, provide this field. If not, you can exclude it | OPTIONAL }
At this stage, it will be necessary to submit the proposal through integration with our API for Submit Proposal
curl --location 'https://api.bmpdigital.moneyp.dev.br/Proposta/IncluirManualSimplificadoPrice' \--header 'Authorization: Bearer qXdZot13a6EbJkAbjpZ5ep_eTKH2F5ZHOwZrYZVN1lw' \--header 'IdempotencyKey: UNIQUE GUID FOR EACH CALL' \--header 'Content-Type: application/json' \--data '{ "dto": { "documentoCliente": "string", // Customer's document "documentoParceiroCorrespondente": "string", // Corresponding Partner's document "codigoOperacao": "string", // Required - Used by the integrator. It is the operation code in the partner's system. This information is unique and can be used to update the proposal without needing to store the proposal code in BMP. However, storing the BMP proposal code is important for printing bills/CCB/promissory notes or protocol. "codigoVersaoCCB": 0, // Credit Note version code (CCB) "vlrSolicitado": 0, // Required - Amount requested in the proposal "prazo": 0, // Required - Term requested. It will be validated as per the integration parameters. "nroDiasAcrescimo": 0, // Required - Number of days of interest "percJurosNegociado": 0, // Required - Proposal's negotiated interest rate "fluxoIrregular": true, // Required - Indicates if the proposal is irregular "vlrIOF": 0, // Required - Total amount of the Financial Transactions Tax (IOF) "percIOF": 0, // Required - Percentage of the Financial Transactions Tax (IOF) "vlrParcela": 0, // Required - Installment value "vlrTAC": 0, // Required - Registration Fee Value. It can be R$ 0.00 when not applicable. "vlrOutrasDespesas": 10000000000000000, //Optional - Other expenses value "vlrOutrosServicos": 10000000000000000, //Optional "vlrSeguro": 10000000000000000, // Optional "vlrEntrada": 10000000000000000, //Optional "tipoContrato": "string", // string(5) - Acronym indicating the type of proposal contract. Example: CSG -> Working Capital; CCG -> Working Capital with Guarantee "propostaContaPagamentoDTO": { "tipoConta": 0, // Required - Account type "agencia": "string", // string(10) Required - Bank branch "agenciaDig": "string", // string(1) Required - Branch digit "conta": "string", // string(20) Required - Bank account "contaDig": "string", // string(1) Required - Account digit "numeroBanco": "string" // string(5) Required - Bank number }, },}'
In this step it will be necessary to perform the electronic signature through the integration with our Electronic Signature API.
curl --location 'https://api.bmpdigital.moneyp.dev.br/Proposta/IncluirAssinaturaCCBFinalizada' \--header 'IdempotencyKey: Unique-GUID-per-call' \--header 'Content-Type: application/json' \--data '{ "dto": { "codigoProposta": "3fa85f64-5717-4562-b3fc-2c963f66afa6", // Número sequencial da proposta "codigoOperacao": "string" // string(50) Código da Operação do Parceiro }, "assinantes": [ { "nome": "string", // string(60) Mandatory - Subscriber Name "email": "string", // string(60) Required - Subscriber's Email "documento": "string", // string(20) Mandatory – Individual Taxpayer Registry Number (CPF) and National Registry of Legal Entities (CNPJ) of the subscriber "descricao": "string", // string(100) Subscriber characterization "notificarPorEmail": true, // Mandatory - The subscriber who is marked to receive the notification will have control over all subscriptions and may charge for pending subscriptions. The email will be sent by BMP. "dtAssinatura": "2024-01-15T14:21:57.250Z", // Mandatory - Date and time of the signature made in the integrator backend "ipAssinatura": "string" // string(255) Required - IP number where the signature was collected } ]}'
3
Finalization of Proposal
After sending the Relogon subscription request, it will be necessary to finalize the proposal through integration with the Proposal Finalization endpoint.
At this stage, it is necessary to release the proposal through the integration with our Proposal Release for Payment API to validate the contract model after signing.
curl --location 'https://api.bmpdigital.moneyp.dev.br/Proposta/Liberar' \--header 'IdempotencyKey: UNIQUE GUID FOR EACH REQUEST' \--header 'Content-Type: application/json' \--data '{ "dto": { // Only one of the fields below should be provided "codigoProposta": "3fa85f64-5717-4562-b3fc-2c963f66afa6", // Sequential number of the proposal "codigoOperacao": "string" // string(50) Partner's operation code }, "parametros": [ {} ]}'
Below is a sample of an embedded journey in which BMP will be responsible for the end-to-end delivery of the solution, including the development of the frontend, backend, and API-driven service integrations.
This journey ensures full alignment between the wireframed flows and the final user experience, whether in native mobile applications (iOS/Android) or in a responsive web environment.
To support this, we’ve included a sample video showcasing the navigation experience and key user interaction points, with emphasis on the integration touchpoints handled by BMP systems:
The current material only covers a single BMP service journey, where [Partner Name] is responsible for developing the embedded front-end solution for our credit services.
Can we confirm whether the embedded service will include both front-end and back-end components?
Will there be a financial disbursement related to this operation (i.e., a monetary transaction to an [Partner Name] or partner store account)?
Who will be responsible for executing the disbursement — [Partner Name] or BMP?
I did not identify any post-contractual flows in the current journey. Is it planned to include functionalities such as:
Payment anticipation
Contract settlement
Generation of payment slips (boletos) for upcoming installments?
Will there be any mechanism to revise or adjust the credit limits already configured?
Regarding contract signing:
– Will it be executed via a power-of-attorney clause (i.e., [Partner Name] signing on behalf of the end customer)?
– Or will the contract be considered valid through SMS validation sent to the registered phone number?