- WordPress
- MySQL / MariaDB
- Docker / Podman
Challenge
The sales model is one-off work priced per unit rather than a retainer: a client orders a single deliverable — a post, a video script, an analytical review — and receives the result as a file. Order flow of this kind is not served by chat threads and spreadsheets: payment status and fulfillment progress are tracked separately, and finished materials are stored outside any single system.
The requirement was a client account with a priced catalog, checkout and handover of the finished files, together with a staff workspace holding a single order register.
Solution
The platform is built on WordPress with a custom theme: the public site and the client account share a single codebase, without WooCommerce. The catalog holds 28 services across four tracks — content, analytics, trends and campaigns — priced per unit; cart, checkout and orders are implemented on two dedicated database tables rather than e-commerce plugins.
The order lifecycle is defined by a status model: five fulfillment states and five payment states resolve into a single status, identical in the client account and in the staff panel. Staff manage statuses, due dates and the publication of deliverables; files reach the client from the order card — a single file directly, several as an archive. The scope also covers spending and demand analytics, profile management with self-service account deletion, and the legal layer: privacy policy, terms of service, refunds and a cookie banner with per-category settings.
Outcome
The platform is in production on its own domain: the public site, the client account and the staff workspace form a single product that carries an order from service selection to handover of the finished work.
A separate stand is deployed for demonstration: the same scenarios on synthetic data, client and staff accounts, full permissions and hourly restoration of the initial state.