Shopify checkout not working? How to narrow down the cause

How an Agency Saved a Client $50,000 by Catching a Checkout Bug Early

Shopify checkout not working? How to narrow down the cause

When your Shopify checkout is not working, the cause is usually one of a few things: a Shopify platform incident, a recent theme or app change, a checkout setting such as shipping, markets or discounts, or your payment provider. To find it, note exactly where the shopper gets stuck, reproduce the problem on a clean browser, and rule out causes starting with the ones outside your control and working back to your own recent changes.

Everything below is that process in more detail. Start with the table, find the row that matches what customers are reporting, and run the check before you touch anything else.

Shopify checkout not working: symptom, check, next action

Symptom

What to check

Next action

Checkout button does nothing, or the cart drawer spins forever

Try the cart in an incognito window and on a second device. Note whether a theme edit or cart app went live recently.

Preview the previous theme version or turn off the newest cart-related app, then retest.

Checkout fails on mobile only

Look for popups, chat widgets or sticky bars covering the checkout button on small screens.

Adjust or turn off the overlapping element and retest on a real phone.

Checkout loads but says shipping is unavailable

Shipping profiles, zones, product weights and which markets the address belongs to.

Add the missing zone or rate, or fix the product's shipping profile.

Errors only for one country or currency

Markets settings, currency and payment methods enabled for that market.

Correct the market configuration and run a test checkout with an address from that country.

Discount code rejected at checkout

Eligibility rules, dates, minimums and combination settings.

Edit the discount and test it against a real cart.

Items show as unavailable once checkout opens

Inventory levels, locations and whether the product is published to the Online Store channel.

Restock, fix the location or republish the product.

Every payment fails or gets declined

Payment provider status and any account notices in Shopify admin.

Contact the provider. Theme or app changes are rarely the cause here.

Whole store is slow or showing errors

Shopify's status page and reports from other merchants.

Wait for the incident to clear and tell customers what is happening.

Work out exactly where the journey stops

Display of online shopping theme with mini cart and payment devices on laptop.

"Checkout is broken" covers several different failures. Before you change anything, figure out which stage the shopper reached.

Before checkout

The shopper can't get from the cart into checkout. The checkout button is dead, the cart drawer won't open, or the page reloads without moving forward. This is your storefront, so your theme and apps are the first suspects.

Inside checkout

Checkout opens, but something inside it fails: no shipping rates, a rejected discount, an address that won't validate, an item that is suddenly unavailable. Shopify hosts the checkout, so the cause here is usually a setting, a checkout extension or an app connected to checkout.

At payment

Everything works until the shopper submits payment. That points to your payment provider, fraud rules or the shopper's card, not to anything on your storefront.

One customer email rarely tells you which stage it is. Ask for the device, the browser, the country and a screenshot. A support reply that collects those four things saves more time than any other step here.

Rule out Shopify itself before you start editing

If the platform is having an incident, rolling back your theme won't help and can cause new problems. Check Shopify's status page and see whether other merchants are reporting the same thing. If you're unsure, this guide on telling whether Shopify is down or just your store walks through the quick checks.

If Shopify looks healthy, the problem is almost certainly specific to your store. That is useful to know, because the fix is in your hands.

Check the last thing that changed

Person using a credit card for online shopping on a laptop surrounded by shipping boxes.

Most checkout failures that appear overnight come from something that changed recently. Open your theme version history and your app install list and write down everything that moved in the last few days.

Theme edits

Cart templates, cart drawers, and custom JavaScript on the product or cart page are where theme changes most often break the path into checkout. A developer can rename one element or change one script and stop the checkout button working, and the page will still look fine. Preview the previous theme version and run the same cart. If checkout works there, you have found your culprit.

App installs and updates

Upsell apps, cart drawer apps, subscription tools, currency converters and delivery date pickers all sit close to checkout. Any of them can interfere after an install or an update you never approved. Turn off the newest one, retest, and repeat. For a structured approach, see how to verify checkout after installing a new app.

Settings that break checkout with no code change

A lot of checkout failures happen without anyone touching code. Someone in operations makes a reasonable change, and a group of customers can no longer complete a purchase.

  • A new product goes live with no shipping profile, or with a weight above every rate you have set up.

  • A market is added or edited and a country loses its shipping rates or payment methods.

  • A discount is created with combination rules that stop it stacking with an automatic offer. This guide covers what to check when a discount code fails.

  • Inventory is moved between locations, and products show as available on the storefront but fail once checkout opens.

These are hard to spot because they only affect some shoppers. Your own test order from your home country may go through while customers in another market can't buy anything.

Payment failures need a different approach

If shoppers get all the way to payment and it fails, stop looking at your theme. Check whether your provider has an incident, whether your account has a hold or verification request in Shopify admin, and whether you recently tightened any fraud filters. If only one or two customers are affected, the card issuer is the likeliest cause and there is little you can change.

Place a real order yourself with a card you control, then refund it. That is the only way to confirm payments work end to end.

Why synthetic checkout tests stop before payment

Automated checkout tests, including Shoptest's checkout test flow, act like a real shopper. They load a product, add it to the cart, open the cart and move into checkout. They confirm that each step loads and responds the way it should. They stop before payment is submitted, because placing real orders on a schedule would create real charges, inventory changes and fulfillment noise.

So a passing synthetic test tells you the path into checkout works. It does not tell you your payment provider is accepting cards. That is the right split. Most revenue-killing checkout breaks happen earlier in the journey (a dead button, a broken cart drawer, a script error after a theme update), and those are exactly what scheduled tests catch. For payments, pair the automated tests with provider status monitoring and a periodic manual test order.

If you want to see what this looks like in practice, this guide covers testing your checkout flow after every theme update.

Stop finding out from customers

The worst way to learn checkout is broken is an angry email, or a quiet drop in orders that you notice two days later. By then the lost sales are gone.

Shoptest runs automated test flows for checkout, cart editing, search and mobile navigation on a schedule, so a broken path into checkout shows up as a failed test, not a support ticket. It also monitors Shopify and selected third-party services, so you can quickly tell a platform problem from a store problem. When a test fails, AI-assisted diagnosis explains what broke and where to look, and the AutoFix workflow can try to update the test and verify the repair. None of this replaces a manual test order for payments, but it covers the parts of checkout that break most often after theme and app changes.

Your next step: run the table above against your store today, place one real test order, then run a free scan of your store to see which customer journeys need ongoing monitoring.

Related articles

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.