Where it fits

When do you need an extension at all?

Shopware can do returns - it depends on which edition you run and on who files the case. The moment the customer is meant to file it, the built-in tools stop.

What Shopware does by itself

A delivery knows the states "Returned" and "Returned (partially)", and payments can be refunded. That lets you record that something came back - but there is no case, no reason, no page for the customer. The return happens in your inbox.

What Shopware Commercial brings

The paid plans carry a returns module with its own entities, statuses, documents and refund calculation. It is built towards the administration: there are admin endpoints and exactly one customer route, POST /store-api/order/{orderId}/return, behind a licence check. It does not ship a storefront controller - the customer account gains a status column, but no form. Anyone who wants the customer to file the return builds that front end.

Where this extension starts

It starts with the customer: finished pages in the account and for guests, a reason and a desired procedure per line, a comment field, a closing page with status and document. What appears in the admin follows from that, rather than the other way round. It runs on every Shopware edition.

Four routes side by side

The rows follow the process: who files the return at the top, what it costs to run at the bottom.

Without an extension Shopware Commercial Third-party plugin This extension
Who can file a return
The customer files the return no: no customer route no: store API only yes: yes yes: a storefront page of its own
Ready-made storefront pages no: none no: the route only yes: yes yes: six pages
Guests without an account no: no returns at all partly: the store API allows guests yes: yes yes: search by name, e-mail, postcode
Guests see the status without an account no: no returns at all no: no view for it yes: yes yes: through the same search
What the customer states
A reason list you maintain yourself no: no returns at all yes: own list, translatable yes: yes yes: own list, translatable
A reason per line, not per return no: no returns at all yes: per line yes: yes yes: per line
A requested procedure per line no: no returns at all no: the reason only no: no yes: own list, can be switched off
A comment per line no: no returns at all no: internal only no: no yes: from the customer, per line
The unit price in the return form no: no returns at all no: no yes: yes no: not in the form
A checklist before filing no: no returns at all no: no no: no yes: required ticks in a modal
What you can restrict
Deadline from the delivery status no: no returns at all no: no yes: yes yes: days or a fixed date
Excluding single products no: no returns at all no: no no: no yes: a Twig condition per line
Label and document
Return document as a PDF no: no yes: partial cancellation slip yes: yes yes: a return slip of its own
DHL label and QR code no: no no: no yes: yes yes: label and QR code
UPS label no: no no: no no: no yes: within Germany only
Selling the label for a fee no: no no: no no: no yes: a product in the cart, per country
Working through it in the admin
Statuses of your own no: no yes: state machine no: no yes: own list, translatable
Posting to inventory at the press of a button no: no yes: quantity per line no: no yes: per line, once
A public answer to the customer no: no no: internal only yes: yes yes: public and internal kept apart
Running it, and what it costs
Needs a paid Shopware plan no yes no no
Rent per month none part of the plan 29.00 € 49.00 €

The two columns on the left and the one for this extension are checked against the source code. The third-party column comes from the store listing and the documentation of a returns extension for Shopware 6, read on 6 September 2026.

When you do not need it

1

You have five returns a month and know every customer by name. Then an email is faster than any form.

2

Your returns already run through a service provider with a portal of its own. Then you do not want a second place where cases appear.

3

What you mainly need is the refund calculation and the accounting side. That is the strength of the Commercial module, not of this extension.