Shopify checkout not working?
Run this diagnostic in order. Most checkout failures fall into one of these 8 buckets, and the order is rough probability based on real Shopify support data.
Test on iOS Safari first
40-60% of Shopify mobile orders happen on iPhone Safari, and it's where the most checkout bugs hide. Stripe.js, Shop Pay, Apple Pay are all sensitive to Safari's stricter cookie + cross-origin rules.
Open your store on an actual iPhone (not Chrome's mobile simulator, they behave differently). Add to cart → checkout → all the way through to the payment step. Does the payment form render? Does the Shop Pay button appear?
If payment form fails to render on iOS: roll back your last theme update. If you recently installed a new app: disable it and retest. If neither fixes it: open a ticket with the theme developer or app vendor.
Check your most recent app updates
Shopify apps auto-update on their own schedules. A nightly update for any payment/discount/shipping app can ship with a bug that silently breaks checkout for a slice of your traffic.
Shopify admin → Apps → look at the 'Last updated' column. Sort by date. Any updates in the last 7 days?
Disable the most recent app update (or contact the app developer to roll back). Test checkout again. If it's fixed, that app's update was the cause.
Try a known-good test coupon
Discount apps and Shopify Functions sometimes break coupon application silently. Customers see 'invalid code' or wrong totals and abandon.
Apply a 100%-off test coupon at checkout. Does the total go to $0 correctly? Apply your most-used active promo code with a real product in cart. Does the discount apply correctly?
If discounts misbehave, disable your discount app most-recently-updated and retest. For Functions on Plus, roll back to the previous deploy.
Test from different shipping zones
Third-party shipping rate calculators (Shippo, Easyship, real-time carrier APIs) sometimes start returning errors for specific countries or zones, without notifying you.
Add an address from each region you ship to: domestic, your top international market, a region you ship to rarely. Do shipping rates load for each?
If rates fail for a specific zone: check your shipping app's logs, contact the carrier API vendor, or temporarily fall back to flat-rate shipping for that zone while you debug.
Test the payment step with a test card
Stripe.js may be loading fine but the payment intent itself fails for non-obvious reasons. API key rotation, currency mismatch, 3D Secure callback misconfiguration.
Use Stripe's test card 4242 4242 4242 4242 (any future expiry, any CVC). Try 4000 0027 6000 3184 to test 3D Secure flow. Does each complete?
Check the Stripe dashboard for failed payment intents matching your test attempts. The error message there is more specific than what Shopify shows.
Check your tracking pixels and Web Pixel Extensions
Sometimes the issue isn't checkout itself, it's that conversion tracking broke. Your orders complete fine but Meta/GA4/TikTok stop seeing them. Your dashboards show 'no conversions' even though Shopify shows orders.
Place a real test order. Then check Meta Events Manager / GA4 DebugView for the Purchase event. Does it fire?
A disconnected Web Pixel Extension is usually the cause. Re-authenticate the app, or check if a recent app update broke the integration.
Clear cached themes and republish
Sometimes Shopify's CDN serves a stale theme asset that doesn't match what's currently in your repo. Symptoms include checkout looking subtly broken in production but fine in preview.
Shopify admin → Online Store → Themes → your live theme → Actions → Edit code → make a no-op change and save. This forces a CDN refresh.
If the no-op change fixes checkout, you had a stale CDN issue. Watch for this after every theme deploy.
Contact Shopify support with specifics
If 1-7 didn't fix it, the issue may be Shopify-side, and they won't proactively tell you. Their support is faster when you give them specific evidence.
Reproduce the bug, capture: full URL, browser + version, viewport size, timestamp, screenshot, what you expected vs what happened.
Contact Shopify support with that bundle. Specific bug reports get triaged in hours; vague ones can take days.
Why this keeps happening
You ran the diagnostic. You fixed today's problem. Three weeks from now, a different update will break a different part of checkout, and you'll be back here.
The reason is structural: a typical Shopify store depends on 15-25 things that update independently. Shopify itself, your theme, your apps, your payment gateway, your shipping APIs, your third-party scripts. Any one of them can ship a regression that silently breaks checkout for some segment of your traffic. None of them notify you when it happens.
The only sustainable fix is scheduled checkout testing, automated runs of your real checkout flow on a schedule, with alerts when a step fails.
Catch the next checkout break before customers do
Tracefox replays your Shopify checkout on a schedule, across desktop, mobile, and iOS Safari. The moment a step breaks, you get an email + Slack alert with a screenshot, before customers find out.
Test your Shopify checkout free7-day free trial · First test running in 5 minutes · No credit card