Hetzner Cloud allows you to offer cloud server services to your clients. This module integrates with Blesta to automate the provisioning and management of Hetzner cloud servers, making it easy to provide scalable server solutions with an excellent client area interface.
From £64.99 - View Pricing
What Hetzner Cloud gives you
Runs on Blesta's cron with no manual upkeep, so everything stays up to date on its own.
Renaming the service in Blesta renames the actual server at Hetzner, so the two never drift apart.
Configure it independently for each brand on a multi-company install, so every company runs with its own settings.
Power on, power off, reboot, reset and shutdown are one click away, with the server's current state shown live beside them.
Clients boot into the Hetzner rescue system or reset the root password themselves, with the new credentials shown on the spot.
Every staff and client label ships in editable language files, ready to translate into any language or reword to match your brand.
Additional IPv4 and IPv6 addresses can be added or removed and the reverse DNS of any address edited, straight from the Networking tab.
A built-in demo mode runs the whole extension from bundled sample data, so you can trial every screen and action before you have an account or API key.
Inbound and outbound firewall rules are managed by protocol, port and source or destination from the client area, and applied to the server immediately.
Clients rebuild their server from the available system images, app images and their own snapshots, with a confirmation step so it can never happen by accident.
Mount and unmount ISO images on the server's virtual drive, and review every command carried out on the server with its start time, finish time, status and any error.
Clients create, resize and delete volumes up to the storage allowance you set on the package, and the exact commands to format and mount each volume are printed for them.
A welcome email template ships with the extension and loads onto any package in one click, already filled with the details the client needs to start using what they bought.
What it sends and what comes back is recorded in Blesta's own log, with credentials never written to it, so you can see exactly what happened without leaving your admin area.
CPU usage, disk IOPS and bandwidth, and network packets and bandwidth are plotted on the Manage tab, so clients can see how hard their server is working before they open a ticket.
Clients can paste an SSH public key at checkout and add or remove keys per service afterwards. A key already registered on the account is detected and reused instead of failing the order.
Clients get a working console in their browser with no extra software, complete with a pop-out window, Send Ctrl+Alt+Del and paste-from-clipboard, so a locked-out client can rescue themselves.
A paid order builds the server at the chosen location, type and image with the IPv4 and IPv6 addresses the package allows, and delivers the root password to the client, all without staff involvement.
Attach Blesta configurable options named for the package's own settings and clients pick their own sizing or extras at checkout, overriding or adding to the package defaults - so one package can sell your whole range.
Enable daily backups or a snapshot allowance per package and clients create, restore and delete them themselves. Tabs are hidden automatically on packages that do not include them, so nobody is shown a feature they did not buy.
Optionally warn clients by email once they pass a percentage of their bandwidth allowance you choose, suspend the server on overage, and unsuspend it automatically once usage recovers, leaving suspensions made for other reasons untouched. Extra bandwidth can be sold on top of the included allowance.

Sell Hetzner Cloud servers from Blesta with a complete self-service control panel built into your client area - console, reinstall, backups, snapshots, volumes and firewall included.
Selling Hetzner Cloud VPS hosting usually means either provisioning every order by hand or building your own integration against Hetzner's API. The Hetzner Cloud module connects Blesta directly to Hetzner, so a paid order builds the server automatically at the location, size and image your package allows, and hands your client a working root password with no staff involvement. From there, your clients manage their own server from a full control panel inside their Blesta client area - power controls, a browser-based console, backups, snapshots, volumes, networking, a firewall and more - so routine requests never need to reach your support queue.
If you encounter any issues or have suggestions for improving the module, please get in touch with us. We are committed to providing ongoing support and welcome your feedback.
Installing and updating extensions can now be done automatically through the Blesta Club Subscription Manager - this is the recommended way going forward.

Upload the extension folder into your Blesta installation so it lands under your Blesta directory at:
components/modules/hetzner_cloud/
For example, on a typical install: /var/www/html/blesta/components/modules/hetzner_cloud/
You're ready to go - see the usage guide for a walkthrough of day-to-day use.
Installing and updating extensions can now be done automatically through the Blesta Club Subscription Manager - this is the recommended way going forward.

Upgrading works just like installing: upload the new files over the old ones, then run the upgrade from the same page you installed it on.
{module.api_token} email tag was removed - update any email template that referenced it.
Go to Settings > Company > Modules, open Hetzner Cloud on the Installed tab, and click Manage. This lists every account (Hetzner Cloud project) you've connected, with its name and whether Mock API Mode is on. Click Add Account to add another, or Edit next to an existing one to rename it, replace its API Token, or toggle Mock API Mode. The API Token field is always left blank on edit - leave it blank to keep the current token, or paste a new one to replace it.
When creating or editing a package, choose Hetzner Cloud as the module and open its Module tab. Here you pick the Account the package provisions against, then the Location, Server Type and Image to build servers from. Below that you set what the package includes: Enable IPv4/IPv6 (with a count limit for each), a Volume Limit, Enable Backups, a Snapshot Limit, Additional Bandwidth (TB) on top of the plan's included traffic, Suspend On Bandwidth Exceeded, and a Bandwidth Warning Threshold (%) that emails the client as they approach their limit (leave it blank or at 0 to disable the warning). A package's Backups, Snapshot and Volume settings also control which of those tabs a client sees for their service - a tab is hidden automatically if the package doesn't include it. Every one of these fields can also be exposed as a configurable option, so clients can pick their own size or add-ons at checkout from a single package.
The package's Welcome Email tab is pre-filled with a template that includes the server name, IPv4/IPv6 addresses and root password - customize it like any other Blesta email template.
From a client's profile, use Add Service and choose the package. Along with the usual billing fields, you'll see the module's own fields: Name (the server's hostname) and an optional SSH Public Key textarea - paste a key here to have it injected into the server when it's built. Submit the form to provision the server immediately (or leave "provision using the module" unticked to create the service without touching Hetzner yet).
On a client's profile, open the Services section and click the arrow next to a Hetzner Cloud service to expand it. This reveals the server's ID, root password, IPv4 address, IPv6 address and name at a glance, without opening the full management page - handy for support lookups. Use the filter icon above the list to narrow it down by package if the client has many services.
When ordering a Hetzner Cloud package, clients fill in a Name for their server and can optionally paste an SSH Public Key to have it added automatically - if the same key is already registered on the account, it's detected and reused instead of failing the order.
From My Account > Services, click the arrow next to your Hetzner Cloud service to expand it and see your server's ID, root password, IPv4 address, IPv6 address and name without leaving the list.
The main management screen for the server. It shows the current power state (Running, Off, etc.), its IPv4/IPv6 addresses and price, an Actions menu for Power On/Off, Reboot, Shutdown and Reset, resource summary tiles (vCores, memory, storage, bandwidth), and live graphs for CPU usage, disk IOPS, disk bandwidth, network packets and network bandwidth.
A browser-based VNC console to the server - no extra software needed. Buttons let you send Ctrl+Alt+Del, paste from your clipboard into the console, or pop the console out into its own window.
Pick a system image, app image, or one of your own snapshots from the dropdown and click Reinstall to rebuild the server from it - you're asked to confirm before it actually happens, since this replaces everything currently on the server.
Shown only when your package includes backups. Lists your automatic daily backups with their size, status and Restore/Delete actions (each with a confirmation prompt), plus a Create Manual Backup button.
Shown only when your package includes a snapshot allowance. Shows how many of your snapshot slots are used, lets you create a new one from an optional description, and lists existing snapshots with Restore/Delete actions (each with a confirmation prompt).
Shows your IPv4 and IPv6 usage against your package's limits and your bandwidth transfer used this period. Lists your server's addresses with their reverse DNS, and lets you edit the reverse DNS of each one.
Manage inbound and outbound rules by source/destination, protocol and port, with Add Rule and Save Rules buttons for each direction. A firewall is only created at Hetzner once you save at least one rule.
Add a new key by name and public key, or remove one you added previously. Keys you add here are injected the next time the server is reinstalled or rebuilt - they are not applied to an already-running server.
Shown only when your package includes a volume allowance. Shows your volume count and total allocated size against your package's limit, the exact mkfs/mkdir/mount commands to format and mount a new volume, a Create Volume button, and a list of existing volumes with Resize/Delete actions (delete asks for confirmation first).
Boot the server into the Hetzner rescue system, or reset the root password - both show the result immediately once clicked.
Lists the ISO images available to mount on the server's virtual drive, with a Mount action for each. At most one ISO can be mounted at a time; you can then reboot into it to complete an installation via the Console tab.
A history of every command carried out on the server - what it was, when it started and finished, its status, and any error - useful for confirming an action actually completed.
v2.0.0 - 2026-09-11
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Editing a service name now renames the actual Hetzner server (with the same uniqueness check as ordering)
The traffic cron now auto-unsuspends a server once its bandwidth usage recovers, and can email the client a warning as they approach the limit (new package option: Bandwidth Warning Threshold)
Changing a service to a package with different backups settings now enables/disables Hetzner backups to match
Added SSH key management: an optional SSH public key at order time plus a per-service SSH Keys tab to add and remove keys
Added a welcome email template that includes the server name, IP addresses, and root password
Fixed the traffic check being registered a second time when upgrading, which made it run twice each cycle; existing duplicates are removed on upgrade
Fixed the Volumes tab accepting a volume id belonging to another server on the same Hetzner project, which let a client detach and destroy a volume that was not theirs
Fixed server, image, IP, firewall, volume and SSH key ids being put into API paths unencoded, so a crafted id could steer a request to a different Hetzner endpoint
Adding and editing a server now checks the extension licence, so a lapsed licence can no longer store or replace the Hetzner API token
Fixed the firewall editor shifting ports onto the wrong rules, or having Hetzner reject the whole rule set, whenever a rule used ICMP, ESP or GRE
Fixed a non-numeric configurable option value overwriting the package's own limits, which produced an error page on the Manage, Networking and Volumes tabs and stopped the bandwidth check for every service on the install
The server name uniqueness check no longer passes silently when the Hetzner API is unreachable or the token is rejected
Fixed suspension being blocked permanently for a service attached without provisioning (no server id stored)
Fixed several form labels printing their text in the wrong place and not focusing their field when clicked
The ISO Images tab now checks that the image being mounted is one it actually offered
Fixed the server status badge rendering blank when the server could not be reached, a missing reverse DNS entry breaking the Networking tab, and several unescaped view outputs
Fixed the package form rejecting a server type, location or image it had just offered, because saving the package validated against the wrong Hetzner project's row instead of the one selected on the form
Fixed a server's metrics id being put into the API path unencoded
Fixed a floating IP's reverse DNS clearing to blank in the Networking tab immediately after being saved
v1.0.4 - 2025-10-27
PHP 7.2 - 7.3, 8.1 - 8.4 · Blesta 5.x
Updated image fetching for the new Hetzner Cloud API
v1.0.3 - 2025-10-25
PHP 7.2 - 7.3, 8.1 - 8.4 · Blesta 5.x
Fixed service name validation
Reworked firewalls to create a firewall only if there are rules due to Hetzner 50 firewalls per account limit
v1.0.2 - 2024-09-21
PHP 7.2 - 7.3, 8.1 - 8.4 · Blesta 5.x
Blesta Club release
Get exactly what you need and want.
Requires PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Value: £65.55
Not sure whether to lease or own? Our FAQ explains how the licence types differ.
What our customers say
(0 customer reviews)
It is possible to leave a review only if you have purchased this extension or a Club tier which contains it.
We reserve the right to alter wording or formatting for presentation.
We will discuss any changes made and offer the option to withdraw review text if the changes can't be agreed on.
It may take up to 1 hour for a review to appear or update due to caching.
More extensions to explore
Module
Integrate BunnyDNS for automatic DNS provisioning and management.
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Module
Integrate Cloudmini for automatic cloud hosting provisioning.
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Module
Provision servers using Convoy, a Proxmox based VPS management panel
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Module
Integrate Datalix module into your Blesta install to provision VPS servers.
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Module
Integrate Enhance for automatic provisioning and management.
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Module
Integrate Links module to add and manage custom links for a purchase.
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x