~/case-studies/drewstech-platform
One platform for an agency, an academy, a store and a hosting desk
The platform you are on: client services, paid courses with verifiable certificates, a digital products store, and domain and hosting checkout, all on one account and one payment flow.
- Engagement
- In-house
- Payments
- Paystack, GHS
- Products
- 4 in one account
- Status
- Live
## context
The situation
DrewsTech does four things: builds software for clients, teaches through paid courses, sells digital products, and sets up domains and hosting for clients who need them.
Running those on separate tools would mean separate logins, separate payments and separate records. We built one platform where a customer has one account and every purchase lands in one order history.
## challenge
What made it hard
- 01
Four businesses, one checkout
Courses, digital downloads, mentorship packages and hosting plans each have different rules, but should all be paid for the same way and show up in the same place.
- 02
Prices the server can vouch for
A price sent from a browser can be edited. Every amount had to be decided on the server and every payment confirmed with Paystack before anything is unlocked.
- 03
Selling services we fulfil by hand
Domains and hosting are bought from a registrar after the customer pays. The system had to refuse domains that are already taken, queue paid orders for setup, and remind customers before renewals lapse.
- 04
Fast on a phone, rich on a desktop
The homepage has an interactive 3D globe. That is fine on a laptop and wasteful on a phone on mobile data.
## approach
How we solved it
Server-side pricing and payment verification
Plans and prices live on the server. Checkout creates the order, Paystack takes the payment, and the server verifies the amount with Paystack before marking anything paid. Verification is safe to repeat, so a retried request never double-fulfils.
Live availability and live exchange rates
Domain searches query the registries directly over RDAP, and taken names are blocked again at checkout. Prices shown in other currencies use a live exchange rate with a fallback source, while charges are always made in cedis.
An operations desk, not just a storefront
Paid service orders appear in an admin queue to be set up and marked live. A daily job emails customers 30, 14, 7 and 1 days before renewal and sends the team a digest of what to renew.
Security reviewed like a client engagement
We audited our own platform the way we audit others: redirects after login only go to our own pages, user-supplied names are escaped before they reach server-rendered documents, cross-site form posts are refused, and API routes are rate limited.
Load what the device can use
The 3D globe only loads on desktops that have not asked for reduced motion. Phones get a lightweight fallback, which keeps the mobile homepage well under half a megabyte of JavaScript.
## build
What we built
- Academy with enrollment, progress tracking and shareable certificates
- Digital products store with instant downloads
- Mentorship packages
- Domain search, hosting, business email and care plans
- Paystack checkout for Mobile Money and cards
- Customer dashboard with orders, library and support tickets
- Admin panel for orders, services, content and support
- Automated renewal reminders
## outcome
How it turned out
- Customers buy courses, products and services with one account and one checkout
- Every payment is confirmed server-side with Paystack before access is granted
- Domain and hosting orders arrive in a setup queue with renewal reminders built in
- The mobile homepage skips the 3D scene entirely, so phones load only what they can use
- Homepage JavaScript on mobileProduction build, measured 2026
- 479 KB
- Payments by Paystack
- Work you can visit
- Based in Ghana
Want something like this platform?
Tell us what you're building and we'll scope it honestly.