Installation and Configuration Guide
Step-by-step instructions for installing, configuring, and setting up the ownCloud WHMCS module, including ownCloud server preparation, WHMCS integration, email templates, and product configuration.
- WHMCS setup (install/update)
- Setup guide: WHMCS setup
- Email Template (puqownCloud notification disk limit)
- Add server (ownCloud server)
- Product Configuration
WHMCS setup (install/update)
ownCloud module WHMCS
Order now | Download | FAQ
System requirements
| Requirement | Minimum version |
|---|---|
| PHP | 8.2 or higher |
| WHMCS | 9.x or higher |
| ionCube Loader | v13 or newer (v14, v15) |
Note: The module uses ionCube encoding. Make sure ionCube Loader is installed and active on your server.
Download
The module can be ordered and downloaded from PUQ Cloud:
- Order / Download: https://puqcloud.com/whmcs-module-owncloud.php
- FAQ: https://faq.puqcloud.com/
- Direct download link for the latest version:
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-ownCloud/php82/PUQ_WHMCS-ownCloud-latest.zip
Older module versions for WHMCS 8 are available in PHP-specific directories:
After downloading, extract the archive:
unzip PUQ_WHMCS-ownCloud-latest.zip
Installation
Step 1: Upload files
Extract the module archive and copy the puqownCloud directory to the WHMCS servers module directory:
WHMCS_WEB_DIR/modules/servers/puqownCloud
Step 2: Add server
- Enter the correct Name and Hostname
- In Server Details, select the PUQ ownCloud module
- Enter valid ownCloud web interface credentials (username and password)
- Click Test connection to verify
Step 3: Create product
- Select the PUQ ownCloud 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/puqownCloud/
Step 2: Upload new files
Download and extract the new version, then overwrite all files in:
WHMCS_WEB_DIR/modules/servers/puqownCloud/
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.
Setup guide: WHMCS setup
ownCloud module WHMCS
Order now | Download | FAQ
System requirements
| Requirement | Minimum version |
|---|---|
| PHP | 8.2 or higher |
| WHMCS | 9.x or higher |
| ionCube Loader | v13 or newer (v14, v15) |
Note: The module uses ionCube encoding. Make sure ionCube Loader is installed and active on your server.
Older module versions for WHMCS 8 are available in PHP-specific directories:
Step 1: Download the module
wget https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-ownCloud/php82/PUQ_WHMCS-ownCloud-latest.zip
Step 2: Extract the archive
unzip PUQ_WHMCS-ownCloud-latest.zip
Step 3: Copy module files
Copy the puqownCloud directory to:
WHMCS_WEB_DIR/modules/servers/
Step 4: Add server in WHMCS
- Enter the correct Name and Hostname
- In the Server Details section, select the PUQ ownCloud module
- Enter valid ownCloud web interface credentials (username and password)
- Click Test connection to verify the connection
04-add-server-1.png
05-add-server-2.png
Step 5: Create product in WHMCS
Select the PUQ ownCloud module in the Module settings section.
06-whmcs-setup.png
Email Template (puqownCloud notification disk limit)
ownCloud module WHMCS
Order now | Download | FAQ
Creating the email template
Template configuration
| Parameter | Value |
|---|---|
| Email Type | Product/service |
| Unique Name | puqownCloud Notification disk limit |
Email subject
Disk space usage {$disk_used_percentage} % - {$username}
Email 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}
Available template variables
The following custom variables are passed to the email template by the module:
| Variable | Description | Example |
|---|---|---|
{$username} |
ownCloud username | john-42 |
{$disk_limit_bytes} |
Total disk quota in bytes | 10737418240 |
{$unit_coefficient} |
Coefficient for unit conversion | 1073741824 |
{$unit} |
Disk space unit | GB |
{$disk_used_unit} |
Used disk space in configured unit | 8.5 |
{$disk_free_unit} |
Free disk space in configured unit | 1.5 |
{$disk_used_percentage} |
Used space as percentage | 85 |
{$disk_free_percentage} |
Free space as percentage | 15 |
In addition, all standard WHMCS product/service merge fields are available (e.g. {$client_name}, {$service_product_name}, {$service_next_due_date}, {$signature}).
Note: Notifications are sent automatically during the WHMCS daily cron execution when disk usage reaches the threshold configured in the product settings ("Notify at %").
Screenshots
07-email-template-1.png
08-email-template-2.png
Add server (ownCloud server)
ownCloud module WHMCS
Order now | Download | FAQ
Adding an ownCloud server to WHMCS
Step 1: General settings
Enter the correct Name and Hostname for your ownCloud server.
- Name — a descriptive name for the server (e.g. "ownCloud Production")
-
Hostname — the domain name or IP address of your ownCloud installation (e.g.
cloud.example.com)
If your ownCloud uses a non-standard port, enter it in the Port field. Check the Secure checkbox if your server uses HTTPS (recommended).
04-add-server-1.png
Step 2: Module settings
- In the Server Details section, select the PUQ ownCloud module from the dropdown
- Enter valid credentials for the ownCloud web interface:
- Username — ownCloud administrator username
- Password — ownCloud administrator password
- Click Test connection to verify the connection is working correctly
The test connection verifies that the module can reach the ownCloud OCS API (/ocs/v1.php/cloud/users/) and authenticate with the provided credentials.
05-add-server-2.png
Important: The ownCloud user must have administrator privileges to manage users via the API. The module uses the ownCloud OCS API v1 with HTTP Basic Authentication to create, modify, suspend, and delete user accounts.
Product Configuration
ownCloud module WHMCS
Order now | Download | FAQ
Add new product to WHMCS
Select the PUQ ownCloud module in the Module settings section.
Configuration parameters
| Parameter | Description |
|---|---|
| License key | A pre-purchased license key for the PUQ ownCloud module. The license must be active for correct operation. After saving, the verification status is displayed below the field. |
| Disk size | Allocated disk space for the ownCloud user. Set to 0 for unlimited quota. Minimum value: 0. |
| Disk unit | Unit used for the allocated disk space. Available options: MB, GB, TB, PB. |
| Notify at % | Disk usage threshold in percent (1–100). A notification email is sent when usage reaches this value. Default: 90. Set to 0 to disable notifications. |
| Email template | Email template used for low disk space notifications. Select from available Product/service type email templates. The template must be created manually in WHMCS (see Email Template page). |
| Save history (days) | Number of days to store disk usage statistics in WHMCS. Older records are automatically deleted during cron execution. |
| Group | ownCloud group assigned to the user on the server side. The group is created automatically if it does not exist. When changing packages, the user is removed from all groups and added to the new group. |
| Username rule | Rule for automatic username generation using macros (see below). Default: {client_id}-{service_id}. |
| Password rule | Password generation rule in length:charset format (see below). Default: 12:123456789QAZWSXEDCRFVTGBYHNUJMIKqazwsxedcrfvtgbyhnujmikolp. |
| Link to instruction | URL to instructions displayed as a button in the client area. Leave empty to hide the button. |
| Show password | Defines how the password is shown in the client area. Options: Show button (hidden by default, revealed on click), Plain text (always visible), No (hidden, no option to reveal). |
Username rule — available macros
The username is generated automatically when a new account is created. You can use the following macros:
| Macro | Description | Example |
|---|---|---|
{client_id} |
WHMCS client ID | 123 |
{service_id} |
WHMCS service ID | 456 |
{unixtime} |
Current Unix timestamp | 1707638400 |
{year} |
Current year | 2026 |
{month} |
Current month (01–12) | 02 |
{day} |
Current day (01–31) | 12 |
{hour} |
Current hour (00–23) | 14 |
{minute} |
Current minute (00–59) | 30 |
{second} |
Current second (00–59) | 45 |
{random_digit_x} |
x random digits (0–9) | {random_digit_4} → 7394 |
{random_letter_x} |
x random letters (A–Z, a–z) | {random_letter_6} → aBcDeF |
Examples:
-
{client_id}-{service_id}→123-456 -
oc-{random_digit_6}→oc-384729 -
user-{client_id}-{random_letter_4}→user-123-aBcD
Note: If the generated username already exists on the ownCloud server, the module automatically appends a counter:
username-1,username-2, etc.
Password rule — format
The password rule uses the format length:charset, where:
- length — number of characters to generate
- charset — set of characters to use
Examples:
-
12:abcdefghijklmnopqrstuvwxyz0123456789— 12 lowercase alphanumeric characters -
16:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789— 16 mixed-case alphanumeric -
20:0123456789— 20 digits only
If no rule is specified, a 12-character password is generated from a default character set.
Important notes
Warning: This module works only as a server module (Products/Services). It cannot be used as an addon product. Attempting to use it with addon products will result in an error.
Screenshot
09-product-configuration.png