The context
The retailer wanted a fast, app-like storefront without giving up Magento’s catalogue, pricing and order management. We built it headless: a React front end on Magento PWA Studio, talking to Magento entirely through GraphQL.
Headless changes the rules. Anything the storefront needs that Magento doesn’t already expose through its API has to be designed as an API first.
What I led
- The PWA Studio implementation, as tech lead for the build.
- Custom multi-source inventory (MSI) logic, so stock from more than one location is represented correctly to customers.
- Stock integration with the retailer’s inventory source, keeping availability on the storefront accurate.
- Custom GraphQL coupon functionality, extending Magento’s GraphQL schema so promotions worked the way the business needed in the headless checkout.
Key decisions
- Extend the API, don’t work around it. New features were added as proper GraphQL schema and resolvers in Magento, rather than side-channel endpoints that only the front end understands.
- Keep business rules in Magento. Stock and promotion logic lives on the server, so every channel gets the same answer and the front end stays a presentation layer.
The lesson
Headless gives freedom on the front end, but it rewards discipline in the back end. A clean, well-designed API is what keeps a headless build maintainable after launch.