Sobre este projeto
it-programming / web-development
Aberto
Estamos buscando um desenvolvedor ou equipe para criar uma plataforma web robusta e eficiente para a gestão centralizada de leads. O objetivo principal é consolidar leads provenientes de diversos canais, como redes sociais, portais imobiliários, site próprio e WhatsApp, em um único ambiente. Isso resolverá o problema atual de leads dispersos em múltiplos sistemas, proporcionando uma visão unificada de volume, origem e taxas de conversão.
1. Visão geral
Construir uma plataforma web para captar leads de múltiplos canais (redes sociais, portais imobiliários, site próprio, WhatsApp, formulários) em um único lugar, organizá-los, permitir qualificação manual e gerar relatórios de desempenho.
Problema que resolve: hoje os leads chegam espalhados em vários sistemas diferentes (Meta, OLX, site, WhatsApp) e não há visão unificada de quantos chegaram, de onde vieram e quais viraram oportunidade real.
Usuário principal: gestor de marketing/vendas de uma imobiliária (ou negócio similar) que precisa acompanhar o volume de leads por canal e repassar os qualificados para o time comercial.
2. Escopo funcional
2.1 Home
Tela inicial com atalhos visuais para as demais seções (Conversas, Leads, Qualificação, Integrações, Relatórios).
2.2 Conversas / Leads
Tabela com todos os leads recebidos, ordenada do mais recente pro mais antigo.
Colunas: data/hora, nome, telefone, fonte (de onde veio), origem (canal), tipo de lead, interesse (aluguel/venda/indefinido), campanha, anúncio/imóvel relacionado, status de qualificação.
Filtro por período (data inicial e final) e busca por nome/telefone/e-mail.
Cada linha deve poder ser aberta para ver o detalhe completo do lead, incluindo os dados brutos recebidos originalmente (para investigar problemas de integração).
2.3 Qualificação
Lista dos leads mais recentes com um botão para marcar/desmarcar como "qualificado".
Esse status alimenta os relatórios e pode futuramente disparar regras de roteamento (ver 2.5).
2.4 Integrações — funcionalidade central do projeto
Cada canal de entrada (Facebook Lead Ads, Google Ads, GrupoZap/OLX, WordPress, um canal genérico, etc.) Deve gerar uma url de webhook própria, com uma chave de api única (api_key), no formato: https://seu_dominio/webhook/leads/{tipo}?api_key={chave}
o usuário deve poder:
criar uma nova integração (dando um nome e escolhendo um tipo/ícone)
copiar a url do webhook com um clique
ativar/desativar uma integração sem apagar o histórico de leads já recebidos por ela
remover uma integração
webhook genérico: precisa aceitar post com corpo em json em formatos variados (nomes de campo podem vir em português ou inglês: nome/name, telefone/phone, interesse/ interest etc.) E normalizar para um esquema interno único. Nenhum dado recebido pode ser perdido — o payload original deve ser guardado, mesmo que não seja totalmente reconhecido.
Cada lead recebido deve ficar associado à integração que o originou, pra saber quantos leads cada canal está gerando.
2.5 Relatórios
Cards de resumo: total de leads no período, total de qualificados (e %).
Gráfico de linha: conversas por dia.
Gráfico de barras: leads por origem/canal.
Gráfico de pizza/rosca: leads por tipo de interesse (aluguel, venda, indefinido).
Gráfico de dispersão ou mapa de calor: conversões por hora do dia x dia da semana (pra identificar horários de pico).
Todos os gráficos devem respeitar o filtro de período selecionado.
3. Requisitos técnicos
Item Requisito
Backend api rest que recebe os webhooks e serve os dados para o painel
banco de dados persistente (qualquer sql: postgres, mysql, sqlite) — precisa guardar todo lead recebido com timestamp
frontend painel web responsivo, com as 5 telas do escopo acima
autenticação login para acessar o painel (não fazia parte da v1, mas é obrigatório antes de ir pra produção com dados reais)
webhook deve responder rápido (< 1s) e retornar 201 em caso de sucesso, 401 se a api_key for inválida
hospedagem backend precisa ficar acessível publicamente por https, para que facebook/portais consigam de fato enviar dados
volumetria esperada centenas a poucos milhares de leads por dia (não é big data, mas a tabela de leads deve ter índice por data e por origem)
4. Fora de escopo (v1)
Envio automático de leads para CRMs externos (Contact2Sale, RD Station etc.) — Regras de roteamento condicionais ficam para uma fase 2.
Enriquecimento automático de dados do imóvel via APIs externas (tipo Imoview).
Notificação em tempo real (WebSocket/push) de lead novo.
App mobile nativo.
5. Critérios de aceite
Um post de teste para o webhook genérico com um json simples {"name": "...", "Phone": "...", "Interest": "aluguel"} aparece na tela de Conversas em menos de alguns segundos.
Trocar o período nos Relatórios atualiza todos os gráficos e cards corretamente.
Desativar uma integração impede novos leads por aquele webhook, mas mantém os leads antigos visíveis.
A busca por nome/telefone na tela de Conversas retorna resultados corretos mesmo com busca parcial.
Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Criar um novo site personalizado
Duração do projeto Não estabelecido
Habilidades necessárias