Case study · The Makeup Co

Beauty · retail & wholesale · Headless ecommerce migration
The Makeup Co: Next.js and Firestore ecommerce after WooCommerce
- themakeupco
- ecommerce
- next.js
- firebase
- stripe
- beauty
- wholesale
- melbourne
How themakeup.co moved luxury Australian makeup retail and wholesale onto Next.js, Firestore and Stripe, with admin CMS, salon booking and inventory that staff can run without WordPress plugin debt.
Live project: The Makeup Co
Context
The Makeup Co sells luxury Australian makeup for retail shoppers and approved trade accounts. The brand needed a fast storefront, shade and kit complexity, wholesale applications, and salon booking, without living forever inside a slow WordPress and WooCommerce stack.
High-intent searchers look for professional makeup wholesale Australia, luxury Australian makeup online, and salon-adjacent booking. The site has to convert those intents while keeping catalogue and order truth in systems the team owns.
What broke in the legacy path
- Storefront performance and plugin weight made browsing shades and kits painful on mobile.
- Retail vs trade pricing needed one catalogue with account-aware rules, not duplicate products.
- Orders, inventory and tax invoices had to leave the checkout path reliably into ops tools staff trust.
- Salon booking and homepage merchandising needed a CMS the team could edit without a developer for every tile.
Approach
The live stack is Next.js with Firebase Auth, Firestore and Storage, Stripe Checkout and Elements, and Resend for transactional mail. An `/admin` console covers products, categories, orders (including PDF tax invoices), homepage content, kits, bookings and salon settings.
Woo-shaped product semantics were preserved where they helped migration scripts and staff mental models, while the public site became a streaming, filterable shop with brand hubs and kit flows. Soft-launch preview gates protected unfinished catalogue work without blocking engineering velocity.
Portfolio links from amir.melbourne to themakeup.co use `nofollow`. This case study is the indexed page for beauty ecommerce and wholesale migration intent.
What improved
- Owned catalogue and order data in Firestore instead of plugin-locked Woo tables.
- Stripe-backed checkout that creates orders and decrements inventory through webhooks.
- Admin workflows for merchandising, bookings and wholesale without wp-admin sprawl.
- A pattern Melbourne beauty brands can reuse when brochure sites are not enough and Shopify-shaped constraints do not fit.
When this pattern fits you
Fit for beauty and salon brands that need retail plus trade, custom kits, or booking beside ecommerce. If you only need a brochure site and a working form, start with website design & development or the beauty salons page.
If payments and CRM already exist but sync is broken, a workflow rescue may be cheaper than a full rebuild.