Skip to content

Desembolsos (Disbursements)

Pré-requisitos de acesso

  • Permissão (módulo): creditDisburse (executar/operar desembolsos).
  • Licença/Feature: CREDIT_INVESTMENTS habilitada na licença do tenant (Vault).
  • Contêiner do menu: TOKENIZAÇÃO → grupo Crédito Tokenizado

O que é / quando usar

A tela de Desembolsos acompanha o repasse do valor líquido de um Deal ao originador (cedente) — o momento em que a antecipação efetivamente "paga" o cliente. O desembolso é executado contra a conta BaaS do originador (gerando um baasTransferId) ou, na modalidade tokenizada, via transferência de token.

Use esta tela para monitorar o estado dos desembolsos (pendente, processando, concluído, falha), conferir o valor repassado por deal e rastrear a transferência BaaS correspondente.

Pré-condições

  • Permissão: creditDisburse (permissão dupla — enum CPM + módulo dinâmico no DB).
  • Licença/Feature: CREDIT_INVESTMENTS habilitada. Sem ela o grupo nem aparece no menu.
  • Dependências de outras telas: o Deal precisa estar aprovado/financiado; o originador (Partes) precisa ter conta BaaS ativa e status compatível (APPROVED).

Passo a passo

  1. Acesse o menu Crédito Tokenizado → Desembolsos.
  2. Filtre por Status.
  3. Acompanhe cada linha: deal, valor, status, ID da transferência BaaS e data.
  4. A execução do desembolso é disparada pelo fluxo do deal (executeDisbursement / disbursementViaToken); esta tela é o acompanhamento.

Filtros e colunas

Filtro/ColunaO que mostraOrigem do dado
DealOperação cujo valor líquido foi repassadodisbursement.dealId
ValorMontante desembolsado ao originadordisbursement.amount (BigNumber)
StatusPENDING, PROCESSING, COMPLETED, FAILED (e equivalentes do backend)disbursement.status (filtro statusFilter)
ID Transferência BaaSIdentificador da transferência bancária no provedordisbursement.baasTransferId
Criado emData do desembolsodisbursement.createdAt

Ações e modais

Esta tela é primariamente de monitoramento. A execução acontece nos fluxos de serviço:

  • Desembolso fiat (BaaS): executeDisbursement({ dealId, amount, idempotencyKey }) — transfere o líquido à conta BaaS do originador e grava baasTransferId.
  • Desembolso via token: disbursementViaToken({ dealId, originatorUserId, tokenId, amount }) — repasse representado por transferência de token (walletTransaction).

A execução de desembolso é ação financeira sensível e pode exigir step-up (senha + MFA, X-Step-Up-Token, janela 5 min) conforme o ambiente.

Regras de negócio / cuidados

Atenção

  • Originador precisa estar apto. O repasse exige a Parte originadora com conta BaaS ativa e status aprovado; sem isso o desembolso falha (FAILED).
  • baasTransferId é a âncora de conciliação. Use-o para casar o desembolso com o extrato do provedor BaaS.
  • Valor líquido, não bruto. O que se desembolsa é o netDisbursement do deal (bruto − desconto − taxas), não o valor de face dos recebíveis.

Irreversível

  • Desembolso executado não tem rollback. Uma vez que a transferência BaaS/token sai, o dinheiro está com o originador; correções exigem novo evento financeiro (estorno/recompra).
  • Valores financeiros: amount é BigNumber no backend; não arredonde ao conferir o repasse.
  • Idempotência: o desembolso aceita idempotencyKey e passa pela FinLib — idempotente por externalId. Em reprocessamento, E00021 ("already processed") é sucesso (já desembolsado), não falha. Ver [[reference_finlib_idempotency]].
  • Status APPROVED: o originador-alvo deve estar aprovado para receber o repasse.

Exemplos

Cenário 1 — Desembolso fiat concluído
  1. Deal aprovado e financiado; originador com conta BaaS ativa.
  2. O fluxo executa executeDisbursement com o netDisbursement.
  3. A linha aparece como COMPLETED com baasTransferId preenchido — concilie com o extrato do provedor.
Cenário 2 — Reprocessamento seguro após crash
  1. O processo caiu logo após a transferência sair, mas antes de confirmar.
  2. O reprocesso usa o mesmo idempotencyKey; a FinLib responde E00021.
  3. Trate como sucesso — não há duplo desembolso.

Telas relacionadas