By platform

Shopify payment not working: where it breaks

Shoppers reach the payment step and see an error, an empty payment box, or a Pay button that does nothing. Mimiq sends simulated visitors through checkout up to the payment step and shows where the break happens.

5 visitors try to .
First test free with an accountRun it from your coding agent

Why is my Shopify payment not working?

Payment fails in one of three places: before the payment box appears, inside the box, or after the shopper presses Pay. Before the box, the usual cause is a checkout setting that blocks the next step, such as no shipping option for the address. Inside the box, look for a payment area that never loads or a message about the card. A simulated visitor test shows which of the three it is, but it stops at the payment step, so it cannot tell you whether a real charge goes through.

What this looks like in a report

Who
Dimitri, buying a candle set for his mother's birthday
How they arrived
Clicked a paid social ad for a candle gift set
Where they stopped
Payment step, after a Canadian address and standard shipping

“The card fields are grey and the page says the payment could not be processed. I tried my card once, then wondered if the store ships to Canada at all. I left.”

The fix. Check that the payment provider accepts Canadian dollars and Canadian orders, then open checkout in a private window with a Canadian address and confirm the card fields load before anyone presses Pay.

An illustration. Run a test to see your own.See a real sample report

The error text rarely names the setting that caused it

Shopify checkout moves a shopper through contact, address, shipping and payment, and each step can block the next one without saying why. If no shipping option matches the address, the shopper may never see a payment box, so the payment provider looks broken when the fault is a shipping zone. If the box appears but the provider does not take that currency or country, the shopper gets a generic error with no hint of why. A payment declined after Pay gives a message that does not say whether the card, the bank or the store caused it.

  • Go to payment with one product and an address in your own country. Does the payment box appear?
  • If no shipping option shows, read the message above the payment area. Does it name shipping rather than payment?
  • Look for a payment area that stays blank or keeps spinning. Are its provider fields missing?
  • Reach the payment step without pressing Pay. Is the error under the card field, at the top of the page, or nowhere at all?

Three places a payment error can start

The first place is before the box. A shopper who has no shipping option for their address cannot reach payment, and the message about shipping is easy to miss on a phone. The second place is the box itself. If the payment provider does not accept the shopper's currency or country, or a script that loads the card fields fails, the area stays blank or shows a spinner that never stops. The third place is after Pay, where the provider has answered and the store has to show the result.

Each place needs a different fix. Shipping problems are fixed in the shipping settings, a blank box is usually a provider or script problem, and a decline is the bank's answer to the card. Check the shipping zones first, because a missing country stops the shopper before any payment setting matters. Only then open the provider's settings, and only for the country and currency that failed.

What the error text does and does not tell you

A declined card and a setup fault can show almost the same words on the page. The difference is timing. A setup fault shows up before the card fields respond, while a decline appears only after the card has been sent. Look at whether the fields loaded and accepted typing before you pressed Pay. If they did not load, the card was never the problem, and no card will get through that step.

Mimiq's visitor browser records the errors that matter for this step. It notes JavaScript errors and failed or slow app requests where they happen, so a payment area that never loaded shows as a request that did not finish. Compare that record with what the shopper saw. When the record shows a failed request and the page shows a generic message, the message is hiding the real fault, and the request is where to look.

Checking how far a visitor gets before the payment step

Give Mimiq the store address and one task a shopper would have: buy one candle and go as far as the payment step. Describe the buyer in the sentence that sets who the visitor is, including the country they buy from. The visitor picks a product, fills in an address there, chooses a shipping option and arrives at payment. The result shows each step, the message at the stop, and a screenshot of the payment area in its final state, on a laptop or a phone.

The visitor never enters a real card, so the test ends where the payment box is. It can show that the box loads, which messages appear and that the step is reachable. It cannot show that the bank accepts the card, and that is the part that decides whether the sale happens. Use the test to find the broken step, then place one small real order yourself to confirm the final one.

Ways to find where a payment breaks

MethodShows youMisses
A real order on the live storeThe final result, from a real cardShoppers who never reach the box
The provider's own test modeWhether its test flow completesYour live countries and currencies
Session replay of a real buyerWhat the buyer clicked before they leftBuyers who never got that far
Simulated visitors to the payment stepEach step, the messages and the box stateWhether a real card is accepted

Use the last row to find the broken step. Use the first to confirm the fix.

Mimiq is independent and not affiliated with the platforms it names. Names belong to their owners.

What you get with Mimiq

  1. 01

    Run it by hand, or on every pull request

    Paste a link and a task in the app and watch the visitors work. Or run them on every preview deploy: the GitHub Action comments on the pull request, any other CI can call the MCP endpoint, and your coding agent can run it too.

  2. 02

    Bugs and usability problems in one report

    The browser records errors and failed or slow requests on the step they happened. The visitors say where the wording or the steps confused them, and where they left.

  3. 03

    Visitors that behave like your audience

    Each visitor is a different profile with a reason to be there, matched to who the page is for, described by you, or built from your own customers.

  4. 04

    A prompt to fix each problem

    Every problem comes with a fix to paste into Cursor, Claude Code, Lovable or any coding agent, and one prompt hands over the top problems at once. Then send the same visitors through again.

  5. 05

    Follow every visitor

    See each visitor's whole path, step by step with screenshots, and what it was thinking at every step. Ask any visitor a question.

The browser records relevant JavaScript errors and failed or slow app requests encountered during the run, attached to the step where they occurred. The visitors are simulated: they find problems, they do not predict how many real people will convert.

A new currency or shipping zone can close the payment box again

Rerun the same visitor task after each change to payment settings, shipping zones, currencies or the checkout section of the theme. Adding a country or changing a currency changes which payment fields load, so a checkout that worked last month can show an empty box for one region.

Starter

Try it on one launch

$9 once
120 credits, never expire

About 4 tests of 5 visitors

  • Visitors on your landing page, signup and checkout
  • Where they left and why, with a fix to copy for each problem
  • Run it in the app or on every pull request
  • Ask any visitor a question, included
  • Test accounts and protected previews
Buy 120 credits

Builder

Test every build

$19 a month
500 credits every month

About 20 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Cancel anytime
Choose Builder

Pro

Test every release, as a team

$49 a month
1,500 credits every month

About 60 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Cancel anytime
Choose Pro

Scale

Test at scale, every day

$149 a month
6,000 credits every month

About 240 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Priority support
  • Cancel anytime
Choose Scale
$0for your first test, with a free account (Google sign-in, no card). It includes 50 credits, enough for 10 visitors. After that a visitor uses 5 credits, and packs start at $9 for 120 credits.
See a sample report

Questions

Will the test show whether a real payment goes through?

No. The test stops at the payment step and does not pay with a card. It shows whether the payment box loads, which messages appear, and where the step stops.

Why does Shopify show a payment error when my card is fine?

A declined card and a setup fault can show similar messages. A setup fault stops before the card fields respond, or the provider rejects the currency or country, while a decline comes after the card has been sent. Check whether the fields loaded before you pressed Pay. If they did not, the card is not the cause.

Should I change my payment provider to fix this?

Not until you know which step fails. A new provider moves the problem without showing which setting caused it. First find out whether the box appears, then compare the countries and currencies your provider supports with the address that failed.

Does the test use my card or a test card?

Neither. Simulated visitors do not enter a card number, so nothing is charged and no bank declines anything. The test reports what the payment area showed at the step where it stopped, and that is all it can report about payment.

Keep reading

Send visitors and see what breaks first.

Your first test is free: sign in with Google and it starts right away. Last checked 2026-11-02.

5 visitors try to .