Ga naar inhoud

Installeer en configureer WHMCS om te werken met het HOSTKEY facturatiesysteem

In dit artikel

Vereiste software

  • reseller module voor WHMCS: download;
  • WHMCS versie 8.8 of hoger.

Demo Systeem Beschikbaar

Voordat u met de installatie begint, kunt u de volledige functionaliteit van de HOSTKEY Reseller module verkennen via ons live demo-systeem. De demo bevat een werkende reseller storefront, administratief paneel en klantpaneel met echte serverbeheerfunctionaliteiten. Testing the Reseller Module of HOSTKEY. Live Demo biedt stapsgewijze instructies voor het testen van alle componenten en het begrijpen van de mogelijkheden van de module voordat u deze implementeert.

Modulestallatie

Pak de inhoud van het archief uit naar de root van het facturatiesysteem.

  1. Download en unzip het module-archief naar de WHMCS root

    Pak de inhoud van het archief uit naar de root van het facturatiesysteem.

    WHMCS root is waar de bestanden configuration.php, mappen vendor/, modules/, includes/ zich bevinden.

    Via SSH:

    cd /path/to/your/whmcs
    

    unzip /path/to/HostkeyResellerMod.zip
    

    Via FTP: Upload de inhoud van het archief naar de WHMCS root en kies voor het samenvoegen (merge) van de mappen.

  2. Controleer de structuur na het uitpakken

    Het volgende zou moeten verschijnen:

    • modules/addons/hostkeyresellermod/
    • modules/servers/hostkeyresellermod/
    • modules/gateways/callback/hostkeyresellermod.php
    • includes/hooks/hostkeyresellermod.php

    Belangrijke bestanden:

    • modules/addons/hostkeyresellermod/hostkeyresellermod.php
    • modules/addons/hostkeyresellermod/cron.php
    • modules/addons/hostkeyresellermod/clean.php
    • modules/addons/hostkeyresellermod/import.ini (optioneel)
  3. Vernieuw uw admin paneel sessie

    Log uit en log opnieuw in bij het WHMCS admin paneel. Wis indien nodig de cache van uw browser.

Veelvoorkomende problemen bij het kopiëren

  • Bestanden in de verkeerde map: De module verschijnt niet in de lijst als deze zich in een submap bevindt in plaats van in de WHMCS root.
  • Rechten/Eigenaar: Onjuiste rechten voorkomen activering/weergave.
  • Browsercache/sessie: opnieuw inloggen lost het probleem "module is not visible" op.

Module activeren in WHMCS

  1. Open de lijst met addon modules

    Nadat u de module naar de WHMCS-map heeft gekopieerd en de bestandsrechten hebt geconfigureerd, moet u de module activeren. Doe dit als volgt:

    • Pad: System Settings > Apps & Integrations > Addon Modules.
    • Zoek naar HOSTKEY VPS/Dedicated.

  2. Activeer de module en ga naar instellingen

    • Klik op Activate.
    • Klik vervolgens op Configure (of Settings) om het instellingenformulier te openen.

  3. Vul de module-instellingen in en sla op

    Velden:

    • API Url — HOSTKEY facturatie API-adres:
    • Internationaal: https://invapi.hostkey.com/ (standaard).
    • API key — toegangssleutel tot de HOSTKEY API. Verkrijg deze door de instructies te volgen; houd deze geheim.
    • Preset name prefix — naamprefix (standaard HKP-) om HOSTKEY-producten visueel te onderscheiden in WHMCS-lijsten.
    • Default product group — WHMCS productgroep voor aangemaakte producten (standaard Hostkey servers).
    • Logging of requests to Hostkey API — inschakelen voor debugging indien nodig.

    Klik op Save Changes.

  4. Stel toegang in (Access Control)

    Vink de beheerdersgroepen aan die toegang moeten hebben tot de module (wij raden aan om "Administrators" in te schakelen).

    Let op

    Als u geen groepen aanvinkt onder Access Control, is de module niet beschikbaar voor die groep en wordt deze niet weergegeven in het Addons menu, zelfs niet voor de administrator.

    Als alles correct is uitgevoerd (inclusief het instellen van de permissies), verschijnt de sectie HOSTKEY VPS/Dedicated in het Addons menu.

  5. Open de module en configureer de import van producten

    Ga naar Addons > HOSTKEY VPS/Dedicated en selecteer de producten die u wilt doorverkopen:

    • Import VPS products — voor VPS/VDS;
    • Import Bare metal products — voor dedicated servers;
    • Import GPU products — voor GPU servers.

    Stel voor elke aangevinkte categorie de opslag (markup) en het formaat in:

    • In percentage: voer de waarde in en laat "%" staan (voorbeeld: "10 %").
    • In vaste valuta: voer de waarde in en selecteer de WHMCS-valuta (voorbeeld: "5 USD").

    Selecteer de afrondingsmodus bij Round price to:

    • Not round — zonder afronding.
    • 0.1, 0.2, etc — tot op de tiende.
    • 0.25, 0.5, 0.75 — tot op het kwart.
    • 0.5, 1.0 — tot op de helft.
    • 1.0 — naar hele getallen.

    Klik vervolgens op de knop ImportProduct/AdjustPrice.

    Opmerking

    Voor de eerste uitvoering raden wij aan om een andere methode te gebruiken, aangezien bij het laden van een grote hoeveelheid informatie de pagina kan eindigen met een 504-code. Bij de eerste keer dat u een bulkimport uitvoert, kan er een lange laadtijd zijn; als u een 504 krijgt, gebruik dan de console-import.

  6. Succesvolle download en wat nu te doen

    Als de module correct is verbonden en geactiveerd, verschijnt er een melding over het succesvol downloaden van HOSTKEY-producten en een suggestie om naar de productspecifieke instellingen te gaan in het menu System Settings > Product/Services.

    Ga naar Product/Services:

    • Controleer de aangemaakte groepen en producten.
    • Open indien nodig het product, stel prijzen/perioden in op het tabblad Pricing; vink op het tabblad Details de optie Hidden uit zodat het product wordt weergegeven in de showcase.

    Opmerking

    Bij een grote hoeveelheid informatie kan de pagina eindigen met de code 504 Gateway Timeout. Voor het eerste laden van de productlijst raden wij aan om het commando uit te voeren in de root van uw facturatiesysteem.

Informatie van HOSTKEY laden en verwijderen met console-commando's

Uitvoering van cron.php

Wordt gebruikt om informatie van Hostkey te laden. Voer het commando uit vanuit de root van uw website:

php modules/addons/hostkeyresellermod/cron.php

Uitvoering van clean.php

Verwijdert eerder ontvangen informatie van HOSTKEY. Voer het commando uit vanuit de root van uw website:

php modules/addons/hostkeyresellermod/clean.php

Opmerking

Het aanroepen van dit commando verwijdert alle groepen en presets die van HOSTKEY zijn ontvangen, evenals hun prijzen.

Belangrijk: import.ini heeft voorrang op admin-instellingen

Als er een import.ini bestand aanwezig is in modules/addons/hostkeyresellermod/, dan vindt de import plaats op basis van de instellingen in dit bestand en worden de instellingen die via het admin paneel zijn opgegeven op de pagina Addons > HOSTKEY VPS/Dedicated overschreven of genegeerd.

Wij raden aan om import.ini te gebruiken als de import via de webinterface onstabiel is (vastlopen, 504) of wanneer u de import uitvoert via cron/console.

Als u de import via het admin paneel wilt configureren, verwijder dan import.ini of hernoem deze:

rm modules/addons/hostkeyresellermod/import.ini

Na het verwijderen/hernoemen van het bestand zal de import weer de waarden gebruiken die in het admin paneel zijn opgegeven.

Parameters in import.ini

Tijdens de uitvoering gebruikt het commando het bestand modules/addons/hostkeyresellermod/import.ini (indien aanwezig).

Parameters in import.ini:

  • template = 5 — vervang 5 door de ID van het gewenste e-mailsjabloon uit WHMCS (u kunt deze zien in de sectie Email Templates)
  • round = 0 — prijsafronding (0 = niet afronden, 10 = tot op 0.1, 4 = tot op 0.25, 2 = tot op 0.5, 1 = tot op 1.0)
  • vps = 10 % — VPS opslag (markup)
  • bm = 50 USD — Bare metal opslag
  • gpu = 100 RUB — GPU opslag

Voorbeeld import.ini:

[general]
round = 0
template = 5
[markup]
vps = 10 %
bm = 50 USD
gpu = 100 RUB

Het bestand heeft twee secties:

  1. De general sectie bevat de round parameter, die de afronding regelt. Mogelijke waarden voor de parameter:

    • 0 — geen afronding;
    • 10 — afronden op de dichtstbijzijnde tiende;
    • 4 — afronden op het dichtstbijzijnde kwart;
    • 2 — afronden op de helft;
    • 1 — afronden op het dichtstbijzijnde hele getal.
  2. De markup sectie bevat de procentuele opslag voor elke groep.

    Als het import.ini bestand niet bestaat of als de optie default wordt gebruikt, wordt er geen opslag of afronding toegepast.

Automatische update van presets (cron)

Wij raden aan om een schema in te stellen dat één keer per dag draait, tijdens daluren.

Voorbeeld crontab (elke dag om 03:30; vervang de paden naar whmcs door uw eigen paden):

30 3 * * * /usr/bin/php /path/to/whmcs/modules/addons/hostkeyresellermod/cron.php >/dev/null 2>&1

Tips voor planning: bekijk kort over cron, assistent — crontab.guru.

Valuta-configuratie voor prijs-export

Om productprijzen nauwkeurig te exporteren, moet u de wisselkoersen configureren ten opzichte van EUR of USD en tussen deze valuta's in. Dit kan worden gedaan in de sectie Payments >> Currencies.

Specifieke producten aanpassen voor wederverkoop

Door naar System Settings >> Product/Services te gaan, ziet u een tabel met alle producten die beschikbaar zijn voor wederverkoop.

Door op de iconen in de meest rechtse kolommen te klikken, kunt u de productinstellingen wijzigen of het product uit de lijst verwijderen. De meeste instellingen worden bepaald door de WHMCS-instellingen en we richten ons alleen op die welke cruciaal zijn voor wederverkoop.

Een specifiek product bewerken

Klikken op het Edit icoon brengt u naar de sectie voor het wijzigen van de parameters van het product (Edit Product).

Tabblad Details

Met dit tabblad kunt u de productnaam wijzigen die wordt weergegeven in uw storefront.

U kunt ook de optie Hidden aanvinken om het product te verbergen in het bestelformulier zonder het te verwijderen.

Tabblad Price

Gebruik dit tabblad om de prijs van uw product in te stellen voor de valuta's die beschikbaar zijn voor u.

U kunt drie soorten betalingen instellen (Payment Type):

  • Free - het product wordt gratis geleverd;
  • One Time - eenmalige betaling voor één maand gebruik;
  • Recurring - terugkerende betaling voor een bepaalde periode.

U stelt de prijs voor elke periode en valuta afzonderlijk in, wat u de flexibiliteit geeft om uw prijsbeleid aan te passen:

  • One Time/Monthly - Eenmalige betaling of maandelijkse terugkerende betaling.
  • Quarterly - betaling elk kwartaal (3 maanden)
  • Semi-annual - betaling elke zes maanden (6 maanden)
  • Annual - Betaling voor één jaar (12 maanden)

Er zijn twee aparte prijzen beschikbaar:

  • Setup Fee - de prijs voor het installeren van het product;
  • Price - de verkoopprijs van het product.

Let op

Uw prijs moet hoger zijn dan de prijs die in de Price-boxen wordt getoond, anders eindigt u met het verkopen tegen een te lage prijs ("underpriced").

Klik na het wijzigen van de parameters en de prijs op Save Changes om de instellingen voor dit product op te slaan.

Nadat u heeft bevestigd dat de instellingen succesvol zijn opgeslagen, klikt u op de knop in de rechterbovenhoek Back to product list om terug te keren naar de productentabel.

Zodra geconfigureerd, verschijnen producten in het klantendashboard.

Betalingsactivatie voor bestelde producten

Voor betalingen van bestelde producten wordt uw HOSTKEY accounttegoed gebruikt. Zorg ervoor dat de modus automatic payment from balance is ingeschakeld.

Voorbeelden en tips

  • Voorbeeld van opslag (markup) en afronding: prijs 123.56 met een opslag van 10% en afronding naar 0.5 > 136.0.
  • Valuta's: controleer Payments > Currencies - de koersen naar EUR/USD en tussen de gebruikte valuta's moeten zijn ingesteld.

Typische fouten en oplossingen

  • Invalid API key / 403: controleer de geldigheid van de API-sleutel, de URL (.com), geen extra spaties.
  • Module is not visible in Addons: controleer groepen in Access Control, vernieuw de sessie, controleer bestand/eigenaar-rechten.
  • 504 Gateway Timeout bij import: Gebruik console-import, verhoog max_execution_time.
  • Prijzen lijken "met verlies" te worden verkocht: stel uw prijs in bij Pricing hoger in dan de inkoopprijs; controleer de opslag en afronding.
  • Error 503: Om dit uit te zoeken, probeer het foutenlogboek van de server te controleren: error.log of php_error.log.
question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×