My cart-to-checkout button spins or 404s, what’s wrong?
A checkout button that spins forever, a failed AJAX cart, or a redirect loop / 404 is almost always a theme JavaScript conflict, a custom cart.js, a stale cart/add.js call, a duplicated event handler, or an app that hijacks the checkout redirect. We open the browser console and network tab on a preview theme, find which script is blocking the POST to /checkout, and resolve it, often an app conflict.