Carteira e Transações
Carteira e Transações
Resumo
A Carteira (Wallet) é o saldo interno do usuário no P8W, usado para pagar serviços, receber comissões de afiliado, recargas e saques. API em app/User/Controllers/Api/WalletController.php (/api/wallet/*). View tab wallet em app/User/Views/profile/tabs/wallet.php. Sistema auditado via ledger (baseline + delta), com dual-write para migração segura.
Para quem é (personas)
- Usuário que compra, recarrega ou transfere créditos.
- Afiliado que recebe comissões na carteira.
- Admin financeiro que reconcilia saldos.
O que você pode fazer
Consultar
- Saldo atual:
GET /api/wallet/balance. - Resumo (créditos, débitos, pendentes):
GET /api/wallet/summary. - Extrato de transações:
GET /api/wallet/transactions. - Exportar extrato:
GET /api/wallet/transactions/export(CSV/XLSX). - Relatórios:
- Por tipo:
GET /api/wallet/reports/by-type. - Por dia:
GET /api/wallet/reports/by-day.
Movimentar
- Adicionar crédito (recarga):
POST /api/wallet/add-credit— redireciona
para checkout.
- Transferir para outro usuário:
POST /api/wallet/transfer. - Sacar:
POST /api/wallet/withdraw(sujeito a aprovação). - Usar créditos em uma compra:
POST /api/wallet/use-credits.
Como acessar
/dashboard/profile?tab=walletpara dashboard completo.- Tab Financeiro → Extrato para
/dashboard/transactions.
Tutoriais
Fazer recarga via PIX
Objetivo: Adicionar R$ 100 na carteira.
Passos:
- Na tab Carteira, clique em Adicionar crédito.
- Informe valor (R$ 100).
- É redirecionado para
/dashboard/checkout. - Pague via PIX.
- Webhook credita a carteira automaticamente.
Transferir saldo para outro usuário
Objetivo: Enviar créditos a um colega.
Passos:
- Em Carteira, clique em Transferir.
- Informe email/usuário de destino.
- Informe valor e descrição.
- Confirme (
/api/wallet/transfer).
Solicitar saque
Objetivo: Retirar saldo para conta bancária.
Passos:
- Em Carteira, clique em Sacar.
- Selecione método (PIX, transferência bancária).
- Confirme valor (respeita mínimo configurado).
- Envie (
/api/wallet/withdraw). - Admin aprova — prazo definido pelo tenant.
Integrações
- Checkout — recargas passam pelo
/dashboard/checkout. - Afiliados — comissões entram automaticamente na carteira.
- Ledger interno — cada transação cria entradas débito/crédito em
core_ledger_* (auditoria contábil).
- Event Bus — eventos
wallet.credited,wallet.debited,
wallet.withdraw.requested.
Perguntas frequentes
Qual o saldo mínimo para saque? Definido pelo admin. Veja no painel da carteira antes de solicitar.
Quanto demora o saque? Depende do método — PIX geralmente em horas, transferência bancária em dias úteis.
Créditos expiram? Saldo comprado geralmente não expira. Bônus/promoções podem ter TTL. Veja na descrição de cada crédito.
Transferência tem taxa? Entre usuários da mesma plataforma, normalmente não. Saques podem ter taxa conforme gateway.
Posso pagar assinatura com saldo da carteira? Sim, via POST /api/wallet/use-credits no checkout.
O extrato mostra ledger contábil? O extrato simples mostra transações do usuário. O ledger completo (débito/crédito por conta) é interno e auditável pelo admin.
Posso ter carteiras em moedas diferentes? A moeda padrão é a do tenant. Multi-moeda é roadmap.
Como protejo minha carteira? Habilite 2FA, revise sessões regularmente e monitore o extrato. Movimentos suspeitos disparam alerta.
Limitações e políticas
- Auditoria DELTA-based — ledger congela baseline histórico (ver
sessions rc.196+).
- Dual-write em
WalletRepo::createTransactione
UserRepo::addBalance até sunset do legado.
- Transferência entre tenants bloqueada (isolamento).
- Saque sujeito a KYC/validação fiscal quando configurado.
- Rate limit em operações de movimento.
- Logs completos em canal
audit.
Relacionados
- Pagamentos e Billing
- Afiliados
- Planos e Assinatura
Este artigo foi útil?
Perguntas e Respostas
Nenhuma pergunta ainda. Seja o primeiro a perguntar!