A customer filed a chargeback while their return is still in transit — do I fight it or just refund them?
A customer opens a bank dispute before their return even arrives. Here's how to tell whether to fight it, refund it, or wait, and how to avoid paying for the same order twice.
What's going on
A customer starts a return, ships the item back, and — before it arrives, or before you've had a chance to process the refund — their bank files a chargeback anyway. Now there's an open dispute in Shopify admin on an order where a refund may already be underway, and it's not obvious whether you should fight the dispute, refund the customer, or just wait for the package to show up.
This happens because the two processes run on separate timelines. Your return and refund workflow is entirely yours to manage; the dispute timeline is set by the customer's bank and the card network, and it doesn't pause just because a return is in progress. Customers also frequently don't realize that opening a dispute is redundant, and sometimes counterproductive, when a refund is already coming — which is how the double-payout worry shows up.
The stakes are real: respond incorrectly and you either lose money you didn't have to lose, or refund an order that's also being disputed and end up paying for it twice.
Why it happens
Customers dispute for reasons that have nothing to do with fraud: impatience with refund timing, uncertainty about whether the merchant received the return, or simply not trusting a refund will show up and deciding the bank is the faster route. None of that requires bad faith — it's usually a customer who doesn't realize a refund is already queued.
On the merchant side, the risk is sequencing: if a refund goes out around the same time a dispute is filed, without checking the dispute's status first, it's easy to end up paying the customer through both channels for the same order.
5 ways to fix it
Should I fight the chargeback or just refund the customer?
Check the dispute's status in Shopify admin first. Most payment processors, including Shopify Payments, restrict issuing a refund on an order that has an open dispute, precisely to avoid paying out twice for the same order. If that's the case here, your job right now is building a response, not refunding. Gather your evidence — tracking, any return authorization, and customer messages — and submit it before the response deadline shown in admin. If the returned item hasn't arrived yet and the deadline is close, submit what you have; tracking that shows the return in motion is still meaningful evidence even if the package hasn't landed.
What counts as strong evidence for a return-in-transit dispute?
Carrier tracking showing the return label was created and the package is moving, or already delivered, is your strongest evidence, especially if the timestamps are close to or before the dispute date. Add the original order confirmation, your written return or refund policy along with proof the customer had access to it (checkout page, confirmation email, or a policy link), and any support messages showing the customer initiated the return themselves. If you'd already agreed to refund once the item arrived, include that agreement — it shows the dispute was filed before there was anything to dispute.
How do I make sure the customer doesn't get paid twice?
Avoid processing a manual or off-platform refund on an order with an open dispute — wait until the dispute is resolved, since Shopify Payments and most processors won't let a standard refund go through while it's pending anyway. If you'd already refunded the customer before the dispute was filed, which is a common way this situation starts, that refund is your strongest piece of evidence: submit the refund confirmation and date to show the customer was already made whole before the bank got involved.
What if the item was never actually returned?
If tracking shows the return was never shipped, shows a different item than what you sold, or there's no tracking number at all, submit that mismatch as part of your response — it works strongly in your favor. It's also worth tightening your process from here: requiring a tracking number before you commit to a refund date removes the ambiguity that lets this kind of dispute happen in the first place.
How do I keep this from happening on future orders?
A clearer return window and refund-timing policy helps, but the more durable fix is sequencing: don't promise a refund date until the return is scanned by the carrier, and don't issue the refund until the item is either received or tracking confirms delivery. That one change removes most of the uncertainty that leads an impatient or confused customer to open a bank dispute instead of waiting for the refund they were already promised.
Bottom line
Most of these disputes come down to timing, not fraud: the bank doesn't know a return is already in motion, and the customer often doesn't realize a chargeback is redundant with a refund that's already promised or already sent. Check the dispute's status in Shopify admin before doing anything else — if it's open, you likely can't refund through the normal flow until it resolves, so focus on building a clean evidence packet (tracking, policy, correspondence, any prior refund receipt) rather than guessing whether to fight it or concede. If this keeps happening, a documented return-and-refund sequencing rule prevents more of these than any single dispute response will.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.