Triage every new ShipHero return and route it to the right people

Every ShipHero return gets read, summarized in plain English for your support channel, logged for trend spotting, and escalated when it actually matters.

Agentic Task
ShipHeroSlackGoogle SheetsOperationsCustomer SupportNotifications & AlertsFeedback Triage
PromptCreate

Whenever a new return is created in ShipHero, triage it and route it to the right people. Use a ShipHero poll trigger on the new return event so this runs as soon as a return appears, without anyone having to watch the returns list.

For each new return, gather the full picture before judging anything. Use Get return to pull the complete return record, including the returned line items, the reason code on each one, the condition the item came back in, and the return reference. Use Get order to fetch the original order behind it so I have the order number, the order date, the customer, and what they actually paid. Use Get product for each returned SKU so I have the product name and price alongside the bare SKU.

Before deciding how urgent this is, read back the recent history from my returns log in Google Sheets using Get Values, covering roughly the last 30 days of rows, and count how many times this same SKU has already come back and for what reason. That log is the only place this history lives, so read it first and write to it last. If the log is empty or brand new, fall back to List returns in ShipHero over the last 30 days to build the same count.

Then judge which of three buckets the return falls into. A routine return: wrong size, changed their mind, ordered the wrong thing. A possible product quality problem: damaged, defective, broken on arrival, or the same SKU coming back repeatedly for the same reason. Or a case that needs a human now: a high value order, or a customer who returns a lot. State which bucket you picked and why in one line.

Post a Slack message to my support channel using Send a Message. Keep it short and plain language, because support leads read it on their phone. Include what came back and from which order, the reason in everyday words rather than the raw reason code, the condition it arrived in, the value of the original order, and one recommended next step such as restock, inspect before restocking, refund and move on, or hold for a human to review. No jargon, no raw field names, no ID strings unless they help someone look the return up.

Append every return, without exception, as a row in my returns Google Sheet using Append Values. One row per returned item with the date, the order number, the SKU, the product name, the reason, the item condition, and the order value, so that over time I can see which products drive returns.

Escalate into a separate Slack channel, again with Send a Message, whenever the original order value is over 200 dollars or the same SKU has come back three or more times in the last 30 days. Treat both the dollar threshold and the repeat count as settings I can change in one place, not numbers buried in the logic. An escalation should say plainly why it was escalated, name the product and the customer, and be its own message rather than a thread reply, so it is impossible to miss.

A few things to be careful about. ShipHero money fields come back as decimal strings in the record's currency, so convert them before comparing against the threshold and do not assume cents. A single return can cover several line items, so handle multi-item returns rather than reading only the first one. If the original order or the product record cannot be found, still post the Slack summary and still log the row with whatever is known, and say what was missing rather than skipping the return silently. Never change anything in ShipHero; this workflow only reads and reports.

What does this prompt do?

  • Watches ShipHero for new returns and pulls the full picture together: what came back, why, what condition it arrived in, and what the customer originally paid.
  • Posts a short, plain-language summary to your support channel with the reason for the return, the order value, and a recommended next step.
  • Adds every return to a running spreadsheet so you can finally see which products drive the most returns.
  • Escalates to a separate channel when an order is high value or when the same product keeps coming back.

What do I need to use this?

  • A ShipHero account that handles returns, and admin access to connect it.
  • A Slack workspace with two channels: one for everyday return notices, one for escalations.
  • A Google Sheet to log returns in, with a header row for date, order, SKU, reason, condition, and order value.

How can I customize it?

  • Change the escalation amount. Two hundred dollars is a starting point, not a rule.
  • Adjust the repeat-return threshold and how far back it looks, for example five returns in sixty days instead of three in thirty.
  • Send everyday summaries and escalations to different channels, or route escalations as a direct message to your ops lead.

FAQs

How quickly will I hear about a new return?
Returns are checked on a regular schedule, so a new one usually reaches Slack within minutes of being created in ShipHero. Nobody has to remember to open the returns list.
What makes a return worth escalating?
Two things by default: the original order was worth more than the amount you set, or the same product has come back three or more times in the last thirty days. Both numbers are yours to change.
Will this work if we are a 3PL handling returns for several brands?
Yes. Returns are read the same way whichever brand they belong to, and you can include the brand or client name in the Slack summary and the spreadsheet so the right team picks it up.
Does it change anything in ShipHero?
No. It only reads returns, orders, and product records. Approving refunds, restocking, and any status changes stay with your team.
Do I need the spreadsheet, or can it just post to Slack?
The spreadsheet is what makes the repeat-product check possible, because it is the running history the workflow looks back over. You can skip it, but you lose the trend signal that catches quality problems early.

Related templates

Auto-fix your calendar when a flight slips, and flag what's at risk

When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.

Google Calendar
AviationStack
Slack
Agentic Task
Trace phishing emails to the sending IP and report abuse

Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.

AbuseIPDB
Gmail
Slack
Agentic Task
Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task
Turn each week's football fixtures into a venue staffing plan

Every Monday, rank the week's matches by expected demand, put the big ones on your venue calendar, and post a rota-ready summary to Slack.

API-Sports
Google Calendar
Slack
Agentic Task

Stop finding out about returns problems a quarter too late.

Get every ShipHero return triaged, summarized, and logged the moment it is created.