PD DigitalOcean Databases for Blesta

PD DigitalOcean Databases — Sell Managed PostgreSQL, MySQL, MongoDB, Valkey, Kafka and OpenSearch as Native Blesta Packa

Sell managed PostgreSQL, MySQL, MongoDB, Valkey, Kafka and OpenSearch under your own brand — provisioned, billed and managed in Blesta

Made and supported by Projektif Digital Ltd. Runs inside PD Modules, the panel every module installs into.

Databases

PD DigitalOcean Databases lets a hosting company sell every DigitalOcean managed database as its own package line: PostgreSQL, MySQL, MongoDB, Valkey, Kafka and OpenSearch. Your customer orders on your Blesta order form, a dedicated cluster is built on your DigitalOcean account, and your customer manages it from the service page in your client area: connection details, trusted sources, password reset and activity, under your brand with no DigitalOcean login.

It is the module for hosts who want a full managed-database catalogue from one install. Each package you create is set to one engine, so "Managed PostgreSQL" and "Managed Valkey Cache" are separate things on sale, each with its own price and choices, served by the same module and the same DigitalOcean token. Selling just one engine? The focused edition for it does the same job.

Why hosts choose PD DigitalOcean Databases

Six engines from one install. One module, one licence, one DigitalOcean token and one set of admin screens run all six. Adding an engine later is a new package, not a new module to install and keep updated.

Each engine behaves like itself. Kafka always runs three brokers and shows the SASL_SSL guidance and CA download its clients need. Valkey customers choose their own memory policy. OpenSearch customers get their Dashboards address beside the credentials. Each engine gets its own connect command: psql, mysql, mongosh, redis-cli, kcat or curl.

Every order sets itself up. A paid order creates a dedicated cluster in the region, plan and version the customer chose, with no step by you. Nothing is shared between customers.

Nothing left billing. Cancelling deletes the cluster at DigitalOcean and confirms it is gone, and a retry can never leave a second cluster running unseen.

Customers help themselves. Connection details, a firewall they manage, password regeneration and an activity history sit on the customer's own page, which removes most of the tickets a database product brings.

You keep the margin. You pay DigitalOcean at its own price and set your own sell price, with no per-cluster fee to us. Two engines or more cost less here than as separate single-engine editions.

How it works

  1. Connect your DigitalOcean account. Add your DigitalOcean API token once under Settings → Company → Modules, using a token with Full Access, then press Test Connection.
  2. Create your package. Make one package per engine you want to sell, for example "Managed PostgreSQL" and "Managed Valkey". In each package's Module Options, pick the engine, then a default region, plan and name prefix. Blesta's cron activates the service after payment.
  3. Generate the checkout options. Open the module's Products page and press Generate options. It builds the package's Region, Plan, High availability and Engine version options from DigitalOcean's live catalogue, all priced at zero for you to set. Kafka, which always runs three brokers, gets three options instead of four.
  4. Your customer orders. They choose their options and pay. The cluster is built on your DigitalOcean account in the background, and the connection details appear on their own once it is online, usually within a few minutes.
  5. You get paid, they manage it. Blesta keeps billing as usual, and the customer copies the connect command and sets their own trusted sources.

What you get in Blesta

Selling and pricing

  • One product per engine: PostgreSQL and MySQL (each as Standard or Advanced Edition), MongoDB, Valkey, Kafka and OpenSearch
  • Checkout options generated from DigitalOcean's live catalogue for each engine: Region, Plan, High availability and Engine version
  • Regions and versions are read live from DigitalOcean
  • Generated choices start at zero in every currency and you price each one under Packages → Configurable Options; a sync never changes a price you have set
  • Choose which choices customers see at checkout; anything hidden uses your package's default and keeps its price
  • Clusters are named with your own prefix and the service number
The Products page: a Blesta package set to its engine, with checkout options
The Products page: a Blesta package set to its engine, with checkout options

Provisioning you can trust

  • High availability adds nodes for automatic failover: two on PostgreSQL, Valkey and MySQL Standard Edition, three on MySQL Advanced Edition, MongoDB and OpenSearch. Kafka always runs three
  • Moving a service to a package for another engine is refused with a message, never applied by resizing the old cluster
  • An order DigitalOcean would refuse is stopped with a clear message before anything is created; Atlanta, Richmond and Kansas City carry only Premium plans
  • Every cluster is recorded before DigitalOcean is asked to create it, and pressing Create again never builds a second one
  • A provisioning failure appears in the service's activity with its reason, never left at "Provisioning"
  • A plan change through Blesta's own plan-change flow resizes the running cluster in place; host, port and data are kept
  • Suspend replaces the trusted sources with a rule nothing matches: the cluster keeps running (DigitalOcean still bills it), the data is untouched, and the customer cannot lift the lockdown. Unsuspend restores exactly the sources saved
  • Terminating deletes the cluster at DigitalOcean with its users, databases and backups, and confirms it is gone. There is no retention period, so tell customers to take their own backup first

Choosing PostgreSQL and MySQL editions

  • PostgreSQL and MySQL each come as Standard Edition or Advanced Edition, chosen per package as its Engine
  • Advanced Edition needs no partnership with DigitalOcean and offers dedicated plans from 8 GiB RAM; a database keeps its edition, and a move to the other edition is refused rather than resized
  • Standard Edition PostgreSQL and MySQL get a Backups page listing DigitalOcean's daily backups; restores are done by you. Other engines show none

Running it day to day

  • A Clients & Databases panel lists every cluster against the service paying for it, with engine, plan, region, endpoint and state
  • An Activity panel records every provisioning and lifecycle action with its outcome
  • A report shows your licence, whether a DigitalOcean account is connected and how many databases you run
  • A cluster deleted outside your billing system is flagged to you
Clients & Databases: every service with engine, nodes, region and live state
Clients & Databases: every service with engine, nodes, region and live state

What your customers get

On Blesta the customer's pages are tabs on the service: Information, Trusted Sources, Backups (where the engine lists them) and Activity.

  • Connection details in one window: host, port, username and password (masked until Show, with Copy beside each), plus a ready-to-use connect command in the engine's own client: psql, mysql, mongosh, redis-cli, kcat or curl
  • The CA certificate as a download, for clients that ask for one; the connect command already uses TLS
  • Regenerate password in one click behind an in-page confirmation; the new password appears in the connection details
  • Trusted sources: add and remove the IPv4 addresses and ranges allowed to connect, with bad entries refused and changes applied within a minute
  • Recent activity: their latest actions, up to 40, each marked done or not
Connection details: masked password, a ready psql command and the CA certificate download
Connection details: masked password, a ready psql command and the CA certificate download
Trusted sources: customers manage their own access rules
Trusted sources: customers manage their own access rules
The Backups tab listing the daily backups for a PostgreSQL database
The Backups tab listing the daily backups for a PostgreSQL database
Activity: what happened on the database and when
Activity: what happened on the database and when

The firewall, connection details and backups pages are each a switch on the package: turn one off and it is hidden and refused. The pages render in Blesta's client theme, and every line of customer text is translatable, with overrides that survive updates.

Security built in

  • Your DigitalOcean API token is stored encrypted, only ever sent to DigitalOcean, and never shown on a customer page or in a customer message.
  • Each database password is stored encrypted and shown only to the signed-in owner of that service.
  • Every customer action needs a signed-in owner of the service and a valid security token.
  • When something fails at DigitalOcean, the customer sees a neutral message and the reason goes to your activity log.

One product, every feature

PD DigitalOcean Databases is one paid module with all six engines included and no add-on tiers. It installs into PD Modules in one click, updates itself, and uninstalls cleanly, leaving no orphans and modifying no Blesta files.

If your subscription ever lapses, your customers are not cut off. A running database is never stopped, deleted or altered. New provisioning and admin configuration lock first, customers see a neutral "temporarily unavailable" message with their connection details still visible, and cancellations still complete. Renewing restores everything with nothing lost.

Requirements

  • Blesta 6.0 or later on PHP 8.2 or later, with the ionCube Loader
  • A DigitalOcean account with billing enabled and an API token with Full Access
  • Blesta's cron running every minute, which finalises new clusters and confirms cancellations
  • PD Modules 0.2.322 or later, the free control panel every PD module installs into

Questions

Which database engines does it support?

Six: PostgreSQL, MySQL, MongoDB, Valkey (Redis-compatible), Kafka and OpenSearch. Each Blesta package is set to one engine, and you can sell several side by side.

Can I still sell large or highly available PostgreSQL and MySQL databases?

Yes, as DigitalOcean's Advanced Edition. From 15 October 2026 for DigitalOcean accounts that have never created a PostgreSQL or MySQL cluster, and from 30 November 2026 for every account, new Standard Edition clusters are limited to plans up to 4 GiB RAM with no standby or read-only nodes; existing clusters are not affected. Choose PostgreSQL — Advanced Edition or MySQL — Advanced Edition as the package's Engine for dedicated plans from 8 GiB RAM and high availability (two nodes for PostgreSQL, three for MySQL). Any DigitalOcean account can create Advanced Edition through DigitalOcean's public API; no partnership is needed. From 30 November 2026 a Standard Edition package stops offering the larger plans and high availability, and an order for them is stopped before anything is created.

Do I need one module per engine?

No. PD DigitalOcean Databases covers all six. If you only ever sell one engine, the focused editions (PD DigitalOcean PostgreSQL, MySQL, MongoDB, Valkey, Kafka and OpenSearch) do the same for that one database.

Which versions can customers choose?

Whichever versions DigitalOcean currently offers for the package's engine. The module reads them from DigitalOcean's live catalogue when it generates the options, so retired versions drop out and new ones appear when you regenerate.

How are the checkout choices set up?

In PD Modules → DigitalOcean Databases → Products, choose Generate options. The module writes the package's Blesta configurable options — Region, Plan, Version and, where the engine has it, High availability — from DigitalOcean's live catalogue. You set the prices under Packages → Configurable Options.

Which engines have a high-availability option?

PostgreSQL, MySQL and Valkey add a standby node; MongoDB and OpenSearch run as three nodes. Kafka is always three brokers, so it has no separate option. DigitalOcean bills the extra nodes, so price the option accordingly.

Can customers change their plan later?

Yes. When the customer changes the plan option or moves to another package, the running cluster is resized at DigitalOcean and the data is kept. Engine and region are fixed when the cluster is created.

How do customers control who can connect?

From the Trusted Sources tab on their service. They add their application servers' addresses, and once any are added only those can connect. Every connection is encrypted with TLS.

What happens when a service is suspended or cancelled?

Suspending locks the cluster's trusted sources so nothing can connect, and leaves the data untouched; DigitalOcean still bills a suspended cluster. Unsuspending restores the customer's own list. Cancelling deletes the cluster at DigitalOcean, so ask customers to export anything they need first.

Do I need my own DigitalOcean account?

Yes. You resell from your own DigitalOcean account, at your own margin. You add it once in Blesta under Settings → Company → Modules → Manage, as a module row holding a Personal Access Token with full access. The token is stored encrypted on your Blesta server, is only ever sent to DigitalOcean, and is never shown to a customer.

Does a lapsed PD Modules licence break my customers' services?

No. A licence lapse withdraws the management layer in stages but never stops, deletes or alters a running customer cluster. Your customers keep serving throughout.

What does it cost to run, on top of the subscription?

Only what DigitalOcean charges you for the clusters. The module adds no per-cluster fee and takes no cut — DigitalOcean bills your account directly, and you set what you charge your customers.

Which Blesta and PHP versions does it need?

Blesta 6.0 or later, on the PHP version Blesta 6 itself requires (8.2 or later), with PD Modules 0.2.322 or later and Blesta's cron running. It adds its own tables and pages rather than modifying Blesta's files, so it does not collide with other vendors' modules or a customised template, and uninstalling removes its own tables and settings.

How do I get help?

Open a ticket from your client area, or use Get help inside the PD Modules panel, which attaches a diagnostic report — you see a preview of exactly what it contains, and can exclude any part of it, before anything is sent. Support is included with an active subscription; bug reports are welcome whatever your licence state.

What’s new in 0.1.89

  • A database whose setup did not complete now tells your customer so on their service page, instead of saying it is still being set up. Pages for a database being resized or removed now say that too.
  • A plan that DigitalOcean does not offer in the chosen region is now stopped at checkout, before payment, with a message naming the plan and the region. Pairs DigitalOcean refuses are remembered for 90 days.
  • Cancelling an order that was never built no longer leaves a failed database in your list of databases.
  • Syncing generated options now names DigitalOcean in its confirmation.

Get your website online with PD Hosting

UK hosting, domains and support from a real team. From a first site to a full server.

Terms and Conditions  ·  Privacy Policy

PD Hosting is the trading name of Projektif Digital Ltd, registered in England and Wales, company number 12482555.

PD Hosting
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.