Connect your project
- Open Services & integrations → Hetzner Cloud.
- In Hetzner Console, choose a separate project for your customer servers.
- Go to Security → API Tokens and create a Read & Write token.
- Paste it into PayRequest and select Save connection.
All project servers and private notes
The integration page lists all servers in the connected project, including servers you created outside PayRequest. Select Refresh server list to update their names, status, IP addresses, type and location. The Subscription column links to the PayRequest subscription when the server was provisioned through this integration or manually linked. Other servers show Not linked to a PayRequest subscription. Reading the server list never imports an existing server as a managed service, attaches it to a customer or performs a server action. Use Edit notes to keep private notes of up to 4,000 characters per server. Only your business owner account can access these notes. Refreshing the list preserves them. If a server is no longer found, its row and notes remain available with that status.Create a VPS product
Select Create VPS subscription to open the full product wizard. Choose:- Your Hetzner connection, server type and location.
- A compatible system image and an existing project SSH key.
- Your selling price, currency and monthly or annual billing.
Delivery and customer controls
Delivery starts only after a positive, fully paid order or a paid invoice line belonging to that subscription. The initial order and its invoice cannot deliver two servers or grant two periods. Payment verification and pending bank transfers do not deliver a server. The customer’s subscription has a Server tab with IP addresses, configuration, the last synchronized status and the paid-until date. Primary customers and enabled admin or operations contacts can request start, graceful shutdown and restart during paid access. Billing and viewer contacts cannot operate the server. Each action checks current customer, shop, contact permissions, payment state and server identity. Actions run asynchronously at Hetzner. Use Refresh server details to check the result; the accepted request is not proof of completion. Status and pending actions are also reconciled every five minutes.Cancellation, unpaid periods and deletion
Cancellation preserves customer controls through the remaining paid period. Expired, paused, archived or reversed paid access blocks customer controls. A credit against the latest paid invoice also requires owner review. None of these conditions automatically deletes server data. Only the business owner can delete a managed server through PayRequest. Deletion requires the exact server name, a reason and confirmation that customer readiness, remaining paid access, backups and exports have been addressed. This permanently destroys the server; it does not cancel the subscription, credit invoices or remove unrelated resources. Additional IPs, volumes or other resources may still incur costs.Uncertain delivery or actions
If a response is lost, PayRequest looks for the original server using its unique name and ownership labels. It does not blindly create another server. After at least ten minutes, the owner can use Verify and retry creation to check for the original server before permitting another attempt. Uncertain power actions are blocked from automatic repetition. Check the server in Hetzner Console, then record a manual review after ten minutes. This clears the block without repeating the action. A server deleted or removed outside PayRequest is never recreated automatically. Do not rename managed servers or change theirpayrequest.io/ labels: identity mismatches block actions. A replacement token must belong to the same project; resolve uncertain operations before rotating it.
This integration manages Hetzner Cloud VPS servers. Dedicated servers through Robot, automatic resizing, cloud backups, usage-based billing are not supported by this integration.
Link an existing server to a subscription
Open Services & integrations → Hetzner Cloud. Find the existing server and click Link to subscription. Search by subscription name or number, select the subscription and confirm. Search by the subscription number shown in your dashboard when several subscriptions have similar names. The association appears in the server list and the business subscription detail. Each server and subscription can have one association. To change it, unlink the current association first. Private server notes are preserved. This is an administrative association. It preserves existing billing and server settings and does not enable automatic provisioning, customer server controls or deletion. Reboot and console access are separate options you can enable after linking. Products configured for automatic Hetzner delivery cannot be manually linked.Let customers restart an existing server
After linking an existing server, enable Allow customer reboot in the server list. This permission applies to the linked subscription’s current customer. It is off by default, and unlinking removes the permission. The customer sees a Server tab with server details and a confirmed normal restart action while the subscription is active. Primary customers and admin/operations contacts may restart; billing and viewer contacts cannot. Changing the customer requires enabling access again. This does not grant console, root, shutdown, rebuild or deletion access. If a restart result is uncertain, check the server in Hetzner Console. PayRequest blocks further restarts until the previous result is confirmed or the business owner explicitly reviews the blocked action after ten minutes. It never repeats a timed-out restart automatically.Open a server console
In Services & integrations → Hetzner Cloud, enable Allow console for the linked server. This is a separate permission from reboot access. It applies to the selected subscription and its current customer. Changing the customer requires enabling access again; unlinking clears the permission. Console access is also available for PayRequest-provisioned servers with valid paid access. The customer opens the Server tab, clicks Open console, then Connect. Refresh, reboot and console actions are grouped in one responsive toolbar with icons. A full-screen window within the same subscription page provides the VPS screen and keyboard through Hetzner VNC. Closing the modal disconnects the browser console. The customer signs in with their own Linux username and server password; PayRequest does not sign in automatically or reset passwords. The console is available to the primary customer and enabled admin/operations contacts on an active subscription. Billing/viewer contacts cannot connect. Console connection credentials are issued only after Connect. Hetzner allows one minute to establish the connection; an established connection can last longer. PayRequest keeps these credentials only in browser memory, without analytics, session recording, URL parameters or stored credentials. Click Disconnect to close the browser connection. Log out of Linux first: disconnecting VNC does not end the server’s login session. The browser checks access every 15 seconds and closes the console after 30 minutes. Disabling access blocks new credentials immediately. Hetzner’s direct WebSocket connection cannot be forcibly revoked by PayRequest after it has been established; client checks are best effort, not provider-side session revocation. Review existing Linux sessions separately when removing access.Customer console steps
1
Open your server
Sign in to the business’s customer portal, open My services, select your subscription and choose Server.
2
Connect
Select Open console, then Connect in the full-screen window. Keep the window open while the connection starts. No new browser tab is needed.
3
Sign in to Linux
Click inside the server screen to use your keyboard. Enter your own Linux username and server password. An SSH private key does not sign you in through this console. Ask your hosting provider if you do not have console login details.
4
Finish your session
Log out of Linux, then select Disconnect or Close console. Closing the window disconnects the browser but does not log out of Linux for you.
Troubleshooting
Wait before opening a new console connection
Wait before opening a new console connection
Wait until the countdown finishes before selecting Connect again. PayRequest does not retry automatically. Avoid opening several sessions at once; after an uncertain response, the wait can be longer.
The console cannot connect
The console cannot connect
Refresh the server details and check that the server is running. Wait and try connecting again. If the issue continues, contact your hosting provider so they can check the server and project in Hetzner Console. A browser console is not an SSH connection and does not reset the server password.
The server status has not changed after a restart
The server status has not changed after a restart
Hetzner processes actions asynchronously. Use Refresh server details to check the result. An uncertain action is not automatically repeated; the business owner must review it before another attempt.