About5 min read
What Headless Commerce Actually Means
The storefront and the backend become separate programs talking over an API. That is the whole idea. Everything else is a consequence of that split, an argument about whether it is worth it, or somebody selling you something.
By Juan Molina

On this page
Headless commerce is one of those terms that means something precise to the people who coined it and something vaguer to everyone hearing it in a sales call. The precise version is simple: the storefront and the backend are separate programs that talk over an API, rather than one program that does both.
That is the whole idea. Everything else written about headless commerce is a consequence of that one split, an argument about whether the split is worth it, or somebody selling you something.
What the split actually means
A traditional commerce platform ships the storefront and the backend as one system. You get a theme, you edit it in their language, and the pages come out of their template engine. The catalog, the cart and the checkout all live in the same program that renders the HTML.
Headless separates those. The backend keeps the catalog, the orders, the customers, the payments and the fulfilment. It exposes them over an API and renders nothing. The storefront is a separate application you write, in whatever framework you already use, that asks the API for data and decides how to display it.
The word comes from the backend losing its head, meaning its presentation layer. It is not a product category or a standard. It is an architecture, and plenty of platforms sit somewhere in between.
What you gain
The storefront is yours
You are writing an application, not customising a theme. That means your framework, your component library, your deployment, your git history. If your team already builds web applications, the storefront stops being a special environment with its own rules.
One backend can serve several fronts
Once the backend answers over an API rather than rendering pages, nothing stops several things asking it. A web storefront, a native app, a kiosk, a wholesale portal with different pricing. They are all clients of the same catalog and the same orders. Under a coupled platform each of those is usually another installation to keep in sync.
Rendering choices open up
You decide what is static, what is server-rendered per request, and what is client-side. A product page can be static and near-instant while the cart stays dynamic. Under a coupled platform, the platform decides.
Replacing one piece stops being a migration
Search, reviews, analytics and email all speak to the same API. Swapping one is a change to one integration rather than a project.
What it costs, honestly
The costs are real, and the vendor-published explainers tend to move quickly past them.
You now own the storefront
Every part of it. Rendering, routing, SEO, accessibility, performance, the checkout flow, the edge cases. A coupled platform's theme comes with all of that solved, badly perhaps, but solved. Headless hands it back to you along with the responsibility.
Somebody has to be a developer
Not occasionally. Continuously. There is no version of this where a non-technical operator changes the storefront layout without help. If your team does not include someone who writes code every week, headless is the wrong architecture and no amount of tooling changes that.
The first version takes longer
A theme is live in a day. A storefront is not. The payoff arrives later, and if the project never gets far enough for that to matter, you paid the cost and skipped the benefit.
More systems, more failure modes
Two programs talking over a network can disagree, time out, or get deployed out of step. That is a class of problem a single program does not have.
When it is genuinely the right call
You already have a development team. The single strongest signal. Headless converts platform constraints into engineering work, which is a good trade only if you have engineers.
You need more than one storefront. Several brands, several regions, a retail front and a wholesale portal. This is where the architecture pays for itself fastest, because the alternative is maintaining several near-identical installations.
The storefront is the product. Configurators, unusual buying flows, anything where the interface is what customers are actually buying into.
You keep hitting the platform's edges. If your current work is mostly fighting a theme system, you are already paying the cost of headless without getting any of the benefit.
When it is not
You are a small team without a developer. Take the coupled platform. This is not a compromise, it is the correct architecture for your situation.
A standard storefront works fine for you. If a theme does what you need, the flexibility you are buying has nothing to attach to.
You need to be live next week. Timeline beats architecture. Ship on something coupled, revisit when the constraint actually bites.
Where we sit
dashfordevs is a headless backend. Catalog, orders, customers, payments and content sit behind one typed API with a dashboard on the same data, and several storefronts can run against one backend with their own domains. The storefront is yours to write, in whatever you already use, and the SDK runs on the server or in the browser.
Which means every cost above applies to us too. If you do not have someone writing code, we are the wrong choice and a coupled platform will serve you better. That is not modesty, it is the same architecture argument pointed at ourselves.
If you do have a team, the docs show the API surface, and you can judge the trade from the actual endpoints rather than from an explainer.














