An order can be cancelled if it is no longer to be fulfilled. If the order has already been paid for, a refund may also be necessary.
WooCommerce supports both full and partial refunds. However, you must distinguish between whether WooCommerce can process the refund automatically via the payment gateway used or whether you have to refund the money yourself outside of WooCommerce.
You can find the relevant order at:
WooCommerce
→ Orders
If you are not yet familiar with order management, read first Managing WooCommerce orders: status, payment, and shipping.
First things first: Changing the WooCommerce order status to „Cancelled“ or „Refunded“ does not automatically refund money to the customer. An actual refund must be processed via the refund feature and – if supported – the payment gateway.
Cancellation and refund are two different things #
A Cancellation means that an order will not be processed further.
A Refund means, on the other hand, that an amount already paid is fully or partially returned to the customer.
| Process | Meaning |
|---|---|
| Cancel | The order will not be processed any further. |
| Refund | An already paid amount is refunded in full or in part. |
Therefore, for an order that has not yet been paid for, a cancellation may be sufficient.
If the order has already been paid for, you must also check whether the customer needs to be refunded.
Cancel an unpaid order #
If an order has not been paid for and is no longer to be fulfilled, you can open it in the WooCommerce backend and change the order status to Cancelled Sit.
Save or subsequently update the order.
When WooCommerce inventory management is enabled, the stock reserved or reduced for order items is added back to the available inventory when an order is cancelled.
We explain the meaning of the various statuses in detail in the article WooCommerce Order Status Simply Explained.
Do not simply set a paid order to „Cancelled“ #
If the order has already been paid for, a simple status change is usually not sufficient.
For example:
Order:
CHF 129.00
Payment:
successful
Status manually to:
Cancelled
This means you have changed the order status. However, this did not automatically refund CHF 129.00 to the customer.
Important: For an already paid order, always check what actually happened with the payment. The WooCommerce order status and the money movement at the payment gateway are two different things.
Process refunds directly in the order #
For a refund, you open the relevant order under:
WooCommerce
→ Orders
→ open desired order
In the section with the ordered products you will find the function Refund.
After clicking, you can specify which products or quantities and what amount should be refunded.
You can also enter a note for the refund.
Full or partial refund? #
WooCommerce supports both options.
At a full refund the entire corresponding order value will be refunded.
At a Partial refund only part of the order is refunded.
This may be necessary, for example, if a customer has ordered three items but returns only one of them.
Order:
Product A: CHF 40.00
Product B: CHF 60.00
Product C: CHF 30.00
Total:
CHF 130.00
Product C is refunded:
CHF 30.00
Therefore, the order was only partially and not fully refunded.
Refund based on product quantity #
WooCommerce displays the individual order items when initiating a refund.
When you issue a refund for a product, you can enter the corresponding quantity for that item.
WooCommerce calculates the corresponding refund amount from this.
This is particularly helpful when only individual items of a larger order are affected.
Example: The customer purchased three identical products and is returning one of them. For the refund of this product, you enter a quantity of 1 instead of refunding the entire order.
Shipping costs can also be included #
A refund does not necessarily have to concern exclusively product items.
If shipping costs are also to be refunded in your specific case, you can include the corresponding amount in the refund.
Whether and to what extent shipping costs must be refunded depends on your specific business case and the legal or contractual requirements applicable to you.
Note: WooCommerce provides the technical capability. It does not decide whether you legally have to refund the product price, shipping costs, or other amounts in a specific case.
What happens to taxes? #
When refunding order items, WooCommerce can also take the corresponding tax amounts into account.
Therefore, before processing the refund, check the entire displayed refund amount and not just the product price.
The tax treatment of a refund depends on your shop configuration and the tax rules applicable to your business.
We cover the technical setup of WooCommerce taxes in the article Properly setting up taxes and VAT in WooCommerce.
Automatic and manual refund #
WooCommerce distinguishes between refunds in terms of automatic and manual Processing.
The difference is crucial.
| Art | What is happening? |
|---|---|
| Automatic refund | WooCommerce submits the refund to the payment gateway via a compatible payment extension. |
| Manual refund | WooCommerce records the refund in the order. You have to refund the money to the customer yourself via the payment method used. |
Automatic refund via the payment provider #
If the payment extension being used supports automatic refunds, a corresponding button will appear during the refund process.
The exact designation depends on the payment service provider or plugin.
For example, the general meaning there could be:
Refund via [Payment Provider]
If you use this function and the refund is successfully processed, the payment extension submits the transaction to the payment provider.
The refund will then be made via the original payment method or in accordance with the rules of the provider used.
Important: An automatic refund only works if the payment extension used supports this function and the communication with the payment provider works.
Manual refund in WooCommerce #
During a manual refund, WooCommerce merely records that a specific amount has been refunded.
WooCommerce does this no actual money transfer out.
You must carry out the refund yourself via the original or otherwise agreed payment method.
For example:
Customer paid via bank transfer
↓
Record refund in WooCommerce
↓
Refund the amount manually via bank account
Or with a payment provider whose WooCommerce integration does not support automatic refunds:
Process refund in WooCommerce
↓
Log in to the payment provider
↓
Execute the refund there
Very important: When you click „Refund manually“, the money is not yet with the customer. WooCommerce merely documents the refund within the order with this action.
Do not refund twice #
Especially with manual refunds, you have to work carefully.
If you have already refunded the amount directly with the payment provider and then trigger another automatic refund from WooCommerce, there is a risk of a double refund.
Therefore, check before every refund:
- Has money already been refunded?
- If yes: by what payment method?
- Is the refund already recorded in WooCommerce?
- Does the payment extension used support automatic refunds?
Order notes and transaction information can help you understand the previous process.
What happens during a full refund? #
When the entire order value has been refunded via the WooCommerce refund function, the order receives the status Refunded.
The individual refunded items and amounts will be marked accordingly in the order.
This makes it traceable in WooCommerce that the order has been fully refunded.
However, in the case of a manual refund, the following still applies: The status alone does not prove that the money has actually reached the customer.
What happens during a partial refund? #
If only a part of the order value is refunded, the order does not automatically receive the status Refunded.
The refund will be documented within the order, and the affected items or amounts will be displayed accordingly.
The previous order status can remain unchanged.
This makes sense because a partially refunded order is not the same as a fully refunded order.
Increase inventory again in case of a refund #
When creating a refund, WooCommerce can offer an option to add the refunded items back to stock.
You should only do this if the goods can actually be resold or if the inventory is to be increased for another comprehensible reason.
Example: A customer returns unopened goods, and you put them back into saleable inventory. Then, restocking the inventory can make sense.
If a returned product is damaged and no longer resellable, on the other hand, you should not simply log it back in as available inventory.
You can find more about inventory management in the article Manage inventory, SKU, and delivery status in WooCommerce.
Refunds cannot simply be undone #
Therefore, treat the refund function with the same care as a payment.
A refund successfully executed via a payment provider is an actual financial transaction. Deleting an order note or changing the WooCommerce order status at a later time does not automatically retrieve this money.
Check amount, products, and payment method therefore before processing the refund.
What should you check before a refund? #
First open the order and check the actual process.
Of particular importance are:
- correct order number
- Customer
- Order Status
- original order value
- payment method used
- pre-existing refunds
- products and quantities to be refunded
- amount to be refunded
- shipping and taxes if applicable
- Ask whether the inventory level should be increased again
In the case of an automatic refund, you should also make sure that you are using the correct payment extension and the correct process.
Example: Refund complete order #
A customer has fully paid for the following order:
Product:
CHF 90.00
Shipping:
CHF 9.00
Total:
CHF 99.00
If the entire order including shipping is to be refunded, you check the corresponding product quantities and amounts as well as the shipping to be taken into account in the refund view.
If the payment extension you are using supports automatic refunds, you can initiate the refund through it.
Otherwise, you can manually process the refund in WooCommerce and issue the CHF 99.00 refund yourself via the corresponding payment method.
Example: Refund only one product #
A customer has ordered two products:
Product A:
CHF 80.00
Product B:
CHF 40.00
Total:
CHF 120.00
Only product B is to be refunded.
Therefore, you enter the corresponding refund quantity for Product B. WooCommerce uses this to calculate the corresponding refund amount.
After the refund, the order remains a partially refunded order. It will not be set to the „Refunded“ status automatically just because of this.
Example: Order has not been paid for yet #
An order of CHF 75.00 is still pending Payment pending. Der Kunde teilt dir mit, dass er die Bestellung nicht mehr möchte.
Wenn tatsächlich keine Zahlung erfolgt ist, gibt es auch nichts zurückzuzahlen.
Du kannst die Bestellung entsprechend stornieren.
Bestellung:
CHF 75.00
Bezahlt:
CHF 0.00
Rückzahlung:
CHF 0.00
Bestellstatus:
Storniert
Genau deshalb ist es wichtig, vor jeder Aktion zuerst den tatsächlichen Zahlungsstatus zu prüfen.
Bestellnotizen nach der Rückerstattung kontrollieren #
WooCommerce protokolliert Rückerstattungsvorgänge in der Bestellung.
Auch Zahlungs-Erweiterungen können dort zusätzliche Informationen hinterlegen.
Nach einer automatischen Rückerstattung solltest du deshalb die Bestellnotizen kontrollieren und prüfen, ob der Vorgang erfolgreich bestätigt wurde.
Bei Unklarheiten solltest du zusätzlich die Transaktion beim verwendeten Zahlungsanbieter kontrollieren.
Note: Die Bestellnotizen helfen dir bei der Nachvollziehbarkeit. Entscheidend für die tatsächliche Geldbewegung bleibt bei einer automatischen Rückerstattung aber auch die erfolgreiche Verarbeitung durch den Zahlungsanbieter.
Warum erscheint keine automatische Rückerstattung? #
Wenn WooCommerce nur eine manuelle Rückerstattung anbietet, kann dies daran liegen, dass die verwendete Zahlungsmethode beziehungsweise Zahlungs-Erweiterung keine automatische Rückerstattung über WooCommerce unterstützt.
Auch eine fehlerhafte oder unvollständige Verbindung zum Zahlungsanbieter kann dazu führen, dass eine automatische Rückerstattung nicht wie erwartet funktioniert.
Prüfe in diesem Fall die Dokumentation der tatsächlich verwendeten Zahlungs-Erweiterung.
Die grundlegende Einrichtung der Zahlungsarten behandeln wir im Artikel Setting up and managing payment methods in WooCommerce.
Rückerstattung fehlgeschlagen – was nun? #
Wenn eine automatische Rückerstattung eine Fehlermeldung ausgibt, solltest du den Vorgang nicht sofort mehrfach wiederholen.
Prüfe zuerst, ob beim Zahlungsanbieter möglicherweise trotzdem bereits eine Rückzahlung angelegt oder verarbeitet wurde.
Kontrolliere danach die Bestellnotizen und – sofern verfügbar – die Transaktionsinformationen beziehungsweise Protokolle der Zahlungs-Erweiterung.
So verhinderst du, dass du versehentlich dieselbe Zahlung mehrfach zurückerstattest.
Die technische Fehlersuche behandeln wir später ausführlicher im Artikel Systematically finding WooCommerce issues: status, logs, and error diagnostics.
Rückerstattung ist nicht dasselbe wie Rückgabe #
WooCommerce verwaltet in diesem Bereich in erster Linie die Bestellung und die finanzielle Rückerstattung.
Der tatsächliche Warenrücklauf – also beispielsweise wann ein Kunde ein Paket zurücksendet, ob die Ware angekommen ist und ob sie noch verkaufsfähig ist – ist ein zusätzlicher betrieblicher Vorgang.
Ein Klick auf „Rückerstattung“ bedeutet deshalb nicht automatisch, dass die physische Ware bereits wieder bei dir eingetroffen ist.
Wann du eine Rückerstattung ausführst und wie du Warenrückgaben organisatorisch behandelst, hängt von deinem Geschäftsprozess und den für dich geltenden Regeln ab.
WooCommerce entscheidet nicht über deinen Rückerstattungsanspruch #
WooCommerce stellt die technischen Funktionen für Stornierungen und Rückerstattungen bereit.
Das System entscheidet aber nicht, ob ein Kunde in einem konkreten Fall Anspruch auf eine Rückerstattung hat, welche Fristen gelten oder welche Kosten zurückbezahlt werden müssen.
Diese Fragen hängen unter anderem vom Land, deinem Unternehmen, deinen Vertragsbedingungen und den geltenden gesetzlichen Vorschriften ab.
Therefore: Verwende die WooCommerce-Funktion erst dann, wenn feststeht, welcher Betrag im konkreten Fall tatsächlich zurückerstattet werden soll. Dieser Artikel erklärt die technische Bedienung von WooCommerce und ist keine Rechts- oder Steuerberatung.
Die wichtigste Kontrolle am Schluss #
Nach einer Rückerstattung solltest du nicht nur schauen, ob in WooCommerce ein roter Rückerstattungsbetrag erscheint.
Kontrolliere auch:
- Wurde der richtige Betrag zurückerstattet?
- War es eine vollständige oder teilweise Rückerstattung?
- Wurde bei einer automatischen Rückerstattung der Vorgang vom Zahlungsanbieter bestätigt?
- Wurde bei einer manuellen Rückerstattung das Geld tatsächlich separat zurückbezahlt?
- Stimmt der Lagerbestand?
- Ist der Bestellstatus plausibel?
- Sind die Bestellnotizen nachvollziehbar?
Erst dann ist der Vorgang aus technischer Sicht sauber dokumentiert.
What's next? #
Damit haben wir die wichtigsten Abläufe rund um WooCommerce-Bestellungen behandelt: Bestellungen verwalten, Bestellstatus verstehen, Bestellungen bearbeiten und Rückerstattungen durchführen.
Als Nächstes wechseln wir zu einem anderen wichtigen Bereich des Shops. Im Artikel Creating coupons and discount codes in WooCommerce erklären wir, wie du Rabatte einrichtest und festlegst, für welche Produkte, Kunden oder Bestellwerte ein Gutschein verwendet werden darf.
Summary #
Stornierung und Rückerstattung sind nicht dasselbe. Eine Stornierung beendet die weitere Ausführung einer Bestellung. Eine Rückerstattung gibt einen bereits bezahlten Betrag ganz oder teilweise zurück.
WooCommerce unterstützt vollständige und teilweise Rückerstattungen. Bei einer automatischen Rückerstattung kann eine kompatible Zahlungs-Erweiterung die Rückzahlung direkt an den Zahlungsanbieter übermitteln.
At a manual refund dokumentiert WooCommerce den Vorgang lediglich innerhalb der Bestellung. Das Geld musst du selbst über den entsprechenden Zahlungsweg an den Kunden zurückzahlen.
Das blosse Ändern des Bestellstatus auf „Storniert“ oder „Rückerstattet“ löst keine automatische Geldbewegung aus.
Kontrolliere deshalb vor und nach jeder Rückerstattung den Betrag, die betroffenen Produkte, die Zahlungsmethode, den Lagerbestand und die tatsächliche Transaktion beim Zahlungsanbieter.