Logo | Central de Ajuda
Voltar

Como enviar dados da SellFlux para uma planilha do Google Sheets via Webhook

Neste artigo e no vídeo de apoio abaixo, você aprenderá como transformar uma aba do Google Sheets em uma API receptora em tempo real. Isso significa que sempre que uma ação ocorrer na SellFlux (como um abandono de carrinho, uma venda ou a entrada de um novo lead), a sua planilha capturará todos os dados instantaneamente.

Passo a Passo da Configuração

1. Prepare a Planilha

2. Insira o Código no Apps Script

3. Implante o App da Web (Gerar o Link) Este é o passo que vai gerar a URL para a SellFlux enviar os dados.

4. Configure o Envio na SellFlux

5. Teste ao Vivo

⚠️ Pontos de Atenção Críticos

Código Pronto para Uso

Copie o código abaixo e cole no seu Apps Script. Lembre-se de alterar o nome da aba na linha 3 para o nome que você escolheu.

JavaScript

function doPost(e) {
  try {
    // Aba de destino
    const aba = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Abandonou"); // ALTERE AQUI: Coloque o nome exato da sua aba

    // Lê o JSON recebido
    const dados = JSON.parse(e.postData.contents);

    // Campos principais
    const nome = dados.name || "";
    const email = dados.email || "";
    const telefone = dados.phone || "";

    // Mantém as tags no formato original: ["tag1","tag2"]
    const tags = JSON.stringify(dados.tags || []);

    // Processa os campos personalizados
    const additionalData = dados.additional_data || {};
    const camposPersonalizados = Object.entries(additionalData)
      .filter(([chave, valor]) => {
        return (
          (chave || "").toString().trim() !== "" &&
          (valor || "").toString().trim() !== ""
        );
      })
      .map(([chave, valor]) => `${chave}: ${valor}`)
      .join("\n");

    // Data atual
    const data = new Date();

    // Salva na planilha
    aba.appendRow([
      nome,
      email,
      telefone,
      tags,
      camposPersonalizados,
      data
    ]);

    return ContentService
      .createTextOutput(
        JSON.stringify({
          success: true,
          message: "Dados recebidos com sucesso."
        })
      )
      .setMimeType(ContentService.MimeType.JSON);

  } catch (erro) {
    return ContentService
      .createTextOutput(
        JSON.stringify({
          success: false,
          error: erro.toString()
        })
      )
      .setMimeType(ContentService.MimeType.JSON);
  }
}

💡 Dica Extra: Prompt utilizado na IA

Como a SellFlux envia os dados sempre em um padrão fixo e único (Nome, Email, Telefone, Tags e Campos Personalizados), o código acima já atende perfeitamente a integração.

Porém, caso você precise recriar este código usando uma Inteligência Artificial no futuro, o comando (prompt) utilizado foi exatamente este abaixo. Note que, se for utilizá-lo, você deve substituir [NOME-ABA] pelo nome da sua aba:

Crie um código de webhook de entrada para o Google Apps Script usando a função doPost(e).

O script deve ler um JSON contendo os campos: name, email, phone, tags (lista) e additional_data (objeto).

Regras obrigatórias para o código: 1. Conecte direto na aba chamada "[NOME-ABA]" da planilha. 2. Salve os dados em uma nova linha seguindo a ordem fixa de colunas: Nome, Email, Telefone, Tags, Campos Personalizados e Data. 3. Use o operador "||" em vez de "??" para garantir compatibilidade se algum campo vier vazio. 4. Mantenha o campo de Tags no formato original de lista com colchetes e aspas (Exemplo: ["tag1"], ["tag2"], ["tag3"]). 5. No objeto "additional_data", ignore chaves vazias e junte as preenchidas usando quebra de linha (\n) no formato "Chave: Valor". 6. No bloco catch(erro), retorne "erro.toString()".