Base de conocimientos

Vender alojamiento de Zinn® desde sus propios sistemas

Gestione el alojamiento de Zinn® desde su propio panel de facturación, sitio de WordPress o scripts: obtenga una clave de API, realice su primera llamada y conozca las seis llamadas de las que se compone toda la integración.

Usted revende nuestro alojamiento. Sus clientes son suyos: sus precios, sus facturas, su proveedor de pagos. Así es como usted controla nuestra plataforma desde lo que ya utilice: un panel de facturación, su propio sitio de WordPress o un script.

Qué ven realmente sus clientes

Antes de la parte técnica: sus clientes nunca tienen que vernos. Hay tres superficies y usted elige cuál utilizar.

SuperficieA quién pertenece
El panel de alojamiento, en su propio nombre de hostConfigure un nombre de host para el panel en Reventa → Su marca y sus clientes iniciarán sesión en panel.suempresa.com con su logotipo y sus colores. El mismo panel, su dirección.
Su propio sitio webEl plugin de WordPress añade la búsqueda de dominios y un enlace de inicio de sesión con un solo clic a su sitio, y procesa el pedido a través de su propia pantalla de pago de WooCommerce.
Su panel de facturaciónWHMCS o HostBill siguen siendo la puerta de entrada; el módulo aprovisiona en segundo plano y el botón del área de clientes inicia su sesión directamente en su alojamiento.

⛔ Elija la que elija, usted es el comerciante de registro para sus clientes: sus precios, sus facturas, su número de IVA, su proveedor de pagos. Nosotros le facturamos a usted, una vez al mes, a precio de mayorista.

Una vez que haya configurado un nombre de host para el panel, introdúzcalo en el campo Dirección del panel del plugin de WordPress y en ningún otro lugar; los enlaces de inicio de sesión que genera esta API lo siguen automáticamente.

Las cuatro formas de acceso

Hay cuatro formas de acceso, y todas hacen lo mismo por debajo:

Para
El módulo de WHMCSUna tienda WHMCS
El módulo de HostBillUna tienda HostBill
El plugin de WordPressVender desde su propio sitio de WordPress o WooCommerce
La APICualquier otra cosa: Blesta, un sistema interno, un script cron

1. Obtenga una clave de API

En su panel de control, vaya a Claves de API y cree una. Asígnele solo lo que necesite:

PermisoMotivo
org.readLeer las cuentas de sus clientes
sites.createAprovisionar un sitio
sites.viewLeer un servicio
sites.deleteCancelar
reseller.viewListar sus servicios y leer el uso
reseller.provisionSuspender, reactivar e iniciar sesión de un cliente

⛔ No asigne a una integración el permiso reseller.manage. Ese permiso permite editar su lista de precios y las credenciales de su propia pasarela de pago. reseller.provision existe precisamente para que una clave que usted pegue en un panel de facturación o en un sitio web no lo necesite.

La clave se muestra una sola vez. Guárdela donde guarde sus otras credenciales; nunca en un archivo servido por su servidor web.

2. Realice su primera llamada

curl https://api.zinndigital.com/v1/reseller/services \
  -H "Authorization: Bearer zdk_live_…"

Esto devuelve cada servicio que usted ha aprovisionado, una fila por sitio, con el cliente al que pertenece, su estado y lo que usted cobra por él. En una cuenta nueva es una lista vacía, lo cual es la respuesta correcta, no un error.

3. Toda la integración, en seis llamadas

CUÁNDO                 LLAMADA
se paga un pedido      POST   /v1/orgs                                   una vez por CLIENTE
                       POST   /v1/sites                                  una vez por SERVICIO
no han pagado          POST   /v1/reseller/services/{siteId}/suspend
pagan                  POST   /v1/reseller/services/{siteId}/unsuspend
cancelan               DELETE /v1/sites/{siteId}
"iniciar sesión en     POST   /v1/reseller/services/{siteId}/sso
el alojamiento"

El aprovisionamiento consta de dos llamadas, y las claves son importantes:

# 1. la cuenta del cliente: vinculada a SU id de cliente
curl -X POST https://api.zinndigital.com/v1/orgs \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: account-4211" \
  -d '{"type":"customer","name":"Acme Ltd"}'

# 2. su sitio: vinculado a SU id de servicio
curl -X POST https://api.zinndigital.com/v1/sites \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: service-9915" \
  -d '{"org_id":"<from step 1>","product_line":"mainstream","primary_domain":"acme.com"}'

Dos reglas que cuestan dinero si se equivoca

  1. Vincule la cuenta a su CLIENTE y el sitio a su SERVICIO. El segundo pedido de un cliente debe llegar a la cuenta que ya tiene. Si vincula ambos al servicio, un cliente terminará con tres cuentas no relacionadas y tres paneles independientes.
  2. Envíe una cabecera Idempotency-Key en cada POST, generada a partir de su propio id para el elemento. Todo sistema de facturación realiza reintentos: una devolución de llamada de la pasarela llega dos veces, un administrador vuelve a ejecutar un aprovisionamiento fallido, un cliente hace doble clic. Sin la clave, el segundo intento crea un segundo sitio y se le factura a usted.

Tres respuestas que no debe simplificar en dos

  • unsuspend puede responder 409. Eso significa que nuestro equipo de abusos tiene retenido el sitio, no usted. Muestre el mensaje; no lo reintente.
  • **Cancelar programa una eliminación, no la ejecuta de inmediato.** La fecha se devuelve como pending_deletion_at. Decirle a un cliente que sus datos ya se han borrado cuando no es así es peor que no decirle nada.
  • disk_used_bytes puede ser null, y null no es cero. Significa que no pudimos medirlo, no que no se haya utilizado nada. Omítalo: no escriba 0 en sus propios registros, o le mostrará a un cliente una barra de uso verde para un sitio del que no tiene lectura.

4. Inicie la sesión de un cliente

POST /v1/reseller/services/{siteId}/sso devuelve una URL de un solo uso que lleva a su cliente directamente a su propia cuenta, ya con la sesión iniciada.

⛔ Genérela cuando hagan clic, nunca cuando renderice la página. El enlace es de un solo uso y caduca en cuestión de minutos, por lo que un enlace insertado en una página se invalida en la primera visualización y queda en todas las memorias caché entre usted y el navegador.

5. Instale un módulo en su lugar

  • WHMCS — copie el módulo en modules/servers/zinn/, añada un servidor cuya Contraseña sea su clave de API y configure la línea de productos en el producto. Pulse Probar conexión: realiza una llamada real y le indica qué ha respondido la plataforma.
  • HostBill — cópielo en includes/modules/Hosting/zinn/ y conéctelo de la misma manera.
  • WordPress — el Zinn® Reseller Toolkit: búsqueda de dominios, un enlace de inicio de sesión al alojamiento de sus clientes y aprovisionamiento de WooCommerce cuando se paga un pedido. Código abierto en <https://github.com/Zinn-Digital/zinn-reseller-toolkit>, o descárguelo desde Plugins en su panel de control.

6. Pase a producción

Compruebe esto antes de aceptar un pedido real:

  • La prueba de conexión es correcta en el módulo, o su primer curl devuelve una lista.
  • Su lista de precios está configurada (Reventa → Sus precios).
  • Su pasarela de pago está conectada (Reventa → Pasarelas de pago): sus clientes le pagan a usted, a través de su propia cuenta.
  • Los datos de su empresa están introducidos (Reventa → Su empresa) para que las facturas de sus clientes lleven su entidad legal y número de IVA, no los nuestros.
  • Ha realizado un pedido real de principio a fin y ha visto aparecer el sitio.

Dónde está todo lo demás

La referencia completa de la API —cada endpoint, generado a partir de nuestra especificación, con el permiso que necesita cada uno— se encuentra en <https://zinndigital.com/developers/api>.

Lo último del blog

Lo que hemos estado escribiendo sobre alojamiento, SEO y gestión de sitios a gran escala.

SEO y construcción de enlaces desde la capa de alojamiento: La perspectiva de un operador para 2026

Cómo el alojamiento web influye en la indexación y la autoridad de enlaces en 2026: mantener las páginas indexadas, examinar dominios antiguos antes de desarrollarlos, crear enlaces sin dejar rastro de búsqueda y una perspectiva honesta sobre lo que la infraestructura puede y no puede hacer por el SEO.

Leer la publicación →

Cómo hacer que WordPress sea rápido y seguro: lista de verificación de rendimiento y plugins

Una lista de verificación práctica para un WordPress rápido y seguro: almacenamiento en caché a nivel de servidor, una caché de objetos por sitio, el puñado de plugins que vale la pena usar, mantener el paquete de software actualizado y las páginas de WooCommerce que nunca debe almacenar en caché.

Leer la publicación →

Cómo elegir un alojamiento web administrado en 2026: Guía del comprador

Qué diferencia realmente a un buen alojamiento administrado de una caja barata con panel de control —migraciones, copias de seguridad, aislamiento, almacenamiento en caché real y escalabilidad honesta— y cómo juzgarlo antes de comprometerse.

Leer la publicación →

Leer el blog →

¿Aún necesita ayuda?

El soporte técnico está incluido en todos los planes, el servicio de atención está disponible 24 horas al día y puede escribirnos en cualquiera de nuestros 58 idiomas; le responderemos en el suyo.

Contactar con soporte técnico → Todos los artículos →