Customers change their minds. When they can’t cancel an order themselves, they email you, call you or ask their bank for a chargeback. WC Cancel Order adds a Cancel Request button to their WooCommerce orders, so they can ask to cancel in a few clicks and tell you why. You stay in control: nothing is
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.7 and PHP 8.0.
SourceWordPress plugins · Oct 20, 2026
01 / Source details
About this tool.
Customers change their minds. When they can’t cancel an order themselves, they email you, call you or ask their bank for a chargeback. WC Cancel Order adds a Cancel Request button to their WooCommerce orders, so they can ask to cancel in a few clicks and tell you why. You stay in control: nothing is cancelled until you approve it.
Why use WC Cancel Order?
Fewer support emails – every request arrives in one list, with the customer’s reason attached.
No surprise cancellations – each request waits for your decision, and customers can only ask to cancel orders in the statuses you allow, for example Processing but not Completed.
Customers stay informed – they receive an email when you approve or decline their request.
Stock stays correct – an approved request cancels the order the normal WooCommerce way, so the items go back into stock.
How it works
01The customer clicks Cancel Request on an order in My Account > Orders and enters the reason in a popup.
02The order moves to the Cancel Request status and the store receives an email.
03You review the request under WooCommerce > WC Cancel and approve or decline it.
04Approved: the order is cancelled and WooCommerce puts the stock back. Declined: the order returns to the status it had before. The customer is emailed either way.
Features
Cancel Request button in My Account > Orders and on the order details page.
Choose which orders can be cancelled – allow requests only for the order statuses you select.
Cancellation details – the customer explains the reason in the popup; you can make it required.
Your own note in the popup – for example your cancellation policy or dispatch cut-off time (HTML allowed).
Guest orders – guests get a “Want to cancel this order?” link in their order emails that opens a secure cancellation page, no account needed.
Request list under WooCommerce > WC Cancel with the date, status and details of every request; view, approve or decline each one in a popup.
Find requests fast – status links (All / Pending / Approved / Declined) with counts, a search box for order number, name or email, and a bubble on the WC Cancel menu while requests are waiting.
Quick access – the “request received” email to the shop links straight to the pending requests.
Accessible popup – close button, screen-reader labels, focus returns to the Cancel Request button, and a layout for phones and right-to-left languages.
No duplicates – two requests for the same order at the same moment create one request and one email; “Require cancellation details” is checked on the server too.
Delete all data when the plugin is deleted – optional setting, off by default. Nothing is removed while WC Cancel Order Pro is installed, because the two plugins share their data.
Three email notifications – Cancellation Request Received (to the store), Approved and Declined (to the customer). Edit the recipients, subject and heading, or switch an email off, under WooCommerce > Settings > Emails.
Safe decline – a declined order returns to its previous status (for example On hold), and the customer is also emailed when you move an order out of Cancel Request by hand.
“Cancel Request” order status with its own filter in the WooCommerce Orders list, so open requests are easy to find.
Works with High-Performance Order Storage (HPOS), the Cart and Checkout blocks, multisite and WPML. Translation ready.
Privacy
Cancellation requests (order, date and the details the customer entered) are stored in your own WordPress database. The plugin adds no tracking, sets no cookies and sends no data to external services.
⭐ Premium: WC Cancel Order Pro
Turn cancellation requests into finished refunds. The Pro version handles the whole process, from the customer’s request to the money back, and lets customers cancel single items too.
✅ Partial cancellation – customers cancel single items or quantities, not only the whole order.
✅ Refund on approval – automatic gateway refund, manual refund or store wallet credit, with the transaction ID recorded.
✅ Store wallet – refunds become a balance customers spend at checkout, with a wallet overview for admins.
✅ Cancellation fee – a fixed amount or a percentage, shown before the customer confirms and taken off the refund.
✅ Automatic restock when a refund is issued.
✅ Your own cancellation reasons as radio buttons, plus an optional or required comment field.
✅ Instant cancellation without approval for the order statuses you choose.
✅ Full control – the order status after approval or decline, the user roles that may cancel, and a time limit after which the button disappears.
✅ One request list for full and partial requests, with bulk approve and decline.
✅ Works with Ultimate Member and WooCommerce Subscriptions.
wc_cancel_settings_order_status filter – the order statuses offered in the settings.
wc_cancel_declined_status filter – the status a declined order returns to ( $status , $order ).
wc_cancel_settings filter – the settings fields.
wc_cancel_request action – runs when a customer submits a request ( $order_id ).
See it in action
Screenshots & previews.
Orders list with the "Cancel Request" order status.Cancellation requests under WooCommerce > WC Cancel, with the request status and actions.Approving a cancellation request.Details of an approved request.Details of a declined request."Cancel Request" button in My Account > Orders.Cancellation popup with your note and the cancellation details field.Settings under WooCommerce > Settings > WC Cancel.The cancellation emails under WooCommerce > Settings > Emails.Guest cancellation page, opened from the link in the order email.
02 / Source details
Getting started.
01Go to Plugins > Add New Plugin, search for “WC Cancel Order”, then install and activate it. WooCommerce must be active.
02Go to WooCommerce > Settings > WC Cancel and choose the order statuses that can be cancelled, whether the cancellation details are required, your popup note and guest cancellation.
03Review the requests you receive under WooCommerce > WC Cancel.
03 / Source details
Frequently asked questions.
Which orders can customers cancel?
Only orders in the statuses you select under WooCommerce > Settings > WC Cancel. Orders in other statuses show no Cancel Request button.
Is the payment refunded automatically?
No. Approving a request cancels the order and WooCommerce restores the stock, but the free version does not refund the payment. Refund it from the order screen as usual. WC Cancel Order Pro can refund through the payment gateway or as store wallet credit when you approve.
What happens when I decline a request?
The order goes back to the status it had before the request (for example Processing or On hold), and the customer receives the “Cancellation Request Declined” email.
Can guests cancel their orders?
Yes, when “Allow guest cancellation” is enabled. Guests find a “Want to cancel this order?” link in their order emails, which opens a secure cancellation page for that order.
Can I change the emails?
Yes. Go to WooCommerce > Settings > Emails and open Cancellation Request Received, Cancellation Request Approved or Cancellation Request Declined to edit the recipients, subject, heading and format, or to switch an email off.
Can customers cancel only some items of an order?
Not in the free version. Partial (item-level) cancellation is part of WC Cancel Order Pro.
Where can I get support or talk to other users?
Please open a topic in the support forum .
Where can I get support for the premium version?
Please contact us directly. The WordPress.org forum is for the free version only.
What happens to my data when I delete the plugin?
Nothing is removed by default. Tick “Delete all data when the plugin is deleted” in the settings if you want the requests and settings removed. If WC Cancel Order Pro is installed, nothing is removed because both plugins use the same data.
A customer changed their mind and clicked twice. Do I get two requests?
No. Requests for the same order are created one at a time, so you get one request and one email.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati