Ir al contenido

Affiliate program

El módulo del programa de afiliados le permite gestionar un programa de recomendaciones en la tienda. Los afiliados comparten enlaces de recomendación y el plugin realiza el seguimiento de las conversiones y calcula las comisiones.

  1. Un cliente se registra como afiliado en el panel Mi cuenta
  2. El administrador activa la cuenta del afiliado
  3. El afiliado recibe un token único y un enlace de recomendación
  4. El afiliado comparte el enlace (por ejemplo, en redes sociales, en un blog)
  5. Un visitante hace clic en el enlace - el token se guarda en una cookie
  6. El visitante realiza un pedido - el plugin asocia el pedido con el afiliado
  7. Tras el pago del pedido, el plugin calcula la comisión

Desde Polski PRO 1.22.0 el programa de afiliados tiene su propia fila en Polski > Módulos (clave de módulo affiliates). Ahí se activa el módulo y en esa misma fila se establecen los valores de toda la tienda; al guardar se escriben en la opción polski_affiliates. El módulo se entrega apagado.

La fila no muestra todas las claves que lee el módulo. Lo que falte se puede seguir estableciendo directamente en la opción, por ejemplo con WP-CLI:

Ventana de terminal
wp option patch update polski_affiliates commission_percent 8
Clave Por defecto Descripción
commission_percent 5 Comisión porcentual sobre el total del pedido
cookie_days 30 Duración de la cookie de recomendación
referral_param poleca Nombre del parámetro de recomendación en la URL
pending_statuses processing,completed Estados de pedido que registran una recomendación
minimum_order_total 0 Total mínimo del pedido que genera comisión
show_in_account / account_label true / Programa de afiliados Sección de Mi cuenta con el panel del afiliado
login_required_text ver el código Mensaje para visitantes no conectados
date_format d.m.Y Formato de fecha en los textos para el cliente

Los valores por defecto están en Polski\Pro\Service\AffiliateService.

Además de la tasa de comisión global, el administrador puede establecer una tasa individual para un producto concreto. En el editor de productos, en la sección “Programa de afiliados”:

  • Tasa de comisión (%) - anula la tasa global
  • Excluir del programa - el producto no genera comisiones

También se admiten tasas de comisión por categoría - un ajuste en una categoría se aplica a todos los productos de esa categoría, salvo que un producto tenga su propia tasa.

El enlace de recomendación contiene un parámetro de URL con el token del afiliado:

https://example.com/?poleca=abc123def456

El parámetro poleca es configurable. El token es un identificador único del afiliado generado durante el registro.

Tras hacer clic en un enlace de recomendación, el plugin establece una cookie:

Parámetro Valor
Nombre de la cookie polski_affiliate_token
Valor Token del afiliado
Vida útil Configurable (por defecto 30 días)
Ruta /
SameSite Lax

La cookie se establece del lado del servidor (PHP) con el indicador HttpOnly. En visitas posteriores, el plugin comprueba la cookie y asocia cualquier pedido con el afiliado.

El plugin utiliza un modelo de atribución “último clic” - si un cliente hizo clic en enlaces de varios afiliados, la comisión va al último. La cookie se sobrescribe con cada nuevo clic en un enlace.

Un cliente puede registrarse como afiliado en el panel Mi cuenta en /moje-konto/polski-affiliates/. El formulario de registro contiene:

  • nombre y apellidos (obtenidos automáticamente de la cuenta)
  • método de pago de la comisión (transferencia bancaria / código de descuento)
  • número de cuenta bancaria (para transferencia bancaria)
  • consentimiento a los términos del programa de afiliados

Por defecto, las nuevas cuentas de afiliado requieren la activación manual por parte del administrador. El administrador recibe una notificación por correo electrónico sobre un nuevo registro y puede:

  • activar la cuenta en el panel WooCommerce > Afiliados
  • rechazar el registro indicando un motivo

Opcionalmente, se puede activar la activación automática - las nuevas cuentas quedan activas de inmediato tras el registro.

Estado Descripción
Pending Pendiente de activación
Active Activo - puede generar enlaces y ganar comisiones
Suspended Suspendido por el administrador
Rejected Rechazado - registro denegado

Las comisiones se calculan automáticamente después de asociar un pedido pagado con un afiliado. No se calculan comisiones para:

  • pedidos cancelados o reembolsados
  • pedidos realizados por el propio afiliado (autorrecomendación)
  • productos excluidos del programa
Estado Descripción
Pending Calculada, pendiente de aprobación
Approved Aprobada, lista para el pago
Paid Pagada
Rejected Rechazada (por ejemplo, pedido reembolsado)

Las comisiones cambian de estado de “Pending” a “Approved” tras un periodo configurable (por defecto 14 días). El retardo protege frente a comisiones de pedidos que podrían ser reembolsados.

Si un pedido se cancela o se reembolsa durante el periodo de espera, la comisión se rechaza automáticamente.

El módulo añade un endpoint /polski-affiliates al panel Mi cuenta. El endpoint está disponible en:

/moje-konto/polski-affiliates/

Tras la activación de la cuenta, el afiliado ve un panel con:

  • Estadísticas - clics totales, pedidos, comisiones
  • Enlace de recomendación - enlace completo con un botón de copia
  • Comisiones - lista de comisiones con fechas, importes y estados
  • Pagos - historial de pagos
  • Estadísticas mensuales - gráfico de clics y conversiones

El afiliado puede generar un enlace de recomendación a:

  • la página de inicio de la tienda
  • un producto concreto
  • una categoría de productos
  • cualquier página dentro del dominio de la tienda

Cada enlace contiene el parámetro poleca con el token del afiliado.

Vaya a WooCommerce > Afiliados. La tabla contiene:

  • nombre y apellidos
  • correo electrónico
  • estado
  • fecha de registro
  • número de recomendaciones
  • comisión total
  • saldo de pago

Vaya a WooCommerce > Afiliados > Comisiones. El administrador puede:

  • consultar la lista de comisiones con filtros (afiliado, estado, fecha)
  • aprobar o rechazar comisiones
  • marcar comisiones como pagadas
  • exportar comisiones a CSV

Vaya a WooCommerce > Afiliados > Informe. El informe contiene:

  • valor total de los pedidos recomendados
  • importe total de la comisión
  • tasa de conversión (clics -> pedidos)
  • 10 mejores afiliados
  • tendencia mensual

Acción que se dispara tras calcular una comisión.

/**
* @param int $commission_id ID prowizji
* @param int $affiliate_id ID afilianta
* @param int $order_id ID zamówienia
* @param float $amount Kwota prowizji
*/
do_action('polski_pro/affiliate/commission_created', int $commission_id, int $affiliate_id, int $order_id, float $amount);

Ejemplo:

add_action('polski_pro/affiliate/commission_created', function (int $commission_id, int $affiliate_id, int $order_id, float $amount): void {
// Powiadomienie afilianta o nowej prowizji
$affiliate = get_userdata($affiliate_id);
wp_mail(
$affiliate->user_email,
'Nowa prowizja w programie afiliacyjnym',
sprintf(
'Otrzymałeś prowizję %.2f zł za zamówienie #%d.',
$amount,
$order_id
)
);
}, 10, 4);

Acción que se dispara tras el registro de un nuevo afiliado.

/**
* @param int $user_id ID użytkownika
* @param string $token Wygenerowany token afilianta
*/
do_action('polski_pro/affiliate/registered', int $user_id, string $token);

Ejemplo:

add_action('polski_pro/affiliate/registered', function (int $user_id, string $token): void {
// Przypisanie roli WordPress
$user = get_userdata($user_id);
$user->add_role('affiliate');
}, 10, 2);

Filtra la validación de la recomendación antes del cálculo de la comisión.

/**
* @param bool $is_valid Czy polecenie jest prawidłowe
* @param int $affiliate_id ID afilianta
* @param int $order_id ID zamówienia
*/
apply_filters('polski_pro/affiliate/validate_referral', bool $is_valid, int $affiliate_id, int $order_id): bool;

Ejemplo:

add_filter('polski_pro/affiliate/validate_referral', function (bool $is_valid, int $affiliate_id, int $order_id): bool {
$order = wc_get_order($order_id);
// Blokowanie self-referral po adresie e-mail
$affiliate_email = get_userdata($affiliate_id)->user_email;
if ($order->get_billing_email() === $affiliate_email) {
return false;
}
return $is_valid;
}, 10, 3);
  1. Compruebe si el afiliado tiene el estado “Active”
  2. Verifique que la cookie polski_affiliate_token está establecida (herramientas de desarrollo del navegador)
  3. Compruebe si el pedido no fue realizado por el propio afiliado
  4. Verifique que los productos del pedido no están excluidos del programa
Sección titulada «La cookie no se establece tras hacer clic en el enlace»
  1. Compruebe si el parámetro de URL es correcto (por defecto poleca)
  2. Verifique que el token del afiliado existe y está activo
  3. Compruebe si los plugins de caché están almacenando en caché la página con parámetros de URL - añada el parámetro poleca a la lista de exclusiones de la caché
  1. Compruebe si el módulo de afiliados está activado
  2. Vaya a Ajustes > Enlaces permanentes y haga clic en “Guardar” (actualiza las reglas de reescritura)
  3. Verifique que el endpoint polski-affiliates está registrado
Esta página tiene únicamente carácter informativo y no constituye asesoramiento legal. Consulte a un abogado antes de la implementación. Polski for WooCommerce es software de código abierto (GPLv2) proporcionado sin garantía.