Cloud VPS 6 GB
Most popularAn OCPP central system for a small charging network.
$24.99per month
- 6 GB RAM
- 4 vCPU cores
- 100 GB NVMe SSD
- 30 TB
- Unlimited
Deploy CitrineOS hosting and run a self-hosted OCPP central system for your EV charging stations, with a REST API and Swagger documentation behind a Basic Auth gateway. xCloud starts the pinned server with PostGIS and RabbitMQ, generates every password and publishes the API and a separate station WebSocket domain over HTTPS. You register each charging station yourself over SSH, and the operator dashboard is not included.
CitrineOS is an open-source project that provides a modular server runtime for managing electric vehicle charging infrastructure, released under the Apache License 2.0. Upstream describes charging station management logic and OCPP message routing, and the template's server speaks OCPP 1.6, 2.0.1 and 2.1 to stations over WebSocket with a REST API and Swagger documentation. Self-hosted CitrineOS is the option for operators who would otherwise rent a hosted charging platform such as ChargePoint or Monta.
On xCloud the template runs ghcr.io/citrineos/citrineos-server v2.0.1 with PostGIS 16, RabbitMQ and an nginx Basic Auth gateway, all pinned, as one install with two volumes. Stations connect on their own domain using basic authentication and must be registered first. The unauthenticated OCPP port and the TLS security profiles are not published, and the operator dashboard, Hasura and OCPI server are not included.
Self-hosting an OCPP central system normally means a database, a message broker, a domain and a certificate before a single charging station can connect. This is the same result without assembling any of it.
Step 01
Create your xCloud account, pick CitrineOS from the OneClick catalog, and choose a domain for the API plus a domain for charging stations.
Step 02
One click. We bring up the pinned CitrineOS v2.0.1 image with its PostGIS database and RabbitMQ broker, generate the API credentials, and publish the API and station WebSocket over HTTPS on your domains.
Step 03
Open the HTTPS API address, sign in as citrineos with the generated password, and open /docs. Register each station over SSH with register-station, then point it at the station WebSocket with its ID and printed password.
CitrineOS runs in full here — the same OCPP central-system tooling an EV charging network needs, on infrastructure you control.
Connect charging stations to a dedicated wss:// address using whichever OCPP version your hardware supports.
A documented REST API at /docs, gated by a generated Basic Auth login, so you can inspect and drive the station fleet directly.
Each station authenticates with its own ID and password; an unknown station is refused.
The server, a PostGIS database and a RabbitMQ broker run together in one install, with no separate services to provision.
An nginx gateway protects the whole API domain, including the Swagger page, because upstream ships with a local bypass that accepts every request as an administrator.
Station and transaction data live on named volumes and survive an xCloud Restart.
Managed hosting for CitrineOS, so the parts that keep it online are not your problem.
Connect your own chargers over OCPP and keep stations, sessions and tariffs in a PostGIS database on a server you control.
Point test chargers at the station WebSocket, using OCPP 1.6, 2.0.1 or 2.1, and inspect messages and stored data through the REST API.
Use the REST API and its Swagger documentation to create and read records from your own tools, behind the Basic Auth gateway.
Hold transaction records on your own Cloud VPS instead of a third-party platform, with a database volume you back up yourself.
Dedicated Cloud VPS sizes, pre-configured for CitrineOS hosting. Pick the one that fits, and resize any time.
An OCPP central system for a small charging network.
$24.99per month
More stations, more transaction history.
$59.99per month
CitrineOS alongside a whole self-hosted stack.
$84.99per month
Every size is a dedicated Cloud VPS we provision, patch, monitor and restore. Billed monthly with no lock-in — delete the server and the unused balance comes back to your account. CitrineOS itself is free and open source under the Apache License 2.0.
Connect any VPS — DigitalOcean, Vultr, Linode, AWS, Hetzner or bare metal — and deploy CitrineOS on it through the same panel, for a per-server management fee instead of a Cloud VPS rental.
Start your journey without cost.
$0forever
Your rate with 2–5 servers connected.
$5per server / month
The same platform, discounted at 6–10 servers.
$4per server / month
The same platform, discounted at 11+ servers.
$3per server / month
Priced per connected server, so your rate adjusts automatically as you add or remove servers. You pay your own provider for the server itself.
CitrineOS on xCloud runs on a dedicated Cloud VPS that we provision, patch, monitor and restore. Deploy faster. Own the server. Stay in control.
Deploy faster using an xCloud Managed Server built with optimized stacks and high-speed SSDs.
Protect your infrastructure with a free SSL certificate and more advanced security features at no additional cost.
From Server creation to application deployment, everything can be managed from our intuitive control panel.
See why agencies, developers, startups, and growing businesses choose xCloud to power their projects.
xCloud works really well, I am surprised by its performance being this the release version, I have tried many paid platforms such as runcloud, cloudpages or serveravatar, as well as free platforms such as CyberPanel, CloudPanel or Hestia Control Panel and direct competitors such as SpinupWP and FlyWP. Of all those that I have tried, the platform that works best for WordPress is SpinupWP and I believe that xCloud can reach and surpass that development, its roadmap is promising. Congratulations to the xCloud team, I hope they become the leading platform in the segment, it has all the potential to achieve it!
Brian GeovannyI've been with runcloud for the last 3 years. However, after trying xcloud for the last month, I'm switching over. They are on a roll with their setup.
Kevin PinedaI'm moving my servers to xCloud, a cloud control panel by M Asif Rahman and the WPDeveloper team. Their roadmap looks interesting and no, there are no team mates nor API limits with xCloud! #xCloud #wordpress #hosting
Leo KooHow Cloud Nine Web Elevated Client Experience While Streamlining Hosting Operations using xCloud
Ed EllinghamxCloud is like having an expert server team on call — without the big agency costs. It's given me back my time and given my clients peace of mind. Highly recommended for freelancers and small teams who want reliable performance and security.
Dumitru ButucelxCloud isn't just a solution. It's like one of that friend who got your back when you screw things up pretty bad.
Waqar AhmedTrust me when I say, once people explore the potential of xCloud they gonna switch from other panels, just keep delivering the best tech, lots of love for the team 😍😍
Rahul SinghSo far my experience has been smooth like silk. I didn't imagine that configuring and managing a VPS would be so easy. As of today, I have deployed 8 sites. The support is good, and they treat users with respect, even if they ask stupid questions (myself included). For the future, I hope for greater flexibility in scheduled backups and more comprehensive and consistent documentation. I'm sure that within a few months, xCloud will become the leader in its segment. This community is amazing, and the Staff here is super helpful.
Massimo VillaCame from cloudways then to runcloud then to xcloud. Looks like I'm staying here.
Gerson ElI've recently taken all of my Vultr-hosted sites and gotten rid of cPanel for them to substitute it with xCloud. I have to say, I'm really impressed with xCloud so far! The interface is definitely the standout feature for me.
Tony LewisI came from Cloudways and won't go back. Highly impressed with xCloud. Glad I gave them a chance.
Jared McDowellI like xCloud better than RunCloud, but one thing I'll point out is that some years ago RunCloud was hungry for business, the support was outstanding, and the community was active and helped each other. Maybe it was sold, there was a change in management, or they stopped being hungry, but the quality of the RunCloud offering declined and it hasn't been moving forward quickly. My point is that currently the xCloud team has the edge and it is theirs to keep or lose
David McCanHow Kevin Heinrichs Cut Hosting Costs by 84% While Running WooCommerce & Node.js Sites Efficiently
Kevin HeinrichsI had 150 sites on cloudways and am in the process of moving them to xcloud. Much faster and better priced.
Dan SpinozaDear xCloud Team, I have been using xCloud for some time now and am genuinely impressed with its capabilities and the flexibility it offers by allowing users to bring their own VPS for management. It's a fantastic service, and my experience so far has been very positive. Successful migrated 5 sites on a single server. Xcloud migration tool worked great. There were few hiccups with security plugin like MalCare but disabling the plugin prior to migration worked just fine.
Rahil MaknojiaCame from runcloud. Tried xcloud and never came back.
Karl FanegaHow Advanced Web Strategies Saved Over $2,000 & Recovered 56 Hours per Month Managing 70+ Client Websites
Gary MoodyxCloud gave me what no other hosting platform could: the flexibility of a VPS with the convenience of managed WordPress. As a solo founder running an entire business on one server, that combination is an important unfair advantage.
Jorge de los Reyes MartínezI use Server Avatar and xCloud and I'll sooner use xCloud than Server Avatar personally.
Jay PaganoHow Newman Web Solutions Ensured Perfect Uptime and Seamless Scaling For 120+ WordPress Sites with xCloud
Lori NewmanI too have moved over to xCloud. It's pretty sweet. One click n8n and uptime Kuma apps
John ApertureI went from Cloudways to xCloud. No intention on switching in the foreseeable future.
Blaine MooreFeel free to contact us with any questions or concerns you may have.
CitrineOS is used to run the central system for EV charging stations. Chargers connect to it over OCPP, and it records stations, locations, transactions, tariffs and authorisations, exposing them through a REST API with Swagger documentation. It suits operators who want to own the software behind their charging network.
Yes. CitrineOS is open source under the Apache License 2.0, and the central system itself costs nothing. xCloud bills for the Cloud VPS that carries the server, PostGIS and RabbitMQ, and for the deployment. Charging hardware, payment providers and certificate authorities you add are separate.
Yes. For CitrineOS Docker hosting the template runs the citrineos-server v2.0.1 image, PostGIS, RabbitMQ and an nginx gateway, all pinned by digest, with two named volumes. It generates the gateway, database and broker passwords, and the database migrations run when the server starts.
The manifest floor for CitrineOS is 512 MB of RAM with a single core and 5 GB of disk, across four containers. The first start applies database migrations and can take a few minutes. The 6 GB tier on this page leaves room as the number of stations and stored transactions grows.
The server speaks OCPP 1.6, 2.0.1 and 2.1 over WebSocket to charging stations. This template exposes the station endpoint with security profile 1, which means basic authentication and registered stations only. The unauthenticated profile 0 port and the TLS profiles 2 and 3 are deliberately not published.
Register the station first over SSH with the register-station command and its ID, which prints a password if you do not give one. Then point the station at wss:// on your charging stations domain followed by its ID, using the ID as username and that password. Unregistered stations get a 404 and wrong passwords a 401.
Open the API address and sign in with the username citrineos and the generated API password from your credentials. Upstream ships with a local bypass that accepts every request as an administrator, so the template keeps it and puts an nginx Basic Auth gateway in front of the whole API domain, including the /docs page.
Back up the ocpp_db_data volume, which holds the PostgreSQL database with stations, locations, transactions, tariffs, authorisations and the device model. The amqp_data volume holds RabbitMQ data and the broker account. CitrineOS keeps no other state. Keep copies off-server and test a restore.
Version v2.0.1 and its companion images stay pinned by digest, so a template change never alters a running install. When xCloud publishes a newer CitrineOS template version, back up both volumes, read the upstream release notes, and adopt that template version. Pending migrations run before the server starts.
Not in this template. The published dashboard image has its GraphQL address compiled in at build time, and Hasura's stock configuration has no admin secret, so both are left out. You work through the REST API and its Swagger page. OCPI is not included either. Check upstream before promising a dashboard.
Yes. CitrineOS cloud use starts with a dedicated Cloud VPS holding the server, database and broker, with two domains and certificates attached, one for the API and one for stations. A server rented from another provider can join as self-managed with the same template.
Yes. There is no lock-in — cancel any time. Hosting is billed monthly and charged for what you actually use, so when you delete the server the unused balance is refunded to your account, less up to 10% in payment-processing fees.
Connect your first server in minutes. No plan you have to grow into.