Shopify's Double Charge Script Only Covers One of Three Causes
The Shopify double charge script Support has used since 2020 covers only one of three mechanisms. The other two still have no merchant fix.

Quick Answer: The standard Shopify double charge reply covers one of three real causes. If the two amounts the customer sees are identical, that reply is right. If the amounts differ, the customer is seeing a Shopify Tax void-reauth and the explanation needs to be different. If the customer never completed an order, Shopify Payments did a bank imprint and the explanation needs to be different again. Giving the auth-hold answer in those two cases does not reassure the customer; it tells the customer you did not read what they wrote.
I was skimming another r/shopify thread last week where a merchant asked, roughly, my customer is screaming that we charged her twice and we only see one payment, what do we say. The top reply was a cleaned-up copy of the explanation Shopify Staff has been pasting into every Shopify double charge thread since 2020. It is a good explanation. It is also the wrong first thing to say to the customer whenever one of two other mechanisms is in play, and I keep running into both.
Why Shopify keeps giving the auth-hold answer
Shopify's canned reply has not changed since Don wrote the first version of it on Shopify Community thread 18491 in August 2020. The shape is familiar: your card issuer places an authorization hold when a merchant verifies funds, then settles separately when the merchant captures. Two bank events, one order. Mobile banking apps display both; desktop statements fold them into one line. The hold expires without any action, typically within 3-7 business days for credit cards.
This explanation is correct. It is the right thing to send a customer whose bank app shows a pending twenty-dollar entry and a posted twenty-dollar entry for the same purchase. I have sent some version of it myself more times than I can count. Shopify Support leans on it because, for the volume of complaints they handle, it is right most of the time. The problem is that merchants internalize it as the Shopify double charge answer rather than one of three answers, and when a different mechanism produces an identical-looking complaint, the same reply goes out and reads as dismissive.
Here is my first test when a merchant forwards me a double-charge email: are the two amounts the customer saw identical, and did the customer get an order confirmation from the store.
When the two amounts differ, the standard reply is wrong
This is the one that bit me first, and it bit hard. A merchant in Texas wrote in last winter saying their customers were seeing two pending charges for different amounts, one slightly higher than the other, and they could not figure out why. The admin showed one capture. The standard auth-hold response went out. The customer wrote back angrier than before.
The mechanism is Shopify Tax recalculating after submission. Shopify Tax uses an estimated rate during checkout, then confirms the exact rate against the customer's precise shipping address once the order is submitted. If the estimate was off by any amount, even a few cents, Shopify voids the original authorization and places a new one at the corrected total. The customer's bank log shows three events: first authorization, void, second authorization. Two of those three sit as pending for days. In some apps the void never surfaces, so the customer sees two pending charges for two different amounts and concludes the store is incompetent.
A merchant on Shopify Community thread 262257 posted a clean worked example in October 2023: a $45.71 authorization, a tax update from $2.61 to $3.69, a void of the original, and a $44.63 re-authorization. One real capture, three bank events, two amounts, no merchant error. Shopify Support confirmed this is a "known issue" with no workaround in at least one 2023 support transcript and again in a March 2024 reply on thread 298731. The thread has stayed active through April 2025 with no fix.
The only workaround I know of is Avalara on Shopify Plus, which one Plus merchant on thread 262257 said resolved it; Avalara costs extra and requires Plus. For a Basic or Shopify-plan merchant whose customers are mostly in California (Hybrid tax), Texas, or Maine, there is nothing you can do about the mechanism itself. The thing in your control is the reply.
When there is no order, the standard reply is wrong
The third mechanism showed up in a May 2025 Community thread I keep coming back to (thread 413430). The merchant reported 10 to 20 pending charges per day on customers who had started checkout, entered a card, and then abandoned at the 3D Secure authentication step. No order was created. No capture happened. The customers still saw a pending charge on their bank app and wrote in demanding a refund for something that was never purchased.
What Shopify Payments is doing in this case is a bank imprint, which some processors use to validate the card before the 3DS challenge completes. If the challenge fails or the customer bails, the imprint stays visible as a pending charge until the issuer releases it. Shopify Support told the merchant in that thread it reverses within 24 to 48 hours. That is probably true. The customer does not know what a bank imprint is, and the merchant cannot cancel it from the admin because there is nothing to cancel. Running the standard Shopify double charge script at them, with its talk of authorizations and captures and settlements, confuses the issue further because none of those events happened on their account.
I have not reproduced this failure mode on a US issuer myself, so my picture of the issuer-side timing is based on the merchant reports in the thread rather than my own testing. If you are reading this and your issuer behaved differently, your mileage may vary.
What I actually tell merchants to put in their saved reply
Three templates, picked by two questions you ask the customer before answering anything else. The questions are: are the two amounts identical, and did you receive an order confirmation email from us.
-
Identical amounts, order confirmation received. Standard auth-hold. Send the explanation Shopify has used since 2020. For credit cards, promise 3-7 business days; for debit cards, say the hold can take longer and that the customer's issuer sets the window. Add a line to your order confirmation email so the next customer gets the heads-up before they look at the bank app: a temporary authorization hold may appear alongside your charge; it is not a second charge.
-
Different amounts, order confirmation received. Shopify Tax void-reauth. Explain in plain terms: our tax system calculated an estimate at checkout, confirmed the real rate afterward, and when the two amounts differed the first authorization was voided and a new one was placed for the corrected total. Confirm you have billed them exactly once at the final amount shown on their order confirmation. Tell them the first hold clears in a few days. Do not refund. There is nothing to refund.
-
No order confirmation received. Abandoned-checkout bank imprint. Tell the customer you have no record of a purchase, that the pending entry is a verification imprint from the payment processor rather than a charge, and that their issuer will release it within 24 to 48 hours. Suggest they call their bank if it persists past 48 hours. Do not offer a refund; refunding a charge that was never captured can create reconciliation problems you do not need.
If any one of these three complaints has become a daily occurrence on your store rather than a weekly one, that is the point at which a free 15-minute session with a help1 expert usually earns its keep: triaging which variant is actually hitting the store, and whether a settings change on Shopify Tax or a different checkout setup would cut the volume. For stores running manual-capture pre-orders with long lead times, that second question is covered more fully in the preorder authorization comparison rather than here.
When the standard script is the right answer
I want to defend Shopify Support's script, because in the case it covers, it is correct, concise, and does not blame the merchant or the customer. The underlying mechanic (authorization then capture) is real. Mobile banking apps genuinely do display both. The hold genuinely does clear. For a solo merchant on a Shopify plan who sees one or two of these complaints a month and whose customers are mostly on credit cards in states with simple sales tax, the standard reply, pasted into a saved response in Shopify Inbox, resolves the complaint cleanly in most cases. I use it that way. Nothing in this post argues otherwise.
The argument is that the saved response should be three replies behind two gating questions, not one reply you send to every Shopify double charge email.
Shopify has had six years to publish a diagnostic version of the double-charge template. It still hasn't. Writing one for yourself is the single most valuable support task a small-team merchant can do this month.
Still stuck? Talk to an expert.
Our vetted Shopify experts can fix this issue for you in a live session. $39 per session. Your first 15 minutes are free.