Landing page orgânica para captação e qualificação de leads para a aula gratuita de Product Ads no Mercado Livre — tráfego orgânico.
🌐 Ver página ao vivo · 📁 Repositório GitHub
README de apresentação para GitHub.
O IscaAds foi construído para transformar tráfego orgânico em leads qualificados para a aula gratuita de Product Ads do Método P4, conectando aquisição, coleta de dados e liberação da aula em um fluxo único.
- Evita perda de lead entre formulário e automação.
- Centraliza captação com validação de dados e qualificação por medalha no Mercado Livre.
- Preserva origem de tráfego (UTM e referrer) para análise de performance de canais orgânicos.
- Libera automaticamente o acesso à aula após submissão válida.
- Captura de origem (
channel,source,medium,campaign,content,referrer,page_url) via script de tracking first-touch. - Persistência de parâmetros UTM no navegador para reaproveitamento no submit.
- Captura de nome, e-mail, WhatsApp e confirmação.
- Pergunta de qualificação: medalha no Mercado Livre.
- Validação local de consistência de telefone (WhatsApp e confirmação).
- Interface responsiva para mobile e desktop.
MQL = "Sim"quando: medalha ≠ nao_tenho (possui alguma medalha).MQL = "Não"para leads sem medalha no Mercado Livre.- Campo enviado no payload para o webhook n8n.
- Envio via
sendBeacon(fire-and-forget) +fetchcomo fallback para webhook n8n (/webhook/IscaAds). - Deduplicação por telefone no n8n antes de gravar na planilha.
- Gravação simultânea na aba organico e na aba banco de dados do Google Sheets.
- Sequência de seções orientada à decisão.
- CTA principal para liberação de acesso imediato.
- Página de aula (
aula.html) desbloqueada após envio bem-sucedido. - Versão de produção em
iscaads-organico-tay/para deploy isolado.
- Frontend: HTML5, CSS3, JavaScript (vanilla)
- Integração: Webhook n8n via proxy PHP server-side (
api/lead-proxy.php) — o segredo do webhook fica no servidor, fora do JS público - SEO:
sitemap.xml,robots.txt - Deploy: HostGator/cPanel — upload manual via
iscaads-organico-tay/
| Camada | Responsabilidade |
|---|---|
index.html |
LP principal de desenvolvimento |
aula.html |
Página da aula (desbloqueada após submissão) |
iscaads-organico-tay/ |
Versão de produção para upload |
assets/img/ |
Imagens da LP (antes/depois de ads) |
docs/ |
Documentação técnica, diagramas e workflow n8n |
docs/n8n-workflow-iscaads.json |
Workflow n8n exportado |
TECNICO.md |
Guia técnico de manutenção |
CHANGELOG.md |
Histórico de versões |
- Usuário acessa a LP via canal orgânico.
- Tracking first-touch inicializa e persiste UTMs.
- Usuário preenche formulário de qualificação.
- Aplicação calcula MQL e monta payload com dados + tracking.
- Payload é enviado via
sendBeaconpara o webhook n8n. - n8n deduplica por telefone consultando o banco de dados.
- Lead é gravado nas abas organico e banco de dados do Google Sheets.
- Usuário é redirecionado para
aula.html.
flowchart TD
subgraph LP["🌐 Landing Page (navegador)"]
IN["Inputs do formulário<br/>nome · e-mail · WhatsApp<br/>Medalha ML<br/>+ tracking: utm_* · fbclid · src · sck · a_id"]
end
subgraph SRV["🔒 Servidor HostGator (cPanel)"]
PHP["api/lead-proxy.php<br/>anexa header x-p4-webhook-secret"]
end
subgraph WF["⚙️ n8n — workflow LP-IscaAds"]
WH(["▶ TRIGGER · Webhook<br/>POST /webhook/IscaAds · headerAuth"])
PARSE["Parse<br/>normaliza telefone · recalcula MQL no servidor<br/>timestamp do servidor · tracking completo"]
VAL["Validar campos obrigatórios"]
DVAL{"Lead válido?"}
READ["Ler banco de dados<br/>HTTP → Google Sheets API · só coluna E"]
REF["Reformatar leitura"]
DUP["Filtrar duplicata<br/>dedup por WhatsApp"]
DDUP{"Duplicata?"}
FMT["Format lead<br/>calcula Orgânico? (sim/não)"]
LCRM["Ler CRM"]
BDUP["Buscar duplicata CRM<br/>e-mail → Telefone 1"]
DCRM{"Existe no CRM?"}
PREP["Preparar arquivo"]
ARC["Arquivar CRM antigo"]
UPD["Atualizar CRM (in-place)<br/>Funil · Data · MQL · Pergunta"]
FCRM["Format CRM"]
NEW["Criar lead no CRM<br/>Telefone 1 · Orgânico?"]
DESC["Formatar descarte"]
REG["Registrar descarte"]
end
subgraph SHEETS["📊 Google Sheets · credencial Cockpit"]
SBD[("banco de dados<br/>100% dos leads")]
SSEG[("aba Organico")]
SARC[("Archived Leads")]
SDESC[("Descarte")]
end
subgraph CRMBOX["📇 CRM comercial · credencial Cockpit"]
CRMDB[("aba CRM<br/>Telefone 1 · Orgânico?")]
end
subgraph OUT["🔌 Integrações e saídas"]
GMAIL["✉️ Gmail<br/>alerta de descarte"]
CONS["p4-consultoria<br/>2ª instância n8n"]
ERR[["🚨 Error Workflow<br/>Alerta de Erro - Leads"]]
end
IN --> PHP
IN -. 2º destino .-> CONS
PHP --> WH --> PARSE --> VAL --> DVAL
DVAL -- inválido --> DESC
DVAL -- válido --> READ --> REF --> DUP --> DDUP
DDUP -- duplicata --> DESC
DDUP -- novo --> FMT
FMT --> SBD
FMT --> SSEG
FMT --> LCRM --> BDUP --> DCRM
DCRM -- existe --> PREP --> ARC
ARC --> SARC
ARC --> UPD --> CRMDB
DCRM -- novo --> FCRM --> NEW --> CRMDB
DESC --> REG --> SDESC
REG --> GMAIL
READ -. exceção .-> ERR
SBD -. exceção .-> ERR
CRMDB -. exceção .-> ERR
- Tracking first-touch desacoplado da lógica de formulário.
- Qualificação calculada no frontend antes do envio.
sendBeacongarante entrega do payload mesmo durante redirecionamento.- Deduplicação server-side no n8n para evitar leads duplicados.
- Versão de produção isolada (
iscaads-organico-tay/) para deploy sem impacto no desenvolvimento.
.
├─ assets/
│ └─ img/
│ ├─ antes-ads.jpeg
│ └─ depois-ads.jpeg
├─ docs/
│ ├─ AutomaçãoN8N_LPIscaAds.md
│ ├─ DIAGRAMS.md
│ ├─ Documentação.Oficial_LPIscaAds.md
│ ├─ ENGINEERING_REVIEW.md
│ ├─ TECHNICAL_GUIDE.md
│ └─ workflow-IscaAds-n8n.json
├─ iscaads-organico-tay/
│ ├─ index.html
│ ├─ aula.html
│ ├─ .htaccess
│ ├─ assets/img/
│ ├─ robots.txt
│ └─ sitemap.xml
├─ index.html
├─ aula.html
├─ robots.txt
├─ sitemap.xml
├─ docs/n8n-workflow-iscaads.json
├─ TECNICO.md
├─ CHANGELOG.md
└─ LICENSE
- HostGator/cPanel: upload manual do conteúdo de
iscaads-organico-tay/via Gerenciador de Arquivos ou FTP.
O lead não é mais enviado direto do navegador ao n8n. A página chama o proxy PHP
api/lead-proxy.php (mesmo domínio, sem nenhum segredo); o proxy anexa o header de autenticação
x-p4-webhook-secret no servidor e repassa ao webhook n8n POST /webhook/IscaAds.
O workflow n8n LP-IscaAds executa o pipeline completo (funil orgânico → aba Organico):
- Valida os obrigatórios e deduplica por WhatsApp — sem descarte silencioso.
- Grava 100% dos leads em
banco de dadose na aba de segmentação Organico (classificação por funil pareado). - Alimenta o CRM comercial: dedup por e-mail →
Telefone 1, arquiva o registro antigo emArchived Leadse atualiza in-place, ou cria um novo — preenchendo a colunaOrgânico?(sim/não) conforme a origem do lead. - Recalcula MQL no servidor (nunca confia no cliente) e usa timestamp do servidor.
- Captura tracking completo:
utm_source/medium/campaign/content/term/id,fbclid,src,sck,a_id,channel,referrer,page_url. - Registra descartes (inválido/duplicata) na aba
Descartee notifica por e-mail (Gmail). - Erros reais caem no Error Workflow
Alerta de Erro - Leads.
📄 Documentação detalhada da automação: a Sticky Note "Documentação da automação" dentro do
workflow LP-IscaAds no n8n, e — quando presente — o automation/README.md do projeto.
A licença permanece inalterada e segue os termos proprietários definidos em LICENSE.