Kennisbank

Verkoop Zinn®-hosting vanuit WHMCS

Installeer de gratis Zinn Digital®-provisioningmodule in WHMCS: de API-sleutel en de zeven vereiste machtigingen, waar de modulemap moet worden geplaatst en waarom de naam ervan belangrijk is, de productvelden en wat elke WHMCS-knop daadwerkelijk doet.

De Zinn Digital®-module zet de eigen knoppen van WHMCS om in echte acties op ons platform. Een bestelling richt de hosting van uw klant in. De factuurautomatisering voor achterstallige betalingen van WHMCS schorst deze. Het markeren van de factuur als betaald heft de schorsing op. Annuleren plant de verwijdering in. En uw klant krijgt een knop Inloggen op hostingpaneel in diens klantenomgeving waarmee deze direct wordt ingelogd.

Het is gratis, gelicentieerd onder GPL-2.0-or-later en heeft geen bevoorrecht toegangspad tot ons platform: elk verzoek dat het uitvoert is een gedocumenteerd eindpunt dat u zelf zou kunnen aanroepen met uw eigen API-sleutel.

Voordat u begint

U heeft twee zaken nodig, en de tweede zorgt nog weleens voor verrassingen.

  1. Een Zinn®-reselleraccount met een actief programma. Registreer u op
  2. zinndigital.com en schakel reselling in.

  3. Een resellerabonnement met siteruimte. Sites die uw klanten bestellen, tellen mee voor uw
  4. abonnement, dus u heeft er een nodig waarin nog ruimte over is.

⚠️ Testverbinding kan u niet vertellen of een bestelling zal slagen. Deze leest uw programma uit en richt niets in, waardoor deze een gezond actief account rapporteert dat nog niets kan verkopen. Als uw eerste bestelling mislukt met "Deze organisatie heeft geen hostingabonnement en kan daarom nog geen site hosten", dan is dat wat er is gebeurd — koop of verleng uw resellerabonnement en plaats de bestelling opnieuw. Er is niets mis met de module.

1. Maak de API-sleutel aan

Open in uw Zinn®-dashboard API-sleutels en maak er een aan met exact deze elf rechten:

RechtWaarom het nodig is
org.createHet Zinn®-account van uw klant openen bij diens eerste bestelling.
org.readUw klantaccounts uitlezen.
sites.createDe site inrichten.
sites.viewEen dienst en het bijbehorende verbruik uitlezen.
sites.deleteBeëindigen.
reseller.viewWeergeven wat u heeft verkocht, en schijfruimte en bandbreedte uitlezen.
reseller.provisionSchorsen, opheffen, een klant inloggen, diens abonnement instellen en diens pakket wijzigen.
billing.viewUitlezen wat een upgrade zou kosten alvorens deze uit te voeren.
sites.manageCache legen en een back-up maken via de knoppen.
sites.panel_accessHet wachtwoord van de WordPress-beheerder wijzigen.
hosting.php.manageSchakelen van PHP-versie bij een upgrade of downgrade.

⛔ Ken reseller.manage niet toe. Een sleutel die in een facturatiepaneel wordt geplakt, moet in staat zijn een klant te blokkeren wegens wanbetaling en deze in te loggen. Deze mag niet in staat zijn uw eigen inloggegevens van betalingsgateways te lezen en te herschrijven. reseller.provision bestaat zodat u het grotere recht niet hoeft toe te kennen. ⛔ org.create is niet optioneel. Zonder dit recht kan de module uw accounts uitlezen maar er geen openen, waardoor de testverbinding slaagt en de eerste bestelling met 403 antwoordt. ⛔⛔ Ken de gehele tabel toe, en let op dat Testverbinding u niet kan vertellen of u dat niet heeft gedaan. Deze leest uw resellerprogramma uit en richt niets in, waardoor deze groen aangeeft voor een sleutel die een van deze rechten mist. Wat u in plaats daarvan krijgt is een 403 op de ene handeling die onder het ontbrekende recht valt, maanden later, bij een klant.

2. Installeer de module

  1. Download de module en pak deze uit.
  2. Upload de map zinn naar uw WHMCS-installatie, zodat het modulebestand terechtkomt op
  3. modules/servers/zinn/zinn.php.

⛔ De map moet zinn heten. WHMCS leidt de functienamen van een inrichtingsmodule af van de mapnaam, dus het hernoemen naar zinn-whmcs of zinndigital levert een module op die WHMCS vermeldt, u laat selecteren en vervolgens nooit aanroept — zonder enige foutmelding. Het zip-bestand pakt al uit onder de juiste naam; hernoem deze simpelweg niet.

3. Voeg de server toe

In WHMCS: Configuratie → Systeeminstellingen → Servers → Nieuwe server toevoegen.

  • Naam: willekeurig, bijv. Zinn Digital®
  • Hostnaam: api.zinndigital.com
  • Type: Zinn Digital®
  • Wachtwoord: uw API-sleutel uit stap 1

⛔ De sleutel hoort in het veld Wachtwoord, dat door WHMCS versleuteld wordt opgeslagen. Plaats deze niet in een configuratieoptie van een product — die worden als platte tekst in de database opgeslagen en zijn zichtbaar voor elke beheerder, terwijl deze inloggegevens de hosting van uw klanten kunnen aanmaken en vernietigen.

Druk op Testverbinding. Er wordt een daadwerkelijke aanroep gedaan en er wordt gerapporteerd wat ons platform antwoordde, in plaats van enkel te controleren of de velden zijn ingevuld.

4. Maak het product aan

Configuratie → Systeeminstellingen → Producten/Diensten, en stel vervolgens Module-instellingen in op de server die u zojuist heeft toegevoegd. De velden zijn:

VeldVereistWat het is
ProductlijnjaDe Zinn®-lijn die u verkoopt — mainstream (beheerde WordPress), footprint_free, wordpress, linux, cloud, agency, app_hosting, ai_hosting, lms_hosting, managed_database, vector_hosting, zinn_compute, fleet_linux, fleet_enterprise, mail of reseller.
StackjaWat er gebouwd wordt: wordpress (standaard), woocommerce, php, static, node, one_click, headless_cms, nextcloud of owncloud.
ApplicatieneeAlleen voor de stacks one_click en headless_cms — welke applicatie geïnstalleerd moet worden. Het opgeven van een applicatie bij elke andere stack wordt geweigerd, omdat die stack al bepaalt wat er geïnstalleerd wordt.
PHP-versieneebijv. 8.3. Laat leeg voor de standaardwaarde van de lijn. Een versie die de lijn niet aanbiedt, wordt geweigerd met de lijst van versies die wel worden aangeboden.
AbonnementscodejaHet Zinn®-abonnement dat dit product verkoopt. GET /v1/reseller/prices toont de uwe. Een bestelling zonder code wordt geweigerd — zie de onderstaande waarschuwing.
Facturatie-intervalneemonthly (standaard) of annual — het interval waarop uw inkoopregel voor deze klant wordt opgemaakt. Wat u uw eigen klant in rekening brengt, wordt ingesteld op het WHMCS-product en blijft ongewijzigd.

⛔⛔ Abonnementscode is verplicht, en een bestelling zonder code wordt met opzet geweigerd. Tot 2026-09-01 was het veld decoratief en werd het door niets uitgelezen, waardoor de module hosting bestelde die geheel geen abonnement bevatte — en elk gevolg daarvan bleef stilzwijgend. Uw inkoopoverzicht wordt opgebouwd uit de actieve abonnementen van uw klanten, dus er was geen regel voor de dienst en u werd niets gefactureerd zolang deze actief was; uw klant erfde geen limieten, waardoor er geen schijf- of bestandsquotum op diens site werd toegepast; en Pakket wijzigen had niets om te wijzigen, waardoor een door u verkochte upgrade niet kon worden uitgevoerd. De site werd gedurende deze periode volledig ingericht en bleef vlekkeloos bereikbaar.

De module weigert de bestelling nu in plaats daarvan, omdat er geen veilig abonnement is om te raden: een gok zou hosting inrichten op een abonnement dat u niet heeft gekozen en mogelijk niet heeft geprijsd, en — in tegenstelling tot een weigering, die u direct ziet — zou dit pas aan het licht komen zodra er een afschrift binnenkomt, als dat al gebeurt.

Stel Automatische installatie in op uw eigen voorkeur — de module is idempotent op het WHMCS-dienst-ID, dus een herhaalde inrichting retourneert dezelfde site in plaats van u voor een tweede te factureren.

Wat elke WHMCS-actie doet

WHMCS-actieWat er aan onze kant gebeurt
AanmakenMaakt het Zinn®-account van de klant aan (of hergebruikt het reeds bestaande account) en richt diens site in.
SchorsenPlaatst de site in een blokkade wegens wanbetaling. Inhoud blijft behouden; er wordt niets verwijderd.
Schorsing opheffenHeft uw blokkade op.
BeëindigenPlant de verwijdering van de site in, met een respijtperiode. De datum wordt getoond in de klantenomgeving.
Verbruik bijwerkenWerkt schijfruimte en bandbreedte bij op elke dienst, eenmaal per dag.
Inloggen op hostingpaneelOpent een eenmalige inloglink die direct naar het paneel van uw klant leidt.
Pakket wijzigenVoert een upgrade of downgrade uit van de dienst. Verplaatst het pakket, en de PHP-versie indien het nieuwe product er een specificeert.
Wachtwoord wijzigenStelt het wachtwoord van de WordPress-beheerder in. Het veld verschijnt niet op stacks die een dergelijk account niet hebben.
VerlengenBevestigt dat de dienst nog bestaat. Zinn®-hosting is doorlopend, dus er is geen termijn op afstand om te verlengen.
Verbruik synchroniseren / Cache legen / Back-up makenKnoppen op de beheerderspagina van de dienst. Uw klant krijgt Cache legen en Back-up maken in diens klantenomgeving.
Tabblad DienstStatus, abonnement, schijfruimte, bandbreedte, eventuele geplande verwijdering en wie een schorsing heeft geplaatst.
ImporterenListAccounts leest elke pagina uit, waardoor een import niet geruisloos kan stoppen bij de eerste pagina.

Upgrades: wie brengt wat bij wie in rekening

Uw klant wordt nooit gefactureerd door Zinn®, noch bij een bestelling, noch bij een upgrade. U factureert hen via WHMCS; wij factureren u op uw inkoopoverzicht. Een Pakket wijzigen verplaatst dus de rechten van uw klant en de regel op uw volgende afschrift, en raakt geen creditcard aan — WHMCS heeft het geld van uw klant al geïncasseerd en de eigen pro-rataberekening uitgevoerd.

Een tweede dienst van een klant. Op hetzelfde abonnement is het een extra site onder de siteruimte van dat betreffende abonnement, en wordt er verder niets toegekend. Op een ander abonnement wordt het geweigerd: het vervangen van het actieve abonnement zou een van de twee diensten ongefactureerd laten. Verkoop ze ofwel beide op hetzelfde abonnement, of maak voor de klant een apart klantrecord aan in WHMCS.

Wachtwoord wijzigen bestaat alleen voor WordPress. Zinn®-hosting heeft geen enkel "dienstwachtwoord" — uw klant bereikt diens paneel via de inlogknop — en een php- of static-site heeft geen applicatie-account om te wijzigen. WHMCS verbergt het veld volledig in plaats van een veld te tonen dat niet kan werken.

Drie antwoorden die u niet tot twee mag reduceren

  • Schorsing opheffen kan antwoorden met een weigering. Dat betekent dat de site is geschorst door ons
  • misbruikteam, niet door u, en geen enkel facturatiepaneel mag deze vrijgeven. Het bericht vermeldt dit; toon dit aan uw beheerder in plaats van het opnieuw te proberen.

  • Beëindigen plant een verwijdering in, het voert er geen uit. De datum wordt geretourneerd als
  • pending_deletion_at en de klantenomgeving toont deze. Een klant vertellen dat diens gegevens al verdwenen zijn wanneer dat niet zo is, is erger dan niets vertellen.

  • Schijfruimte en bandbreedte kunnen onbekend zijn, en onbekend is niet nul. Wanneer we geen meting
  • konden uitvoeren, laat de module het getal ongemoeid in plaats van 0 te schrijven — anders zou WHMCS uw klant een geruststellende lege verbruiksbalk tonen voor een site waarvan we geen meetgegevens hebben.

Probleemoplossing

Testverbinding slaagt en de eerste bestelling mislukt met een foutmelding over rechten. De API-sleutel mist org.create. De module moet het account van de klant kunnen openen voordat deze diens site kan aanmaken.

Een bestelling mislukt met de melding dat de organisatie geen hostingabonnement heeft. Uw resellerabonnement heeft geen siteruimte meer over, of u bezit er nog geen. Zie Voordat u begint hierboven.

Een bestelling mislukt met vermelding van een stack. Het veld Stack op het product is leeg of vermeldt iets wat we niet bouwen. Stel het in op wordpress tenzij u iets anders verkoopt.

Opzeggingen mislukken. Zorg ervoor dat u moduleversie 1.0.0 of nieuwer gebruikt. Eerdere versies stuurden geen bevestiging van verwijdering, waardoor elke beëindiging werd geweigerd en de dienst actief en gefactureerd bleef.

Een weigering die een veld vermeldt. Onze validatiefouten vermelden het veld en de reden tussen haakjes na het bericht, bijv. (php_version: 7.2 is not offered on this product line). Dat is het bruikbare deel — de zin ervoor is bewust algemeen gehouden.

Controleer uw download

Elk archief wordt via TLS aangeboden vanaf onze eigen hostnaam en wordt nooit omgeleid naar een externe host. De SHA-256-controlesom staat vermeld naast de downloadlink op de downloadpagina. Vergelijk deze na het downloaden:

  • macOS of Linux: shasum -a 256 zinn-whmcs-1.0.0.zip
  • Windows: certutil -hashfile zinn-whmcs-1.0.0.zip SHA256

Maakt u geen gebruik van WHMCS?

Er is een HostBill-module en een PHP-client bestaande uit één enkel bestand voor al het overige, beide gratis en beide beschikbaar op dezelfde downloadpagina. Elk eindpunt dat de modules gebruiken, is te vinden in de API-referentie.

Nieuwste van de blog

Wat we hebben geschreven over hosting, SEO en het op grote schaal beheren van websites.

SEO en linkbuilding vanuit de hostinglaag: De visie van een beheerder in 2026

Hoe hosting de indexering en link equity vormgeeft in 2026: pagina's geïndexeerd houden, oude domeinen screenen voordat u erop bouwt, linkbuilding zonder zoekmachine-footprint en een eerlijke kijk op wat infrastructuur wel en niet kan betekenen voor SEO.

Bericht lezen →

WordPress snel en veilig maken: een controlelijst voor prestaties en plug-ins

Een praktische controlelijst voor een snel, veilig WordPress: caching op serverniveau, een objectcache per site, het handjevol plug-ins dat het waard is om te gebruiken, het up-to-date houden van de stack en de WooCommerce-pagina's die u nooit mag cachen.

Bericht lezen →

Hoe kiest u beheerde webhosting in 2026: een kopersgids

Wat goede beheerde hosting nu echt onderscheidt van een goedkope server met een controlepaneel — migraties, back-ups, isolatie, echte caching en eerlijke schaalbaarheid — en hoe u dit kunt beoordelen voordat u zich vastlegt.

Bericht lezen →

Lees het blog →

Komt u er nog niet uit?

Ondersteuning is inbegrepen in elk abonnement, de helpdesk is 24 uur per dag geopend en u kunt ons in elk van onze 58 talen schrijven — wij antwoorden u in de uwe.

Contact opnemen met support → Alle artikelen →