3
storefronts on one Magento installation
2020
built by us, and still run by us
1
shared codebase and upgrade path for every store
The client
BST Group is an Australian family-owned business that has supplied industrial tools and equipment for more than 40 years, to metal and aluminium fabrication, engineering, manufacturing, rail, construction and joinery. It sells through three storefronts:
- BST Group: industrial tools and equipment.
- BST Health: health and medical products, from personal protective equipment and wound care to cleaning supplies and furniture for care settings.
- Tools for Schools: tools, machinery, workbenches and consumables for schools, colleges, TAFEs and trade training centres.
Retail shoppers buy as guests or with an account. Trade and education buyers log in to see their own pricing, order by product code and reorder from their account.
The brief
Run three different businesses from one Magento backend, without three times the maintenance. Every storefront needed its own look, catalogue and customer groups, and every one had to share one set of business rules, one admin and one upgrade path.
What we built
We built the multistore on Magento Open Source in 2020: one installation, three storefronts, each with its own child theme on a shared parent. On top of it sits a bespoke layer of custom modules in a single client-owned codebase, covering what no off-the-shelf extension does:
- B2B ordering. Company accounts, quick order, order by product code, quote requests, address books, reorder and punch-out for institutional buyers.
- Pricing and access. Tiered pricing by quantity, customer-group pricing for trade, schools and retail, and login-gated prices and add to cart where the client wants them hidden.
- Catalogue. A product configurator, a product finder and custom variation and pricing logic.
- Operations. Order import handling, duplicate-order alerts, scan reporting, monitoring tools and a category cache warmer: the tools a store only needs once it is properly busy.
- Integrations. Marketplace listing sync, lifecycle email, error and performance monitoring, and an API for the warehouse app we also built.
3
storefronts, one backend
60
custom modules
2020
first commit, still running
Keeping three stores upgradeable
"One backend, three storefronts" means every upgrade, security patch and shared change has to be right for three live shops at once. The extension surface is large too: a long list of commercial packages for search, page building, payments and marketplace tools, each of which has to support the Magento version you are moving to.
We run it with a real toolchain rather than framework defaults: PHPUnit, PHPStan, PHP_CodeSniffer on the Magento coding standard, PHPMD and the Magento Functional Testing Framework, with error and performance monitoring in production. The store stays on a supported Magento release, with security patches applied between releases.
The warehouse app
The same team built RapidStock, the Flutter app BST's warehouse and field staff use alongside the store: barcode and camera scanning, product search, job tracking and timesheets, and offline-first storage so the floor keeps working without signal. Read the RapidStock project.
What we'd carry into the next multistore
- Measure from week one. We now capture load times and Core Web Vitals in the first week of every build, so improvements can be shown as numbers, not just described.
- Treat every extension as an upgrade dependency. Bought extensions got this store to market fast. On a new build we weigh each one against the upgrades it will have to survive, and write our own where the logic is core to the business.
Gallery



