Support guide

Return‑to‑sender (RTS) support playbook

A practical decision tree + copy‑paste templates for reshipments, refunds, and address issues (Shopify & WooCommerce).

Updated 3 October 2026 · CaseKit team

Return‑to‑sender (RTS) is the ticket nobody wants: it’s expensive, it takes time, and customers usually message when they’re already annoyed. A consistent workflow can reduce avoidable back-and-forth; measure the effect in your own queue.

This playbook works for Shopify and WooCommerce. Use it to decide reship vs refund, request the right confirmation once, and keep your tone calm.

RTS decision tree (use this before replying)

  1. Confirm it’s really RTS. Check tracking: “Return to sender”, “Refused”, “Undeliverable”, “Unclaimed”, “Insufficient address”.
  2. Identify the reason. Wrong address? Customer refused? Customs fees? Carrier mistake?
  3. Decide your resolution. Reship (to corrected address) or refund (when it arrives back).
  4. Set one expectation. “We can refund after it returns to our warehouse” or “We can reship once it’s back / once address is confirmed”.

Return‑to‑sender templates (copy‑paste)

Replace placeholders like {order_ref} and {tracking_link}. If you use a helpdesk, save these as macros under a single folder like Shipping • RTS.

1) Proactive message when tracking shows RTS started

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

Quick heads up — tracking for order {order_ref} shows the shipment is being returned to sender.

Tracking: {tracking_link}
Status: {tracking_status}

To resolve this fast, can you confirm:
1) The correct delivery address
2) Whether you want a reshipment or a refund

Once you reply, we’ll take the next step immediately.

Best,
{agent_name}

2) RTS due to incorrect / incomplete address (confirm policy + next step)

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

Thanks — I checked the tracking for order {order_ref}.
It’s returning to sender due to an address issue (“{rts_reason}”).

Here’s what we can do:
• Reship to the corrected address once the package is back with us
• Or refund once it returns ({approved_refund_terms}, subject to applicable obligations)

Please confirm your preferred option + the corrected address:
{corrected_address}

Best,
{agent_name}

3) RTS due to carrier error (reassure + free reship)

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

Thanks for the details — you’re right to flag this.
Order {order_ref} is returning to sender due to a carrier issue (“{rts_reason}”), not something you did.

We’ll reship it at no cost as soon as it’s back with us.
Please confirm the best delivery address and phone number:

{corrected_address}
{phone_number}

Best,
{agent_name}

4) Customer wants a refund immediately (set a clean boundary)

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

I have received your refund request for order {order_ref}.
The latest return status is {verified_return_status}.
Tracking: {tracking_link}

The applicable next step is {approved_refund_or_return_step}.
I will update you by {next_update_date}. If a refund can be approved before warehouse receipt, I will confirm that rather than asking you to wait unnecessarily.

Best,
{agent_name}

5) Refund confirmation (after RTS received)

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

Update: we received the returned package for order {order_ref}.

I processed your refund now:
Refund amount: {refund_amount}
Timeline: {refund_timeline}

Please reply if you need help checking the recorded refund.

Best,
{agent_name}

6) Reshipment confirmation (new tracking)

Before using this template: confirm that each stated status, approval and completed action is true for this order. Replace every placeholder, remove unavailable options and use verified estimates. A draft does not perform the action.

Hi {first_name},

All set — we arranged a reshipment for order {order_ref} ✅

New tracking: {new_tracking_link}
Shipping address: {confirmed_address}

If you need to change anything, reply quickly and we’ll do our best before it leaves our warehouse.

Best,
{agent_name}

What to log internally (so the next agent doesn’t guess)

  • RTS reason from tracking (copy exact wording)
  • Customer’s confirmed address + phone
  • Resolution choice (reship vs refund) + any fees you applied
  • Next action date (example: “refund when warehouse receives RTS”)

Confirm the actual return reason, physical receipt and approved resolution. Do not assume a refused or undeliverable scan means the parcel has already returned. Shipping deductions, free reshipments and refund timing depend on the facts, the approved policy and applicable consumer rights. A recorded refund does not automatically authorize an additional free reshipment.

Using this workflow with CaseKit

CaseKit drafts replies from order facts in the Shopify app. The Gmail extension is optional. Review the draft against the current order and your store policy before sending; CaseKit does not send messages, cancel orders, issue refunds or create shipments.

For WooCommerce, CaseKit is a separate WordPress plugin. Its order workflow runs in WordPress; the Gmail extension currently connects to Shopify.

Written by the CaseKit team

We build a Shopify support app and spend our days looking at how order-status tickets actually get answered. Everything here is written from that work, not from a keyword list. Corrections to support@casekit.app.

Keep the next step clear

Browse the related CaseKit workflow, the free reply templates or the support guides. Check the facts and approvals rather than treating a saved reply as a completed action.