andré santos

projeto

[Em produção] Projeto freelance: ERP para empresa de formaturas

Sistema que substituiu planilhas, WhatsApp, Google Drive e papel na operação de uma empresa de formaturas com mais de quinze anos.

Next.jsNestJSPrismaMySQLTailwind CSSDocker

Contexto

A empresa organiza formaturas há mais de quinze anos, mas toda a operação vivia espalhada entre dois números de WhatsApp, Google Drive, planilhas e bastante papel. Cada evento reúne dezenas de formandos que pagam suas mensalidades ao longo de meses, sem um valor fixo por parcela. Eles enviavam o comprovante pelo WhatsApp e alguém precisava conferir e lançar na planilha depois.

Esse fluxo tinha várias fragilidades: comprovante antigo que ninguém achava, comprovante falso que passava batido, e o esquecimento na hora de passar o valor pra planilha. Construí uma plataforma pra reunir toda essa rotina em um único lugar, com confiança.

O que o sistema faz

No início, o foco foi organizar o essencial: o cadastro dos eventos, dos formandos e das turmas, o controle financeiro de cada evento (o que entra e o que sai), uma tela de lançamentos em formato e uso de planilha, como antes, mas agora dentro do sistema, e um controle de quem pode ver ou editar cada área. Só isso já mudou o dia a dia da equipe, porque tirou informação importante de conversas soltas e de planilhas que só uma pessoa entendia, e centralizou tudo em um lugar.

Com o tempo, adicionamos um módulo de storage, que permitiu anexar o comprovante a cada lançamento de pagamento e organizar documentos e fotos por evento. Toda pasta é gerada de dentro do sistema, vinculada ao evento e à formatura, e pode ser compartilhada com um link seguro e configurável: dá pra controlar se quem recebe pode criar pastas, adicionar arquivos ou baixar o conteúdo em ZIP.

Módulo de anexos, com arquivos organizados por pasta e vinculados ao evento

Outra fragilidade da operação era o pagamento de extras, como álbuns de formatura e link de fotos. Na maioria dos casos, alguém tinha que se deslocar até o formando (ou vice-versa) só pra passar a maquininha. Construí uma tela de pagamento própria, em um link público, que resolveu os dois lados: passou credibilidade pro cliente e poupou tempo e deslocamento pra empresa.

A maior mudança: pagamentos automatizados

Antes, o formando pagava por fora, mandava o comprovante com o nome e a turma no WhatsApp, e alguém conferia e dava baixa na planilha. Hoje, pra cada evento coletivo, o sistema gera um link público pra uma espécie de portal do aluno. Ele acessa, encontra o próprio nome, digita um código de acesso privado e paga por Pix, seguindo a regra da empresa de "pagar quanto quiser por mês". O sistema registra o pagamento sozinho, atualiza o quanto falta e envia o recibo por e-mail automaticamente.

Tela inicial do portal do aluno, onde o formando encontra o próprio nome na lista

Portal do aluno após o código de acesso, com saldo do contrato e botão de pagamento

O portal também tem uma aba de informações do evento, com o dia da foto convite e as instruções, os dias de festas e confraternizações, o contrato anexado pra acesso rápido, entre outras coisas. Isso já poupa uma boa parte das perguntas que apareciam no WhatsApp e deixa a informação acessível pra todos os formandos ao mesmo tempo.

Aba de informações do evento, com contrato pra baixar e detalhes das próximas datas

O pagamento em si é feito por Pix, com o código gerado direto pelo sistema e confirmação automática pela API do banco.

Cobrança Pix pendente, com código copiável e confirmação automática após o pagamento

Na prática, tudo isso reduziu quase inteiramente o trabalho manual de um funcionário, e resolveu dois problemas antigos. Com a integração da API Pix direto no banco, só entra no sistema pagamento realmente confirmado. Não passa mais comprovante falso, nem alguém de má intenção, nem comprovante perdido depois.

Uma decisão importante foi não exigir cadastro nem login nessa parte pública. A intenção era que o formando pagasse sem criar conta e sem precisar lembrar de senha, só com o nome e um código. Menos barreira e mais facilidade, e ainda com um ganho de privacidade que não existia antes: a planilha completa costumava circular no grupo da turma, e todo mundo via quanto cada um tinha pago. Agora cada formando só vê o próprio saldo.

O trabalho que não aparece na tela

A parte de pagamentos foi a que mais exigiu cuidado. Quando um sistema passa a lidar com dinheiro, ele não pode errar: não pode perder um pagamento nem registrá-lo duas vezes, mesmo quando o banco demora a confirmar ou quando duas ações acontecem ao mesmo tempo. Boa parte do esforço foi nesses detalhes invisíveis: garantir que cada cobrança tivesse um estado bem definido, que uma confirmação repetida não gerasse lançamento duplicado, e que o próprio sistema conferisse com o banco de tempos em tempos pra se acertar quando algum aviso se perdia no caminho.

Painel administrativo de cobranças, com estados pendente, pago, expirado e cancelado

Também dediquei um tempo pra revisar a segurança com calma: quem tem acesso a cada área, como proteger os dados de cada aluno e os arquivos, o que fica registrado em log. Não é a parte mais vistosa do projeto, mas em algo que está no ar e movimenta dinheiro, é o que dá tranquilidade pra seguir trabalhando e melhorando.

Colocar no ar e manter funcionando

Hoje o sistema roda em produção. Já tem uma turma inteira pagando nesse novo modelo mais automatizado e duas entrando agora. Os feedbacks até aqui têm sido positivos, elogiando a transparência e a facilidade, que era exatamente o que a gente queria.

Sou eu quem cuida de manter o sistema no ar, e isso trouxe um tipo de aprendizado que só aparece depois do lançamento. Já precisei resolver situações reais em produção, como trocar o certificado de integração com o banco sem interromper o serviço. Publicar é só o começo. Manter um sistema estável, especialmente um que envolve pagamentos, é uma responsabilidade contínua e diferente do trabalho de construir.

O que aprendi

Digitalizar um negócio pequeno só funciona se a pessoa realmente usar o sistema no dia a dia. Toda vez que a ferramenta obrigava o usuário a sair dela pra fazer algo em outro lugar, ele acabava voltando pra planilha. Por isso o que mais fez diferença foi manter tudo em um só lugar e simples o suficiente pra virar o padrão da rotina.

Entregar é só o começo. As inovações reais vieram depois dos primeiros usos, quando ideias novas surgiram vendo o sistema funcionar no mundo real.

[Em produção] Projeto freelance: ERP para empresa de formaturas - André Luiz