What this is
The Returns tab is a staff-facing interface for processing customer return requests. It lives inside the unified staff dashboard, right next to the Orders and Customers tabs. Customers submit return requests from their My Account page, and your team handles them here.
The customer-facing returns system (where customers request returns from My Account) is built into Tracksies HQ and doesn’t require Packsie. What Packsie adds is this dedicated staff interface — a streamlined way to review, approve, reject, and refund returns without navigating the WordPress admin.
For full details on the customer-facing side of returns — setting up your return policy, per-product eligibility, return windows, and how customers submit requests — see the Returns documentation in the Tracksies HQ docs.
—
Setting it up
Requirements
The Returns tab requires two feature flags to be enabled:
woo.returns— the core returns feature in Tracksies HQ. This controls whether the returns system exists at all (customer-facing and staff-facing). Go to Tracksies > Settings > Features and find the Returns toggle on the Woo module tile. If this is turned off, the Returns tab disappears entirely from the staff dashboard because there’s no returns data to show.
packsie.returns_tab— the Returns tab visibility within the staff dashboard. This is a child feature under the Packsie module in Tracksies > Settings > Features. It controls whether the tab appears for staff, assumingwoo.returnsis already on.
Both need to be enabled. Think of it this way: woo.returns is “does our store accept returns?” and packsie.returns_tab is “should staff see the returns tab on the dashboard?” If your store doesn’t accept returns, there’s nothing for staff to see. If your store does accept returns but you’d rather handle them from the WordPress admin, you can turn off the tab.
No separate page needed
In earlier versions of Packsie, the returns dashboard lived on its own page with its own shortcode. That’s no longer necessary. The Returns tab is part of the unified staff dashboard — the same page your packers already use. Staff click the Returns tab to switch from packing to returns processing, and click Orders to switch back. One page, one bookmark, multiple workflows.
This is actually a big improvement. Staff who handle both packing and returns no longer need to jump between two different pages. Everything is right there.
Backward compatibility note: If you were using the [tracksies_returns_dashboard] shortcode from an earlier version of Packsie, it still works. It renders the unified staff dashboard with the Returns tab selected. You don’t need to change anything on existing pages, but for new setups, [tracksies_staff_dashboard] is the recommended shortcode.
Shortcode options
If you’re using the backward-compatible [tracksies_returns_dashboard] shortcode, it accepts one optional attribute:
tab— sets which returns filter tab is active when the page loads. Options:pending,approved,received,all. Defaults topending.
[tracksies_returns_dashboard tab="pending"]—
The returns workflow
1. See incoming requests
The Returns tab shows all return requests organised by status. When a customer submits a return request from their account, it appears in the Pending filter tab.
2. Review the request
Click on a return to see the full details — which items are being returned, the reason the customer gave, any notes they added, and the original order information.
3. Approve or reject
Based on your store’s return policy, staff approve or reject the request.
- Approve — triggers the approval email to the customer with return address and ship-back instructions. The customer gets a deadline for posting the return.
- Reject — triggers the rejection email with the reason. The customer knows why and doesn’t have to wonder.
The system checks eligibility automatically (return windows, per-product rules, per-category rules), but staff make the final call.
4. Mark as received
When the returned items arrive at your warehouse, staff mark the return as received. This updates the customer’s return status in their My Account.
5. Process the refund
Once you’ve inspected the returned items, process the refund directly from the dashboard. If you’ve configured a restocking fee, it’s deducted automatically — no manual calculations. The customer receives a “Return Refunded” email confirming the amount.
—
What’s on screen
The Returns tab uses a two-column Packing-style layout. Queue on the left, selected-return detail on the right. Matches the Packing workflow your team already knows.
Header actions
- Start a Return — opens an inline bar (under the header) with a three-step stepper: find order → pick items → reason + channel → submit. No page navigation. Used when a customer contacts you by phone/email to initiate a return on their behalf. Non-returnable items in the picker are disabled with a reason (“Outside return window”, “Not eligible per product policy”, etc.) so staff see exactly what they’re working with.
- Settings — jump to returns settings.
- Refresh — manual refresh of the queue + counts.
Stat tiles
Four tiles showing real-time counts. They update automatically after every action in the dashboard.
- Needs Approval — return requests waiting for your decision (status: requested).
- In Progress — returns mid-pipeline (approved, shipped, received, inspected, restocked).
- Refunded Today — count of returns that reached the refunded status today.
- My Actions Today — returns you approved or inspected today — a personal activity counter.
Tabs
Three tabs slice the queue:
- Outstanding — everything mid-pipeline (approved, shipped, received, inspected, restocked).
- Needs Approval — return requests waiting for review.
- Completed — terminal states (refunded, rejected, cancelled, disposed, replacement sent).
Tab badges show counts and update alongside the stat tiles after each action.
Search
Search by RMA number or customer email address to quickly find a specific return. Search filters within the active tab.
Return detail view
Clicking on a return opens the detail panel on the right. Shows the RMA number, order info, items being returned, customer’s reason, admin notes, timeline of status changes, and status-appropriate action buttons:
- Requested → Approve / Reject buttons
- Approved → Mark as Received button (waiting for customer to ship)
- Received → Inspection outcome dropdown + Restock to inventory? dropdown (Yes/No) + Complete Inspection button
- Inspected with Exchange outcome → Replacement carrier + tracking inputs + Send Replacement button
- Inspected with refund-path outcome (restock/refurbish/dispose) → Refund amount + options + Process Refund button
- Inspected with Reject-on-receipt outcome → Transitions directly to rejected with post-receipt email variant
- Refunded / Replacement Sent / Rejected / Cancelled → Status confirmation, no further actions
The detail panel also has a View order in WooCommerce link at the bottom (always visible, even as you scroll through the inspection form) so you can jump to the underlying WooCommerce order in one click without losing your place in the returns workflow.
Restock dropdown — separate from inspection outcome
The Restock dropdown is independent of the inspection outcome on purpose. The two answers cover different questions:
| Question | Dropdown |
|---|---|
| What does the customer get? | Inspection outcome (refund / exchange / etc.) |
| What do we do with the returned item? | Restock to inventory? (Yes / No) |
This matters because they don’t always match. A wrong-size return with a fresh-condition item: the customer wants exchange (different size out), AND we want the returned item back in stock (it’s resellable). A damaged return with the same exchange resolution: customer still wants exchange, but the returned item is binned (not restockable). One outcome, two stock decisions.
The Restock dropdown defaults intelligently based on the outcome you pick:
- Outcome
restockorexchange→ defaults to Yes (item is back-in-stock-shape) - Outcome
refurbish,dispose, orreject_on_receipt→ defaults to No (item won’t be put back on the shelf)
Override either dropdown when reality differs from what the customer described. The default is just a head-start, not a requirement.
When Yes is selected and you click Complete Inspection, the system fires wc_update_product_stock(..., 'increase') for each item on the return, looking up the exact variation (so variable products restock the right child variation, not the parent). Adds an order note (“Return X restocked: N item(s) returned to inventory”) and an audit log entry capturing the per-item before/after stock counts.
—
Tabs on the same page
Because the Orders and Returns tabs live on the same staff dashboard, your team gets some real advantages:
- One page to bookmark. No more “which page was the returns one again?” — everything is in one place.
- Fast context switching. A packer who spots a return request can click the Returns tab, handle it, and click Orders to get back to packing. No page loads, no navigation.
- Consistent interface. The same header, the same look, the same logout button. Staff learn one interface, not two.
- Unified permissions. The role-to-tab permissions matrix in Tracksies > Settings controls which roles can see which tabs. Maybe your packers shouldn’t process returns, or your returns team doesn’t need the packing queue. You control this from one settings screen rather than managing access to multiple pages. See Staff Roles & Access Control for the full permissions setup.
—
Email notifications
The returns system sends seven emails across the lifecycle — six to the customer, one to the store admin. All customisable in Tracksies HQ > Emails (not WooCommerce’s email settings). For the full mapping of which email fires on which transition, and how customisation works, see the Email notifications section of the Returns documentation in Tracksies HQ.
Quick summary:
- Return Requested — customer acknowledgement when they submit.
- Return Admin Notification — you get notified of every new return request (auto-approved or pending).
- Return Approved — customer gets approval + shipping instructions.
- Return Rejected — customer gets a decline, with different wording for pre-shipment vs post-receipt (“we can’t approve” vs “we’re posting it back”).
- Return Received — customer gets confirmation the package arrived.
- Return Refunded — customer gets refund confirmation with amount.
- Return Replacement Sent — for exchange outcomes, customer gets notified with tracking info for the replacement.
Each can be toggled active/inactive in the email editor. Styling picks up your Designer colours and fonts automatically.