Sistema de afiliación y S2S-postbeki: atribución exacta
1) Por qué esto es todo y qué es la «atribución exacta»
Los afiliados conducen el tráfico y esperan un pago transparente para las acciones objetivo (registro/depósito/rugido). El operador quiere protección contra el frodo, informes consistentes y una economía predecible. «Atribución exacta» significa:- un conjunto de clics → sesión → evento (FTD/depósito/ingresos);
- reglas deterministas (ventanas, prioridades, multitarea);
- idempotentes S2S-postbeki e informes verificables;
- moneda única/timesone de cálculo y estados comprensibles.
2) Modelos de pago y definiciones clave
CPA (Costa per Acquisition): fix por evento (normalmente FTD es el primer depósito) cuando se cumplen las condiciones (CUS/min. depósito/NGR> 0).
RevShare: porcentaje de NGR/Net Gaming Revenue del jugador para el período/todo LTV (con techos/piso).
Hybrid: CPA + RevShare.
CPL/CTR/RS métricas: CR al registro, CR al FTD, ARPU/ARPPU, eCPA/eRPS.
FTD - primer depositor de tiempo, FTD cualificado - FTD después de antifraude/vapeo.
3) la Marca del tráfico: las referencias, UTM y los sab-parámetros
Enlace de seguimiento del afiliado (ejemplo):
https://brand. com/track? aff_id=42&campaign_id=uk_oct&click_id={CLICK_ID}
&sub_id1={SOURCE}&sub_id2={ADGROUP}&sub_id3={CREATIVE}&t=slot-promo- 'aff _ id' es un socio, 'campaign _ id' es un offer/país, 'click _ id' es un identificador de clic único (GUID/ULID), 'sub _ id1.. 5' son campos libres (fuente/anuncio/creativo/playsment/A/B).
- En el landing, cree una sesión de clic e instale la cookie 'aff _ click _ id' (HTTP-only, same-site), guarde paralelamente en el servidor storage (anti-cookie-loss).
4) Ventanas de atribución y prioridades
Click-through window: 30 días (registro/FTD).
Ventana de engagement (después de registrarse antes del FTD): 7-14 días.
Prioridades: last-click entre los afiliados (dentro del último promotor), pero no solapa la búsqueda directa de marca según las reglas internas (documentar).
Multi-táctil: almacena una cadena de clics, pero paga bajo la «regla de pago» (por ejemplo, last-click). Para los analistas, muestre la contribución de todos los toques.
5) S2S-postbeki: eventos y contratos
Por qué S2S: el píxel del navegador no es fiable (política de adblock/navegador). S2S-postback → un webhook en el lado del afiliado/rastreador sin la participación del cliente.
Eventos que normalmente son puerta de enlace
`registration` (sign-up)- 'ftd' (primer depósito)
- 'qualified _ ftd' (después de CUS/vapeo)
- 'depósito' (cada depósito)
- 'revenue' (RevShare: NGR/GGR para el período)
Ejemplo de postback S2S (HTTP POST, JSON)
POST https://aff-network. com/postback
Headers: X-Signature: sha256=ab12..., X-Timestamp: 1730000000
Body:
{
«aff_id":» 42 «,» click_id": «clk_9f23",» evento «:» ftd', «user_id":» u_12345" ,//alias, no PII
"amount_minor": 2000,  "currency": "EUR",  "market": "DE",  "ts": "2025-10-23T17:41:26Z",  "session_id": "s_77",  "sub_id1": "fb",  "sub_id2": "adg_12",  "sub_id3": "cr_88"
}Seguridad e idempotencia
6) Enlace de clic: cómo no perder la atribución
Al registrarse: emparejar 'aff _ click _ id' desde una sesión de cookie/servidor con 'user _ id' (+ la huella del dispositivo como reserva, pero el GDPR es sensible, aplíquelo solo con consentimiento).
Con FTD: busque la última sesión de clic activa en la ventana; si no, devolver 'organic/direct'.
Dedoup: si dos FTD entraron el mismo día debido a los retraídos PSP - pagamos una vez (bandera FTD única en 'user _ id').
7) Antifraude y vaporización
Tiempo de vida: FTD → estado 'PENDING' durante 24-72 horas, qualified después de CUS/ausencia de charjback.
Señales: «burst» de hosting-ASN, VPN/Proxy, alta velocidad de registro, cookie stuffing (clic sin sesión real), mis-match geo/moneda.
Pesaje (pesaje): reduzca los pagos CPA en los umbrales de calidad (por ejemplo, NGR <0, retención  Lista de excepciones: marca SEM, fuentes prohibidas, tráfico incent - pago ban/0. 8) Economía y fórmulas NGR = GGR − bonificaciones − jackpots − proveedores phi − PSP fi − chargebacks. RevShare payout = NGR × RS% (с min/max cap). Hybrid payout = CPA + NGR × RS%. eCPA = Payout/col-in FTD, ROI del afiliado = Payout − TrafficCost. Documente la divisa de liquidación (por ejemplo, EUR) y el tipo de cambio FX diario (URE/proveedor). 9) Esquemas de datos (simplificado) 10) Informes y paneles Rendimiento (día/mercado/offer): clics, registros, FTD, CR, depositarios, GGR/NGR, pagos, eCPA. Corte de cohorte: retención de D1/D7/D30, NGR/depósitos por jugador, fracción de chargebacks. Discrepancy-panel: discrepancias de clics/registros/FTD con el rastreador de afiliados (± X%). Fraud heatmap: ASN/países/sitios con anomalías. 11) Orden de cálculo y reconciliation 1. Diariamente - eventos crudos en los cortes (clics/regs/FTD/depósitos/NGR), descarga de CSV/S2S. 2. Una vez en el período (semana/mes) - proyecto de cuenta (invoice draft) con descifrado y ajustes (chargeback/devoluciones). 3. Arbitraje: ventana de disputas (generalmente 5-10 días hábiles), causas documentadas de las desviaciones (frod, inconsistencia offer, incent). 4. Cuenta final → pago (SEPA/SWIFT/cripto) con referencia del período; estados 'issued/paid'. 5. Auditoría: archivos WORM de informes, firma/hash. 12) Privacidad y cumplimiento Las partes no necesitan PII: use alias ('user _ id', 'hash (email)' si es necesario con sal). DPA con redes de afiliados, especificación de roles (controller/processor), tiempos de retención de clics/eventos. Consent para cookies/UTM; fingerprinting - sólo en base legal. Restricciones geográficas de las oficinas (países de licencia), filtros de edad. 13) Ejemplos de API 13. 1. Registro de clics (servidor side, opcional) 13. 2. Enlace de usuario durante el registro 13. 3. Postbec al lado de la red (nuestro «saliente») 14) Anti-trampas e incidentes A. Cookie-stuffing (interrupción del clic) Señales: muchos clics sin sesión/diapositiva/tiempo en la página. Medidas: servidor click-logs + umbral de «sesión válida» (actividad mínima), ignorar los últimos clics cuando se sospecha. B. Diferentes temporizadores/monedas → discrepancias de informes Medidas: TZ único calculado (por ejemplo, UTC o Europa/Kyiv) y moneda (EUR); conversión por fuente de curso fija con snapshot diurno. C. Dobles de postbeques Medidas: Idempotency-Key + índice único 'event _ id', máquina de estado 'pending→acked'. D. Un estallido de frodo de hosting-ASN Medidas: WAF/bot manager, stop offer por segmentos, featuring FTD, 0 pagos por fuentes en disputa antes del procedimiento. 15) Dashboards para el trabajo diario Supervisión de afiliados: FTD/depositarios/NGR/pagos de 10 socios principales en 7/30 días. Funnel: clics → registrarse → KYC → FTD (CR por pasos, tiempo hasta FTD). Calidad: mantener/ARPPU/chargeback rate por offer. Tech Health: retraso postback p95, error HMAC, retraídas, DLQ. Finanzas: actas/cuentas, estado de pagos, por cobrar. 16) Lista de comprobación de disponibilidad Un sistema de afiliación fiable son reglas de atribución deterministas, seguras S2S-postbeki con idempotencia, contornos antifraude y estricta reconciliación. Estandarice los parámetros de referencia, almacene clics y cadenas de toques, pague según un modelo comprensible (CPA/RevShare/Hybrid), fije ventanas y temporizadores, proteja los dispositivos web y automatice la facturación. Entonces tendrás informes netos, menos disputas y una economía unitaria sostenible para el operador y los socios.
sql
-- Clics/sesiones aff_clicks (
click_id text primary key,  aff_id int, campaign_id text,  sub1 text, sub2 text, sub3 text, sub4 text, sub5 text,  ts timestamptz, ip inet, asn int, ua text, landing text
);
-- Enlace al usuario aff_attribution (
user_id bigint primary key,  click_id text references aff_clicks(click_id),  aff_id int, campaign_id text,  attributed_at timestamptz,  window_days int, rule text -- e. g. 'last_click'
);
-- Eventos post-becarios aff_events (
event_id uuid primary key,  user_id bigint, click_id text,  event_type text,     -- registration/ftd/deposit/revenue/adjustment amount_minor bigint, currency char(3),  ngr_minor bigint,     -- для revenue occurred_at timestamptz,  status text,       -- pending/sent/acked/failed retries int default 0
);
-- Contabilidad financiera del afiliado aff_payouts (
payout_id uuid primary key,  aff_id int, period month, currency char(3),  model text,        -- CPA/RevShare/Hybrid cpa_minor bigint, rs_minor bigint, adjustments_minor bigint,  total_minor bigint, status text   -- draft/issued/paid
);
http
POST /v1/aff/click
{"aff_id":42,"campaign_id":"uk_oct","click_id":"clk_9f23","sub1":"fb","sub2":"adg12"}
→ 202 {"status":"ok"}http
POST /v1/aff/attach
{"user_id":12345,"click_id":"clk_9f23","ip":"1. 2. 3. 4","ua":"..."}
→ 201 {"attributed": true, "rule":"last_click","window_days":30}http
POST https://aff. example/postback
Headers: X-Idempotency-Key: evt_7a1, X-Signature: sha256=...
Body: {"event":"ftd","click_id":"clk_9f23","amount_minor":2000,"currency":"EUR","ts":"..."}
→ 200 {"ok":true}
Resumen
