Synology WHMCS module
The module gives the company the ability to offer user accounts on Synology devices. Users can have multiple accounts. Accounts may differ with parameters defined in groups. The module requires an existing, fully deployed Synology machine with properly configured groups and other options (more information later in the manual).
- Description
- Changelog
- Installation and Configuration Guide
- WHMCS setup (install/update)
- Synology part setup guide
- WHMCS part setup guide
- Email Template (puqSynology Notification disk limit)
- Add server (Synology NAS)
- Product Configuration
- Client Area
- Admin Area
Description
Synology module WHMCS
Order now | Download | Community
The PUQ Synology module for WHMCS turns your Synology NAS into a fully automated, self-service storage product. From the moment a client places an order, the module creates and manages their Synology DSM account end-to-end — no manual steps, no DSM logins, no spreadsheets. Everything is handled through the official Synology DSM Web API.
Built for resellers and hosting providers, the module lets you sell disk space on Synology devices with per-plan parameters defined by Synology groups, while your clients get a clean, modern self-service area.
Note: The module requires an existing, fully deployed Synology machine with properly configured groups and other options (more information later in the manual).
Note: The module does not install or configure DSM on Synology machines in any way — it only provisions and manages user accounts through the API.
Key features
Full account lifecycle automation
- Automatic account creation and deployment on Synology when an order is activated
- Suspend, unsuspend, terminate, change password and change package — all driven by the DSM API
- Duplicate protection — the module never overwrites an account that already exists on the NAS
- Smart, collision-safe username generation with macros (
{client_id},{service_id}, random digits/letters, date/time) — always DSM/Linux-compliant - DSM-policy-aware password generation — generated passwords automatically satisfy your server's password-strength rules
Group-based plans (real limits on the server)
- Each product assigns the client to a pre-configured Synology group, chosen from a live drop-down of the groups that actually exist on your server
- The real disk quota and permissions are enforced by that Synology group — configure them once in DSM and resell with confidence
- On package change, the user is moved from the old group to the new one automatically
Disk usage monitoring & notifications
- Live disk usage with current and historical data (last 30 days and monthly averages)
- Automatic email notification when a client exceeds a configurable usage threshold
- Usage percentage and free/used breakdown shown to the client
Modern client area
- Redesigned, card-based interface with copy-to-clipboard for credentials and a show/hide password toggle
- Disk-usage pie chart and historical usage statistics charts
- One-click link to your user manual / setup instructions
Powerful admin tools
- API connection status indicator
- User details at a glance — username, status, group membership, email, expiry
- Disk usage progress bar and full breakdown directly on the service page
- Built-in license verification with proactive alerts on the admin dashboard
Localization & compatibility
- 25 interface languages out of the box
- Works across the entire Synology DSM 7 line
- Compatible with WHMCS 8+ and PHP 7.4 / 8.1 / 8.2 (PHP-version-specific builds provided)
Compatibility
| Requirement | Supported |
|---|---|
| Synology DSM | Entire DSM 7.x line |
| WHMCS | 8.x or higher |
| PHP | 7.4 / 8.1 / 8.2 |
| ionCube Loader | Required |
Screenshots
Client area — modern self-service
Admin area — product information
Changelog
Synology module WHMCS
Order now | Download | Community
v3.0 Released 28-06-2026
A major release — the module has been fully re-engineered and adapted to the latest Synology DSM.
- Full support for the entire Synology DSM 7 line (up to and including the latest DSM 7.2+). The whole DSM Web API integration was reworked and verified against current DSM: token-based session authentication (SID + SynoToken), correct user group-membership management, and live disk-quota statistics.
-
Reliable account lifecycle — create, suspend, unsuspend, terminate, change password and change
package — all aligned with the current
SYNO.Core.*APIs. - Server-side group assignment. Provisioned users are added to a pre-configured Synology group, chosen from a drop-down that is populated live with the groups that actually exist on your server. The real disk/permission limits are enforced by that Synology group.
- New product configuration UI. A dynamic "Module Settings" panel on the product page (JSON-based), which also keeps working on older WHMCS versions.
- DSM-policy-aware password generation (automatically matches your server's password-strength rules) and flexible macro-based username rules with collision protection.
- Protection against duplicates — the module never overwrites an account that already exists on Synology.
- Redesigned client area — modern cards, copy-to-clipboard for credentials, show/hide password, disk-usage pie chart and 30-day / monthly history charts.
- 25 interface languages.
- Broad compatibility — PHP 7.4 / 8.1 / 8.2 and older WHMCS releases (per-PHP builds provided).
- Hardened & maintainable — comprehensive error handling and logging, safe data access throughout, and built-in license verification with proactive admin alerts.
Note: Product reconfiguration is required after updating to v3.0 — product settings have moved to the new Module Settings UI.
v1.2.1 Released 02-04-2023
- Adaptation for Synology DSM 7.1.1
v1.2 Released 05-03-2023
- Support for PHP 8.1 and PHP 7.4
- Support for Synology DSM 6.x and Synology DSM 7.x
- Changes made to templates, add icons
- API timeout set to 30
v1.1 Released 23-01-2023
- Support WHMCS V8.6
- Support IonCube PHP Loader v12
- Support for PHP 8.1
- Changes made to templates
- In the service settings, the choice of email template was changed to a drop-down menu
- Added translations: German, Ukrainian
v1.0 Released 01-08-2022
First version
Installation and Configuration Guide
Step-by-step instructions for installing, configuring, and setting up the Synology WHMCS module, including Synology DSM preparation, WHMCS integration, email templates, and product configuration.
WHMCS setup (install/update)
Synology module WHMCS
Order now | Download | Community
System requirements
| Requirement | Minimum version |
|---|---|
| PHP | 7.4 or higher (7.4 / 8.1 / 8.2) |
| WHMCS | 8.x or higher |
| ionCube Loader | v13 or newer (v14, v15) |
| Synology DSM | 7.x or higher |
Note: The module uses ionCube encoding. Make sure ionCube Loader is installed and active on your server.
Backward compatibility
This module supports older PHP versions and older WHMCS versions for maximum compatibility with existing hosting environments. PHP-version-specific builds are provided:
- PHP 7.4 — for legacy WHMCS 8 installations running PHP 7.4
- PHP 8.1 — for WHMCS 8 installations running PHP 8.1
- PHP 8.2 — for WHMCS 8/9 installations running PHP 8.2
Each build is encoded with the appropriate ionCube version for the target PHP runtime.
Download
The module can be ordered and downloaded from PUQ Cloud:
- Order / Download: https://puqcloud.com/whmcs-module-synology.php
- Community: https://community.puqcloud.com/
- Direct download links for the latest version:
# PHP 7.4
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php74/PUQ_WHMCS-Synology-latest.zip
# PHP 8.1
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php81/PUQ_WHMCS-Synology-latest.zip
# PHP 8.2
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php82/PUQ_WHMCS-Synology-latest.zip
After downloading, extract the archive:
unzip PUQ_WHMCS-Synology-latest.zip
Installation
Step 1: Upload files
Extract the module archive and copy the puqSynology directory to the WHMCS servers module directory:
WHMCS_WEB_DIR/modules/servers/puqSynology
Step 2: Add server
- Enter the correct Name and Hostname
- In Server Details, select the PUQ Synology module
- Enter valid Synology DSM credentials (username and password)
- Click Test connection to verify
Step 3: Create product
- Select the PUQ Synology module in the Module settings section
- Configure the product parameters
Update
Step 1: Backup
Before updating, it is recommended to back up:
- WHMCS database
- Module files in
modules/servers/puqSynology/
Step 2: Upload new files
Download and extract the new version, then overwrite all files in:
WHMCS_WEB_DIR/modules/servers/puqSynology/
Step 3: Verification
- Log in to the WHMCS admin panel
- Check the module is functioning correctly
- Verify product settings
Important (v3.0): Product reconfiguration is required after updating to version 3.0.
Synology part setup guide
Synology module WHMCS
Order now | Download | Community
Here are the initial steps of configuring Synology devices to prepare them for use with the WHMCS module.
Note: At the beginning, you should prepare the appropriate domain with the correct DNS entries so that you can generate a correct SSL certificate for Your Synology NAS server.
1. Generate an SSL certificate for your domain.
Connect the certificate for all services that will be used in the server.(FTPS, System, Synology Drive, etc...)
2. Make sure the partition is formatted in BTRFS
3. Enable the user's home folder.
4. Enable all necessary file services (ie: FTP, FTPS, SFTP, etc.).
5. Create user groups with the necessary quotas and permissions.
WHMCS part setup guide
Synology module WHMCS
Order now | Download | Community
1. Download the latest version of the module
Choose the build that matches your server's PHP version:
PHP 8.2
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php82/PUQ_WHMCS-Synology-latest.zip
PHP 8.1
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php81/PUQ_WHMCS-Synology-latest.zip
PHP 7.4
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/php74/PUQ_WHMCS-Synology-latest.zip
Note: All versions are available here: https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Synology/
2. Unzip the archive with the module
unzip PUQ_WHMCS-Synology-latest.zip
3. Copy "puqSynology" to "WHMCS_WEB_DIR/modules/servers/"
4. Add the Synology NAS server in WHMCS
System Settings -> Servers -> Add New Server
- Enter the correct Name and Hostname
- In the Server Details section, select the PUQ Synology module and enter the correct username and password of the Synology DSM account.
- Click Test connection to verify.
Warning: The ACCESS HASH field is used to store the server access key and is updated automatically — do not edit it manually.
For more details, see Add server (Synology NAS).
5. Create the product
System Settings -> Products/Services -> Create a New Product
In the Module Settings section, select the PUQ Synology module and the Server Group that contains your Synology server, then click Save Changes to load the configuration panel.
Every setting in this panel (License key, Disk, Synology group, Notifications, History, Client Area and User rules) is described in detail on the Product Configuration page.
Email Template (puqSynology Notification disk limit)
Synology module WHMCS
Order now | Download | Community
Create an email template for customer notifications.
System Settings->Email Templates->Create New Email Template
- Email Type: Product/service
- Unique Name: puqSynology Notification disk limit
Subject:
Disk space usage {$disk_used_percentage} % - {$username}
Body:
Dear {$client_name},
This letter informs you that the disk space usage limit is coming to an end.
Product/Service: {$service_product_name}
Due Date: {$service_next_due_date}
Username: {$username}
Disk limit: {$disk_limit_bytes*$unit_coefficient} {$unit}
Disk used: {$disk_used_unit} {$unit} ({$disk_used_percentage} %)
Disk free: {$disk_free_unit} {$unit} ({$disk_free_percentage} %)
{$signature}
Add server (Synology NAS)
Synology module WHMCS
Order now | Download | Community
Add a new server to the system WHMCS.
System Settings->Servers->Add New Server
- Enter the correct Name and Hostname
- In the Server Details section, select the "PUQ Synology" module and enter the correct username and password for the Synology NAS web interface.
- To check, click the "Test connection" button
Warning: WARNING: ACCESS HASH field Used to store the access key to the server and is updated automatically.
Product Configuration
Synology module WHMCS
Order now | Download | Community
Add a new product to WHMCS
System Settings -> Products/Services -> Create a New Product
In the Module Settings section, select the PUQ Synology module and the Server Group that contains your Synology server, then click Save Changes. The module then renders its modern configuration panel.
Note: Select the Server Group and save the product first — the Synology group drop-down (in the Disk section) is populated live from the server assigned to that group.
At the top of the panel:
- Module Name — the provisioning module (PUQ Synology).
- Server Group — the WHMCS server group whose Synology server this product is provisioned on.
- License key — your pre-purchased PUQ Synology license key. The validation status and the paid-through date are shown right below the field; the key must be active for the module to work.
Disk
Note: Display only. The disk size/unit are shown to the client in the client area (and used for the usage-percentage chart and notifications). They do not enforce a limit on Synology. The real quota/permission limits must be configured on the Synology group selected here (Control Panel → User & Group → Group → Quota).
-
Disk size — disk space shown to the client (display only).
0= Unlimited. - Disk unit — unit (MB / GB / TB) for the displayed disk space.
- Synology group (enforces the real limits) — the pre-configured Synology group assigned to provisioned users, chosen from a live drop-down of the groups that actually exist on the server. Use the refresh button to reload the list. Configure the real disk quota / permissions on this group in DSM.
Notifications
- Notify at % — usage threshold; when a client exceeds it, a low-disk-space notification is sent.
-
Email template — the WHMCS email template used for low-disk-space notifications (
Noneto disable).
History
- Save history (days) — how many days of disk-usage statistics to keep in WHMCS.
Client Area
- Link to instruction — an optional URL; when set, a User manual button is shown in the client area.
- Show password — how the password is presented in the client area (Show button / plain text / hidden).
User
-
Username rule — template for the generated username, using macros:
- Base:
{client_id},{service_id} - Random:
{random_digit_x},{random_letter_x}(where x is the length, e.g.{random_digit_4}) - Date & time:
{unixtime},{year},{month},{day},{hour},{minute},{second} - Example:
{client_id}-{service_id}-{random_digit_4} - The generated name is automatically normalised to be Synology/DSM compliant, and collisions with other services are resolved automatically.
- Base:
-
Password rule — generated password length (minimum 8), e.g.
12. The generated password always includes lowercase, uppercase, digit and special characters to satisfy the Synology DSM password-strength rules.
Client Area
Overview of the client-facing features available in the Synology WHMCS module, including the home screen, email notifications, and disk usage statistics.
Home screen
Synology module WHMCS
Order now | Download | Community
The end customer, after logging in to his own customer panel, has access to the following information and options
- Link to the user manual (which was defined by the administrator when setting up the service.).
- Synology server adress
- Authorization data
- Usage statistics graph
- Table with data on the use of the service
Email notification
Synology module WHMCS
Order now | Download | Community
Below you can see an example of an email notification regarding data limit
Disk statistics
Synology module WHMCS
Order now | Download | Community
Client can check the data usage statistics in the menu item "Used space statistics"
Disk Usage Charts
Admin Area
Administrative features and tools available in the WHMCS admin panel for managing Synology DSM services.