Billing for OpenStack clouds that boots the server when the invoice is paid
Connect one project of an OpenStack cloud with an application credential, or a user name and password. A paid order boots a server in the availability zone the customer picked, from the product’s flavor and the chosen OS image, gives it a public address and records the login. The customer gets power controls, a web console, reinstall, password reset, rescue mode and snapshots; an overdue invoice stops the server, and termination deletes it with its boot volume, floating IPs and snapshots.

The plugin is free. Your cloud stays as it is.
The OpenStack 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-server or per-region charge for servers this plugin manages.
OpenStack keeps running your cloud. The plugin logs in to its identity service with a credential you create and finds compute, networking, images and block storage in the cloud’s service catalog; a member of the project that owns the servers is enough.
- Plugin price
- Free
- Available on
- Every tier
- Authentication
- Application credential, or user name and password
- Placement
- The availability zone chosen at checkout
- IPv4 per order
- 1 to 4; floating IPs on private networks
- Requires
- FluxBilling 0.0.1415+, compute API 2.67+
- Plugin version
- 1.0
From a paid invoice to a running server
The plugin logs in to the cloud at the start of every task and waits for the server to reach each state before it moves on.
- 01OrderThe customer picks an availability zone and an operating system from the ones the product offers, a hostname, a root password and, optionally, an SSH public key.
- 02Check the flavor and imageThe plugin reads the product’s flavor and the chosen image, tells Linux images from Windows ones, and refuses a flavor without a root disk unless the product boots from a volume.
- 03Reuse or bootEvery server carries a tag with its service number. If an earlier attempt already built it, it is reused — a retried order never boots a second one. Otherwise the server boots on the product’s networks and security groups, from the image or from a new block storage volume of the product’s size and type.
- 04Set up the guestLinux images with cloud-init receive the hostname, the root password, root SSH login and the customer’s SSH key on first boot. Windows images get the Administrator password through cloudbase-init.
- 05Wait and hand overOnce the server is active it gets a floating IP if it sits on a private network, plus any extra IPv4 addresses ordered, and the address, IPv6 and login are stored on the service. A server that fails to build is deleted instead of left behind.
What the customer can do with an OpenStack server
The service page is drawn from the plugin, so every button maps to something the cloud can actually do.
Staff side. Staff see the same page with the access credentials, the flavor, the cloud’s own server state and its last fault, and run reinstalls, password resets and rescues on the customer’s behalf.
A flavor becomes a product
Each product points at one flavor and lists the availability zones, OS images and networks it may use.
| Setting | What it decides |
|---|---|
| Flavor | The vCPU, RAM and disk every server sold with this product gets. |
| Availability zones offered | The zones the customer chooses from; the first is used when they do not choose. |
| OS images offered | Offered at checkout and for reinstall. Linux images need cloud-init, Windows images cloudbase-init. |
| Networks | Attached in order; the first carries the main address. Empty lets the cloud pick, which works when the project has one usable network. |
| Floating IP network | For servers on a private network: each gets a public floating IP from this external network. Empty when the servers sit on a provider network. |
| Security groups | The groups to attach, or Open All Ports for one shared allow-all-inbound group, like a plain VPS. |
| Boot volume size and type | Boot from a block storage volume instead of the flavor’s disk — required for flavors without one. Empty keeps the flavor’s disk. |
| Staff SSH key | An optional key pair of the API user, put on every server for staff access. |
| Hostname template | Generates hostnames from the service number with {{id}}. Empty lets the customer choose. |
Connect OpenStack in four steps
- 01Create an application credentialIn the project that will own the servers, create an application credential with the member role — or use a user name and password.
- 02Install the pluginInstall OpenStack Provider from the marketplace in your FluxBilling admin panel. It is free.
- 03Enter the connectionThe identity URL and the credential, optionally a region and endpoint interface — the fields on the right — then run Test Connection.
- 04Build a product and test itPick a flavor, availability zones, OS images and networks on a product, then place one test order before you sell it.
- Identity URLThe cloud’s identity endpoint, with or without /v3. Every other endpoint comes from its service catalog.
- Application credentialIts ID and secret, from the project that owns the servers. Or a user name and password with their domain and project.
- Region and interfaceWhich region and which catalog URLs to call. Empty region uses the first one listed; public unless FluxBilling runs inside the cloud’s network.
- Endpoint overridesOptional compute, network, image and block storage URLs, for when a catalog URL is unreachable from FluxBilling.
- Suspend methodStop, suspend to disk or shelve. Shelving frees the hypervisor but takes longer to bring back.
- Snapshots and usageHow many snapshots a customer may keep (0 turns them off), and whether to read CPU, memory and traffic figures, which the cloud allows only to the admin role.
The invoice drives the server
| When | The plugin |
|---|---|
| Invoice paid | Boots the server as described above. |
| Overdue past your grace period | Suspends: the server is stopped, suspended to disk or shelved, as you set. Disks are untouched. |
| Paid after suspension | Unsuspends: the server is started, resumed or unshelved. |
| Upgraded | Resizes the server to the new product’s flavor, confirms the resize, and grows the boot volume if the new product sets a larger size. |
| Terminated | Releases the floating IPs, deletes the server with its boot volume, and removes the snapshots taken through the panel. |
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 OpenStack project — the one the credential is for. Customers do not get their own cloud logins.
- CPU, memory and traffic figures need an account with the admin role; with a member account the client area shows vCPU, RAM and disk only.
- Password reset needs the guest agent in the OS image; without it the root password changes by reinstalling.
- Needs FluxBilling 0.0.1415 or newer and compute API 2.67 or newer (Stein, 2019). Reinstall and snapshot restore of servers that boot from a volume need 2.93 (Zed); rescue mode for them 2.87 (Wallaby).
- Extra IPv4 addresses are added to the server’s port from the same subnet; the guest operating system has to configure them.
- No backups, custom ISOs or reverse DNS through the plugin. Snapshots are stored as images in the project, and addresses come from the cloud’s networks, not from FluxBilling’s IPAM.
OpenStack and FluxBilling, answered
- Is there an OpenStack billing system that does not need WHMCS?
- Yes. FluxBilling is the billing system, the client area and the provisioning in one product, so the OpenStack plugin connects straight to it — there is no WHMCS module to buy or maintain in between.
- What does the OpenStack 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 servers.
- What account does the plugin need?
- A member of the project that will own the servers — ideally through an application credential, which belongs to that one project and can be revoked on its own. Only the CPU, memory and traffic figures need the admin role, and the plugin leaves them off unless you turn them on.
- Which OpenStack releases does it work with?
- Clouds whose compute API reaches 2.67 or newer — Stein (2019) and later. Reinstalling or restoring a snapshot on a server that boots from a volume needs 2.93 (Zed), and rescue mode for such servers 2.87 (Wallaby).
- How does a server get a public address?
- On a provider network it gets one directly. On a private network, set a floating IP network on the product and each server gets a floating IP from it, plus one for every extra IPv4 address ordered. The floating IPs are released when the service is terminated.
- How is the root password set?
- Linux images with cloud-init get it on first boot, together with the hostname, root SSH login and the customer’s SSH key. Windows images get the Administrator password through cloudbase-init. Changing it later from the client area needs the guest agent in the image.
- What happens when a customer does not pay?
- Once the invoice passes your grace period the server is stopped, suspended to disk or shelved — whichever you chose — with its disks left intact. Paying brings it back. Termination deletes it with its boot volume, floating IPs and panel snapshots.
OpenStack is a registered trademark of the OpenInfra Foundation in the United States and other countries. This plugin is not affiliated with, endorsed or sponsored by the OpenInfra Foundation or the OpenStack community. 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 OpenStack 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.
- CloudStack pluginFor clouds run with Apache CloudStack: service offerings per zone, web console and reinstall.
- 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.
