Cómo proteger y vender licencias de software o plugins PHP con WHMCS Licensing Addon
Guía para desarrolladores y creadores de software: cómo usar WHMCS Licensing Addon para validar claves de licencia, restringir dominios e IPs, y automatizar suscripciones.

Muchos desarrolladores de aplicaciones web, creadores de scripts PHP y autores de plugins o temas de WordPress enfrentan el mismo desafío: ¿cómo cobrar suscripciones recurrentes por el software sin que los clientes distribuyan o ejecuten copias no autorizadas sin pagar?
Aunque WHMCS es ampliamente conocido por su integración con servidores de web hosting, incluye un poderoso módulo oficial denominado WHMCS Software Licensing Addon. Este addon permite a los desarrolladores emitir claves de licencia, validar instalaciones remotas por IP o dominio y vincular automáticamente el estado del pago con la validez de la licencia.
En este artículo exploramos cómo funciona este módulo y cómo implementarlo en tus proyectos de software.
🔒 1. ¿Cómo funciona la validación de licencias con WHMCS?
El flujo de licenciamiento se basa en la comunicación entre el código de tu aplicación (cliente) y la API de tu instalación de WHMCS (servidor de licencias).
[ Tu App / Plugin PHP ] ──► (Envía Key, Dominio e IP) ──► [ API de WHMCS Licensing ]
│
[ App Funciona OK ] ◄── (Respuesta Cifrada: Valida/Suspendida) ────┘
Reglas de Validación Personalizables
Al emitir una licencia desde WHMCS, podés definir los criterios de restricción:
- Restricción por Nombre de Dominio (Domain Binding): La licencia solo funciona en el dominio autorizado (ej.
sitio-cliente.com). - Restricción por Dirección IP: Útil para servidores backend o servicios corporativos.
- Restricción por Directorio o Ruta de Instalación: Evita copias en subcarpetas dentro del mismo servidor.
- Fecha de Expiración y Versiones Permitidas: Podés limitar el acceso a actualizaciones únicamente a los clientes con suscripción activa.
💻 2. Código de Ejemplo: Validación en PHP
El paquete de licenciamiento de WHMCS incluye un archivo auxiliar de validación local (licensing.php) que permite verificar la validez de la clave incluso ante caídas temporales de conectividad (mediante un sistema de local key caching firmado con hashing md5/sha256).
Un esquema simplificado de integración en un plugin o script PHP luce así:
<?php
// Ejemplo conceptual de validación de licencia con WHMCS Licensing Addon
require_once 'check_license.php';
$licensekey = "MI-AGENCIA-KEY-998811";
$localkey = get_saved_local_key(); // Lee la clave almacenada en BD o archivo local
$results = check_license($licensekey, $localkey);
if ($results['status'] === "Active") {
// La licencia es válida y la suscripción está al día
$localkeyresults = $results['localkey'];
save_local_key($localkeyresults);
echo "Licencia activa. Bienvenido al software.";
} elseif ($results['status'] === "Suspended") {
die("Error: Tu suscripción está suspendida por falta de pago. Por favor regularizá tu cuenta.");
} else {
die("Error: Clave de licencia no válida o dominio no autorizado.");
}
?>
💳 3. Suscripción y Revocación Automática
El mayor beneficio del WHMCS Software Licensing Addon es que está 100% integrado con el motor de facturación de WHMCS:
- Compra y Entrega Inmediata: Cuando el comprador realiza el pago en tu tienda, WHMCS genera automáticamente la clave de licencia y se la muestra en su portal de cliente junto con el enlace de descarga del software.
- Renovación Mensual o Anual: Al aproximarse el vencimiento, el sistema emite la factura de renovación. Si el cliente paga, la licencia extiende su validez automáticamente.
- Suspensión Automática por Falta de Pago: Si el cliente cancela la tarjeta o entra en mora, WHMCS marca la licencia como
SuspendedoExpired. La siguiente vez que la aplicación del cliente intente comunicarse con la API de licenciamiento, el software se bloqueará o desactivará sus funciones premium automáticamente.
🌐 4. ¿Para quiénes es ideal este modelo?
- Desarrolladores de Plugins y Themes para WordPress o WooCommerce.
- Creadores de Scripts PHP, SaaS Self-Hosted y Sistemas ERP/CRM.
- Desarrolladores de Módulos para cPanel, WHMCS o Blesta.
- Empresas de Software B2B que instalan su solución en servidores del cliente.
💡 Si querés explorar el potencial de automatización de WHMCS para tus productos de software o hosting, visitá la sección especial de WHMCS en WizHosting o accedé al sitio oficial de WHMCS.
📌 Conclusión
Proteger tu propiedad intelectual y automatizar la cobranza de licencias de software te permite dejar de preocuparte por el control de versiones no pagadas y enfocarte en mejorar tu código.
Conocé más sobre las características avanzadas de este ecosistema en nuestra página explicativa de WHMCS o registrate en la plataforma oficial de WHMCS.
¿Listo para potenciar tu sitio web?
Descubre nuestros planes de hosting optimizados para WordPress y obtén el mejor rendimiento.