InícioBlogIntegrações e automação › Leads do formulário para o CRM via webhook

Como enviar leads de formulários para um CRM usando webhook

Por Nícolas Schwertner · Publicado em 25 de agosto de 2026 · 12 min de leitura

Webhook é o jeito mais direto de fazer um lead sair do formulário e entrar no CRM em segundos, com as respostas e a origem da campanha. Este guia explica o que é um webhook, mostra o payload exato que o BRForms envia e os três caminhos para ligar isso ao seu CRM, com ou sem ferramenta intermediária.

Parte do guiaComo integrar formulário, CRM e tráfego pago: o ecossistema completo de captação

O que é um webhook

Webhook

É uma requisição HTTP que um sistema faz automaticamente para uma URL de outro sistema quando um evento acontece. No caso de um formulário, o evento é o envio da resposta: a cada novo lead, o formulário faz um POST para a URL do seu CRM (ou da sua automação) com os dados do lead.

Payload

É o conteúdo enviado no corpo da requisição, normalmente em JSON: as respostas do lead, a data, o identificador da resposta e a atribuição (UTMs e identificadores de clique).

A diferença para uma integração "nativa" é que o webhook não depende de conector pronto entre duas ferramentas. Qualquer sistema que aceite uma requisição HTTP pode receber o lead: um CRM com endpoint de entrada, um fluxo no n8n, um cenário no Make, um Zap no Zapier ou um servidor seu. Por isso ele é o formato universal de integração de formulários.

A diferença para a planilha é o tempo e o controle: o webhook chega em segundos e permite decidir o que fazer com cada lead (criar negócio, distribuir, avisar o vendedor), enquanto a planilha é uma cópia estática. Os dois podem coexistir, como mostra o guia do ecossistema formulário, CRM e tráfego pago.

O fluxo: do formulário ao vendedor

Lead envia o formulário (BRForms)
Webhook: POST com o payload JSON
CRM (direto ou via n8n, Make, Zapier)
Pipeline comercial: contato criado, negócio aberto, fila definida
Vendedor recebe o lead com respostas e origem

Em tráfego pago, os minutos entre o envio e o primeiro contato pesam no resultado. O webhook resolve a parte técnica desse tempo: o lead está no CRM antes de o vendedor terminar de ler o aviso. A parte de processo (quem atende, em quanto tempo) continua sendo do time comercial.

O que o BRForms envia

A cada envio, o BRForms faz um POST com Content-Type: application/json para a URL configurada. As respostas vão rotuladas pela pergunta (com o texto da opção escolhida, não um código interno) e a atribuição completa do lead vai junto. Exemplo real de payload:

{
  "events": ["lead", "lead-qualificado"],
  "form": {
    "id": "3f1c2a7e-8b4d-4c1e-9a2f-5d6e7f8a9b0c",
    "title": "Diagnóstico gratuito"
  },
  "submission": {
    "id": "9b8d4c21-6e5f-4a3b-8c7d-1e2f3a4b5c6d",
    "created_at": "2026-08-25 14:32:10",
    "answers": {
      "Qual seu principal objetivo?": "Vender mais pelo WhatsApp",
      "Segmento": "Serviços",
      "Faturamento mensal": "R$ 10 mil a R$ 50 mil por mês",
      "Nome": "Ana Ribeiro",
      "E-mail": "ana@empresa.com.br",
      "WhatsApp": "11999136806"
    },
    "utm_source": "facebook",
    "utm_medium": "cpc",
    "utm_campaign": "frio-diagnostico",
    "utm_content": "video-01",
    "utm_term": null,
    "fbclid": "IwAR2x...",
    "gclid": null,
    "referrer": "https://l.facebook.com/",
    "landing_url": "https://brforms.com/sua-conta/diagnostico?utm_source=facebook&utm_medium=cpc&utm_campaign=frio-diagnostico&utm_content=video-01",
    "country": "BR"
  }
}
CampoO que é e como usar
eventsLista do que motivou o disparo: lead quando a opção "Enviar toda resposta concluída" está marcada, mais o nome de cada regra da Lógica com ação de webhook que foi atendida (ex.: lead-qualificado). É o campo que o seu fluxo usa para decidir a prioridade.
form.id e form.titleIdentificam o formulário. Úteis quando vários formulários apontam para a mesma URL e o fluxo precisa saber de qual veio o lead.
submission.idIdentificador único da resposta. Um reenvio (automático ou manual) manda o mesmo id, então use-o para não criar o contato duas vezes.
submission.created_atData e hora do envio em UTC, no formato AAAA-MM-DD HH:MM:SS. Converta para o fuso do CRM se ele não fizer isso sozinho.
submission.answersObjeto pergunta → resposta, com o rótulo de cada campo como chave. Seleção múltipla vira texto separado por vírgula; anexos viram o nome do arquivo.
utm_source a utm_termAs cinco UTMs capturadas da URL do formulário. Chegam como null quando não estavam na URL.
fbclid e gclidIdentificadores de clique da Meta e do Google. Guarde-os no CRM: são a chave para importar conversões offline quando o lead virar cliente.
referrer e landing_urlPágina que encaminhou o visitante e URL completa em que o formulário foi aberto (com todos os parâmetros).
countryPaís do visitante em código de duas letras, estimado pela rede.

Os detalhes técnicos da entrega: sucesso é qualquer resposta HTTP 2xx; redirecionamentos não são seguidos; o tempo limite é de 10 segundos; em caso de falha o BRForms tenta de novo duas vezes em seguida (2 e 5 segundos depois), depois reprocessa de hora em hora, e o detalhe da resposta tem um botão de reenvio manual. O User-Agent da requisição é mpa-forms-webhook. A referência completa está no guia do webhook na Central de Ajuda.

Três caminhos para chegar ao CRM

1. CRM com endpoint de entrada de leads

Vários CRMs oferecem uma URL própria para receber leads por webhook ou formulário externo (é comum em ferramentas como RD Station, HubSpot, Pipedrive e Kommo, cada uma com o próprio formato e o próprio lugar na interface). Quando existe, é o caminho mais curto: você cola a URL no BRForms e o CRM cria o contato. O ponto de atenção é o mapeamento: o CRM precisa saber que "E-mail" vai para o campo de e-mail e que utm_campaign vai para um campo personalizado. Alguns CRMs fazem isso na tela de configuração do endpoint; outros só aceitam o formato deles, e aí entra o caminho 2.

2. Intermediário: n8n, Make ou Zapier

É o caminho mais flexível e o mais usado. O fluxo tem três passos: um gatilho de webhook que recebe o JSON do BRForms, um passo de mapeamento (pegar answers["Nome"], answers["E-mail"], utm_campaign, gclid) e uma ação que cria o contato ou o negócio no CRM usando o conector da ferramenta. A vantagem é que a lógica fica visível e editável: dá para adicionar um passo de aviso no WhatsApp da equipe, um filtro por evento ou uma gravação em planilha sem tocar no formulário.

  1. Crie o fluxo com um gatilho do tipo webhook e copie a URL gerada.
  2. Cole a URL no BRForms (aba Tracking & Integrações → Webhook) e publique o formulário.
  3. Envie uma resposta de teste no formulário publicado: o payload aparece no gatilho e os campos ficam disponíveis para mapear.
  4. Adicione a ação do CRM (criar contato, criar negócio) e ligue cada campo do payload ao campo correspondente.
  5. Adicione o que mais fizer sentido: aviso ao vendedor, planilha de controle, tarefa de follow-up.
  6. Ative o fluxo e envie um segundo teste para confirmar que o contato chegou ao CRM com origem e respostas.

3. Planilha primeiro, CRM depois

Operações que ainda não têm CRM, ou que querem uma cópia independente de todos os leads, usam o Google Sheets como destino principal e alimentam o CRM a partir dela (por importação periódica ou por uma automação que lê linhas novas). O BRForms tem essa integração nativa, sem webhook; o guia como integrar formulários com Google Sheets mostra as colunas que chegam e o que fazer com a planilha. Quando o time crescer, o webhook entra sem precisar mexer no formulário.

Só o lead qualificado, ou todos com etiqueta

O webhook do BRForms tem dois gatilhos, e a combinação deles define a estratégia de entrega. A opção Enviar toda resposta concluída dispara em todo envio com o evento lead. As regras da aba Lógica com a ação disparar webhook disparam a mesma URL com um nome de evento próprio quando a condição é atendida (por exemplo, faturamento acima de R$ 50 mil dispara lead-qualificado).

ConfiguraçãoO que o CRM recebeQuando usar
Toda resposta, sem regrasTodos os leads com events: ["lead"]Time comercial atende todo mundo e prioriza manualmente
Toda resposta + regra de qualificaçãoTodos os leads; os qualificados chegam com events: ["lead", "lead-qualificado"] num único envioO fluxo distribui: qualificado para a fila prioritária, o resto para nutrição
Só a regra (opção "toda resposta" desmarcada)Apenas os leads que atenderam à condição, com events: ["lead-qualificado"]O CRM deve conter só leads com perfil; os demais ficam no BRForms e na planilha

Na prática, a segunda linha é a mais útil: o CRM recebe tudo (nada se perde) e o campo events permite uma condição simples no fluxo, como "se a lista contém lead-qualificado, criar negócio na etapa Qualificado e avisar o vendedor; senão, criar só o contato". Os critérios para essa regra estão em como qualificar leads automaticamente antes de enviar para o comercial, e a configuração da regra no guia de lógica condicional.

Editor de lógica condicional do BRForms com uma regra baseada no faturamento
Regra na aba Lógica do BRForms: uma condição sobre a resposta e uma ou mais ações, como disparar o webhook com um nome de evento próprio.

Boas práticas para uma integração que não quebra

⚠️
Teste com o formulário publicado, não com o preview: o webhook dispara apenas em envios reais. Use um lead de teste com nome reconhecível e apague-o do CRM depois.

Casos de uso além de "criar o contato"

Depois que o payload está chegando, o fluxo vira um ponto de automação da operação comercial inteira. Alguns usos frequentes:

Como configurar no BRForms

  1. No editor do formulário, abra Tracking & IntegraçõesWebhook e cole a URL do seu CRM ou do gatilho da automação.
  2. Mantenha Enviar toda resposta concluída marcado para receber todos os leads (ou desmarque para enviar só os que atenderem a uma regra).
  3. Se quiser etiquetar o lead qualificado, vá em Lógica, crie uma regra com a condição (ex.: faturamento acima do seu corte) e adicione a ação disparar webhook com um nome de evento, como lead-qualificado.
  4. Publique o formulário e envie um teste. Na tela de Respostas, o detalhe do lead mostra o status do webhook (ok ou erro) e o botão de reenvio.
Aba Tracking e Integrações do BRForms com a configuração do webhook
Configuração do webhook no BRForms: a URL do destino e a opção de enviar toda resposta concluída.

O webhook está disponível em todos os planos, inclusive no grátis, e as UTMs e identificadores de clique vão no payload sem configuração extra. Se o seu formulário atual está em outra ferramenta, a clonagem com IA recria os campos a partir do link, e o webhook é ligado em seguida.

Perguntas frequentes

O que é webhook em um formulário?

É o mecanismo pelo qual o formulário avisa outro sistema, em tempo real, que uma resposta foi enviada: ele faz uma requisição HTTP POST para uma URL configurada, com os dados do lead em JSON. É o formato universal para ligar formulários a CRMs e ferramentas de automação, sem depender de conector específico.

Meu CRM não tem webhook. Como faço?

Use um intermediário: n8n, Make ou Zapier recebem o webhook do formulário e criam o contato no CRM pelo conector da ferramenta (a maioria dos CRMs tem). Se nem isso existir, o caminho é a planilha: o lead vai para o Google Sheets e o CRM importa a partir dela.

O webhook envia só os leads qualificados?

Você escolhe. Com "Enviar toda resposta concluída" marcado, todos os leads são enviados, e os que atenderem a uma regra da Lógica chegam com o nome do evento (como lead-qualificado) na lista events. Com a opção desmarcada e uma regra ativa, só os leads que atenderem à condição são enviados.

O que acontece se o meu CRM estiver fora do ar?

O BRForms tenta de novo duas vezes em seguida, depois reprocessa de hora em hora até conseguir, e o detalhe da resposta mostra o erro com um botão de reenvio manual. O lead nunca se perde: ele fica salvo no painel do BRForms independentemente do webhook.

Como sei de qual campanha veio o lead que chegou no CRM?

Pelos campos utm_source, utm_medium, utm_campaign, utm_content e utm_term do payload, capturados automaticamente da URL do formulário. Mapeie-os para campos personalizados do CRM na integração. Os identificadores gclid e fbclid também vão junto, para conversões offline.

Ligue seu CRM em minutos

Crie uma conta grátis no BRForms, cole a URL do seu webhook e receba cada lead com respostas rotuladas, UTMs e identificadores de clique. Sem cartão de crédito.

Criar conta grátis