Case study · Multi-site specialist retail group

Nine systems ran the business.Now one operating system does.

A UK multi-site retail group selling through stores, a web shop, a kiosk, vans and marketplaces, with the warehouse, the people and the money all managed somewhere else. We rebuilt the whole operation as a single platform: one schema, one permission model, one audit trail, and intelligence inside the workflows rather than bolted on top.

167

Data tables

One schema spanning retail, warehouse, people and money

105

Admin screens

Role-gated back office across 14 operational domains

119

Application routes

Storefront, checkout, account, kiosk and admin

58

Server functions

Payments, AI, integrations, notifications and jobs

The brief

Growth had been bought with software. Every new channel, every new site and every new compliance obligation arrived with its own tool, its own login and its own version of the truth. The result was a business that could sell in five places and answer questions in none of them.

Before · A stack of tools

What it cost them

  • Stock sold twice because web and till stock were reconciled overnight, not live.
  • Click & collect run on phone calls, with no slot control and no collection queue.
  • Marketing that could not see orders, and loyalty that could not see either.
  • Compliance evidence, age checks, risk assessments, certifications, spread across inboxes.
  • Finance reporting a month behind the trading it was meant to steer.

After · One operating system

What shipped

14
operational domains
105
admin screens
167
tables
58
server functions
127
shared components
103
schema migrations
  • One order record across web, till, kiosk, van and marketplace, no end-of-day reconciliation.
  • Stock accurate across warehouses, stores and mobile locations, with reservations honoured before payment.
  • Marketing, loyalty, reviews and support attached to a single customer record.
  • Cash position, unpaid balances and forecast visible daily instead of monthly.
  • Every admin action audited, every permission editable without a deploy.
AreaBefore · separate toolsNow · Retail & eCommerce OS
Selling channelsWeb store on one platform, tills on another, click & collect handled by phone and paper.Headless storefront, EPOS tills, self-service kiosk, mobile/van sales and marketplace channels all writing to one order table.
StockWarehouse stock in a spreadsheet, store stock in the till system, no shared view.Warehouses, store stock levels, mobile-location stock, reservations, transfers, adjustments and reorder rules in one ledger.
CustomersEmail list in one tool, loyalty in another, support in a shared inbox.Customer 360 with segments, automations, campaigns, tasks, call logs, tickets, reviews and a loyalty ledger.
PeopleRotas in spreadsheets, training tracked by memory, certifications expiring unseen.HR records, leave policies, attendance, payroll inputs, skills-gap analysis, certifications and an in-app academy.
MoneySales exported monthly into accounts, unpaid balances chased manually.Invoices, direct debits, cashflow log, revenue forecast, unpaid alerts, refunds and accounting integration.
Field & deliveryDriver calls, no proof of delivery, mileage reclaimed from paper logs.Vehicles, live tracking, engineer journeys, mileage logs, route optimisation, job photos and captured signatures.
GovernanceShared admin logins, no audit trail, compliance handled by trust.Roles × permissions as data, OTP-protected admin login, full system audit log, approvals queue and age-verification records.
IntelligenceReporting after the fact, in a spreadsheet, once a month.Demand forecasting, churn analysis, smart order routing, invoice anomaly detection, UX friction findings and POS upsell prompts.

What is running today

Fourteen operational domains on one codebase and one database. Every screen is permission-gated, every mutating action is audited, and every module reads the same customer, product and stock records.

Headless storefront

Catalogue, variants, categories, bundles, multi-buy deals, promo banners, blog, CMS pages with revisions and redirects, plus guest and account checkout.

EPOS & kiosk

Till sessions, terminals, transactions and line items, gift cards with a ledger, end-of-day reconciliation, self-service kiosk and mobile operations.

Warehouse management

Goods-in receipts, purchase orders and line items, suppliers, locations, stock audits, adjustments, alerts, reservations and warehouse-to-store assignments.

Store replenishment

Store stock levels, replenishment rules, store-to-store transfers, network stock visibility and pick batches for order fulfilment.

Click & collect and delivery

Collection slots, a live collection queue, store stock checks, parcel tracking events, dispatch notifications and customer tracking updates.

CRM and marketing

Contacts, tags, notes, segments with refresh, email campaigns and sends, multi-step automations with enrolments, events, tasks and a full email log.

Loyalty and reviews

Tiers, earning rules and events, redemptions, expiry processing, referrals, plus moderated reviews with media, responses and invitations.

HR and academy

Employee records, annual leave, on-shift view, payroll, certifications, skills-gap analysis, training courses and modules, and guided in-app tours.

Finance

Invoices, deposit invoices, direct debit mandates and sync, cashflow log, revenue forecast, unpaid alerts and suspensions, tax rules and multi-currency.

Fleet and field jobs

Vehicles and MOT reports, live engineer locations, journey replay, mileage log, route optimisation, jobs with assets, stock, photos and signatures.

Compliance and risk

Age verification by document and face match with attempt logging, risk assessments with checklists and actions, approvals queue and a system audit log.

Open by default

API gateway with keys and request logging, developer portal, marketplace channel orders, accounting integrations, IoT devices with sensor rules and ESG carbon tracking.

Why the approach compounds

The scale of the system is the headline. The mechanism is that each module was built on foundations the previous one had already proved, shared identity, shared permissions, shared audit, shared product and customer records.

One schema beats five integrations

Because stock, orders, customers, staff and money live in the same database, a question like 'which store loses margin on click & collect' is a query, not a project. Integrations were the previous decade's answer to a modelling problem.

Prototype-first removes the argument

The operating system was clicked through before it was committed to. Every screen in this case study started as a working prototype the operator used, not a wireframe they signed off.

Governance in the foundation

Permissions as data, an audit log on every mutating action, OTP admin access and an approvals queue were built in from the start, so security review confirmed the design rather than forcing a rebuild.

Intelligence where the decision is made

Forecasting, churn scoring, order routing, anomaly detection and upsell prompts sit inside the workflow that uses them, at the till, in the picking queue, on the invoice, not in a dashboard nobody opens.

The operational shifts

Twelve areas of the business, tracked from the old stack to the platform running today. Every row is something a customer, a colleague on the shop floor, a picker or a director touches.

01

Order capture

Before

Orders arrived from the web store, the tills and the phone, and were reconciled by hand at the end of each day.

Now · live platform

Every channel writes to one order record with items, status history, refunds and a full audit trail. Guest orders are claimed and linked to accounts automatically once the customer registers.

02

Inventory truth

Before

Availability was a best guess. Web sold stock the store had already taken, and transfers were logged after the fact.

Now · live platform

Stock items, reservations, transfers and adjustments share one ledger. Reorder rules trigger alerts, network stock is visible across sites, and replenishment rules push inventory to the stores that are actually selling it.

03

Purchasing and goods-in

Before

Purchase orders were emailed spreadsheets. Deliveries were checked against a printout.

Now · live platform

Purchase orders with line items, supplier records and product-supplier pricing, goods receipts checked line by line on arrival, and discrepancies raised as adjustments with a named user against them.

04

Store operations

Before

The till was an island. Cash-up was manual, gift cards were plastic with no balance history.

Now · live platform

POS sessions and terminals, transaction-level reporting, gift cards with a full ledger, an end-of-day workflow, upsell prompts served at the till and a kiosk mode for self-service.

05

Fulfilment

Before

Pickers worked from printed lists. Customers phoned to ask where their order was.

Now · live platform

Pick batches group orders for efficient routes, collection slots manage click & collect, parcel tracking events feed automated customer notifications, and smart order routing chooses the cheapest site to fulfil from.

06

Customer marketing

Before

A newsletter tool with an exported CSV, no segmentation and no visibility of what was sent.

Now · live platform

Live segments recalculated from behaviour, multi-step automations with enrolment tracking, campaign sends with AI-generated content and optimisation, and every message archived in a searchable email log.

07

Loyalty

Before

A stamp card. No idea what it cost or what it returned.

Now · live platform

Configurable tiers and earning rules, a transaction ledger, redemption log, scheduled expiry processing and a referral programme, all attached to the same customer record as orders and support.

08

Service and support

Before

A shared inbox and a chat widget nobody owned.

Now · live platform

Support tickets with AI triage, threaded messages, live chat conversations, review moderation with responses, and UX friction findings captured from real sessions.

09

People and training

Before

Rotas in spreadsheets, certifications tracked in someone's head, training done ad hoc.

Now · live platform

Employee records with leave policies and requests, attendance and time logs, payroll inputs, skills-gap assessments, certification expiry tracking, an internal academy with tracks, courses and reporting, and AI-assisted shift scheduling.

10

Money

Before

Revenue was known monthly. Unpaid balances were chased when someone remembered.

Now · live platform

Invoices and deposit invoices generated automatically, direct debit mandates with proxy sync, a cashflow log and rolling revenue forecast, unpaid warnings and automated suspension, invoice anomaly detection and accounting integration.

11

Compliance

Before

Age checks were a visual judgement at the counter and a tick-box online.

Now · live platform

Document and face-match verification with risk-frame analysis, per-customer and per-guest verification records, full attempt logging, configurable policy settings, plus risk assessments with checklists and tracked action items.

12

Governance and access

Before

One shared admin login. No record of who changed what.

Now · live platform

Roles and permissions stored as data and editable in the UI, OTP-verified admin sign-in, preview gating, an approvals queue for sensitive changes, an API key registry with request logging and a system-wide audit log.

How it is built

A typed React and TypeScript frontend on a Postgres core, with row-level security on every table and server-side functions handling anything that touches money, identity or a third party.

Single Postgres core

167 tables across 103 tracked migrations, with row-level security policies and role-aware access on every one.

59 server functions

Checkout and payment webhooks, invoicing, OTP issue and verification, notifications, scheduled jobs and third-party sync.

Permissions as data

Roles, role permissions and user-role assignments stored in the database and edited in the UI, no deploy to change who sees what.

AI inside the workflow

Demand forecasting, churn analysis, ticket triage, campaign generation and optimisation, product SEO, upsell and route optimisation.

Open interfaces

API gateway with issued keys and request logging, a developer portal, marketplace channel sync and accounting integrations.

Audited by default

A system audit log on mutating actions, an approvals queue for sensitive changes and OTP-gated administrator access.

Client name withheld. Figures in this case study are counted directly from the delivered codebase and database schema.

Your retail operation is the next one on this page

We start with a 90-minute discovery call against the off-the-shelf Retail & eCommerce OS, map the areas that need to bend to your business, and come back with a tailored working version within two weeks. You click your business before you commit to building it.

  • 90-minute discovery call on a live system, not a slide deck
  • Tailored working version presented within two weeks
  • Storefront, EPOS, WMS, CRM, HR and finance on one schema
  • Governance, audit and role-based access built in from the first commit
All case studies

Free · 90 minutes

Book your discovery call

Tell us what you run today. We reply within one working day.