Guides

WooCommerce returns and RMA: a self-service return flow customers can track

By Mariusz Szatkowski · Updated: 2026-06-22

Returns are part of running any store, but WooCommerce on its own gives the shopper no way to ask for one. The result is returns that arrive by email, phone or a contact form, hard to track and easy to lose. This guide explains what a return and RMA flow actually needs, and how a self-service process keeps every request in one place.

What Returns and RMA Mean Here

A return is the shopper sending an item back. RMA, return merchandise authorization, is the record and workflow around it: who asked, for which items, why, and what state the request is in. A good flow gives the customer a way to open the request themselves and gives you a single place to manage it, instead of a scattered inbox.

Without that, three problems show up: there is no self-service way to request a return, requests pile up across your email, and the customer never knows where their request stands.

What to Look For in a Returns Flow

A returns tool for WooCommerce should cover a few basics:

  • Self-service requests. The shopper opens a return from their account, not by writing to you.
  • Item-level detail. A picker for which items, how many, why, and an optional note.
  • Ownership checks. Only the real owner of an order can open a return for it.
  • Eligibility rules. Control over which order statuses qualify and a time window for returns.
  • A status workflow. One screen where you move each request through clear states.
  • Customer visibility. The shopper can see the status without asking you.

How Returns Does It

Returns for WooCommerce is a free, open source plugin that adds exactly this self-service flow. From My Account, a customer opens a return on an eligible order, picks items with a per-item quantity, chooses a reason from a dropdown and adds an optional note.

A few details matter:

  • Ownership checks. Only the logged-in owner of an order can request a return for it.
  • Configurable eligibility. You choose the eligible order statuses and a return window in days under WooCommerce, Returns. The defaults are Completed and Processing within 30 days. Set the window to 0 to remove the time limit.
  • Private record plus email. Each request is saved as a private custom post type record and emailed to the store admin at the site admin_email address.
  • Status workflow. An admin management screen moves each request through requested, approved, rejected and completed.
  • Customer status list. My Account shows a status list so shoppers can track their returns at every step.
  • One request per order. Once a return request exists for an order, the request action is hidden and a repeat submission is blocked on save.

The settings page shows inline help under every field, including a worked example of the return-window deadline, and the markup is accessible, mobile-friendly and dark-mode-aware.

One honest limit: the free plugin records and tracks the request, but it does not move money. You process any refund on the standard WooCommerce order screen. Customer status emails, return shipping labels, automatic store credit, return-reason analytics and refund actions from the RMA screen are part of the PRO edition.

Returns Versus Default WooCommerce

WooCommerce can refund an order, but it has no customer-facing return flow. Here is the difference for returns and RMA specifically:

CapabilityDefault WooCommerceReturns
Customer requests a returnNone built inSelf-service from My Account
Item picker with quantity and reasonNoneYes, with an optional note
Order ownership checkn/aYes, only the owner can request
Eligibility rulesn/aOrder statuses and a return window in days
RMA recordNonePrivate custom post type per request
Status workflowNoneRequested, approved, rejected, completed
Customer sees the statusNoYes, a status list in My Account
RefundsManual on order screenManual on order screen (PRO adds refund actions from the RMA screen)
CostFree (no return flow)Free; PRO adds status emails, labels, store credit and analytics

The Short Version

WooCommerce can refund an order but gives the shopper no way to request a return. A proper RMA flow needs self-service requests, item-level detail, ownership and eligibility checks, a status workflow and customer visibility. The free Returns plugin covers all of that, keeping every request in one place; PRO adds status emails, labels, automatic store credit, analytics and refund actions from the RMA screen.

Returns for WooCommerce