Skip to content

Gerenciar Limites

Pré-requisitos de acesso

  • Permissão (módulo): viewLimits OU manageLimits para abrir e listar; manageLimits para criar, editar ou excluir (basta um dos módulos para visualizar; criar/editar/excluir sempre exige manageLimits).
  • Licença/Feature: Nenhuma.
  • Contêiner do menu: GERAL → grupo Usuários

O que é / quando usar

Tela de cadastro dos perfis de limite (também chamados de "limites gerais") da plataforma. Cada perfil é um conjunto nomeado de tetos por tipo de movimentação — transferência cripto externa, TED, PIX, transferência para mesma titularidade, transferência interna e saque. Os perfis criados aqui são depois atribuídos a usuários individualmente pela tela de Detalhes do usuário, onde o operador escolhe qual perfil de limite vale para aquele cliente.

Use ao montar a política de limites do tenant (ex.: "Padrão", "Investidor Qualificado", "Conta Verificada") e ao ajustar os tetos de cada perfil. Esta tela não opera sobre um cliente específico — ela define os modelos; a vinculação cliente↔perfil é feita nos Detalhes do usuário.

Pré-condições

  • Permissão: viewLimits ou manageLimits cadastrado para a role do operador. A permissão é dupla — o enum estático CPM (E_PERMISSION_MODULES.viewLimits / E_PERMISSION_MODULES.manageLimits) valida a rota no API-Gateway e o módulo dinâmico correspondente precisa estar associado à role no banco para a UI liberar o item de menu. A listagem (getAllGeneralLimits) aceita qualquer um dos dois; criar/editar/excluir (createGeneralLimits / updateGeneralLimits / deleteGeneralLimits) exige manageLimits.
  • Licença/Feature: nenhuma.
  • Dependências de outras telas: nenhuma para criar perfis. Para que um perfil tenha efeito, ele precisa ser atribuído a um usuário em Detalhes do usuário (chamada updateGeneralLimitsForUser).

Passo a passo

  1. Acesse o menu Usuários → Gerenciar Limites (/manage-limits/list).
  2. A tabela mostra os perfis existentes com Tipo (nome do perfil) e o teto de Transferência Cripto.
  3. Clique em Novo para criar um perfil; ou use os ícones de visualizar / editar / excluir na linha de um perfil existente.
  4. No formulário, preencha o Nome do Limite, anexe a imagem do perfil e informe os tetos por tipo de movimentação.
  5. Clique em Salvar. Em criação e edição, um rodapé de confirmação (bottom-sheet) é exibido antes de persistir.
  6. Para aplicar o perfil a um cliente, vá em Detalhes do usuário e selecione o perfil de limite desejado.

Campos

Formulário de criação/edição (rotas /manage-limits/create, /manage-limits/edit/:id, /manage-limits/details/:id):

CampoO que éObrigatório?Efeito no sistema/backend
Nome do Limite (Tipo)Identificador legível do perfil (ex.: "Padrão", "Investidor Qualificado")SimGrava em IGeneralLimits.type no CPM. Imutável após a criação — o campo fica desabilitado no modo edição (só é editável ao criar). Validado por colectionNameValidator (sem caracteres inválidos).
ImagemImagem/ícone do perfil, enviada via uploadSimFaz upload pelo serviço de arquivos e grava a URL em IGeneralLimits.image. O Salvar fica bloqueado sem type e sem image (validateSave).
Transferência CriptoTeto de transferência cripto externaNãoGrava crypto_external_transfer. É a única coluna de teto exibida na listagem.
Envio de TEDTeto de TEDNãoGrava ted_transfer.
Envio de PIXTeto de PIXNãoGrava pix_transfer.
Envio para mesma titularidadeTeto de transferência entre contas do mesmo titularNãoGrava same_account_transfer.
Transferência InternaTeto de transferência interna (entre carteiras na plataforma)NãoGrava internal_pix_transfer.
SaquesTeto de saqueNãoGrava withdraw_transfer.

Tetos vazios

Os campos de teto não são obrigatórios no formulário. Um perfil pode ser criado só com nome e imagem e ter os tetos preenchidos depois (modo edição). Tetos não preenchidos ficam sem valor no perfil — confira a política de cada tipo de movimentação antes de deixar um teto em branco.

Ações e modais

  • Novo: abre o formulário em branco (/manage-limits/create). Exige manageLimits.
  • Visualizar (olho): abre o perfil em modo leitura (/manage-limits/details/:id), com botão Editar para alternar.
  • Editar (lápis): abre o formulário com os dados do perfil (/manage-limits/edit/:id). O Nome do Limite fica bloqueado. O botão Salvar só habilita se houver alteração real em algum campo (editValidate compara com o original).
  • Excluir (lixeira): abre um bottom-sheet de confirmação; ao confirmar, chama deleteGeneralLimits/:id. Exige manageLimits.
  • Salvar: bottom-sheet de confirmação antes de persistir, tanto na criação quanto na edição.

Regras de negócio / cuidados

Atenção

  • Nome imutável: o nome do perfil não pode ser alterado após criado. Para "renomear", crie um perfil novo e re-atribua os usuários.
  • Esta tela não vincula usuários. Criar ou editar um perfil aqui não altera o limite de nenhum cliente automaticamente. A vinculação cliente↔perfil é feita em Detalhes do usuário via updateGeneralLimitsForUser. Editar os tetos de um perfil já atribuído passa a valer para os clientes que usam aquele perfil.
  • Imagem obrigatória: sem imagem o Salvar fica bloqueado — anexe a imagem antes de tentar salvar.
  • Valores financeiros: os tetos representam valores monetários e são tratados com precisão (BigNumber) no backend — não arredonde na conferência; confira as casas decimais conforme o tipo (token vs. fiat).

Telas relacionadas