Skip to main content

Atribuição

A atribuição liga os seus dados de visibilidade em IA a leads e receita reais. Em vez de ver apenas se a sua marca aparece nas respostas de IA, pode ver se os clientes dizem realmente que o encontraram através do ChatGPT, Perplexity, Claude, Google, anúncios, recomendações ou outros canais — e quanta receita cada canal gera. A atribuição do Finseo funciona com dois tipos de dados que são fundidos automaticamente:
  • Respostas — a resposta de um cliente a “Como nos encontrou?”, vinda do popup de inquérito do Finseo, dos seus próprios formulários, de uma ferramenta de inquéritos ou do seu CRM.
  • Conversões — compras e leads com um ID de transação e um valor, vindos do seu tracking existente (Google/Meta), do Stripe, do seu sistema de loja ou de um webhook.
Quando uma resposta e uma conversão partilham o mesmo ID de encomenda ou email, fundem-se num único ponto de dados atribuído: “esta encomenda de 1.234 € veio do ChatGPT.”

Configuração guiada

A forma mais rápida de configurar a atribuição é o assistente integrado: abra Attribution no seu dashboard e clique em Set up attribution. Ele pergunta o que quer rastrear (compras, leads ou ambos), que sistema utiliza e se já tem tracking ou um inquérito pós-compra — e depois recomenda exatamente um caminho de instalação, com snippets prontos a copiar, verificando ao vivo que o primeiro evento chega. Os caminhos recomendados, consoante a sua configuração:

Snippet do Finseo

Uma única script tag. Popup de inquérito mais captura automática de compras a partir do seu tracking Google/Meta existente.

Stripe

Um único evento de webhook do Stripe. Montantes, trials e renovações são classificados automaticamente.

Shopify

Um Custom Pixel que reporta cada checkout concluído — os scripts do tema não correm no checkout do Shopify, o pixel sim.

WooCommerce

Um webhook nativo de encomendas, incluindo a origem do Order Attribution integrado no WooCommerce.

Shopware

Um webhook do Flow Builder no evento “Order placed”.

Webhook / CRM

HubSpot, Pipedrive, Calendly, ferramentas de formulários ou o seu próprio backend.

O Snippet do Finseo

O snippet é uma única script tag servida por projeto:
Cole-a antes de </head> em todas as páginas (ou adicione-a via Google Tag Manager como tag Custom HTML). Ela faz três coisas:

1. Captura respostas dos seus formulários existentes

Se os seus formulários já perguntam “Como nos encontrou?” (também detetado em alemão: “Wie bist du auf uns aufmerksam geworden?”), o snippet captura essa resposta no momento da submissão — e o popup nunca é mostrado. Emails e nomes do mesmo formulário são anexados como chaves de fusão, para que a resposta possa mais tarde ser ligada a um negócio ou a uma encomenda.

2. Mostra o popup de inquérito

Se nenhum formulário na página fizer a pergunta, o snippet mostra um pequeno popup com a sua pergunta e as opções de resposta configuradas. Controla tudo em Attribution → Survey settings:
  • Pergunta e canais — os canais padrão incluem AI Search, Google/Bing, Redes sociais, Anúncios online, Recomendação, Conteúdo e Outro (com texto livre). Também pode usar canais de IA detalhados (ChatGPT, Perplexity, Claude, Gemini, Copilot).
  • Trigger — no carregamento da página, após a submissão de um formulário, após uma compra detetada, ou manual via JavaScript.
  • Estilo — cor de destaque, posição, raio dos cantos, tipo de letra (do sistema ou herdado do seu site) e baralhamento opcional das respostas para evitar enviesamento de posição (“Outro” fica sempre em último).
Cada visitante é questionado apenas uma vez (guardado em localStorage).

3. Aproveita o seu tracking de conversões existente

Se o Google Analytics / Google Ads (dataLayer / gtag) ou o Meta Pixel (fbq) estiver instalado, o snippet escuta passivamente os eventos de conversão e reporta-os ao Finseo — sem configurar tracking em duplicado: O snippet lê o ID de transação, o valor, a moeda e os itens do evento, deduplica por ID de transação (recarregamentos da página de agradecimento não são contados duas vezes) e também analisa eventos disparados antes de ele carregar. O comportamento visível para o visitante nunca é alterado.

API de JavaScript

Para controlo manual, o snippet expõe uma pequena API:

Como respostas e conversões se fundem

As conversões e as respostas ao inquérito normalmente chegam em separado — um cliente responde ao popup enquanto navega, e a encomenda chega mais tarde via Stripe ou via o webhook da sua loja. O Finseo funde-as automaticamente:
  • Chaves de fusão: ID de transação (respondentExternalIdtransactionId) ou email. Uma correspondência por ID de transação ganha sempre a uma correspondência por email.
  • Janelas: uma nova conversão procura uma resposta ao inquérito até 90 dias para trás (trials de SaaS convertem muitas vezes semanas após o registo). Uma nova resposta ao inquérito só procura uma conversão por associar até 48 horas para trás, para que uma resposta recente nunca seja ligada a uma encomenda antiga sem relação.
  • Valores de negócio: se a resposta não tiver valor de negócio, o montante da conversão fundida preenche-o — a receita nunca é contada duas vezes.
  • Tipos de conversão: checkouts do Stripe com total de $0 são guardados como trials, faturas recorrentes como renovações. Apenas as compras normais contam como novos clientes a aguardar atribuição.
  • Receita não atribuída: as conversões que nunca receberam uma resposta ao inquérito são mostradas como KPI próprio, para que veja sempre quanta receita continua por explicar.
Seja o que for que envia a conversão (Stripe, Shopify Pixel, webhook), inclua sempre o email do cliente quando disponível — é a chave de fusão mais fiável para leads que respondem ao inquérito antes de comprar.

Privacidade por defeito

Os emails dos clientes são hasheados com SHA-256 na ingestão. O Finseo nunca guarda endereços em texto simples — apenas o hash (usado para fundir encomendas com respostas ao inquérito) e uma pré-visualização mascarada como j***@company.com para o dashboard.

Importar respostas de ferramentas de inquéritos

Já tem um inquérito pós-compra? Mantenha-o — o Finseo importa as suas respostas em vez de mostrar um segundo popup:

Fairing

Via Shopify Flow

KnoCommerce

Via webhook nativo

Zigpoll

Via webhook nativo

SurveyMonkey

Via Zapier/Make

Typeform

Suporte nativo

Tally

Suporte nativo

Enviar dados com um webhook

O endpoint de webhook do seu projeto tem esta forma:
Pode encontrar ou regenerar o token do webhook nas definições de Attribution do projeto. Trate o URL como um segredo — o token autentica cada pedido. Envie pedidos POST com Content-Type: application/json. Submissões form-encoded e multipart também são aceites, para ferramentas de formulários que não conseguem enviar JSON puro.
As respostas de webhook bem-sucedidas têm este aspeto:

Payloads só de encomenda tornam-se conversões

Se um payload trouxer dados de encomenda (ID de transação + montante) mas nenhuma resposta de atribuição — um evento do Stripe, uma encomenda do WooCommerce ou um webhook de encomendas personalizado — o Finseo guarda-o como conversão em vez de o rejeitar. A resposta fica então assim:
matched: true significa que a conversão foi imediatamente fundida com uma resposta ao inquérito anterior.

Referência de campos

O Finseo normaliza o texto do canal em categorias. Por exemplo, respostas que contenham chatgpt, openai, claude, perplexity, gemini, copilot ou ai search são categorizadas como ai_search.

Mapear campos recebidos

Muitas ferramentas enviam payloads com os seus próprios nomes, como LeadSource, how_did_you_find_us, q3_howDid ou respostas aninhadas do Typeform. O Finseo consegue mapear estes campos nos workflows de Attribution.
  1. Abra Attribution.
  2. Vá a Workflows.
  3. Envie um webhook de teste a partir do seu sistema de origem.
  4. Abra o workflow criado.
  5. Mapeie os campos recebidos para atribuição, email, nome, valor do negócio, moeda, ID do formulário ou regras.
  6. Guarde o mapeamento.
Após o mapeamento, os webhooks futuros com a mesma estrutura são interpretados automaticamente. Quando um payload não consegue ser interpretado de todo, o Finseo cria o workflow por si e sugere um mapeamento de campos com IA — só precisa de o confirmar.
Também pode usar regras quando um campo de origem precisa de ser traduzido. Por exemplo, se utm_source contiver chatgpt, mapeie-o para AI Search.

Formatos de origem suportados

O Finseo deteta automaticamente várias fontes comuns:
  • HubSpot: payloads legacy de webhooks de contactos com properties, ou corpos JSON personalizados do Operations Hub.
  • Typeform: form_response.answers, incluindo campos choice, choices, text e email.
  • Tally: payloads data.fields.
  • Salesforce: JSON do Flow HTTP Callout, por exemplo LeadSource, Email, Name, Amount e CurrencyIsoCode.
  • Jotform: multipart/form-data com rawRequest ou campos como q3_howDid, formID e submissionID.
  • Stripe: payloads de eventos (checkout.session.completed, invoice.paid, …) — guardados como conversões, com conversão automática de cêntimos e classificação de trials/renovações.
  • WooCommerce: webhooks de encomendas, incluindo o meta do Order Attribution como origem de marketing.
  • Shopware: payloads de encomendas do Flow Builder com orderNumber, amountTotal e o email do cliente.
  • Raw JSON: payloads diretos com campos como channelId, respondentEmail, dealValue e metadata.

Exemplos

Importação diária em lote

Se preferir um job diário, envie até 1000 respostas de uma vez com a API bulk.
Consulte a API Bulk Create Attributions para a referência completa.

Receber eventos de atribuição

Pode configurar um URL de webhook de saída nas definições de Attribution. O Finseo envia um evento para o seu URL sempre que uma nova resposta é guardada.
Se adicionar um segredo ao webhook de saída, o Finseo assina o corpo JSON com um header X-FinSEO-Signature usando HMAC-SHA256.

Limites de pedidos

  • Endpoint de webhook: 120 pedidos por minuto por projeto.
  • Endpoint de recolha do snippet: 60 pedidos por minuto por IP de visitante.
Os pedidos acima do limite recebem 429 e podem ser repetidos com segurança após um minuto.

Resolução de problemas

Cada pedido de webhook recebido é registado com o seu resultado de interpretação em Attribution → Webhook logs — incluindo pedidos rejeitados. Os estados:

Boas práticas

  • Coloque a pergunta de atribuição perto da conversão, como no registo, no pedido de demo, no checkout ou na qualificação do lead.
  • Mantenha as opções de resposta estáveis entre países. Traduza as etiquetas para os utilizadores se necessário, mas mantenha os valores dos webhooks consistentes.
  • Envie a moeda original do pagamento em dealCurrency; o Finseo consegue na mesma agregar e mapear os valores.
  • Inclua um respondentExternalId estável, como o ID da encomenda, o ID do lead no CRM, o ID do contacto ou o ID do negócio.
  • Coloque produto, SKU, mercado, campanha e outro contexto de negócio em metadata.
  • Envie um evento por lead, encomenda ou negócio. Evite enviar cada visualização de página como atribuição.