CloudStack billing that deploys the instance when the invoice is paid
Connect an Apache CloudStack management server with an API key pair. A paid order deploys an instance in the zone the customer picked, from the product’s service offering and the chosen template, waits for CloudStack’s job to finish and records the address and login. The customer gets power controls, a web console, reinstall and password reset; an overdue invoice shuts the instance down, and termination destroys and expunges it.

The plugin is free. CloudStack stays as it is.
The CloudStack plugin is listed at no charge on the FluxBilling marketplace and installs on every tier. Plans are priced by the clients you bill — there is no per-instance or per-zone charge for machines this plugin manages.
CloudStack keeps running your zones. The plugin talks to its API with a key pair you generate; the secret key signs every request and is never sent.
- Plugin price
- Free
- Available on
- Every tier
- Authentication
- API key + secret key, signed requests
- Placement
- The zone chosen at checkout
- IPv4 per order
- 1 to 4; extra ones as secondary IPs
- Plugin version
- 1.0
From a paid invoice to a running instance
CloudStack does its work as asynchronous jobs. The plugin waits for each one to finish and stops with CloudStack’s own error text when one fails.
- 01OrderThe customer picks a zone and an operating system from the ones the product offers, a hostname and a root password. A choice the product does not offer is ignored.
- 02Check the templateThe plugin confirms the template exists in that zone, reads whether it is password-enabled, and matches the product’s guest networks to the zone.
- 03Reuse or deployIf an earlier attempt for the same service already built the instance, it is reused — a retried order never creates a second one. Otherwise the instance is deployed with the service offering, and the root disk size and data disk the product sets.
- 04Set up the guestLinux templates with cloud-init receive the hostname, the root password and root SSH login through user data. Password-enabled templates get the password from CloudStack itself.
- 05Wait and hand overThe deploy job is polled until it finishes, extra IPv4 addresses are added to the instance’s network card, and the address, IPv6 and login are stored on the service. A deploy that fails is cleaned up instead of left behind.
What the customer can do with a CloudStack instance
The service page is drawn from the plugin, so every button maps to something CloudStack can actually do.
Staff side. Staff see the same page with the access credentials and CloudStack’s own instance state, and run reinstalls and password resets on the customer’s behalf.
A service offering becomes a product
Each product points at one service offering and lists the zones, templates and networks it may use.
| Setting | What it decides |
|---|---|
| Service offering | The CPU and RAM every server sold with this product gets. |
| Zones offered | The zones the customer chooses from; the first is used when they do not choose. |
| OS templates offered | The templates offered at checkout and for reinstall. |
| Guest networks | Networks to attach, matched to the chosen zone. Empty lets CloudStack pick the zone’s default. |
| Root disk size | Grows the root disk at deploy. Empty keeps the template’s size. |
| Data disk offering | An optional extra data disk. |
| Hostname template | Generates hostnames from the service number with {{id}}. Empty lets the customer choose. |
Connect CloudStack in four steps
- 01Generate API keysIn CloudStack, open your admin user and generate an API key and secret key.
- 02Install the pluginInstall CloudStack Provider from the marketplace in your FluxBilling admin panel. It is free.
- 03Enter the connectionThe API URL, both keys and, if the servers should belong to a particular account or project, its IDs — the fields on the right.
- 04Build a product and test itPick a service offering, zones and templates on a product, then place one test order before you sell it.
- API URLThe management server’s API endpoint, ending in /client/api.
- API key and secret keyThe admin user’s key pair. The secret key only signs requests.
- Domain, account or projectOptional: who owns the servers. Empty uses the API key’s own account.
- Template filterWhich templates the product form lists: usable, featured, your own or community.
- Keep destroyed machinesOff: termination expunges the instance at once. On: it stays destroyed and recoverable until CloudStack’s expunge delay.
The invoice drives the instance
| When | The plugin |
|---|---|
| Invoice paid | Deploys the instance as described above. |
| Overdue past your grace period | Suspends: a clean shutdown, forced off if the guest does not respond. Disks are untouched. |
| Paid after suspension | Unsuspends: the instance is started again. |
| Upgraded | Moves the instance to the new product’s service offering — live when CloudStack’s dynamic scaling allows it, otherwise with a stop and start — and grows the root disk if the new product sets a larger size. |
| Terminated | Destroys and expunges the instance with its volumes, or leaves it destroyed if you keep destroyed machines. |
Grace periods, reminders and the order in which renewals, payments and suspensions run are platform settings shared by every service — see Billing and Provisioning.
What it does not do
- Servers belong to one CloudStack account — the API key’s own, or the domain, account or project you set. Customers do not get their own CloudStack logins.
- Password reset works on password-enabled templates only; on cloud-init templates the root password changes by reinstalling. Setting the customer’s chosen password on password-enabled templates needs CloudStack 4.19 or newer; older versions generate one, which the customer is shown.
- The web console needs CloudStack 4.18 or newer.
- Extra IPv4 addresses are added as secondary IPs on the instance’s network card; the guest operating system has to configure them.
- Backups and snapshots are not offered through the plugin.
- Addresses come from CloudStack’s networks, not from FluxBilling’s IPAM.
Apache CloudStack and FluxBilling, answered
- Is there a CloudStack billing system that does not need WHMCS?
- Yes. FluxBilling is the billing system, the client area and the provisioning in one product, so the CloudStack plugin connects straight to it — there is no WHMCS module to buy or maintain in between.
- What does the CloudStack plugin cost?
- Nothing. It is listed free on the FluxBilling marketplace and installs on every tier. Your FluxBilling plan is priced by the clients you bill, not by instances.
- Which hypervisors does it work with?
- Whatever your CloudStack zones run. The plugin talks to CloudStack’s API, not to the hypervisors, so KVM, VMware and XenServer zones look the same to it. Growing the root disk at deploy depends on the hypervisor and the template.
- How is the root password set?
- Linux templates with cloud-init get it through user data on first boot, together with the hostname and root SSH login. Password-enabled templates get it from CloudStack’s password service; before CloudStack 4.19 that service generates its own password, and the customer is shown that one.
- What if provisioning is retried?
- The plugin names each instance after the service, so a retried order finds the instance it already built and reuses it instead of deploying a second one.
- What happens when a customer does not pay?
- Once the invoice passes your grace period the instance is shut down, with its disks left intact. Paying starts it again. Termination destroys and expunges it.
Apache, Apache CloudStack and CloudStack are trademarks of The Apache Software Foundation. FluxBilling is not affiliated with or endorsed by its owner; the name is used only to say which software the plugin connects to. Plugin facts read from plugin version 1.0, October 2026.
Around the CloudStack plugin
- All pluginsPayment gateways, hypervisor panels, game panels and notifications — every one free on the marketplace.
- ProvisioningHow a paid order becomes a running service, for every provider.
- Proxmox VE pluginFor KVM clusters run with Proxmox VE rather than a cloud orchestrator.
- VPS moduleKVM on your own machines without a third-party panel, with live migration and IPAM.
- Billing software for VPS providersHypervisor coverage, resize and proration, and suspension that reaches the hypervisor.
- PricingTiers from Lite to Business, and the 14-day refund.
Try it on your own data. Refund inside 14 days if it’s not the fit.
Pick a tier and provision a tenant in under two minutes — isolated K3s namespace, your own database, the full product. If FluxBilling isn’t the right fit inside 14 days, open a ticket and we’ll refund the subscription. No sales call, no qualification gate. Want to look around first? The live demo opens the admin and client panels with sample data, no signup.
- 01.< 1 minPick a tierLite from €4.95/mo. Upgrade later, no migration.
- 02.< 2 minProvision the tenantIsolated K3s namespace + your own PostgreSQL database. Full product, your data.
- 03.d0 — d14Refund inside 14 daysNot the fit? Open a ticket within 14 days and we refund the subscription. No questions, no qualification gate.
