Pular para o conteúdo principal

Marketing Tracking

:::tip Movido para Marketing Docs Esta documentação foi reorganizada e expandida em Marketing Docs — uma surface dedicada pra quem opera marketing, tráfego, CRM e BI. Inclui:

Pra time de dev

Esta página fica como pointer pra Marketing Docs. Time de dev consulta lá pra entender o comportamento que o front implementa.

Pra referência de código (pontos de extensão, entry points, testes), use os links abaixo:

Entry points no front-web-base

SurfaceArquivo
Server-side captureapp/utils/tracking.server.ts (captureTrackingFromRequest)
Client-side captureapp/utils/tracking.ts (parse, merge, persist)
Client componentapp/components/tracking/TrackingCapture.tsx
Root loader integrationapp/root.tsx
Signup payloadapp/modules/register/flow.ts (buildRegisterPayload)
Deposit payload@cactus-agents/paymentsbuildDepositPayload
Headers automáticos@cactus-agents/api-client (X-ORIGIN-*, X-LOG-INFO)
Remarketing systemapp/utils/remarketing-id.ts + .client.ts + .server.ts
Remarketing componentapp/components/tracking/RemarketingCapture.tsx
Analytics dispatcherapp/utils/metrics/index.ts
GTM integrationapp/utils/metrics/gtm.ts
Cookie consentapp/utils/consent.ts + app/components/consent/CookieConsentBanner.tsx
GCM v2 integrationapp/utils/metrics/consent.ts
Affiliate Cleverapp/utils/affiliate-clever.server.ts + app/routes/clever.ts

Tests

SuiteCobre
app/utils/__tests__/tracking.test.tsParser URL, todos aliases, sanitização, merge last-touch
app/utils/__tests__/tracking.server.test.tsCaptura server-side, Set-Cookie serialization, strip URL
app/utils/__tests__/remarketing-id.test.tsUUID v4, parse/serialize, audience tags, validation
app/utils/__tests__/remarketing-id.server.test.tsServer-side capture do remarketing ID
app/modules/register/__tests__/flow.tracking.test.tsFormData → parse → buildRegisterPayload (e2e signup)
packages/payments/src/__tests__/transform.test.tsbuildDepositPayload confirma src NÃO sai
packages/api-client/src/__tests__/client.test.tsX-LOG-INFO formato + X-ORIGIN-ACCESS enum

Convenções

  • Política de atribuição: last-touch em todas as superfícies. Mudança requer alinhamento com BI.
  • Cookie naming: cookie_* ou nomes brand-aware (rmk<brand>). Nunca contém cactus/bluetec.
  • Sanitização: sanitizeTrackingValue aplicado a tudo que entra no cookie_tracking. Exceção: lastclick (Clever) é opaco.
  • HttpOnly: cookie_tracking/cookie_referrer/rmkvera/rmkvera_aud/lastclick são non-HttpOnly (client lê). jwt_token é HttpOnly.
  • Server-first: captura sempre server-side primeiro (root loader), client é re-aplicação em SPA navs.
  • Brand override: file-replacement (não deep-merge). Adicionar campo novo em config requer propagar em todos overrides ou documentar como opt-in explícito.

Docs relacionadas