Modelo de automação · Captação

Conectar formulários do Meta ao Rezult CRM

Use este modelo para trazer automaticamente os leads das suas campanhas de cadastro do Meta (Facebook e Instagram) para dentro do Rezult CRM, passando pelo Google Sheets. Cada novo cadastro vira um lead e um negócio, com origem e UTMs preenchidos — sem digitar nada à mão.

1. O que você vai construir

O Meta oferece uma integração nativa que envia, em tempo real, cada lead de campanha de cadastro para uma planilha do Google Sheets. A partir daí, um pequeno script avisa o Rezult CRM por webhook, e o modelo de automação faz o resto: cria o lead, evita duplicados e abre o negócio na sua pipeline.

Formulário do Meta
Campanha de cadastro
Google Sheets
+ Apps Script (webhook)
R
Rezult CRM
Modelo de automação
O caminho do lead: Formulário do Meta → Google Sheets → Rezult CRM, tudo automático.

É um guia avançado, mas guiado Você vai mexer no Meta Business, no Google Sheets e no Rezult CRM. Faça uma parte de cada vez — ao final, novos formulários se conectam sozinhos e você não precisa repetir o processo.

2. Pré-requisitos

  • Um formulário de cadastro (lead form) já criado na sua conta de anúncios do Meta.
  • Acesso ao Meta Business com a BM (conta de negócios) correta.
  • Uma conta Google (para o Google Sheets).
  • Acesso ao Rezult CRM com permissão para criar automações.

Etapa no Meta + Google

3. Parte 1 — Conectar o formulário do Meta ao Google Sheets

O Meta envia os leads direto para uma planilha, usando uma integração nativa (não é uma ferramenta de terceiros).

  1. Abra os Formulários no Meta Business

    Em Todas as ferramentas, busque por Formulários (Formulários instantâneos). Confirme que está na BM correta.

  2. Vá em “Configuração de CRM” (CRM Setup)

    Na tela de formulários, abra a opção de configuração de CRM e escolha o sistema de vinculação.

  3. Escolha “Google Sheets”

    Digite Sheets e selecione o Google Sheets — a integração nativa. Atenção: pode aparecer uma opção parecida, de terceiros; escolha sempre a integração nativa do Google Sheets.

  4. Faça login e autorize

    Clique para conectar, escolha sua conta Google e conceda permissão para ler e alterar as planilhas.

  5. Crie uma planilha nova pela integração

    Crie uma nova integração e peça para criar uma planilha (ex.: “Planilha Leads — Formulário”). Importante: deixe a integração criar a planilha — assim as colunas já vêm no formato certo. Não use uma planilha pronta.

  6. Ative “criar integrações automaticamente”

    Marque a opção para conectar automaticamente os futuros formulários. Assim você faz isso só uma vez.

  7. Selecione a aba e o formulário

    Defina a página/aba (ex.: Página 1) e escolha o formulário que quer conectar. Confirme.

  8. Conecte (sem precisar do lead de teste agora)

    O Meta pode pedir um envio de teste — você só precisa concluir a conexão. Confira a identificação da empresa e, se aparecer, escolha o pixel/conjunto de dados para devolver conversões depois.

Pronto, o Meta já “derrama” os leads na planilha. Cada cadastro vira uma linha; cada coluna é uma pergunta do seu formulário (mais dados de campanha, conjunto de anúncio, anúncio, etc.).

Etapa no Rezult CRM

4. Parte 2 — Criar a automação a partir do modelo

  1. Crie a automação pelo modelo

    No Rezult CRM, vá em AutomaçõesNova automaçãoModeloLead Formulário Webhook. Dê um nome e escolha o grupo. Confirme.

  2. Garanta que a automação está ativa

    Ligue o interruptor Ativa — é por ela que os dados vão entrar.

  3. Copie a URL do webhook

    Clique no bloco de início (gatilho Webhook / HTTP) e copie a URL do webhook. É por esse endereço que a planilha vai mandar os leads. Guarde essa URL — você vai colá-la no script na Parte 3.

Importar em vez de Modelo? Se você recebeu um arquivo de automação pronto, pode usar Nova automaçãoImportar → selecionar o arquivo → nome e grupo → confirmar. O resultado é o mesmo fluxo deste modelo.

Etapa no Google Sheets

5. Parte 3 — Colar o script na planilha (Apps Script)

O Apps Script é um pequeno programa que roda “por trás” da planilha. Ele lê a linha que o Meta acabou de inserir e envia esses dados para a URL do webhook do Rezult CRM.

  1. Abra o editor de scripts

    Na planilha, vá em ExtensõesApps Script. Apague qualquer código que estiver lá.

  2. Cole o código abaixo

    Cole o script inteiro no editor.

  3. Troque a URL do webhook

    Na linha 2, substitua SUA_URL_DO_WEBHOOK_AQUI pela URL que você copiou na Parte 2.

  4. Salve

    Clique em salvar (ícone de disquete). Só isso nesta tela.

Código — Apps Script
// Cole aqui a URL do Webhook da sua automacao no Rezult CRM
const WEBHOOK_URL = "SUA_URL_DO_WEBHOOK_AQUI";

function enviarLeadParaCRM(e) {
  // Garante que o script so rode em insercao/alteracao de linha
  // Integracoes externas normalmente acionam 'INSERT_ROW' ou 'OTHER'
  if (e && e.changeType === 'REMOVE_ROW') return;

  const sheet = SpreadsheetApp.getActiveSheet();

  // Opcional: restringir a uma aba especifica pelo nome
  // if (sheet.getName() !== "NomeDaSuaAba") return;

  const lastRow = sheet.getLastRow();
  const lastCol = sheet.getLastColumn();

  // Se a planilha so tiver o cabecalho, nao faz nada
  if (lastRow < 2) return;

  // Cabecalhos (linha 1) viram as chaves do JSON
  const headers = sheet.getRange(1, 1, 1, lastCol).getValues()[0];

  // Dados da ultima linha inserida
  const newRowData = sheet.getRange(lastRow, 1, 1, lastCol).getValues()[0];

  // Monta o objeto JSON dinamicamente
  let payload = {};

  for (let i = 0; i < headers.length; i++) {
    let key = headers[i].toString();
    let value = newRowData[i];
    if (key) {
      payload[key] = value;
    }
  }

  // Metadados uteis (opcional)
  payload["sheet_name"] = sheet.getName();
  payload["row_number"] = lastRow;
  payload["timestamp"] = new Date();

  // Envia para o Webhook
  try {
    const options = {
      'method': 'post',
      'contentType': 'application/json',
      'payload': JSON.stringify(payload)
    };
    UrlFetchApp.fetch(WEBHOOK_URL, options);
    console.log("Lead enviado com sucesso: Linha " + lastRow);
  } catch (error) {
    console.error("Erro ao enviar webhook: " + error.toString());
  }
}

O que o script faz, em resumo Ele pega os nomes das colunas (linha 1) como chaves e os valores da última linha, e envia tudo como JSON para o webhook — além de 3 metadados: sheet_name, row_number e timestamp. Por isso ele funciona com qualquer formulário, independentemente das colunas.

Etapa no Google Sheets

6. Parte 4 — Criar o acionador “Ao alterar”

O código sozinho não dispara quando o Meta insere uma linha. É preciso criar um acionador (trigger) que execute a função a cada mudança na planilha.

  1. Abra os Acionadores

    No editor do Apps Script, no menu lateral esquerdo, clique no ícone de relógio (Acionadores).

  2. Adicionar acionador

    No canto inferior direito, clique em + Adicionar acionador.

  3. Configure exatamente assim

    Função: enviarLeadParaCRM · Implantação: Head (padrão) · Origem do evento: Da planilha · Tipo de evento: Ao alterar. (Atenção: é “Ao alterar”, não “Ao editar”.)

  4. Salve e autorize

    Clique em salvar. O Google vai pedir permissão. Como é um código seu, ele mostra um aviso: clique em AvançadoAcessar o projeto (não seguro)Permitir. Isso autoriza o script a rodar e acessar a internet.

O aviso de “não seguro” é normal Ele aparece porque o código foi criado por você (não passou pela revisão do Google). Como você conhece o script, pode autorizar com tranquilidade.

Etapa no Rezult CRM

7. Parte 5 — Mapear os campos do seu formulário

Cada coluna da planilha vira uma variável disponível na automação (pelo seletor { } → categoria Entrada de dados / API Request). Como cada formulário tem perguntas diferentes, você ajusta o mapeamento para apontar para as suas colunas.

Regra de ouro do modelo O que já vem mapeado de forma padrão (nome, e-mail, telefone) normalmente você não precisa mexer. O que muda de formulário para formulário (UTMs, perguntas específicas) é o que você ajusta.

Campos que já costumam vir prontos

  • Nome, E-mail e Telefone do lead — geralmente já apontam para as colunas certas. Se a sua coluna tiver outro nome, edite a variável pelo seletor Entrada de dados → API Request.

UTMs (precisam ser criados como campos adicionais)

As UTMs guardam de onde veio o lead. Elas não existem por padrão no CRM — você cria como campos adicionais do lead (tipo texto) e depois mapeia:

Campo (UTM)Costuma guardar
UTM Campaignnome da campanha que gerou o lead
UTM Mediumconjunto de anúncio (público)
UTM Contentanúncio específico
UTM Source / Plataformaplataforma de origem (ex.: Instagram)
  1. Crie o campo adicional

    Em campos adicionais do lead, crie cada UTM (grupo à sua escolha, tipo texto) e confirme.

  2. Mapeie a origem

    No bloco de operações de campos, defina o campo de destino (ex.: UTM Campaign) e o valor vindo de Entrada de dados → API Request (a coluna correspondente da planilha).

Perguntas específicas do seu formulário

Tem uma pergunta como “Qual o seu faturamento?” ou “Há quanto tempo tem esse problema?”. Para cada uma:

  1. Crie um campo adicional

    Em campos adicionais do lead ou do negócio, crie o campo (ex.: Faturamento, tipo texto; ou Sexo, tipo texto/opções).

  2. Aponte o destino e o valor

    No bloco de mapeamento, selecione o campo de destino e o valor correspondente em Entrada de dados → API Request.

ID externo do negócio

Para evitar duplicar e rastrear a origem, mapeie o ID externo do negócio com o ID do formulário/lead que chega da planilha (também pela Entrada de dados → API Request). A “linha do sheet” (row_number) pode ser guardada em um campo adicional do tipo número, se quiser.

Ações extras (opcional) Depois de checar se o lead já tem negócio, você pode acrescentar qualquer ação — por exemplo, enviar uma mensagem de WhatsApp por template, escolhendo a conexão de envio e inserindo variáveis (campos adicionais ou da Entrada de dados) dentro do template.

8. Parte 6 — Testar a integração

  1. Cole uma linha de exemplo na planilha

    Para simular um lead real, cole numa nova linha um conjunto de dados como o Meta enviaria (nome do anúncio, conjunto, campanha, plataforma, nome do formulário e as respostas).

  2. Provoque uma alteração

    Edite uma célula e clique fora. Como o acionador é “Ao alterar”, isso dispara o envio ao webhook.

  3. Confira no Rezult CRM

    O lead deve aparecer com nome, e-mail e telefone, e um negócio deve ser criado na pipeline “Novo lead” (ou na que você definiu), com as UTMs e campos preenchidos.

  4. Verifique a automação

    Nas estatísticas dos blocos, confirme que o fluxo passou: gatilho recebeu → campos mapeados → lead criado → negócio criado.

A partir daqui é automático. Todo novo cadastro cai na planilha, o script dispara, e a automação cria o lead e o negócio. E, como você ativou “criar integrações automaticamente”, novos formulários já entram conectados.

9. Opcional — Devolver conversões ao Meta

A integração nativa também permite o caminho de volta: enviar para o Meta o status do lead (qualificado, convertido, perdido…) usando a API de Conversões (CAPI). Isso ajuda o Meta a otimizar suas campanhas com dados reais do funil.

  • Ao conectar a planilha à Meta pela CAPI, é adicionada uma coluna lead_status para cada lead.
  • Os estágios possíveis costumam ser: Em análise, Qualificado, Convertido, Perdido e Não qualificado.
  • Sempre que você atualizar lead_status (manualmente ou por automação), o Meta lê o novo valor e registra o evento de conversão correspondente.

Mantenha o status atualizado Quanto mais fiel a coluna lead_status estiver ao estágio real do lead, melhor o Meta otimiza a entrega dos seus anúncios de cadastro.

10. Solução de problemas

SintomaO que verificar
O lead não chega no CRMa automação está Ativa? A WEBHOOK_URL no script é exatamente a copiada do gatilho? O acionador é “Ao alterar”?
O script não disparao acionador foi criado e autorizado? Faça uma alteração real numa célula para provocar o evento.
Lead sem nome/e-mailos nomes das colunas (cabeçalho da planilha) batem com o que a automação espera? Reaponte pela Entrada de dados → API Request.
UTMs/perguntas vaziasos campos adicionais foram criados e mapeados para as colunas certas?
Negócio não criadopipeline/etapa definidas no bloco de criar negócio? O lead já tinha negócio na pipeline?
Mensagem (template) não enviouconfira a conexão de envio e se as variáveis do template têm valores válidos.

Dica: no editor do Apps Script, o menu Execuções mostra se o script rodou e eventuais erros. No CRM, as estatísticas de cada bloco indicam onde o fluxo parou.

Capture leads do Meta automaticamente

Crie a automação pelo modelo, conecte a planilha e veja os leads entrarem sozinhos.

Ir para o app