3 min de lectura

Cómo construimos el programa de afiliados de Chiarelli Labs

Cómo construimos un programa de afiliados propio: cookie first-touch de 60 días, comisión automática por milestone y panel que protege la identidad del lead.

afiliadosgrowthautomatizaciónprivacidadpipeline

En nuestra experiencia, la referencia es uno de los canales de adquisición más baratos que existen, pero solo funciona si es fácil de rastrear y justo de pagar. En vez de contratar un SaaS de afiliados de terceros e integrarlo vía webhook, decidimos construir el programa dentro del pipeline de leads que ya existía. Este post documenta las decisiones técnicas detrás del programa de afiliados público de Chiarelli Labs.

Por qué un programa propio, y no un SaaS de afiliados

Un SaaS de terceros resuelve el rastreo de clics y el pago, pero queda fuera del sistema que ya sabe en qué etapa del embudo está cada lead. Nuestro pipeline (formulario de contacto, clasificación, discovery, propuesta, ejecución, milestones de pago) ya existía antes del programa. Construirlo por dentro significa que el mismo evento que marca un milestone como pagado es el mismo evento que acredita la comisión.

Registro, enlace y atribución first-touch

El registro está abierto en /afiliados: un onboarding de 6 pasos que termina con la aceptación de los términos, y aceptar activa el enlace de referencia en el formato chiarelli.dev/r/[code]. Visitar ese enlace configura una cookie cl_ref: httpOnly, validez de 60 días, modelo first-touch (vale la primera referencia que toca al lead, no la última). Cuando ese lead completa el formulario de contacto, el mismo endpoint que recibe el formulario lee la cookie, crea el registro de referencia (affiliate_referrals) y bloquea la autorreferencia: si el email del lead es el mismo que el del afiliado, el registro no se crea.

Comisión automática, pago manual

La comisión es un porcentaje configurable por track de servicio (no publicamos el valor exacto). Se acredita automáticamente en el momento en que un milestone de pago del proyecto se marca como pagado, de forma prorrateada (proporcional al valor de ese milestone específico) e idempotente: marcar el mismo milestone como pagado dos veces no duplica la comisión. El pago en sí es manual, vía PIX, rastreado en un panel administrativo dedicado.

El panel protege al lead, no solo al afiliado

La autenticación del afiliado está aislada de la autenticación del resto del sitio: login por magic link, sin contraseña, con tablas de base de datos y cookie de sesión propias. El detalle más importante del panel, sin embargo, es lo que no muestra: el afiliado ve un pseudónimo para el lead que refirió, la etapa en la que está dentro del embudo y la comisión ya ganada con él, nunca el valor del contrato cerrado. Es una decisión de producto: el afiliado necesita saber que la referencia está avanzando y cuánto va a recibir, no necesita ver lo que pagó el cliente final.

Construido en etapas, con dos bugfixes en el camino

El programa salió en cuatro etapas: fundación (schema de base de datos y configuración de comisión por track), activación (compartir el enlace, conteo de clics, tarjeta de referencia con un generador vía IA), conversión (email automático de progreso para el afiliado, mini-cases de éxito, una forma de que el afiliado pida ayuda) y reclutamiento (landing page propia, invitación, kit público de difusión). Después de estar en producción, aparecieron dos bugs que fueron corregidos: la descarga de la tarjeta de referencia, que a veces generaba un error 500, fue reemplazada por un enlace nativo (<a download>); y las variantes del generador de tarjetas vía IA fueron revisadas y saneadas.

El programa está activo en /es/afiliados: registro abierto, onboarding de 6 pasos, y el enlace se activa al aceptar los términos. Si ya referís clientes de forma informal, podés formalizarlo ahí y hacer seguimiento del retorno en un panel propio.

¿Tienes una idea validada, proceso a automatizar o producto a construir?

Hablar con nosotros