Skip to main content
O tracker client-side é uma tag JavaScript que você instala no seu site para capturar o clique do afiliado e registrar conversões direto do navegador, sem escrever código de backend. É uma camada de conveniência sobre o rastreamento server-to-server (S2S): o S2S continua sendo a fonte da verdade e reconcilia qualquer conversão client-side de mesmo sourceEventId. A autenticação no navegador usa a publishable key (pk_*): pública, pode ficar visível no código do site. A chave secreta (rstr_) nunca vai ao client.
Quando usar o tracker client-side? Quando você quer adotar a Repass com o mínimo de integração de backend, ou complementar o S2S para capturar identidade e conversões mesmo quando o servidor não tem todos os identificadores. Se você já tem uma integração S2S robusta, o tracker é opcional.

Como funciona

Instalação

1

Pegue sua publishable key

No painel da Repass, em Configurações → Rastreamento, copie a publishable key (pk_…). Pela API:
Use somente a publishable key (pk_) no navegador. A chave secreta (rstr_) autentica chamadas server-to-server e nunca deve aparecer no frontend.
2

Instale a tag no seu site

Cole antes do fechamento do </body>, em todas as páginas (incluindo a de confirmação de compra). A base da API é derivada do próprio src do script.
A tag expõe window.Repass e, ao carregar, captura repass_cid e repass_vid da URL automaticamente (anexados pelo redirect do link do afiliado), persistindo-os em cookie first-party + localStorage.
3

Identifique o visitante (opcional, cross-device)

No cadastro/login, associe o visitante a um e-mail: o hash SHA-256 é calculado no navegador e permite atribuição entre dispositivos.
4

Dispare a conversão

Na página de obrigado (ou quando a venda se concretiza), registre a conversão. A tag mescla automaticamente o clickId/visitorId capturados.
Valores em centavos (inteiro): 9900 = R$ 99,00. Use como sourceEventId um id estável do seu pedido: é a chave de idempotência e de reconciliação com o S2S.

Confiança no client-side

Conversões disparadas pelo navegador são, por natureza, menos confiáveis que o S2S (recebem o sinal de fraude client_side_unverified). Você controla, por organização, se elas contam sozinhas, em Configurações → Rastreamento (trustClientSide) ou via PUT /settings/tracker:
Sem S2S, mantenha trustClientSide: true, caso contrário as conversões ficam pending para sempre, aguardando uma confirmação que nunca chega.

Reconciliação com o S2S

Se você envia as duas coisas (tag no site + S2S no backend), use o mesmo sourceEventId nos dois. Quando o evento S2S (POST /conversions) chega, ele sobrescreve in-place a conversão client-side provisória: reprocessa atribuição e fraude com os dados confiáveis, gera a comissão, troca a origem para api e emite conversion.reconciled. O S2S sempre vence.
A reconciliação cobre conversões client-side ainda provisórias (pending). Uma conversão client-side já aprovada (org com trustClientSide: true) não é sobrescrita por um S2S divergente posterior.

Instalação via npm (bundlers)

Para apps que usam bundler (React, Vue, etc.), o pacote @repass/tracker expõe uma API programática. Chame initRepass apenas no client (usa window/document/crypto).

Referência da API

  • POST /track/conversion: conversão client-side (autenticada pela publishable key). Veja a aba Referência da API.
  • GET / PUT /settings/tracker: leia/rotacione a publishable key e ajuste trustClientSide (autenticado por sessão/API key).
  • POST /track/identify: associa visitante a e-mail hasheado (cross-device).

Próximos passos

Conversões server-to-server

O contrato S2S que reconcilia e dá a palavra final sobre a conversão.

Tracking

Clique, visitante, janela de atribuição e fingerprint.

Atribuição

Modelos, janela e o conflito Cupom × Clique.

Conversões e fraude

Pipeline de decisão, snapshots e o motor antifraude.