Pular para o conteúdo

Funil de reativação de clientes

Sequência automática de reativação para cliente inativo: lembrete, oferta especial e última chance, cada uma liberada só depois do intervalo certo, com link de WhatsApp pronto e parada automática assim que o cliente responde. Go puro, sem framework.

2026-09-07
Gonet/httpSem framework

Visão geral

Terceira linguagem diferente no portfólio (depois de TypeScript/React Native e Java): Go puro, sem framework, só a biblioteca padrão (net/http, html/template).

É uma sequência de reativação: cliente sem comprar há 30 dias entra automaticamente no funil, recebe um lembrete; se não reagir, uma oferta especial 3 dias depois; se ainda não reagir, uma última chance 4 dias depois disso. Se o cliente reativar em qualquer ponto (respondeu, comprou de novo), o funil encerra ali, sem insistir mais. Se não reagir nem à última mensagem, encerra sozinho depois de mais 5 dias.

Arquitetura

A regra de quando liberar cada etapa (ProximoEstagioElegivel) é uma função pura: recebe o histórico do cliente e o instante atual, devolve a próxima etapa e se já é hora. Não lê relógio real nem grava nada, então dá pra testar qualquer ponto da sequência — incluindo os limites exatos dos intervalos — sem esperar tempo passar. Mesma separação lógica-pura-vs-infraestrutura dos outros projetos do portfólio, adaptada pro Go: a camada HTTP só cuida de formulário e roteamento.

Stack

Go 1.24, zero dependência externa, zero framework web. HTML renderizado com html/template (escape automático). Testes com o pacote testing nativo do Go, sem lib externa. Um Dockerfile multi-stage no repositório permite self-deploy — sem demo ao vivo pelo mesmo motivo do funil-diagnostico-gratis: não é hospedagem estática.