TikTok Ads e Live Commerce 2027 · Capítulo 10 de 42 · 10 min
Enviar eventos pelo servidor com a Events API sem contar venda em dobro
Compras confirmadas pelo servidor, deduplicadas com o navegador pelo event_id, com e-mail e telefone normalizados e protegidos por hash antes do envio.
Este capítulo faz parte do curso gratuito TikTok Ads e Live Commerce 2027.
Com o Pixel limpo, sobra o que o navegador não enxerga. O Pix que é pago vinte minutos depois de a pessoa fechar a aba, o boleto compensado dois dias mais tarde e o visitante com bloqueador de script não chegam ao TikTok por nenhum código de página.
Sem esse pedaço, o lance aprende com uma amostra torta. Ele vê o cartão e perde parte do Pix, que no Brasil pesa no caixa de qualquer loja virtual. Quem tenta resolver mandando a mesma compra pelos dois caminhos sem preparo cai no problema oposto: a venda aparece em dobro.
Events API é a conexão de servidor a servidor, em que o sistema da empresa envia o evento direto ao TikTok, sem passar pelo navegador. Depois de montá-la, a compra confirmada chega pelo servidor, o navegador continua mandando o que só ele vê, e o event_id garante que o mesmo pedido seja contado uma vez.

Se a figura ultrapassar a área visível, deslize para os lados. Pelo teclado, foque a figura e use as setas.
Servidor, aqui, é qualquer sistema da empresa que sabe que o pagamento entrou: a plataforma da loja, o sistema de pedidos ou um pequeno serviço feito para isso. A Events API aceita eventos de site, de aplicativo e offline, como venda em loja física ou fechamento no CRM, e a Central de Ajuda recomenda usá-la junto com o Pixel, com deduplicação.
Arquitetura é a primeira escolha, e ela define prazo e custo. Pelo quadro oficial, parceiro de comércio ou de dados liga a Events API em menos de uma hora, enquanto a integração direta pela API leva de 1 a 4 semanas. Existe ainda o Events API Gateway, uma conexão de servidor feita em minutos, pensada para agências e varejistas com várias lojas.
As arquiteturas da Events API e o que cada uma exige
| Arquitetura | Prazo pelo quadro oficial | Para quem | Limite |
|---|---|---|---|
| Parceiro de plataforma (Shopify, WooCommerce, Tiendanube, Mercado Shops) | Menos de uma hora | Loja em plataforma com Events API no quadro de parceiros | Nuvemshop, VTEX, Loja Integrada e TRAY aparecem só com Pixel |
| Google Tag Manager | Depende da configuração do contêiner | Equipe que já administra tags pelo GTM | Exige permissões de publicar, aprovar, editar e ler |
| Events API Gateway | Minutos, segundo a Central de Ajuda | Agências, adtechs e varejistas com várias lojas | Deduplica por event_id ou pelo cookie _ttp |
| API direta, com desenvolvimento próprio | De 1 a 4 semanas | Quem precisa decidir quando e como cada evento sai | Manutenção fica com a empresa; IP e navegador são enviados à mão |
Fonte: TikTok Ads Help Center, Website data connection setup methods (julho de 2026) e About Events API Gateway (agosto de 2025)
Deduplicação é o mecanismo que junta o mesmo evento vindo pelo Pixel e pela Events API. Os dois canais mandam o mesmo event_id, um código único por evento, como o número do pedido. O TikTok guarda o primeiro evento que recebe e o enriquece com os dados do segundo. Ela só é necessária quando o mesmo evento vai pelos dois caminhos.
Se a figura ultrapassar a área visível, deslize para os lados. Pelo teclado, foque a figura e use as setas.
Janela de deduplicação é o prazo em que o TikTok ainda reconhece a repetição: 48 horas a partir do primeiro evento. Entre Pixel e Events API, a página de maio de 2025 diz que a fusão vale para eventos que chegam com mais de 5 minutos de diferença, dentro dessas 48 horas. Se o Pixel manda AddToCart e o servidor manda Purchase, não há nada a deduplicar.
Pix e boleto se encaixam nesse desenho sem regra oficial própria, que o TikTok não publica. O raciocínio de implementação é dividir por meio de pagamento. Cartão aprovado sai pelos dois canais com o mesmo event_id. Pix e boleto só geram Purchase no servidor, quando o pagamento confirma, e como viajam por um canal só, a janela de 48 horas deixa de ser problema.
- Etapa 1 de 5: Pedido gerado
Navegador registra PedidoGerado, evento personalizado que não otimiza
- Etapa 2 de 5: Pagamento confirmado
O sistema da loja marca o pedido como pago, minutos ou dias depois
- Etapa 3 de 5: Servidor monta o evento
Purchase com event_id do pedido, valor, moeda e chaves com hash
- Etapa 4 de 5: Events API recebe
Um canal só: nada a deduplicar, mesmo que o boleto leve dias
- Etapa 5 de 5: Conferência diária
Eventos Purchase contra pedidos pagos, na tolerância do plano
Correspondência é o que permite ao TikTok ligar o evento do servidor a uma pessoa que viu o anúncio. As chaves são o Click ID, identificador do clique no anúncio, o e-mail e o telefone, o External ID (o código do cliente no sistema da loja), o IP, o navegador e o cookie de primeira parte _ttp. Na Events API, IP e navegador precisam ser enviados à mão.
Hash é a transformação do dado em uma sequência fixa de caracteres, sem volta, e o TikTok exige SHA-256 para e-mail, telefone e External ID. Antes do hash vem a normalização: e-mail sem espaços e em minúsculas, telefone no padrão internacional E.164, com +55 e DDD. Normalize e aplique hash antes de enviar, e nunca mande e-mail em texto aberto.
Se a figura ultrapassar a área visível, deslize para os lados. Pelo teclado, foque a figura e use as setas.
import { createHash } from "node:crypto";
const sha256 = (texto) => createHash("sha256").update(texto).digest("hex");
// E-mail: sem espaços e em minúsculas antes do hash.
export const emailHash = (email) => sha256(email.trim().toLowerCase());
// Telefone: só dígitos, com 55 e DDD, no formato E.164.
export function telefoneHash(telefone) {
let digitos = telefone.replace(/\D/g, "");
if (!digitos.startsWith("55")) digitos = "55" + digitos;
return sha256("+" + digitos); // "+5531999990000"
}Qualidade da correspondência aparece no Events Manager como EMQ Score (Event Match Quality, a nota de quão bem os eventos casam com pessoas), calculado como média ponderada da cobertura de cada chave. O TikTok não publica a escala, então a leitura útil é a tendência: nota que cai depois de uma mudança no site indica chave que deixou de ser enviada.
CRM entra pela mesma porta. Venda fechada por telefone, contrato assinado e compra em loja física podem ser enviados como eventos offline, ligados ao anúncio pelas mesmas chaves. Aqui o cuidado com dados dobra: envie só o que a finalidade pede, guarde o registro do consentimento de cada contato e não mande dados de quem recusou.
Validação operacional junta três ferramentas. A aba de eventos de teste filtra o que chegou por Pixel e por Events API. O Payload Helper, recurso recente do Events Manager, confere o formato do envio. A conferência diária compara eventos com pedidos pagos. Nenhuma delas é instantânea, porque o Events Manager não mostra dados em tempo real.

Se a figura ultrapassar a área visível, deslize para os lados. Pelo teclado, foque a figura e use as setas.
{
"event_source": "web",
"event_source_id": "CODIGO_DO_PIXEL",
"data": [{
"event": "Purchase",
"event_time": 1777593600,
"event_id": "pedido-48213",
"user": {
"email": "<sha256 do e-mail normalizado>",
"phone": "<sha256 do telefone em E.164>",
"ttp": "<valor do cookie _ttp>",
"ip": "<IP do comprador>",
"user_agent": "<navegador do comprador>"
},
"properties": { "currency": "BRL", "value": 89, "content_type": "product" }
}]
}Limites precisam estar no plano. A integração direta custa semanas de desenvolvimento e depois exige manutenção. Conversões modeladas, estimativas que o TikTok reporta quando a conversão real não é observável, entram no relatório de campanhas otimizadas para eventos do site. O servidor também não conserta um dicionário mal escrito: ele envia com precisão o evento que o plano definiu.
Ordem de trabalho, na página oficial de primeiros passos, começa longe do código. Primeiro, eventos, parâmetros e chaves de correspondência são definidos com marketing, jurídico e tecnologia. Depois vem o método de integração, e a recomendação do TikTok é a Events API como segundo canal ao lado do Pixel, não como substituta. As chamadas da Events API 2.0 exigem um token de acesso, a senha técnica que identifica quem envia.
Passo a passo: ligar a Events API ao Pixel e conferir a deduplicação
Vale para integração direta ou por parceiro. Envolva quem desenvolve o serviço e quem responde pelos dados de clientes desde o primeiro passo.
Passo 1: Escreva o escopo do envio
Liste, a partir do dicionário de eventos, o que sai pelo servidor: Purchase confirmado, com value, currency, event_id e as chaves e-mail, telefone, IP, navegador e cookie _ttp.
Deu certo quando: Uma tabela aprovada por marketing, jurídico e tecnologia, com a finalidade de cada dado.
Erro comum: Mandar todos os campos do pedido porque o sistema permite, sem finalidade escrita para cada um.
Passo 2: Escolha o método de integração
Parceiro de comércio, como Shopify e WooCommerce, parceiro de dados, como CDP ou gerenciador de tags, ou integração direta pela API quando a empresa precisa decidir quando cada evento sai.
Deu certo quando: Prazo e responsável definidos: menos de uma hora no parceiro, de 1 a 4 semanas na integração direta.
Erro comum: Escolher a integração direta sem prever quem mantém o serviço depois da entrega.
Passo 3: Gere o token de acesso
O token autentica as chamadas da Events API 2.0 e é gerado pelo caminho que o portal de desenvolvedores do TikTok descreve para o Pixel escolhido.
Deu certo quando: Token guardado no cofre de senhas da empresa, fora do código e fora de planilha.
Erro comum: Colar o token no código do site, onde qualquer visitante consegue lê-lo.
Passo 4: Repita o event_id nos dois canais
Para cartão aprovado, navegador e servidor mandam o mesmo event_id, como pedido-48213. Para Pix e boleto, só o servidor manda Purchase, depois da confirmação do pagamento.
Deu certo quando: Na aba Testar eventos, o Purchase do cartão aparece pelos dois canais e conta uma vez.
Erro comum: Gerar o event_id no navegador e outro no servidor, o que impede a fusão dos dois eventos.
Passo 5: Confira pedidos pagos contra eventos
Durante sete dias, compare o total de Purchase do Events Manager com o total de pedidos pagos do sistema da loja, por meio de pagamento.
Deu certo quando: Diferença dentro da tolerância de 2 por cento do plano de mensuração.
Erro comum: Comparar com pedidos gerados, que incluem Pix expirado e boleto não pago.
No fim você tem: Events API como segundo canal do Pixel, com token guardado, event_id repetido nos dois caminhos e uma conferência diária com tolerância escrita.
Armadilha comum: ligar a Events API ao lado do Pixel sem enviar o mesmo event_id pelos dois canais. Cada compra de cartão chega duas vezes, o TikTok não tem como saber que é o mesmo pedido, e o relatório volta a mostrar o dobro de vendas que o Pixel limpo tinha acabado de corrigir.
A Aroeira seguiu o caminho da API direta, porque a integração da Nuvemshop aparece no quadro oficial só com Pixel. Otávio contratou um desenvolvedor, que levou três semanas de abril para montar um serviço ligado ao sistema de pedidos. O serviço envia Purchase quando o pagamento confirma, com event_id igual ao número do pedido, e o Pixel passou a mandar Purchase só para cartão.
Em maio de 2026, o site teve 1.321 pedidos pagos, 41 por cento no Pix, 53 por cento no cartão e 6 por cento no boleto. O Events Manager registrou 1.318 eventos Purchase, uma diferença de 0,2 por cento, dentro da tolerância de 2 por cento do plano. Os 93 pedidos não pagos de abril deixaram de aparecer como venda.
A medição do site da Aroeira em maio de 2026
1.318
eventos Purchase para 1.321 pedidos pagos
Diferença de 0,2 por cento, dentro da tolerância de 2 por cento do plano
41%
dos pedidos pagos no Pix
Todos com Purchase enviado só pelo servidor, depois da confirmação
3 semanas
para montar a integração direta
Dentro do prazo de 1 a 4 semanas que o quadro oficial indica
R$ 55,56
CPA reportado no mês
324 compras atribuídas para R$ 18.000; equilíbrio de R$ 58,88 com margem de 46 por cento
Fonte: Aroeira Cosméticos, cenário composto do curso
O ganho veio dos dois lados. O lance deixou de aprender com pedido que nunca foi pago e passou a receber o Pix que o navegador perdia. As compras atribuídas subiram de 300 para 324, o CPA reportado caiu de R$ 60 para R$ 55,56 e ficou abaixo do equilíbrio de R$ 58,88, com folga de só 6 por cento, pequena demais para Helena liberar verba nova.
Abra a aba de eventos de teste do seu Events Manager, faça uma compra no cartão e outra no Pix, e confira o canal de cada Purchase. O critério de acerto é um evento por pedido pago, com o mesmo event_id nos dois canais quando os dois enviam. O próximo capítulo compara esses números com o GA4 e com o Seller Center.
Seu caderno neste capítulo
Abrir o caderno completoSelecione um trecho do capítulo para destacar ou anotar. Nos vídeos e áudios, use Anotar este momento. No teclado, selecione com Shift e as setas e use Alt+Shift+D para destacar ou Alt+Shift+N para anotar.
Salvo neste navegador. Entre na sua conta para levar o caderno a outros aparelhos.
Entre na sua conta para compartilhar o que aprendeu e convidar alguém para estudar com você.
Conexões deste capítulo
Veja o que estudar antes e para onde seguir depois, explore os conceitos e compare abordagens em outros cursos. Sugestões marcadas como “sugerido pelo grafo” vêm dos assuntos em comum, não do índice do curso.
Depois, siga para
- Enviar eventos pelo servidor com a API de Conversões sem duplicarsugerido pelo grafoApresenta os conceitos “Event” e “Hash”, usados em “Enviar eventos pelo servidor com a API de Conversões sem duplicar”.
- Divulgar eventos e webinars e transformar presença em conversa comercialsugerido pelo grafoApresenta o conceito “Event”, usado em “Divulgar eventos e webinars e transformar presença em conversa comercial”.
- Levar a venda do CRM de volta ao Google Ads pelo Data Managersugerido pelo grafoApresenta o conceito “Hash”, usado em “Levar a venda do CRM de volta ao Google Ads pelo Data Manager”.
- Enviar conversões pelo servidor com a Conversions API sem contar duas vezessugerido pelo grafoApresenta o conceito “Hash”, usado em “Enviar conversões pelo servidor com a Conversions API sem contar duas vezes”.
Conceitos deste capítulo
O mesmo assunto em outros cursos
- Meta Ads 2027Enviar eventos pelo servidor com a API de Conversões sem duplicarExaminar conexões de Enviar eventos pelo servidor com a API de Conversões sem duplicar
- Google Analytics 2027Enviar do servidor o evento que o navegador não vê, sem duplicarExaminar conexões de Enviar do servidor o evento que o navegador não vê, sem duplicar
Voltar ao capítulo anterior: Instalar o TikTok Pixel e provar que cada evento dispara uma vez
Leve uma ideia para a prática
Escolha uma atividade no painel e volte a este curso quando quiser.
Atividades e evolução ficam reunidas no painel da sua conta.
Capítulos vizinhos em TikTok Ads e Live Commerce 2027
- 08Desenhar o plano de mensuração antes de instalar qualquer código
- 09Instalar o TikTok Pixel e provar que cada evento dispara uma vez
- 10Enviar eventos pelo servidor com a Events API sem contar venda em dobro
- 11Ler a atribuição e reconciliar TikTok, GA4 e Seller Center
- 12Escolher objetivo, formato e estrutura pela venda que importa