Skip to content

Staking

Pré-requisitos de acesso

  • Permissão (módulo): manageToken
  • Licença/Feature: STAKING_TOKENS habilitada na licença do tenant (Vault).
  • Contêiner do menu: GERAL → grupo Produtos → Staking

O que é / quando usar

O Staking permite ao operador configurar produtos de rendimento sobre tokens: o usuário bloqueia (stakeia) uma quantidade de um token e, periodicamente, recebe pagamentos de rendimento em outro token (ou no mesmo). Esta tela administra as configurações de staking (StakingConfig) — as "regras do produto" — não as aplicações individuais dos usuários (essas ficam em Aplicações de Staking).

Use para criar um novo produto de staking, ajustar taxas/prazos, ativar/desativar, ou abrir o dashboard de um produto para acompanhar as aplicações.

Pré-condições

  • Permissão: manageToken (enum CPM + módulo dinâmico no DB).
  • Licença/Feature: STAKING_TOKENS habilitada. Se desabilitada, o item nem aparece no menu.
  • Dependências: os tokens de stake (unit_of_money) e de pagamento (unit_to_pay) precisam existir na plataforma.

Passo a passo

  1. Acesse Produtos → Staking.
  2. A lista mostra os produtos por nome, token de stake, token de pagamento e status (ativo/inativo).
  3. Use Criar para abrir o modal de configuração.
  4. Preencha os campos e salve.
  5. Em cada linha, use Editar, Dashboard (acompanhar aplicações) ou Excluir.

Campos (modal de configuração)

CampoO que éObrigatório?Efeito no sistema/backend
Nome (name)Nome do produto de stakingSimIdentifica a configuração.
Token de stake (unit_of_money)Token que o usuário bloqueiaSimDefine o ativo aceito para staking.
Token de pagamento (unit_to_pay)Token em que o rendimento é pagoSimDefine o ativo do payout.
Prazo (stakingLength)Duração do stakingSimDeve ser > 0 (BigNumber). Combinado com periodType.
Tipo de período (periodType)M (meses) ou Y (anos)SimDefault M.
Valor a aplicar (valueToApply)Taxa/percentual de rendimentoSimDeve ser > 0. Junto com method (sempre P = percentual) e thresholdToApply, governa o cálculo do payout.
Threshold (thresholdToApply)Valor mínimo para aplicar o rendimentoNãoFaixa a partir da qual o rendimento incide.
Taxa de saída (exit_fee)Multa por resgate antecipadoNãoAplicada quando há saída antes do prazo.
Pagamentos mensais (monthlyPayments)Paga rendimento mês a mêsNãoPersistido como 1 (ligado) ou -1 (desligado).
Permitir saque antecipado (allowEarlyWithdraw)Permite resgate antes do prazoNãoHabilita o resgate antecipado (sujeito a exit_fee).
Hold (hold)Retenção/trava adicionalNãoFlag de comportamento do produto.
Termos (terms, upload)Documento de termos do produtoNãoUpload via files API (máx. 30 MB); grava a URL.
Ativo (is_active)Produto disponível para novos stakesNãoDefault true na criação. Desativar não cancela aplicações existentes; apenas impede novas.

Ações e modais

  • Criar / Editar: abre o modal StakeTokensModalComponent. Salvar fica desabilitado enquanto faltarem nome, tokens, prazo > 0 e valor > 0.
  • Dashboard: navega para manage-stakes/dashboard/:id para acompanhar as aplicações do produto.
  • Excluir: remove a configuração (com confirmação) e recarrega.
  • Ajuda: botão de troubleshooting abre o guia de staking embutido.

Regras de negócio / cuidados

Atenção

  • Prazo e valor a aplicar devem ser > 0 (validados como BigNumber); caso contrário o salvar fica bloqueado.
  • Desativar um produto não afeta aplicações já feitas — só impede novas adesões.
  • method é fixado em P (percentual) ao salvar, mesmo que o modelo permita outros métodos.
  • Idempotência: os payouts de staking são idempotentes — reprocessar um pagamento (após retry/crash) é seguro; o errorCode FinLib E00021 "already processed" significa sucesso.
  • Valores financeiros: valor, threshold, taxa de saída e prazo são tratados como BigNumber — sem arredondamento.

Exemplos

Cenário 1 — Staking de 12 meses com pagamento mensal
  1. Crie um produto: token de stake = AXT, token de pagamento = tBRL.
  2. Prazo 12, período M (meses), valor a aplicar 1,5 (percentual), pagamentos mensais ligados.
  3. Sem saque antecipado (allowEarlyWithdraw desligado).
  4. O usuário que aderir bloqueia AXT e recebe tBRL todo mês conforme o percentual.
Cenário 2 — Produto anual com saque antecipado e multa
  1. Prazo 1, período Y (ano), valor a aplicar 18 (percentual ao ano).
  2. allowEarlyWithdraw ligado, exit_fee 5.
  3. O usuário pode resgatar antes de 1 ano, mas paga 5 de multa de saída.
Cenário 3 — Pausar adesões sem afetar quem já stakeou
  1. Edite o produto e desmarque Ativo.
  2. Novas adesões ficam bloqueadas; as aplicações em curso continuam rendendo e pagando normalmente.

Telas relacionadas