Handling returns smoothly protects your store from angry customer reviews and expensive payment disputes. Refunding an order never undoes all your costs: payment processors keep their transaction fees, and shipping labels cannot be reused once shipped.
This guide walks through the exact operational steps to manage returns, how payment fees behave on returned orders, and the true net cost of a return for a small online store.
Worked example: the true cost of one return on a $40 order
These two scenarios show what happens when a customer returns a $40 order. Both stores sell a physical product with identical hypothetical baseline costs: a $40 sale price, $12 product cost, and $5 outbound shipping paid by the merchant. The customer paid online with a standard US credit card via Stripe (2.9% + 30¢).
Stripe’s original card fee is 2.9% of $40 ($1.16) plus 30¢ = $1.46. When you issue a refund, Stripe does not return original processing fees.
Scenario A: The returned item is resold (free return shipping offered by merchant) The customer sends the item back using a merchant-provided return label costing $5 in postage. You inspect the product, confirm it is in pristine condition, restock it into inventory, and issue a full $40 refund.
- Original revenue: $40.00
- Refund to customer: -$40.00
- Stripe processing fee kept by processor: -$1.46
- Outbound shipping postage: -$5.00
- Return shipping postage: -$5.00
- Product inventory cost: $0.00 net (the $12 item goes back on the shelf to sell again)
- Net cash loss on the return: -$11.46
Scenario B: The returned item arrives damaged or unsellable The customer returns the item, but packaging is torn or the item is unusable. You issue a full $40 refund, but you cannot restock the item.
- Original revenue: $40.00
- Refund to customer: -$40.00
- Stripe processing fee kept by processor: -$1.46
- Outbound shipping postage: -$5.00
- Return shipping postage: -$5.00
- Discarded product cost: -$12.00
- Net cash loss on the return: -$23.46
| Cost component | Scenario A (Item resold) | Scenario B (Item damaged / unsellable) |
|---|---|---|
| Customer refund | $40.00 | $40.00 |
| Original card fee lost (Stripe 2.9% + 30¢) | $1.46 | $1.46 |
| Outbound shipping spent | $5.00 | $5.00 |
| Return label postage spent | $5.00 | $5.00 |
| Lost inventory cost | $0.00 | $12.00 |
| Total net loss to your store | -$11.46 | -$23.46 |
Scenario C: Customer pays return shipping (resellable item) If your return policy states that customers cover return shipping, your net loss drops by the $5 return label to -$6.46. If you also deduct a 10% restocking fee ($4.00) from the refund, your net loss drops further to -$2.46.
Rule of thumb: Even with customer-paid returns, every return costs you at least the original card processing fee plus the outbound shipping. If you sell low-margin items, offering free return shipping requires a high repeat-order rate to break even.
Run it with your own numbers: Calculate your net exposure per return using: lost card fee + outbound postage + (return postage if merchant-paid) + (product cost if unsellable) - restocking fee. Check your baseline margins with our profit per order calculator.
Step 1: Review the request against your published policy
Before issuing any label or refund, check whether the request meets your rules. Published terms give you the baseline to approve or reject claims fairly.
- Verify the return window: Is the request within your policy timeframe (e.g. 14 or 30 days from delivery)?
- Confirm item condition: Was the item a final sale, custom piece, or hygienic good excluded from returns?
- Establish the return reason: Did the buyer change their mind, or was the item defective or wrongly sent?
In Shopify, you can set return and cancellation rules that allow buyers to submit self-serve return requests directly from their customer order status page. This saves email back-and-forth while enforcing deadlines automatically.
Shopify recommends creating an official return and logging a return reason before issuing money back. If you issue a refund without creating a return, Shopify records no reason, and your backend reports on return trends will show empty data.
Step 2: Provide a return label or shipping instructions
Once approved, specify how the item gets back to you. You have two primary approaches for postage:
- Customer-paid return: The customer ships the package back using their own carrier of choice, or you email an unpaid address slip. This protects your margins but adds customer effort.
- Merchant-paid prepaid label: You provide a pre-addressed shipping label. You can absorb the cost as a customer perk, or state in your policy that the label cost will be deducted from their final refund.
Label generation tools
- Shopify Shipping: If your default store location is in the United States, you can generate and email return shipping labels directly from the order page in your Shopify admin.
- ShipStation: For multi-channel stores, ShipStation provides return labels starting on its Starter plan ($14.99/month for up to 50 shipments) with automated rate shopping across major carriers including USPS and UPS. Standard plans ($29.99/month for 50 shipments) add returns and exchanges workflows.
- Third-party aggregators: Tools like Pirate Ship allow generating discount shipping labels without monthly software fees. Compare options in our guide to Pirate Ship vs ShipStation vs Shopify Shipping.
Step 3: Inspect the package and restock sellable inventory
Never issue a refund the moment a tracking number is created. Wait until the package arrives at your door and inspect the contents.
- Check that all original parts, tags, and accessories are present.
- Confirm whether the item has been washed, worn, altered, or damaged.
- If the item is intact, restock it into your active inventory count.
In Shopify, when you process a return, you can check the box to restock the items into your inventory location. If an item arrives damaged and cannot be resold, leave the restock box unchecked so your inventory counts remain accurate. For tracking best practices, read inventory basics for a small online store.
Step 4: Process the refund and understand retained fees
Once the item is inspected, calculate the refund amount and issue payment through your store platform.
What happens to payment processing fees
When you refund a customer, you do not receive payment processing fees back:
- Stripe: Stripe documentation confirms that processing fees from the original transaction are not returned on full or partial refunds. For standard domestic cards, that original 2.9% + 30¢ stays with Stripe.
- PayPal: PayPal’s US business fee schedule states that fees originally paid to receive a commercial transaction are not returned when issuing a refund.
- Shopify Payments: If an order was processed through Shopify Payments, credit card processing fees are not refunded to the merchant.
- Third-party gateways on Shopify: If Shopify Payments is available in your country and you use a third-party gateway, third-party transaction fees are also retained.
Critical refund rules to remember
- Refunds cannot be undone: In Shopify, you cannot cancel or reverse a refund once initiated from the admin. Double-check your numbers before clicking confirm.
- Workflow sequence: You can refund an order without creating a return, but you cannot create a return after a refund has already been completed. Always create the return first.
- Restocking fee deductions: When refunding an entire order in Shopify, you can manually adjust the refund amount to deduct a restocking fee or label fee.
- Store credit legalities: You can issue refunds to the original payment method, store credit, or both. Check state and local laws regarding store credit expiration dates before issuing credit.
Returns versus chargeback disputes
A return is a customer service workflow you control. A chargeback dispute is a forced reversal initiated by the customer’s bank.
If a customer becomes frustrated by unanswered emails or unreasonable delays, they may bypass your store and file a dispute with their card issuer. Disputes carry heavy financial penalties:
- Stripe dispute fees: Stripe charges a flat $15.00 dispute fee for each dispute received.
- PayPal chargeback fees: PayPal charges a $20.00 chargeback fee per occurrence in the United States.
- Dispute rate risks: Stripe notes that for small businesses processing fewer than 100 payments a month, just one or two disputes can significantly harm your merchant standing.
How to use refunds to stop disputes
Stripe highlights that responding to customer inquiries and processing refunds or replacements quickly makes customers far less likely to file a dispute.
Crucially, Stripe confirms that fully refunded payments cannot be disputed. If a customer is angry and threatening bank action, issuing a full refund immediately closes the door to a chargeback dispute and prevents the $15.00 to $20.00 penalty fee. If a customer has already opened a dispute while a refund is pending, Stripe recommends resolving the dispute directly rather than refunding to avoid paying twice. For full details on dispute evidence, read online payments, fees and chargebacks.
For when you should pick customer-paid returns
- Your average order value is under $30: When product margins are $5 to $10, absorbing a $5 return postage label completely eliminates your profit across multiple orders.
- You sell bulky or heavy items: Postage costs on large items can easily exceed $15 to $20 each way.
- Your products have high sizing variance: In apparel or shoes, customer-paid returns discourage bracket purchasing (buying three sizes with the intention of returning two).
For when you should offer free return shipping
- You sell high-margin premium goods: When gross margin exceeds $50 to $100 per unit, absorbing a $5 return label is a modest customer acquisition cost.
- You are competing with dominant marketplaces: In categories dominated by Amazon, frictionless returns remove purchase hesitation for first-time shoppers.
- You made a fulfillment error: If you shipped the wrong SKU, wrong size, or a defective item, always provide a prepaid return label and replace or refund without customer expense.
Common return mistakes to avoid
- Refunding before receiving the package: Issuing a refund before physical inspection often results in lost merchandise or receiving empty boxes.
- Hiding your return policy: Burying return links in footer microcopy increases chargeback disputes. Stripe recommends making refund and cancellation policies visible during checkout.
- Ignoring return reasons: Failing to track return reasons prevents you from identifying defective batches, poor product photos, or misleading size charts.
- Promising what you cannot execute: Offering instant phone support or 24-hour return turnaround when running a solo side-business leads to missed expectations and chargebacks.
What to do this week: a 5-step implementation plan
- Write and publish your policy: Create a clear, plain-language return policy. State your timeframe (e.g. 30 days), eligible item conditions, who pays return shipping, and whether you offer store credit or original payment refunds. Check our guide to legal pages and policies for an online store.
- Enable self-serve return rules in your platform: Turn on Shopify’s self-serve return portal or your platform’s customer order request flow.
- Configure your return label workflow: If on Shopify, verify that your US default location is active to generate return labels. If selling across multiple storefronts, evaluate ShipStation pricing ($14.99/mo Starter) or shipping basics for a new online store.
- Draft standard customer email templates: Save 3 message snippets: return approval instructions with packing guidance, notification of package receipt and inspection, and refund confirmation.
- Set up a monthly return review: Review returned SKUs once a month. If a single product accounts for the majority of returns, update the product description or review how to source products for an online store.
General information, not legal or tax advice.
Sources (checked 2026-10-03)
- Shopify Help Center: Returns and exchanges - Return flow, self-serve returns, return labels, and cancellation rules
- Shopify Help Center: Refunding orders - Restocking, restocking fee deductions, fee treatment, store credit, and non-reversible refunds
- Shopify Help Center: Shopify Shipping - Creating and sending return labels for US default locations
- Shopify Help Center: Policy templates - Store owner responsibility for published policies
- ShipStation: Pricing - Monthly tiers, return label features, and carrier discount claims
- Stripe Documentation: Refunds and cancellations - Non-refundable processing fees, multiple refunds, and dispute handling
- Stripe: Pricing - Standard domestic processing rates (2.9% + 30¢) and $15.00 dispute fees
- Stripe Documentation: Dispute prevention best practices - Visible refund policies, quick refund resolution, and dispute protection
- PayPal: Business fees (US) - Non-refundable transaction fees, 2.99% + 49¢ card rates, and $20.00 chargeback fee



