Skip to content

Shopify theme or headless storefront? Find the layer that needs changing

“Redesign the store” is usually four jobs. How to find the layer causing friction before choosing a theme change, an integration or a custom storefront.

A storefront above Shopify's commerce engine: which layer needs changing? Illustration; the logo marks the platform discussed.
In this article8 sections
  1. Shopify can stay the backend
  2. Theme or custom storefront
  3. Know which API does the work
  4. Plan for the notification that never arrives
  5. What the plan table actually changes
  6. Where MCP fits
  7. Follow one purchase first
  8. Sources

"Redesign the store" sounds like one job. Look closer and it's four: helping people find a product, taking payment, tracking stock and keeping the showroom in step. They don't share a fix.

A storefront helps a customer find a product and decide what to do next. The operations side handles enquiries, quotes, payments, stock and delivery. A sharper product page might reduce confusion. It still can't reconcile a payment taken in the showroom, or assign an enquiry to anyone.

A retailer asked us how they could keep Shopify while improving bookings, deposits and visibility across online and offline sales. We built a standalone Next.js UI prototype; the production integration stayed a proposal. This article sets out the choices we compared.

Shopify can stay the backend#

Shopify supports a custom frontend on top of its commerce backend. In the documented headless setup, customers browse products and build a cart in your frontend, then pay in Shopify Checkout. A framework like Next.js can build that interface without replacing checkout.

An external CRM can connect through authorised APIs as well. That extends the operation around the store; Shopify still owns the backend jobs you leave with it. Decide who owns what before you create another database full of products, customers and orders.

Theme or custom storefront#

Shopify themes are built with Liquid, HTML, CSS, JavaScript and JSON inside Shopify's theme system. If the experience you need fits that system, a theme is the sensible place to start.

A custom storefront is worth investigating when specific journeys need more control. It also hands your team new work: hosting, API integration, cart behaviour, analytics, links into checkout and ongoing maintenance.

Reusing templates is a separate decision. You can customise selected sections of a theme, or reuse interface components in a Next.js app. Either way, a familiar navbar and footer leave more effort for the product and booking flows. Reuse doesn't decide where the storefront runs.

For this retailer, the Next.js prototype let us discuss the experience before we had authenticated Shopify access. It didn't show that a theme was unsuitable, or that a fully custom storefront was the right production choice.

Know which API does the work#

Shopify splits these responsibilities across different interfaces:

InterfaceWhat it handles
Storefront APICustomer-facing products, collections and carts
GraphQL Admin APIAuthorised store operations on products, customers, orders, inventory and custom fields
Customer Account APISigned-in customer access to account and order information
WebhooksNotifications that let an external application respond when store data changes
  1. StorefrontBrowse and choose: products, collections and the cart.
  2. CheckoutComplete payment in Shopify's checkout flow.
  3. OperationsKeep records: orders, stock, balances and reconciliation.
Responsibility map for the proposed direction. A custom interface still needs an owner for every record it reads or changes.

Plan for the notification that never arrives#

The Admin API needs an app token and permissions the merchant grants. Reviewing the public storefront can't confirm those permissions or show how the merchant's internal records are organised.

Webhooks keep an external service current, but deliveries can be missed. Shopify recommends reconciliation jobs that fetch changes through the API, so a CRM needs a way to catch up after a failed notification or downtime.

A single API for the frontend can combine all of this. It still needs ownership and conflict rules underneath. Write down which system owns stock, quote totals, payment balances and the final call on fulfilment.

What the plan table actually changes#

At the time of writing, Shopify's India pricing page lists these monthly equivalents for the standard plans, billed yearly. Plus has its own term structure.

PlanListed subscriptionWhat matters here
BasicAbout $16 a monthNo additional staff accounts; 2% fee on third-party payment providers
GrowAbout $59 a monthUp to five staff accounts; 1% third-party fee
AdvancedAbout $239 a monthUp to 15 staff accounts and live third-party shipping rates; 0.6% third-party fee
PlusFrom about $1,840 a month on a three-year termEnterprise capabilities, including eligible native partial-payment and deposit workflows

Prices change, and gateway processing charges and custom-system costs are separate. A higher plan can make a feature available; you still have to confirm it works with your payment provider, sales channel and customer journey. A custom frontend doesn't change what your plan includes.

Where MCP fits#

MCP gives an AI assistant a structured way to call tools. Shopify's developer tooling can help with documentation and API schemas, and its commerce tools let agents work with catalogues and other shopping functions. Authenticated customer-account tools are a separate surface.

These surfaces move. Shopify's migration guide says the old catalogue and cart tools at /api/mcp were removed and points developers to UCP at /api/ucp/mcp. Build against the current documentation; our UCP guide has the details.

MCP doesn't replace authentication, a supported checkout flow or payment reconciliation. Use it when an assistant needs tools for a defined task, and keep the payment and order rules explicit in the application.

Follow one purchase first#

Pick a recent order that involved a quote, a deposit or the showroom. Trace who did what, in which system, and where the record went missing. That trace tells you whether you need a new storefront, a CRM, a payment ledger, or nothing new at all. For the deposit side specifically, read who owns the other $420?

If you'd like a second pair of eyes on that trace, send it to us. We'll tell you which layer we'd change first.

Sources#

Checked 3 October 2026.