Software
Zephyr
node.js hosting billing automation platform - replaces WHMCS, Hostbill etc
latest v1.316.3
Provisioning: connecting what you already run
Which panels and providers are supported, and what happens on a paid invoice.
Zephyr does not host anything itself. It calls whatever you already run.
What is supported
| For | Plugins |
|---|---|
| Hosting panels | kstack, cPanel, Plesk, DirectAdmin, Enhance |
| Compute | Proxmox, Hetzner Cloud, OpenStack |
| Bare metal | Redfish, Hetzner Robot |
| Registrars | CentralNic, eNom, OpenSRS |
| Payments | Stripe, PayPal, Mollie |
What happens on a paid invoice
- The payment is recorded and the invoice becomes paid.
- The provisioning listener walks the order’s items.
- For each item with a provisioning plugin, it calls that plugin to create the account.
- A service row is written and
service.createdis emitted.
A failure is retried with backoff, and the reason is stored on the service rather than lost to a log.
What happens when an invoice is not paid
Dunning runs the same path in reverse: reminders, then suspend, then terminate, each at a threshold you set. Suspension calls the plugin — it is not only a flag in the database.
A word on pay-first flows
Billing before acting means any downstream failure is a customer charged and not served. Whatever you connect, make sure you have an operator retry for the provisioning step — and test it before you need it.
Last updated 9/20/2026

