How to refund an order
Step-by-step instructions for issuing a full or partial refund to a customer in WooCommerce.
Sometimes you need to return money to a customer — whether for a return, a mistake, or a goodwill gesture. WooCommerce has a built-in refund tool that works directly with most payment gateways, so you don't have to log in to Stripe or PayPal separately.
Quick summary
Go to the order, scroll to the items section, and click Refund. Enter the amount or quantity to refund, then click Refund via [your payment gateway] to send the money back automatically. The customer's original payment method is credited. Partial refunds are also supported.
What you'll need
Beginner 5 minutes- WordPress admin access
- A payment gateway that supports automatic refunds (Stripe, PayPal, and most major gateways do)
How to issue a refund
Open the order. Go to WooCommerce → Orders and click the order number.
Scroll down to the items list. Below the product details, you'll find a Refund button. Click it.
Choose what to refund. You have two options:
- Enter a quantity next to each item to refund specific items.
- Or enter a custom amount in the Refund amount field at the bottom for a manual dollar value.
Check the "Restock refunded items" box if you want the product inventory to go back up. Tick this if the customer is returning physical goods.
Add a reason (optional). Type a short note in the "Reason for refund" field. This is stored privately on the order — the customer does not see it.
Click "Refund via [Gateway name]" (e.g., "Refund via Stripe"). This sends the money back to the customer automatically. Do not click "Refund manually" unless your gateway doesn't support automatic refunds — that button only records the refund in WooCommerce without actually moving money.
Refund sent
The refund is processed immediately. The customer will see it on their bank or card statement within a few business days, depending on their bank. WooCommerce records the refund on the order.
Partial refunds
You can refund just part of an order. For example, if a customer ordered three items and one was damaged, you can refund only that item.
When you click Refund on the order, enter the quantity (or amount) for only the affected items. Leave the rest at zero. WooCommerce calculates the refund amount automatically.
Partial refunds don't change the order status
After a partial refund, the order stays in its current status (e.g., Processing or Completed). Only a full refund changes the status to "Refunded." This is normal.
Manual refunds
If your payment gateway doesn't support automatic refunds — or if you're refunding via a method outside WooCommerce (like a bank transfer) — click Refund manually. This records the refund in your WooCommerce records but does not move any money. You'll need to issue the payment yourself outside WooCommerce.
Refund timeline
| Payment method | Typical refund time |
|---|---|
| Credit / debit card (Stripe) | 5–10 business days |
| PayPal | 3–5 business days |
| Bank transfer (BACS) | You manually transfer — timing is up to you |
| Cash on delivery | You handle this in person |
Common questions
Related guides
- Understanding orders
- Order statuses explained
- How to cancel an order
- Payment methods explained
- Troubleshooting payment problems
Need a hand?