A client orders a dedicated server at 2 AM. Your on-call engineer gets paged, logs into three different systems, allocates hardware, assigns IPs, kicks off an OS install, updates the billing system, and emails the client their credentials. The whole process takes 45 minutes if everything goes smoothly. If the IPMI is unresponsive or the wrong subnet is selected, it takes longer.
This is how most hosting providers still operate. Manual provisioning is slow, error-prone, and does not scale. Every new client means the same repetitive steps. Every mistake means a support ticket and a frustrated customer.
FluxBilling automates this entire workflow. From the moment a client places an order to the moment they receive their server credentials, every step runs without human intervention.
The Problem with Manual Provisioning
Manual server provisioning has three core problems:
It is slow. Even experienced engineers take 15-30 minutes per server. During sales surges or when multiple orders come in overnight, clients wait hours or even days for delivery.It is error-prone. Copy-paste the wrong IP, select the wrong OS image, forget to update the inventory. These mistakes happen regularly when humans perform repetitive tasks, and each one generates a support ticket.It does not scale. Hiring more engineers to handle more orders is expensive and creates training overhead. Every new team member needs to learn your specific provisioning workflow, which is usually undocumented and lives in someone's head.How FluxBilling Automates the Full Lifecycle
FluxBilling breaks server provisioning into discrete steps, each of which can be automated independently. The full lifecycle looks like this:
1. Order Placement and Payment
The client selects a product, chooses their configuration options (OS, control panel, additional IPs), and completes payment. FluxBilling creates the service record and triggers the provisioning flow.
This step is standard for any billing platform. What happens next is where automation diverges from manual processes.
2. Automatic Server Allocation
FluxBilling's allocation engine matches the ordered product against available inventory. The matching rules are configurable per product:
- CPU requirements — Match by model, core count, or equivalence groups (e.g., an E-2388G can substitute for an E-2386G)
- RAM requirements — Minimum and exact matching
- Storage requirements — Match by type (NVMe, SSD, HDD), capacity, and RAID configuration
- Location — Datacenter and rack preferences
3. IP Address Allocation
Once a server is assigned, FluxBilling's IPAM system allocates IP addresses automatically based on rules configured per product:
- Primary IPv4 — Allocated from a designated subnet, respecting gateway and broadcast exclusions
- Additional IPs — If the client ordered extra IPs, they are allocated from the same or a specified subnet
- IPv6 — A /64 block from the appropriate pool
- VLAN assignment — The IP is associated with the correct VLAN for the datacenter and rack location
4. OS Installation
FluxBilling supports multiple provisioning backends through its visual plugin system:
- OpenStack Ironic — Bare metal provisioning for physical servers via PXE boot, supporting standard disk images
- IPMI/Redfish — Direct hardware control for power management, boot order, and console access
- Custom flows — Any provisioning system with an API can be integrated using the visual plugin builder
5. Client Notification
Once provisioning completes, FluxBilling sends the client their access credentials via email. The email template is customizable and includes:
- Server IP address and hostname
- SSH credentials or key confirmation
- Control panel URL (if applicable)
- Quick start documentation links
The Visual Plugin System
The automation described above is powered by FluxBilling's visual plugin system. Instead of writing PHP modules or shell scripts, provisioning workflows are built as visual flows using a drag-and-drop node editor.
How It Works
Each flow is a directed graph of nodes:
- Trigger nodes start the flow (e.g., "Service Created", "Payment Received")
- Action nodes perform operations (e.g., "API Call", "Set Variable", "Send Email")
- Logic nodes control flow (e.g., "If/Else", "Switch", "Loop")
- Data nodes transform data (e.g., "Map Fields", "Parse JSON", "Template")
- Trigger: Service Created
- API Call: Create VM on Proxmox node (POST /api2/json/nodes/{node}/qemu)
- Wait: Poll VM status until running
- API Call: Get VM IP address
- Update Service: Save IP and credentials to service record
- Send Email: Client notification with access details
Supporting Multiple Providers
Each provisioning provider (Proxmox, Virtualizor, bare metal) has its own visual flow. When a client orders a product, FluxBilling runs the flow associated with that product's category. This means you can support multiple infrastructure types simultaneously:
- VPS products use the Proxmox flow
- Dedicated servers use the bare metal IPMI flow
- Game servers use the Pterodactyl flow
- Custom services use custom flows
Real-World Provisioning Workflow
Here is what a fully automated dedicated server delivery looks like end-to-end:
- 00:00 — Client places order and pays
- 00:01 — FluxBilling matches order to available server in inventory
- 00:02 — IPAM allocates primary IP, additional IPs, and IPv6 block
- 00:03 — Ironic begins PXE boot and OS installation
- 00:15 — OS installation completes, post-install scripts run
- 00:16 — Service record updated with IP, credentials, and access details
- 00:16 — Client receives email with server access information
- 00:16 — Client logs into portal and sees their server ready to use
Advanced: IPAM Auto-Allocation Rules
FluxBilling's IPAM allocation rules are configured per product and support sophisticated scenarios:
- Subnet selection — Choose which subnets to allocate from based on datacenter, rack, or VLAN
- Gateway handling — Automatically skip gateway and broadcast addresses
- Sequential or random — Allocate the next available IP or randomly select from available pool
- Reservation — Reserve IP ranges for specific clients or purposes
- Auto-allocatable flag — Mark subnets that should be used for automatic allocation vs. manual-only
Getting Started with Automated Provisioning
Setting up automated provisioning in FluxBilling involves three steps:
- Configure your inventory — Add your servers, racks, and network devices in the DCIM section
- Set up IPAM — Create your subnets, VLANs, and allocation rules
- Build or import provisioning flows — Use the visual plugin editor to create flows for your infrastructure, or import pre-built templates
WHMCS, Proxmox, Virtualizor, SolusVM, and Pterodactyl are trademarks of their respective owners. FluxBilling is not affiliated with or endorsed by any of these companies.



