PD DigitalOcean Droplets for WHMCS

PD DigitalOcean Droplets — Sell Cloud Servers as a Native WHMCS Product

Sell cloud servers on DigitalOcean under your own brand — provisioned, billed and managed in your billing system

Made and supported by Projektif Digital Ltd. Runs inside PD Modules, the panel every module installs into.

Servers & Compute

PD DigitalOcean Droplets lets a hosting company sell DigitalOcean cloud servers as its own VPS product. Your customer orders in your WHMCS cart, a dedicated server is built in your DigitalOcean account within minutes, and your customer manages it from your client area: a control panel that carries your brand and never asks for a DigitalOcean login. You set the price, DigitalOcean bills you its list price, and the difference is your margin.

It is built for hosts who want a cloud server line without building a control panel, without handing out provider access, and without a support ticket every time a customer needs a reboot, a snapshot or a firewall change.

Why hosts choose PD DigitalOcean Droplets

Sell cloud servers under your own brand. Customers see your company, your prices and your client area. Servers run on your own DigitalOcean account, so customers need no account of their own, and your account and API token are never exposed to them.

Every order sets itself up. The server is created when WHMCS sets the order up, with the region, plan and operating system the customer chose at checkout, plus any storage, backups or dedicated IP they ordered. Suspend, unsuspend and terminate follow your normal WHMCS billing.

Customers help themselves. Power controls, connection details, rebuild, snapshots, backups, a firewall, SSH keys, usage graphs and an optional in-browser console sit on the customer's own service page. That is most of the tickets a VPS product normally generates.

Pricing with the cost in view. The Products page shows what DigitalOcean charges each month for every server plan, read live and shown in dollars and in your default currency. Set a margin and each choice shows a suggested price and your margin per sale. The margin is optional and changes nothing until you use it.

Nothing left billing. Terminating a service deletes the server, its attached storage, its firewall, its dedicated IP and the SSH keys the module registered. Teardown keeps running even if your licence lapses, so a cancelled service never stays on your DigitalOcean bill. The one exception is snapshots a customer took: those are kept, and DigitalOcean bills you for each until it is deleted.

No server is ever untracked. Every server is tagged and recorded before DigitalOcean is called, so a retry or a double request cannot leave a second server running unseen. A daily read-only check flags any server deleted directly at DigitalOcean.

How it works

  1. Connect your DigitalOcean account. Create an API token with Full Access, add it once on a WHMCS server record, and press Test Connection. It makes one read-only call and changes nothing on your account.
  2. Create your product. Set region, plan and operating system as defaults, then generate the cart options in one click from DigitalOcean's live catalogue: Region, Server plan, Operating system, Additional storage, Automated backups, Dedicated IP and Snapshots you can keep. You choose which the customer sees; anything hidden follows your product setting.
  3. Your customer orders. They pick their options at checkout and pay. Their server is built, its own SSH key is generated, and the service page shows progress until the server is ready.
  4. You get paid, they manage it. WHMCS keeps billing as usual. Plan upgrades and downgrades go through WHMCS's own flow.
The customer's server page: power controls, server details, rebuild and live usage on one screen
The customer's server page: power controls, server details, rebuild and live usage on one screen

What you get in WHMCS

Selling and pricing

  • Cart options generated from the live DigitalOcean catalogue, with prices starting at zero for you to set on the product's Configurable Options tab
  • Show or hide each option per product; saving visibility keeps your prices
  • Rebuild from the live catalogue at any time: choices you hid stay hidden and customers keep the choices they already made
  • Additional storage, Automated backups (weekly or daily, your choice per product), a Dedicated IP and a snapshot allowance as paid extras
  • IPv6 on by default, or switched off per product
  • A name prefix for new servers, and a DigitalOcean project to group them under
  • An SSH key of your own installed on every server, for your support team

Provisioning you can trust

  • A plan that DigitalOcean does not carry in the region the customer picked is refused before anything is created, with the reason
  • Once the server is active, the module records its addresses, attaches the extra storage, creates its firewall and assigns the dedicated IP without anyone lifting a finger
  • Servers are key-only: password login is disabled
  • Plan changes resize the server with a short power cycle; extra storage grows online and the filesystem is extended for you
  • Extras added in an upgrade, such as storage, backups or a dedicated IP, are applied automatically
  • Suspend powers the server off and keeps its data; unsuspend powers it on. A suspended customer cannot turn it back on

Running it day to day

  • Clients and Servers lists every server against the client paying for it, with plan, operating system, region, address and live power state
  • A health report across your licence, your DigitalOcean connection and every provisioned server
  • Read-only assistant tools that report a server's live state and list every server the module manages

What your customers get

  • Power controls: power on, orderly shutdown and reboot, with a clear status that refreshes while something is in progress
  • Connection details: public IPv4, IPv6, dedicated IP and SSH user, with a ready-to-copy ssh command and a private-key download
  • Rebuild from the original operating system or from one of their own snapshots, behind a clear warning that the disk is replaced; the server keeps its IP addresses
  • Snapshots they take, restore and delete, up to the allowance they bought, with a count of how many they have used
  • Backups they can see and restore in place, when automated backups are on their server
  • A firewall per server: allow or remove inbound rules by protocol, port or range and source, with changes applied within a minute
  • Usage graphs for CPU and bandwidth in and out over the last 24 hours, with minimum, average and maximum
  • An in-browser console with no SSH client or key handling, when you switch it on for the product
  • Rename and a plain-words Activity history of everything done to the server
Connection details: the generated SSH key to download and the ready-to-copy connect command
Connection details: the generated SSH key to download and the ready-to-copy connect command
The customer's firewall: inbound rules by protocol, port and source, added or removed without a ticket
The customer's firewall: inbound rules by protocol, port and source, added or removed without a ticket
Snapshots the customer takes, restores or deletes themselves
Snapshots the customer takes, restores or deletes themselves
Usage graphs: CPU and bandwidth in and out, with minimum, average and maximum
Usage graphs: CPU and bandwidth in and out, with minimum, average and maximum

Every one of these is a switch on the product. Turn one off and it disappears from the customer's page, and the server refuses it too. The pages render natively on WHMCS's Six, Twenty-One and Nexus themes, and every string can be translated or reworded with an override file that survives updates. No customer-facing text names DigitalOcean.

Security built in

  • Your API token is stored encrypted, is never shown to customers, and is sent only to DigitalOcean.
  • Every server gets its own SSH key pair. The private key is kept encrypted on your own install, and only the signed-in owner of a service can download it.
  • The in-browser console is off until you switch it on for the product. A session is issued only to the owner of a running server, and each one is a short-lived, single-use handoff of at most two minutes. The browser never sees the key.
  • A restore is checked against that server's own backup list, so a backup of another server is refused.

One product, every feature

PD DigitalOcean Droplets is one paid module with everything included. There are no add-on tiers and no per-server fees from us: you pay DigitalOcean at cost and set your own price. It installs into PD Modules in one click, updates itself, and adds its own tables and files without modifying WHMCS files, so it does not collide with other modules or a customised theme.

If your subscription ever lapses, your customers are not cut off. Running servers are never stopped, deleted or changed. Once a licence has expired, new servers are no longer provisioned and the browser console stops, while customers keep managing their own servers. Only if it is later suspended does customer management pause, behind a neutral message. Teardown keeps running throughout.

Requirements

  • WHMCS 9 or later on PHP 8.2 or later, with the ionCube Loader and outbound HTTPS to the DigitalOcean API
  • A DigitalOcean account and an API token with Full Access
  • PD Modules, the free control panel every PD module installs into

Questions

How do customers log in to their server?

By SSH key. Every server gets its own key pair, which the customer downloads from their service. Add an "SSH Public Key" custom field to the product and customers can also submit their own key at checkout — it's installed on their new server alongside the server's own key. You can also install your own account key on every server for support.

What can customers do from the control panel?

Power on/off, shutdown, reboot, one-click rebuild (fresh OS or one of their snapshots), rename, take/restore/delete snapshots, manage a per-server firewall by protocol/port/source, watch CPU and bandwidth graphs, and see every network detail.

Does suspending a service stop DigitalOcean billing?

No — suspension powers the server off, and DigitalOcean still bills for a powered-off droplet. It is a hard power-off: the disk's data is kept, but unsaved work in running programs is lost. To stop billing entirely, terminate the service.

What gets cleaned up when a service is terminated?

The server, its attached storage volume, its cloud firewall, its dedicated IP and the SSH keys the module registered. Snapshots the customer took are kept on your DigitalOcean account, and DigitalOcean bills for them until they are deleted — they are the customer's own backups, so the module never deletes them; remove unwanted ones in the DigitalOcean control panel.

Do I need my own DigitalOcean account?

Yes. You resell on your own DigitalOcean account, at your own margin. Your API token is stored encrypted on your WHMCS server and is never shown to a customer.

Does a lapsed PD Modules licence break my customers' services?

No. A licence lapse withdraws the management layer in stages but never stops, deletes or alters a running customer resource. Your customers keep serving throughout.

Which WHMCS and PHP versions does it need?

WHMCS 9 or later, on PHP 8.2 or later. It installs alongside whatever else you run — it adds its own tables and templates rather than modifying WHMCS files, so it does not collide with other vendors' modules or with a customised theme. Uninstalling removes its own tables and settings. Terminate its services and let their cleanup finish first — uninstalling also removes the record of any cleanup still in progress.

What’s new in 0.1.89

  • Removing the module no longer gets stuck on an order that never provisioned.

Get your website online with PD Hosting

UK hosting, domains and support from a real team. From a first site to a full server.

Terms and Conditions  ·  Privacy Policy

PD Hosting is the trading name of Projektif Digital Ltd, registered in England and Wales, company number 12482555.

PD Hosting
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.