Clube de Recompensas — Reconciliação
Pré-requisitos de acesso
- Permissão (módulo):
viewRewardsAudit - Licença/Feature:
REWARDS_CLUB - Contêiner do menu: GERAL → grupo Clube de Recompensas
O que é / quando usar
Dashboard de operações e auditoria do clube. O time de ops abre quando precisa entender, num período: quantos eventos chegaram, quantos payouts saíram, quantos travaram (pending) e quantos falharam, além de inspecionar quais eventos deram problema e por quê (com payload expandível).
Use para o fechamento periódico (24h/7d/30d ou range custom), para investigar pendências e para validar a saúde do programa após mudanças em missões.
Pré-condições
- Permissão:
viewRewardsAudit(permissão dupla: enum CPM + módulo dinâmico no DB). - Licença/Feature:
REWARDS_CLUB. - Dependências de outras telas: os dados refletem a atividade gerada por Missões e a configuração do Programa.
Passo a passo
- Acesse o menu Clube de Recompensas → Reconciliação (
/rewards-club/reconciliation). - Escolha um preset de período (24h / 7d / 30d) ou informe um range custom (de/até).
- Leia os KPIs e a taxa de sucesso (payouts pagos / total).
- Na lista de problemas, clique em uma linha para expandir o payload e ver o motivo (
reason) e a missão envolvida.
Filtros e colunas
| Filtro / Coluna | O que mostra | Origem do dado |
|---|---|---|
| Período (preset/custom) | Janela analisada | Presets 24h/7d/30d ou datas de/até |
Eventos recebidos (eventsReceived) | Total de eventos capturados | KPIs de reconciliação (RCS) |
Payouts pagos (payoutsPaid) | Concessões liquidadas | KPIs |
Payouts pendentes (payoutsPending) | Concessões travadas aguardando | KPIs |
Payouts falhos (payoutsFailed) | Concessões que falharam | KPIs |
| Taxa de sucesso | pagos / (pagos+pendentes+falhos) | Calculado na UI |
| Lista de problemas | Eventos com payout pendente/falho | getProblemEvents(from, to) |
| Detalhe do problema | outcome, reason, missão e payload | RewardsRawEvent.matchedMissions + payload |
Ações e modais
- Trocar período / Aplicar range: recarrega KPIs e a lista de problemas para a nova janela.
- Expandir linha: mostra o JSON do evento e o motivo do não-pagamento.
Regras de negócio / cuidados
Atenção
- Pendentes e falhos indicam payouts que não foram concluídos — investigue antes de assumir que um usuário foi pago. Causas comuns: pool sem saldo, usuário não aprovado, cap anti-fraude atingido.
- O status do evento (
PAID/PENDING/FAILED/PROCESSED/ERROR) é traduzido em pílulas coloridas; "neutro" indica resultados que não se enquadram nas categorias principais.
- Idempotência: os payouts passam pela FinLib, idempotente por
externalId. Um evento marcado com erro não significa necessariamente que o usuário não recebeu: ao reprocessar, oE00021("already processed") é tratado como sucesso. Por isso, reexecutar/recalcular é seguro e não duplica concessão. - Valores financeiros: todos os totais trafegam como string BigNumber — sem arredondamento.