# O painel admin que ninguém planeja até um cliente perguntar

> Você lançou login, cobrança e a funcionalidade que vende. Aí alguém escreveu "onde vejo minha assinatura?" e você percebeu que não tinha back office nenhum.

A mensagem chegou numa quarta à tarde, educada mas direta: "Fiz upgrade ontem. A cobrança está no cartão. Onde no app eu vejo meu plano?"

Você abriu o produto e percorreu o caminho como esse usuário. Dashboard, configurações, perfil. Nome e e-mail, sim. Nome do plano, talvez, se você tiver ligado isso na semana passada. Histórico de faturas, não. Botão de cancelar, com certeza que não.

Respondeu a partir do painel do Stripe, colou um print do recibo e sentiu um cansaço que não vinha de um e-mail só. Vinha de perceber que você tinha construído um app para clientes sem um lugar para ver o que acontecia do outro lado.

Toda história de fundador solo começa na funcionalidade que vende o produto. O painel admin mora numa pasta chamada `depois`.

## O que "depois" cobra de verdade

O e-mail do cliente foi o gatilho. A conta de verdade veio de tudo que você não conseguia fazer sem back office.

Você não conseguia buscar usuários por e-mail quando alguém errava o cadastro. Não conseguia mudar o status de uma assinatura quando um webhook falhava. Não conseguia ver quem estava em trial, quem estava inadimplente, quem cancelou no mês passado. Atendia suporte de memória, do Stripe, de SQL cru quando tinha coragem.

Cada gambiarra parecia pequena. Juntas, elas comiam as tardes que você tinha prometido ao produto.

E o produto pagava o preço também, porque cada hora montando uma "tabela de usuários com busca" era uma hora a menos na coisa que as pessoas pagam. Pior: o admin que você fez num fim de semana não compartilhava auth, layout nem contratos de API com o resto do stack, e você acabava mantendo dois apps que pareciam de empresas diferentes.

## A armadilha do "uso o banco direto"

Muito fundador, inclusive você em alguns meses, abre o Supabase ou o pgAdmin e chama isso de administração. Funciona até parar de funcionar.

SQL direto não tem trilha de auditoria. Ninguém sabe quem alterou uma linha. Você não passa isso para um co-founder ou para alguém de suporte sem travar. Um `UPDATE` sem `WHERE` às 23h é história que só conta depois que o susto passa.

PSPs entregam dashboards, mas o Stripe mostra dinheiro, não seus entitlements. O Paddle mostra assinaturas, não qual feature flag você amarrou ao `pro`. O vão entre "o que o PSP sabe" e "o que o app aplica" é exatamente onde nascem tickets de suporte.

Você precisava de uma tela que lesse o banco do mesmo jeito que o app lê, com as mesmas regras, os mesmos papéis, a mesma checagem de "essa pessoa é admin" que você vai lamentar não ter centralizado.

## O que um painel admin de verdade cobre antes de você precisar

Não um mock no Figma. Não um board no Retool plugado em produção no cartão pessoal. Um app de primeira classe no monorepo, deployado junto do marketing e do app do cliente, compartilhando auth e contratos de API.

Antes do primeiro e-mail bravo, ele já deveria deixar você:

- Achar um usuário por e-mail e ver perfil, plano e status da assinatura numa visão só.
- Listar assinaturas com filtros que pensam como o negócio, não como o Stripe nomeia colunas.
- Ajustar entitlements quando algo quebra, com registro de quem mudou o quê.
- Gerenciar planos e features sem redeploy a cada experimento de pricing.

Isso não é scope creep. É a superfície operacional mínima de um SaaS que cobra de desconhecidos.

O CastorStack traz o admin panel como o terceiro app do repo, não um parágrafo no README. Mesmo fluxo JWT, mesma API, mesma história de deploy que a web app. Você não decide se vai construir back office. Decide o que fazer com a semana que recupera.

## A semana que você recupera

Imagine que a próxima mensagem de suporte seja a mesma pergunta. "Onde vejo meu plano?"

Você abre o admin, busca o e-mail, confirma que a linha de assinatura bate com o Stripe, vê que o flag de entitlement está errado, corrige numa tela, responde em dois minutos. Sem SQL. Sem print do dashboard de pagamento. Sem ficar na dúvida se está em modo test.

Não é trabalho glamoroso. É o trabalho que mantém um fundador solo shipando produto em vez de virar operador toda noite.

A funcionalidade que só você consegue construir ainda precisa de uma base: auth, cobrança, webhooks, três frontends e sim, o painel admin que ninguém planeja até um cliente perguntar. O CastorStack entrega essa base pronta para rodar. [Conheça o CastorStack](/pt/pricing).
