Free, open source

Returns and RMA straight from My Account

Returns adds a self-service return (RMA) flow to WooCommerce. From My Account, a customer opens a return on an eligible order, picks items, sets quantities, chooses a reason and adds a note. You manage every request in wp-admin through a clear status workflow, and the customer always sees the current state.

Open source GPLv2
Open source, GPL licensed No account, no card Order ownership checks

Works with

WooCommerceGutenbergStorefrontAstraGeneratePressKadence

Returns scattered across email

Without a simple process, returns arrive by email, phone or a contact form. They are hard to track, the customer does not know where their request stands, and you lose time handling each one by hand.

  • No self-service way to request a return
  • Requests scattered across your inbox
  • Customers do not know where their return stands
  • No single place for request history and status

Returns brings returns into one place

  • Customers request a return straight from an eligible order
  • An item picker with quantity, a reason and an optional note
  • An admin status workflow: requested, approved, rejected, completed
  • The customer sees the current status in My Account at every step

What you get in the free version

Everything you need to accept and run returns.

Request a return

A "Request a return" action on eligible orders — orders list and single order view.

Item picker

An item picker with per-item quantity, a reason dropdown and an optional note.

Ownership checks

Only the logged-in owner of an order can request a return for it.

Configurable eligibility

Choose eligible order statuses and a return window in days; 0 removes the time limit.

Private record + email

Each request is saved as a private custom post type and emailed to the merchant.

Status workflow

An admin management screen: requested, approved, rejected, completed.

Customer status list

A status list in My Account so shoppers can track their returns.

Accessible and mobile

Accessible, mobile-friendly, dark-mode-aware markup with inline help on every setting.

Up and running in three steps

Set eligibility and test the first request.

01

Install

Activate Returns alongside WooCommerce.

02

Set eligibility

In WooCommerce → Returns, choose statuses, the return window and the notification recipient.

03

Test a return

As a customer, request a return from My Account and move it through the statuses in wp-admin.

Who it is for

When you need an orderly returns process without a heavy system.

Retail stores

Customers request returns themselves; you move them through statuses.

  • Self-service
  • Status workflow
  • Merchant email

High-return stores

Every request in one place instead of your inbox.

  • Private record
  • Item picker
  • Reason and note

Stores that value order

Customers always see the status; you keep the history in wp-admin.

  • Customer statuses
  • Eligibility and window
  • Ownership checks

Need more? Returns PRO

FREE covers the full request-and-status flow. Returns Pro will add refund actions tied to the order, return shipping labels, store credit and return-reason analytics.

  • Refund actions tied to the order (planned)
  • Return shipping labels (planned)
  • Store credit and return-reason analytics (planned)

Support and resources

Every plugin has its own documentation with setup walkthroughs. Bugs and questions go to the public GitHub repository for that plugin — we answer in the open.

Frequently asked questions

Does it require WooCommerce?

Yes. WooCommerce must be installed and active.

Which orders can be returned?

Orders in the statuses you choose under WooCommerce → Returns (Completed and Processing by default), within the return window you set. Set the window to 0 to remove the time limit.

Does it issue refunds automatically?

No. This MVP records the request and tracks its status. Process any refund in the normal WooCommerce order screen; the return record stays in sync with the status you set.

Where do return requests go?

Each submission is emailed to the recipient you set (or the site admin email by default) and saved as a private "Return Request" record under the WooCommerce menu in wp-admin.

Can a customer return the same order twice?

No. Once a return request exists for an order, the action is hidden and a notice is shown instead.

Do the settings have help?

Yes. The markup is accessible, mobile-friendly, dark-mode-aware and has inline help on every setting.

Add self-service returns to your store

A request from My Account, a status workflow and a customer-facing view. The full FREE edition under GPL.

Read the docs

FREE is the full request-and-status flow — PRO will add refund actions and shipping labels (planned).