WHMCS VPS Management Module - ArkHost VPSAG
A WHMCS server module for VPSAG VPS management with multi-language support.
Note: Originally based on andretunes/whmcs-module-vpsag. Current version has been substantially rewritten.
Features
- VPS provisioning and lifecycle management
- VPS control (start/stop/restart/shutdown)
- Backup management (create/restore/delete)
- Firewall configuration
- OS reinstallation with SSH key injection and post-install scripts
- Resource monitoring with graphs
- VNC console access
- Hostname and rDNS management
- ISO mounting
- 8 language support (English, Dutch, French, German, Italian, Portuguese, Russian, Spanish)
- Responsive client area design
Requirements
- WHMCS 8.9+
- PHP 7.4+
- VPSAG reseller account with API access
Installation
- Upload the
ArkhostVPSAGfolder to/modules/servers/in your WHMCS installation - Navigate to Setup > Products/Services > Servers in WHMCS admin
- Add a new server with:
- Module: ArkhostVPSAG
- Hostname:
www.vpsag.com - Username: Your VPSAG API username
- Password: Your VPSAG API key
- Click Test Connection to verify credentials
Product Configuration
Creating a Product
- Go to Setup > Products/Services > Products/Services
- Create a new product or edit an existing one
- Under Module Settings tab:
- Module Name: ArkhostVPSAG
- Server Group: Select your VPSAG server group
Configurable Options
The module uses two primary configurable options that are dynamically populated from the VPSAG API:
| Option | Config Key | Description |
|---|---|---|
| Plan ID | configoption1 |
VPS plan - dropdown populated from /api/v1/plans showing plan names with prices |
| OS ID | configoption2 |
Operating system - dropdown populated from /api/v1/os/plan/{plan_id} based on selected plan |
Setting Up Configurable Options
You can override the default product options using WHMCS Configurable Options:
- Go to Setup > Products/Services > Configurable Options
- Create a new group and link it to your VPSAG product(s)
- Add options with these exact names:
planid- To allow customers to select different plansosid- To allow customers to select their OS during order
The module checks for configurable options first, then falls back to product-level settings.
Callback URL
For automatic provisioning updates (IP, password delivery), configure your callback URL in VPSAG:
https://yourdomain.com/modules/servers/ArkhostVPSAG/callback.php
The callback handler:
- Validates requests using SHA256 signature verification
- Updates service with username, password, IPs (IPv4/IPv6)
- Sets VPS label to
WHMCS {service_id}for easy identification
Module Functions
Client Area Actions
| Action | Description |
|---|---|
| Start/Stop/Restart | Basic power controls |
| VNC Console | Browser-based console access |
| Reinstall OS | Fresh install with optional SSH key and post-install script |
| Reset Root Password | Generate new root password |
| Hostname/rDNS | Set hostname and reverse DNS |
| Graphs | View CPU, RAM, disk, network usage over time |
| Backups | Create, restore, and delete backups |
| Firewall | Add/remove rules, commit changes |
| ISO | Mount/unmount ISO images |
Admin Actions
| Action | Description |
|---|---|
| Start/Stop/Reboot | Power controls from admin panel |
| VNC Console | Direct VNC link |
| Suspend/Unsuspend | Service suspension management |
| Terminate | Cancel VPS at VPSAG |
| Change Package | Upgrade to higher plan |
Sidebar Buttons
The module adds custom sidebar buttons to the client area:
- Start, Stop, Restart, VNC Console
API Integration
Base URL: https://www.vpsag.com/api/v1/
Authentication headers:
X_API_USER: API usernameX_API_KEY: API key
The module handles all API communication internally with:
- TLS 1.2 enforcement
- 15-second timeout
- Full request/response logging via WHMCS module log
VPS ID Storage
The VPS ID is stored in WHMCS service properties with key vpsag|VPSAG ID in format VPSAG-{numeric_id}.
Language Customization
Override translations by creating files in:
/modules/servers/ArkhostVPSAG/lang/overrides/{language}.php
Screenshots
Overview
Graphs
Backups
Firewall
Settings
Changelog
Version 1.4
- Fixed firewall rule duplication bug when adding new rules
- Added validation warning for ANY protocol with specific port numbers
- Redesigned firewall interface with modern card-based layout
- Created standalone Firewall tab for better organization
- Completely redesigned VPS Overview section with:
- Server Status Card (hostname, IPs, OS, status, uptime, server type)
- Resource Allocation Card (CPU cores, Memory, Storage, Traffic)
- Resource Usage Card (RAM, Bandwidth, CPU)
- Quick Actions Card (Start/Stop, Restart, VNC Console)
- Fixed Quick Actions button functionality
- Completed all language translations (8 languages)
- Enhanced UI styling with gradient backgrounds and smooth animations
- Improved responsive design and layout consistency
Version 1.3
- Enhanced API integration
- Performance improvements
- Bug fixes
Version 1.2
- Custom notifications replace browser popups
- Confirmation dialogs for critical actions
- Multi-language support for all notifications
- Smart post-installation script examples based on OS
- Fixed firewall rules not displaying after creation
- Improved UI styling and animations
Version 1.1
- Basic VPS management
- Backup operations
- Firewall rules
- OS reinstall
Version 1.0
- Initial release
Credits
Originally based on work by andretunes Substantially rewritten and extended by ArkHost
License
MIT License © 2025 ArkHost




