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.
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:</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).
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 (
respondentExternalId↔transactionId) 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.
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 comoj***@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: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.
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, comoLeadSource, how_did_you_find_us, q3_howDid ou respostas aninhadas do Typeform. O Finseo consegue mapear estes campos nos workflows de Attribution.
- Abra Attribution.
- Vá a Workflows.
- Envie um webhook de teste a partir do seu sistema de origem.
- Abra o workflow criado.
- Mapeie os campos recebidos para atribuição, email, nome, valor do negócio, moeda, ID do formulário ou regras.
- Guarde o mapeamento.
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,AmounteCurrencyIsoCode. - Jotform: multipart/form-data com
rawRequestou campos comoq3_howDid,formIDesubmissionID. - 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,amountTotale o email do cliente. - Raw JSON: payloads diretos com campos como
channelId,respondentEmail,dealValueemetadata.
Exemplos
Importação diária em lote
Se preferir um job diário, envie até1000 respostas de uma vez com a API bulk.
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.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.
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
respondentExternalIdestá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.