Rilato Affiliate Manager

$77.00 Versión 1 · PHP + MariaDB · un solo archivo

Otros venden tu producto y tú les pagas solo cuando cumplen. En eso consiste un programa de afiliados. Esto lo hace funcionar en tu propio servidor: altas, enlaces de seguimiento, comisiones, devoluciones que se descuentan y pagos, desde un único archivo PHP que se crea su base de datos al primer uso.

No se puede pagar con justicia lo que no se ha contado

Un programa de afiliados es una promesa: tráeme un comprador y te doy una parte. Cumplirla significa saber, meses después y al céntimo, qué clic se convirtió en qué pedido, y poder enseñarle a tu afiliado exactamente los mismos números que estás mirando tú.

El seguimiento hecho a mano se rompe justo donde cuesta dinero. La cookie caduca antes de que el comprador vuelva, y una venta real no se le acredita a nadie. Alguien edita la cookie y se acredita a sí mismo. Un pedido se devuelve a la semana siguiente y la comisión ya salió. Dos afiliados reclaman el mismo comprador y no tienes con qué resolverlo. Mientras tanto, las plataformas de pago mensual se llevan una cuota más un porcentaje de cada venta, y se quedan con los datos: el día que te vas, el historial de tus afiliados se queda con ellas.

El afiliado que duda de que le cuentes bien
promociona a otro.

Qué hace

Le da un enlace al afiliado y te deja a ti el libro de cuentas que hay detrás. Cinco direcciones son todo el sistema:

  • Administración — configuración, afiliados, campañas, creatividades, ventas, pagos, informes, plantillas de correo, lista de bloqueo y herramientas. Detrás de una clave que eliges tú, en la dirección.
  • Portal del afiliado — un formulario de solicitud público, un acceso y un panel donde cada socio ve sus propias cifras, arma sus enlaces, copia el código de las creatividades y consulta su historial de pagos.
  • Enlace de seguimiento — ?i=CODIGO, y si quieres campaña, creatividad, destino propio y tres valores sub-ID tuyos que vuelven a aparecer en el informe.
  • Banner — ?b=ID sirve la imagen y cuenta la impresión. El portal le escribe ese código al afiliado.
  • Conversión — tu tienda avisa de que hubo venta.

Esta última tiene tres formas, porque no todas las tiendas son iguales. El postback de servidor a servidor es el fiable, y va firmado para que nadie invente ventas:

$sig = hash_hmac('sha256', $pedido . '|' . number_format($importe, 2, '.', ''), 'TU-CLAVE-SECRETA-AFM'); https://tu-sitio.com/afm.php?event=sale &order=PEDIDO123&amount=149.50&sig=$sig

Si no puedes ejecutar código en la página de gracias, una imagen de un píxel hace lo mismo sin la firma. Y los pedidos por teléfono, los del mostrador y todo lo que nunca pasa por un navegador se meten a mano desde la administración, o se atribuyen solos por código de cupón: el afiliado reparte VERANO10, el pedido lo lleva, y la comisión cae en la cuenta correcta.

Lo que hace que las cuentas cuadren

  • La cookie va firmada. Lleva un HMAC, así que un afiliado no puede editarla a mano para llevarse a su cuenta las conversiones de otro.
  • Las devoluciones se descuentan. Manda el mismo pedido como anulación, o pulsa Reversar en la administración, y la comisión se revierte en el libro de cuentas, incluidas las comisiones por niveles que ya se habían acreditado a los que están por encima de ese afiliado.
  • Los pedidos no se cuentan dos veces. La atribución va por el número de pedido, así que recargar la página de gracias no paga dos veces.
  • Control de fraude con nombre y apellido: bloqueo de autorreferencia, conversiones desde una misma IP, freno al exceso de clics, lista de bloqueo por IP y por correo, y un tiempo mínimo entre el clic y la conversión.
  • Un postback sin firma válida se rechaza. Puedes desactivar esa comprobación en la configuración. No lo hagas.

Comisiones como pagas de verdad

Cuatro modelos — porcentaje de la venta, importe fijo por venta, pago por clic y pago por registro — y cada uno se puede fijar de forma general, por campaña, por nivel de rendimiento o sobre un afiliado concreto, donde manda siempre lo que hayas puesto para él.

Los niveles de rendimiento ascienden al afiliado a una tarifa mejor según crece su volumen aprobado, sin que tengas que acordarte tú. Los niveles de referidos, sin límite, pagan también al afiliado que trajo al afiliado, hasta la profundidad que decidas. Y las comisiones recurrentes se encargan de las suscripciones: manda cada renovación contra el mismo pedido y cada una genera su propia línea de comisión a la tarifa recurrente de la campaña.

Cómo se les paga

Los pagos funcionan por umbral: lo ganado se queda en el libro de cuentas hasta que al afiliado le toca cobrar, y entonces se genera un lote y se exporta en CSV para PayPal Mass Pay o para subirlo al banco. Cada pago queda en el historial, en tu lado y en el suyo, así que la pregunta de «cuándo cobré la última vez y por qué» se responde sola, sin escribirte.

Los informes traen los indicadores del panel, el tráfico diario, el EPC, la tasa de conversión, los mejores afiliados, las mejores creatividades, el desglose por sub-ID y los registros en bruto de clics y ventas. Cuando un afiliado pregunte por qué su cifra le parece baja, los dos podéis mirar la misma línea.

Todo lo que trae

  • Alta de afiliados, cola de aprobación, acceso, perfil y recuperación de contraseña.
  • Campañas: cada oferta con su dirección de destino, sus reglas de comisión y su ventana de cookie.
  • Creatividades: banners, enlaces de texto, anuncios de texto y fragmentos HTML o de correo, cada uno con sus propias impresiones, clics y conversiones.
  • Seguimiento de clics con detección de clic único, captura del sitio de origen, enlaces profundos y paso de sub-ID.
  • Plantillas de correo con campos que se rellenan solos.
  • Una API JSON de solo lectura, con una clave por afiliado, para que cada socio se lleve sus cifras a su propio panel.
  • Mantenimiento nocturno por cron: limpia los clics viejos, aplica los ascensos ganados y cierra el periodo de pago. Por línea de comandos o por dirección web.
  • Incluye Affiliate Manager Diagnostics, una herramienta aparte, también de un solo archivo, que dice exactamente por qué el script no arranca en un servidor concreto — versión de PHP, extensiones, disable_functions, codificación del archivo, comprobación real de sintaxis, permisos de la base de datos, permisos de carpeta y el registro de errores — en vez de dejarte delante de una página 500 en blanco.

Seguridad

  • Todas las consultas son sentencias preparadas con parámetros ligados.
  • Las contraseñas se guardan con password_hash() (bcrypt), se comprueban con password_verify() y se vuelven a cifrar solas al iniciar sesión.
  • La puerta de administración compara con hash_equals(), así que la clave no se puede adivinar cronometrando la respuesta.
  • Un token CSRF por sesión en cada formulario que cambia algo.
  • Los intentos de acceso están limitados por IP.
  • Los errores de base de datos van al registro del servidor; el visitante solo ve un código de referencia neutro, nada de tu estructura.

Requisitos del sistema

  • PHP 8.4, con PDO y pdo_mysql.
  • MariaDB 11.x o MySQL. Las tablas se crean en la primera visita y se actualizan solas en versiones posteriores: el usuario de la base de datos necesita permiso CREATE sobre su propio esquema.
  • Apache 2.4. No hace falta mod_rewrite.
  • Cron, o cualquier programador capaz de abrir una dirección web una vez por noche.
  • Un buzón desde el que enviar los avisos.

$77.00

Un solo pago. Esta versión y todas sus actualizaciones son tuyas, en todos tus servidores.

Pedir este script

Este todavía lo estamos dando de alta en la tienda, así que por ahora el pedido va por la página de contacto. Escríbenos y te mandamos cómo pagar y la descarga el mismo día.

Versión 1 · PHP + MariaDB · Licencia y devoluciones