PD AWS PostgreSQL for WHMCS

PD AWS PostgreSQL — Resell Fully-Managed PostgreSQL Databases on AWS in WHMCS

Resell fully-managed PostgreSQL databases on AWS — provisioned, billed and managed in WHMCS

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

Databases

PD AWS PostgreSQL lets a hosting company sell managed PostgreSQL databases as its own product. Your customer orders in your WHMCS cart, a dedicated PostgreSQL database is built in your AWS account, and your customer manages it from your client area: connection details, usage graphs, snapshots and a firewall, with no AWS console and no AWS login. You set the price, AWS bills you its cost, and the difference is your margin.

It is built for hosts whose customers are developers, agencies and software teams who ask for PostgreSQL by name, and who want to buy it from their host instead of setting up an AWS account of their own.

Why hosts choose PD AWS PostgreSQL

The engine developers ask for, on two price points. Back a product with Amazon RDS for resizable, firewalled plans with optional high availability, or with a flat-priced Lightsail database for an entry-level offer, and mix both under one product line. RDS plans are generated on AWS's Graviton processors, from db.t4g.micro to db.m6g.xlarge; Lightsail plans are flat-priced bundles. A customer on Lightsail sees no firewall section, because Lightsail databases have none.

Connect with certificate checking built in. The customer's page shows a ready-to-paste psql command that uses sslmode=verify-full, so the connection is encrypted and the server is verified against the Amazon certificate bundle, which is one click away with the exact setting to use. Port 5432 is the only port the firewall ever opens.

Strong passwords, stated up front. The reset form states the rules PostgreSQL on RDS actually enforces, 8 to 128 characters from letters, digits and - _ ! # %, and refuses a bad password at once, before anything is queued.

Every customer is isolated. Each order gets its own instance, its own master credentials and its own firewall group. Nothing is shared, even with another installation using the same AWS account, and the module refuses to take over a database it did not create.

Changes made safely. A snapshot is taken before a plan or storage change is applied, so a restore point exists. Storage is only ever grown, online; a downgrade never shrinks a database.

Nothing left billing. Terminating a service deletes the database with its backups, its snapshots and its firewall group straight away. A host who wants a copy keeps one in the AWS console first.

How it works

  1. Connect your AWS account. Add an access key once on a WHMCS server record. The secret is stored encrypted and never reaches a customer page. Test Connection makes one read-only call and creates nothing.
  2. Create your product. Add a WHMCS product, choose the module on its Module Settings tab and switch on automatic setup. Set the backing service, region, plan, storage and PostgreSQL version, then press Generate plans to offer choices at checkout.
  3. Your customer orders. The database is built in the region and size they chose, usually within a few minutes. The customer's page says it is being set up, then fills in with the connection details by itself.
  4. You get paid, they manage it. WHMCS keeps billing as usual. Suspend, unsuspend and terminate follow your normal billing.
The customer's firewall: allowed IP addresses for port 5432, added or removed without a ticket
The customer's firewall: allowed IP addresses for port 5432, added or removed without a ticket

What you get in WHMCS

Selling and pricing

  • Cart options generated from the live AWS catalogue: region, plan, storage, high availability, public access and PostgreSQL version; the versions offered are the ones AWS currently offers in your region
  • Every option starts at no extra charge; you set the prices under WHMCS's Configurable Options
  • Storage as a billable choice on RDS, from 20 GB
  • A "High availability (Multi-AZ)" choice that gives the customer a standby in a second zone
  • A public-access choice; left off, the database is reachable only inside the AWS network
  • Sync with AWS hides options AWS has retired and adds new ones, without touching prices or existing customers
  • Billing stays yours: the service is charged at the prices of the product and its options, and nothing is metered into WHMCS

Provisioning you can trust

  • A paid order provisions with no admin step once automatic setup is on
  • Plan upgrades resize an RDS database in place and keep its data; Multi-AZ is switched on or off in place
  • A change that cannot be applied in place is reported to you as not applied, never accepted silently while the bill changes
  • Failed setups are recorded with the real reason for you; running setup twice never creates a second database
  • Suspend stops the database and keeps it stopped, even though AWS restarts stopped databases after seven days. Unsuspend starts it again with its data

Running it day to day

  • Clients & Databases lists every database with its service, backing, plan, region, endpoint and live state
  • An activity log of provisioning, resizes, snapshots and password resets across every service
  • A report that checks your licence, the AWS SDK and how many credential sets and databases you have
  • Read-only assistant tools that report a service's database state and recent provisioning activity, with no way to create, resize, delete or restore anything

What your customers get

  • Start, stop and reboot, and a stopped database keeps its data
  • Connection details with one-click copy, and the password masked until revealed
  • A firewall of allowed IPv4 addresses and ranges, applied on the next scheduled run and followed under Activity
  • Usage graphs for CPU, connections, freeable memory and free storage over the last 24 hours, from AWS's own metrics
  • Snapshots they take and delete themselves, with the automated daily backups, kept seven days, listed beside them
  • Activity in plain words, with the time and outcome of each action
Snapshots the customer takes and deletes themselves, with the name, status, size and date of each
Snapshots the customer takes and deletes themselves, with the name, status, size and date of each

Snapshots, Firewall, Connection details and Usage graphs are each a switch on the product. Turn one off and it disappears from the customer's page, and the request is refused however it is made. The pages render natively on WHMCS's Six, Twenty-One and Nexus themes, and every word can be translated or reworded with override files that survive updates. Customers see only your brand.

Security built in

  • Your AWS keys live on the WHMCS server record, stored encrypted, and never appear on a customer page, in a message or in a log.
  • Database passwords are stored encrypted on the service, including one the customer sets with Reset password.
  • Only the database's own port is opened, and only to the addresses the customer lists.
  • Restores stay with you: customers take and delete snapshots, and you restore from the AWS console when asked.

One product, every feature

PD AWS PostgreSQL is one paid module with everything included, bought on its own as an add-on to your PD Modules licence. There are no tiers and no per-database fee from us: you pay AWS at cost and keep the margin. Each order creates a real, billable AWS resource, so there is no free trial.

If your subscription ever lapses, customers' databases are never touched or deleted. You get a 14-day grace period with everything working and a renewal reminder, then admin management locks while customers keep being served, and only after that do customer features pause behind a neutral "temporarily unavailable, please contact support" message. Renewing restores everything at once.

Requirements

  • WHMCS 9 or later on PHP 8.2 or later, with the ionCube Loader
  • An AWS account and an access key with the Amazon RDS permissions we list, plus the security group permissions every order needs (and Lightsail permissions if you sell Lightsail plans)
  • PD Modules, the free control panel every PD module installs into

Questions

Do I need my own AWS account?

Yes. Databases are provisioned on your own AWS account, in the region you choose, so you keep full control and the margin. Your AWS keys are stored encrypted in the WHMCS server record and never appear in the client area.

Who pays for the AWS usage?

You do — the database runs on your AWS account. You set the sell price on your WHMCS product and bill your client through WHMCS as normal, keeping the difference as margin.

Can I offer RDS and Lightsail?

Yes. PostgreSQL can be provisioned on Amazon RDS (Graviton-powered tiers, resizable, with usage graphs and snapshots) or on the cheaper flat-priced Lightsail bundles. You choose per product when you generate the plan options.

What port do clients connect on?

PostgreSQL listens on port 5432. The client-area firewall opens that port automatically for the IPs your client allow-lists, and the ready-to-paste psql connection string uses it.

Can clients resize or add storage themselves?

Storage and plan changes are billed through WHMCS Upgrade/Downgrade — never a free client button. They apply in place with an automatic safety snapshot first, so data is never lost, and storage is only ever increased.

Is it secure?

Every database sits in its own security group (clients only manage their own IP rules), all connections are TLS-encrypted with the Amazon CA bundle offered for download, and master passwords are masked until explicitly revealed.

Which WHMCS themes are supported?

The client area renders natively on Six (Bootstrap 3), Twenty-One and Nexus (Bootstrap 4) with no extra CSS, and can be translated or rebranded with a language file or template override.

What happens when a client cancels?

The module deletes the database cleanly on termination — no orphaned instances and no surprise AWS charges.

What happens if my subscription lapses?

Nothing of yours is touched, and nothing is deleted. The module steps down in stages instead: a 14-day grace period where everything still works and you get a renewal reminder, then admin management locks while your customers carry on being served, and only after that do the customer-facing features stop — behind a neutral "temporarily unavailable, please contact support" message that never mentions licensing to your customer. Anything the module provisioned keeps running in your own account throughout, and your data and settings stay exactly where they are. Renewing restores everything immediately.

What’s new in 0.4.62

  • On Blesta, the plan options screen now says the region, plan and version are chosen on the package, instead of reporting a database error.

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.