🇪🇸 Instalar y configurar módulo de Openprovider en WHMCS 8.X

En esta guía encontrarás todo lo necesario para instalar y configurar el módulo de Openprovider en WHMCS 8.X, para que puedas registrar de forma automática extensiones que permitan también campos adicionales, como dominios .es, sin manipulación.

Instalación

  1. Descarga el módulo de Openprovider para WHMCS haciendo clic aquí.
  2. Subir la carpeta modules/registrars/openprovider a <Raíz de WHMCS>/modules/registrars
  3. Ir a Setup > Products/Services > Domain Registrars y activar Openprovider. Utiliza https://api.openprovider.eu como URL de API. Las plantilla de DNS cargarán una vez realizado el primer login.
  4. Click en "Save".
  5. Seleccionar las plantillas DNS (DNS Template) si lo necesitas.

    alt text
  6. Clic en Save Changes
  7. Accede a Setup > Products/Services > Domain Pricing y selecciona Openprovider en las extensiones que quieras utilizar con nosotros.
  8. Configurar el cron job
  9. Añadir en resources/domains/additionalfields.php el siguiente código:

<?php

/**
* Openprovider only overrides additional fields that are configured in WHMCS Domain Pricing with Openprovider as registrar.
* Put this code above the other fields. Don't override additional fields manually for Openprovider: we maintain this for you.
*/

$additionaldomainfields = openprovider_additional_fields();

¡NOTA! Los campos adicionales por defecto de WHMCS está ubicados en este archivo: /resources/domains/dist.additionalfields.php. Este archivo no debe ser modificado.

IMPORTANTE: Al realizar el paso anterior de modificar el archivo additionalfields.php, es importante realizar el paso 7 para que carguen nuestros campos requeridos para dicha extensión, de esta forma se garantizará el registro/transferencia del mismo.

Para garantizar una buena gestión de los dominios, os recomendamos realizar los siguientes pasos para que funcione todo de la forma más óptima:

  1. Localizar el archivo clientareadomaindetails.tpl en el directorio del template que está activo actualmente en tu WHMCS y reemplazar:
    {if $lockstatus eq "unlocked"}
    Por este código:
    {$domainSplit = "."|explode:$domain}
    {$domainTld = $domain|replace: $domainSplit.0 : ""}
    {if $lockstatus eq "unlocked" && $domainTld != '.eu' && $domainTld != '.nl' && $domainTld != '.be'  && $domainTld != '.es'}
    Lo que hace esta modificación es desactivar la función "Bloqueo de transferencia" en aquellas extensiones que no lo permite, como: .eu, .es, .be y .nl.

Detalles de configuración

Option Description
Openprovider URL https://api.openprovider.eu para entorno de producción, https://api.cte.openprovider.eu para entorno de pruebas (solicitar credenciales antes en soporte@openprovider.es)
Support Premium Domains Habilita la posibilidad de vender dominios premium a través del módulo
Username Usuario de Openprovider
Password Contraseña de Openprovider (hash no soportado!)
Synchronize Expiry date Sincronizar la fecha de expiración
Synchronize domain status Sincronizar el estado de dominio.
Synchronize auto renew Sincronizar el estado de auto-renovación del dominio.
Synchronize identity protection Sincronizar el estado de la protección whois del dominio.
Synchronize due-date with offset? Sincronizar fecha de vencimiento del dominio con anticipación (por si necesitas que tus clientes paguen antes de la fecha de vencimiento del dominio por si acaso).
Due-date offset Anticipación de días a la fecha de vencimiento (por defecto 3)
Due-date max difference in days Cuando la diferencia en días entre la fecha de vencimiento y la próxima fecha de vencimiento es mayor que este número, la siguiente fecha de vencimiento no se actualiza. Esto es necesario para evitar que la próxima fecha de vencimiento se actualice cuando el dominio se renueve automáticamente, pero no se pague. O, cuando un dominio se paga con 10 años de anticipación pero no se renueva por 10 años.
Update interval El retraso mínimo en horas entre cada actualización de estado de dominio (por defecto 2). ADVERTENCIA: ¡reducir esto puede sobrecargar su sistema y el de Openprovider!
Domain process limit La cantidad máxima de dominios a procesar por cada ejecución de cron.
Send empty activity reports Enviar un reporte incluso cuando el cron no tiene nada que actualizar.
Renew domains upon transfer completion Ingrese los TLD, sin un punto inicial, como nl, eu separados por una coma. Algunos registros ofrecen transferencias de dominio gratuitas, p. SIDN (.nl). Si la fecha de vencimiento es dentro de los 30 días, el dominio puede vencer si la renovación no se realiza a tiempo. Esta configuración siempre intentará renovar el TLD (esta opción es preferible si cobras por la transferencia de dominios cuando incluso son gratuitos porque no se renuevan al completarse este proceso, como pasa también con los dominios .es).
DNS template Si quieres utilizar una plantilla de DNS. Nota: solo aparecerá una vez que guardes la configuración del módulo.

 

Openprovider Domain Sync

Para que el módulo funcione correctamente, se debe programar una tarea cron para el script:

<directorio WHMCS>/modules/registrars/openprovider/cron/DomainSync.php

Este script mantiene sincronizados los estados de dominio, las fechas de vencimiento, estado de protección whois y la renovación automática entre Openprovider y WHMCS. Los estados de dominio y las fechas de vencimiento están dirigidos por la configuración del dominio en Openprovider, y la configuración de renovación automática está dirigida por la configuración de WHMCS. Este script actualiza 200 dominios por ejecución de forma predeterminada (el valor se puede cambiar en la configuración del módulo), y debe ejecutarse para que todos los dominios se sincronicen en 6 horas. Por ejemplo, si tiene 7000 dominios en WHMCS con Openprovider, la tarea cron debe ejecutarse 7000/200 = 35 veces cada 6 horas, es decir, al menos una vez cada 10 minutos. (360 minutos / 35 sincronizaciones = como máximo 10.2 minutos / sincronización).

¡NOTA! WHMCS tiene su propio script de sincronización, <WHMCS directory>/crons/cron.php, que realiza diversas actividades de mantenimiento, incluida la generación de facturas, los estados de dominio sincronizados con otros registradores, etc.

Dado que la implementación de WHMCS de sincronización de estado de dominio le falta varios aspectos, Openprovider creó el script DomainSync.php como una herramienta adicional a la utilidad WHMCS. Debe programarse como una tarea cron separada al cron original de WHMCS (pueden convivir los dos sin problema).

Domain Sync Email Update

La tarea DomainSync del módulo de dominio Openprovider envía un informe por correo electrónico cada vez que se modifica un objeto de dominio en WHMCS u Openprovider. Si se selecciona "Send empty activity reports" en la ventana de configuración del módulo, la actualización se enviará cada vez que se ejecute la tarea, incluso si no se han modificado dominios.

Para configurar esto, acceder a: Setup > Staff Management > Administrator Roles y selecciona el grupo de administradores que desea recibir informes por correo electrónico. Asegúrese de que los correos electrónicos del sistema estén seleccionados en este grupo:

alt text

Ajustes de sincronización

DomainSync resume los siguientes cambios en los objetos de dominio WHMCS:

Openprovider lidera, la configuración de WHMCS se actualiza:

1. Fecha de Expiración (Expiration Date)
  1. Esto establece la fecha de vencimiento de WHMCS igual a la fecha de vencimiento de Openprovider. Tenga en cuenta que para ciertos TLD hay una compensación entre la fecha de vencimiento de Openprovider y la fecha de vencimiento del Registro, pero la fecha de vencimiento de Openprovider es la fecha en la que se debe realizar un pago por las renovaciones.
2. Fecha de Vencimiento (Due date)
  1. Esta es la fecha de vencimiento de las facturas de WHMCS, y es igual a la anticipación de la fecha de vencimiento de WHMCS por el valor seleccionado en Next due date offset en la página de configuración del módulo (solo si Synchronize due date with offset está activa en la configuración del módulo).

Por ejemplo: si la fecha de vencimiento se establece hasta el 20 de mayo y la anticipación se establece en 10 días, la próxima fecha de vencimiento se establecerá el 10 de mayo. Apartado 2.  (solo si Synchronize due date with offset está activa en la configuración del módulo) si no está marcado, entonces la fecha de expiración se establecerá igual a la fecha de vencimiento.

3. Estados de dominio

Los estados de dominios son mapeados acorde a los siguientes patrones:

Openprovider WHMCS Descripción
ACT Active El dominio está activo 
DEL Expired El dominio está eliminado pero se puede restaurar aún
PEN Pending La solicitud de dominio está pendiente de más información antes de que el proceso pueda continuar
REQ Pending La solicitud de dominio está realizada pero no finalizada
RRQ Pending La solicitud de restauración de dominio está realizada pero no completada
SCH Pending Se ha programado una solicitud de transferencia para el futuro.

NOTA! Si el dominio tiene un estado FAI en Openprovider, porque haya fallado una transferencia, el error que aparecerá en el administrador de WHMCS es: " The domain name request has failed "

WHMCS es líder, la configuración de Openprovider se actualiza:

La configuración de auto-renovación y protección Whois se envía a Openprovider de inmediato si se realiza algún cambio desde WHMCS. Si se cambia algo en Openprovider, la tarea DomainSync garantizará que la configuración quede sincronizada.

1. Autorenovación de dominio (Domain Auto renew)
  1. Si un dominio está configurado para renovarse automáticamente en WHMCS, entonces el objeto de dominio correspondiente en Openprovider está configurado en Global Default. Si el objeto de dominio WHMCS está configurado para renovarse automáticamente, entonces el objeto de dominio correspondiente en Openprovider también está desactivado.
2. Protección Whois (ID Protection - Protección ID)
  1. La configuración de protección de ID de un dominio se asigna a la configuración de Protección de privacidad Whois de Openprovider.

Cualquier cambio realizado en un dominio por la tarea DomainSync se enumerará en un correo electrónico enviado a los administradores del grupo que haya especificado:

alt text

Gestión de TLD y Proveedor de WHOIS/Disponibilidad de dominio

Accede a la sección "config domains" - Precios de dominios en <WHMCS>/admin/configdomains.php ​o a través del menú Setup > Products/Services > Domain Pricing​ donde verás que el (1) es para establecer tu proveedor de búsqueda de dominios, (2) para añadir la extensión, (3) un droplist para seleccionar quien es el proveedor asignado para esa extensión (4) ofrecer protección whois o no en dicha extensión.

alt text

Seleccionar un TLD y registro automático

  1. Insertar el tld que quieras (2) y en el dropdown de AutoRegistro (3) seleccionar Openprovider
  2. Click en "Save" y entonces, te aparecerá la opción de "Open Pricing".

alt text

  1. Clic en Open Pricing y podrás definir el precio de registro, transferencia y renovación, así como las multianualidades. 
  2. Eso es todo! Tu WHMCS está listo para ofrecer registro de dominios a tus clientes.

Opciones adicionales de TLD

alt text

Al seleccionar la protección de ID para un TLD determinado, cuando los clientes lo compran en un dominio, la protección de privacidad whois (WPP) se activará automáticamente en Openprovider. Tenga en cuenta que habrá un cargo de Openprovider por este servicio. Si los clientes lo desactivan en WHMCS, también se desactivará en Openprovider.

La opción de "EPP Code", obliga a solicitar el código auth para aquellas extensiones que requieren este código para que pueda solicitarse la transferencia.
Nota: las extensiones .ES no requieren de código auth, ya que el proceso de transferencia consiste en que el administrador del dominio autorice la transferencia mediante el email enviado a su dirección.

Activar dominios premium

¡NOTA! Asegúrate de que la moneda que estás utilizando para pagar Openprovider esté configurada en Setup > Payments > Currencies(and click on Update Exchange Rate). De lo contrario, WHMCS no utilizará la tarifa premium correctamente, lo que significa que su cliente paga la tarifa regular.

  1. Accede a Setup > Products / Services > Domain Registrars
  2. Configurar "Openprovider"
  3. Activar Support premium domains
  4. Save Changes.

Elegir un proveedor de búsqueda

  1. Debajo de "Lookup Provider" (1) clic en Change y selecciona "Openprovider" en el popup que aparece.
  2. Una vez hecho esto, debe quedar así:

alt text

  1. Toda consulta de dominio realizada desde su WHMCS para comprobar que está disponible el dominio se realizará mediante la API de WHMCS (esto hace que no tenga que mantener servidores whois propios, si no, pasa todo a través de Openprovider).

Área de Administración

Aceptando pedidos

Una vez que un cliente ha pedido un dominio, aparece un pedido pendiente en el área de administración en <WHMCS>/admin/orders.php (Orders > Pending Orders​). Según la lógica WHMCS predeterminada, todos los pedidos deben ser aprobados por un administrador antes de pasarlos al registrador. A continuación, el cliente ha ordenado y pagado el dominio "register-a-new-domain.nl" pero aún no se ha aprobado.

alt text

Observe en la sección anterior que Openprovider se ha establecido como el registrador para el registro automático de dominios ".nl". Cuando haga clic en Aceptar pedido, el pedido se colocará automáticamente en Openprovider. Si hay otras opciones de registro, hay un menú desplegable con las opciones disponibles.

Gestionando Dominios

Una vez que un dominio se ha registrado y activado, se puede administrar desde el área de administración. Accede a Clients > Domain Registrations y selecciona el dominio deseado. A partir de ahí, hay opciones para enviar comandos a Openprovider, incluidos Registrarse, Transferir, Renovar, Modificar detalles de contacto, ediciones del servidor de nombres, alternar Bloqueo de registro y Solicitar eliminación.

alt text

Renovando Dominios

Si se selecciona la renovación automática tras realizar el pago (que se puede encontrar en el área de administración de WHMCS, Setup > General settings > Domains) y Openprovider se configura como el proveedor de registro automático, entonces el módulo registrará o renovará automáticamente el dominio en Openprovider a través de API como tan pronto como el cliente pague por la renovación o el registro del dominio.

Cuando un dominio caduca en Openprovider, dependiendo del TLD, se puede poner en estado de "Soft Quarantine". Mientras se encuentra en ese estado, puede restaurarse por una tarifa de renovación normal, pero la restauración debe solicitarse con el comando de API restoreDomainRequest. El módulo detecta automáticamente cuando el dominio se encuentra en Soft Quarantine y realiza una solicitud API adecuada. El módulo no solicitará la renovación si el dominio ya pasó a "Hard Quarantine" y solo se puede restaurar por una tarifa adicional.

Configuración especial para dominios .ES

Los dominios .es tienen un ciclo de vida diferente al resto de dominios, pasan a estar en "Hard Quarantine" al estar 5 días caducado, a esto que le sumamos que en el sistema la anticipación de renovación es de 16 días, lo que hay que hacer es configurar el "Redepmtion period" a 16 días para este TLD.

Para ello solo hay que seguir estos pasos:

  1. Habilitar "Domain Grace and Redemption Fees" en Setup > Domains:
    mceclip1.png
  2. Accede a: Setup > Products/Services > Domain Pricing y selecciona la extensión ".es"
    NOTA: recuerda aplicar esta misma configuración a los subniveles: ".com.es", ".nom.es", ".org.es" si los quieres vender también.

    mceclip0.png
  3. En el menú lateral derecho, encontrarás la opción "Bulk Management" y en el apartado "Redemption Period" establecer:
    1. Duration 16 días
    2. Fee: 0.00 (IMPORTANTE: debes escribir el 0.00 ya que aparece un valor de ejemplo que no se activa a no ser que lo escribas manualmente).
    3. Clic en "Save Changes"
      mceclip0.png

Habilitar registro de dominios IDN

Si quieres vender nombres de dominios IDN (que contengan acentos y algunas simbologías así como la Ñ) es necesario habilitar en WHMCS la opción de "Allow IDN Domains" en Setup > Domains:
mceclip0.png

Configuración de Auto Renovación

El flujo de trabajo predeterminado de WHMCS sugiere que uno tiene la renovación automática establecida en "Desactivado" en el Reseller Control Panel de Openprovider. Esto reduce en gran medida la posibilidad de que un dominio se renueve dos veces involuntariamente. Explora la documentación de WHMCS a fondo antes de decidir la lógica de negocios que se utilizará en su flujo de trabajo.

Escenario 1

  1. El usuario final recibe una factura basada en la fecha de vencimiento.
  2. Si la factura se paga antes del vencimiento, WHMCS envía automáticamente un comando de renovación al módulo y se extiende el período de registro del dominio.
  3. Si la factura no se paga antes de la fecha de vencimiento. El dominio caducará o entrará en cuarentena en la fecha de vencimiento
  4. Si el período de gracia es compatible con el TLD determinado y la factura se paga después de su vencimiento, el módulo enviará el comando o comandos apropiados para renovar el dominio.
  5. Si la factura se paga cuando el dominio está en cuarentena rígida o ya se ha eliminado, el módulo no tomará medidas.

Escenario 2

  1. El dominio se renovará en Openprovider en la fecha de vencimiento, independientemente del estado de la factura (pagado / no pagado).
  2. Cuando el usuario final paga una factura para renovar un dominio, la próxima fecha de vencimiento de WHMCS aumentará un año.
  3. No se envían comandos de renovación a Openprovider desde WHMCS a través del módulo.

Escenario 3. No recomendado!

  1. Si la factura se paga antes del vencimiento, WHMCS envía automáticamente un comando de renovación al módulo y se extiende el período de registro del dominio.
  2. Si el usuario final no cumple con la fecha de vencimiento del pago, el dominio se renovará en Openprovider automáticamente.
  3. Si el usuario final paga la factura después de la fecha de vencimiento, WHMCS enviará otro comando de renovación al módulo.

Usando plantillas de DNS

Una vez que hayas creado una plantilla DNS personalizada en el panel de control de Openprovider (DNS management > Manage DNS templates), y la haya seleccionado en la ventana de configuración del módulo, cualquier dominio creado con los servidores de nombres Openprovider tendrá una zona DNS creada automáticamente en los servidores de nombres Openprovider.

Solución de problemas

Si hay algún problema de conectividad con Openprovider, o los comandos de la API no funcionan por algún motivo, el primer paso para la solución de problemas debe ser ver los registros de la API. Vaya a Utilities > Logs > Module Logs o ​<WHMCS>/admin/systemmodulelog.php​  y podrás encontrar los comandos API sin procesar que envían y reciben sus módulos WHMCS. Las respuestas deben contener información sobre cómo se puede resolver el problema.

alt text

Preguntas Frecuentes (FAQ)

Se pueden encontrar problemas comunes y soluciones para ellos aquí.

Was this article helpful?
1 out of 1 found this helpful
Additional questions? Submit a request