Troubleshooting and FAQ
- Written for
- + Written for
- Deprecated
- + Deprecated
- Applies to
- + Applies to
Troubleshooting and FAQ
This page covers the most common problems and how to fix them. Each section starts with the quickest checks.
Nothing is importing from my email
Work through these checks in order.
1. Check the inbox status. Go to Links → Email. Each inbox card has a status tag:
Tag | Meaning | What to do |
|---|---|---|
| Working normally | Continue with the checks below. |
| Sign-in hasn't been completed | Edit the inbox and finish connecting it. |
| The mail provider rejected Shippified's sign-in, so polling has stopped | Google or Microsoft: edit the inbox and connect the account again. IMAP: edit the inbox, fix the username or app password and click Save changes. The inbox goes back to |
2. Read the last-sync line, or click Sync now. Connected inboxes are checked about every 60 seconds, and each check reads up to 50 new messages. Under each Google, Microsoft or IMAP inbox, a line shows when the last check ran, or Last sync failed: with the provider's error (a wrong IMAP host shows up here, not as auth failed). Click Sync now to check immediately and see how many order emails it imported.
3. Check where the mail lands. IMAP and Microsoft inboxes read the Inbox folder only. If a mail rule moves order emails into another folder, Shippified won't see them.
4. Older mail isn't imported automatically. A newly connected inbox picks up new mail from now on. Its first check also reads a little recent mail: the 25 most recent messages for Google and IMAP, or the last 3 days for Microsoft. To bring in earlier orders, use Rebuild orders from mailbox on the inbox card (choose 7 days, 30 days, 90 days or 1 year). See Rebuild orders from your mailbox.
5. The email might not look like an order. Retailers send far more marketing and sign-in emails than order emails, so Shippified skips mail it doesn't recognise. Without a matching template, an email is imported only if all of these are true:
It comes from a recognised retailer: Target, Walmart, Amazon or Best Buy.
It contains an order number.
It reads like an order event: placed, shipped, delivered, canceled or a delivery update. The subject is checked first, then the body.
It isn't one of that retailer's known non-order emails.
For any other retailer, or an unusual email layout, create a custom template.
6. Check the inbox's templates. If you've picked specific templates on the inbox card, Shippified only tries those. Clear the selection to let every template run.
7. Check Allowed senders and the Inbox page. If the inbox has Allowed senders, every email is checked against it, whichever way it arrived. The check uses the real sender: the retailer, even when you forwarded the email yourself. Emails that were refused are listed on the Inbox page with the sender that was checked. Add the retailer's address or domain (target.com also covers oe.target.com), or clear the list.
8. Forwarding inboxes. If your email provider sends back a bounce starting with Shippified:, the reason is in the bounce text: an inbound address that no longer exists, the plan limit, or a message that's too large. If you're setting up Gmail forwarding, the confirmation code Gmail sends appears on the forwarding inbox's card.
Tip: To see how Shippified reads a specific email without creating an order, open the template builder on the Templates page, paste the email as its sample, and read the In production panel. It shows which template would handle the email and the order it would create, or that it would be ignored, and it saves nothing. Import an email by hand on Links → Email is different: it creates a real order.
I'm seeing duplicate orders
Shippified prevents duplicates in two ways:
Same email, never twice. Each email is identified by its Message-ID, a unique ID that every email carries. The same message won't create a second order, however many times it's polled, forwarded, rebuilt or pasted. Emails without a Message-ID are matched on their exact content instead.
Same order number, one order. Messages that share an order number are merged into one order, even when one arrives by email and another by Discord. Orders confirmed by both show a
2× confirmedbadge.
If you still see duplicates, check these causes:
Discord monitor posts without order numbers. Discord gives Shippified no message ID, and two identical checkouts can be real orders. So every monitor post counts as a new order unless it carries an order number that matches an existing order. If a monitor posts to two of your bot URLs, or you added the same webhook twice, each post is counted twice. Point each monitor at one bot URL. See Discord monitor bots.
Orders imported before Message-ID matching existed. Click Re-run parsing on the Templates page. It rebuilds orders from their stored messages and merges any that share an order number. Values you typed, sale prices and carrier data are kept.
To remove a leftover duplicate, open it and click Delete order. Every order has this button in its drawer, with or without a tracking number.
An order has the wrong status
Statuses only move forward: Ordered → Shipped → Delivered. A few rules explain most surprises:
What you see | Why |
|---|---|
A late "order placed" email didn't move an order back | Statuses never go backwards. This is intentional. |
A cancellation email didn't cancel a shipped order | Canceled ranks below Shipped, so a cancellation that arrives after shipping doesn't change the status. |
An order jumped straight to Shipped | Any order with a tracking number is Shipped, including when you add the tracking number yourself. |
An order is marked Issue | Shippified could identify neither the retailer nor the item. See the next section. |
A delivered package still shows Shipped | For DHL and DHL Express, Shippified checks the carrier in the background and marks the order Delivered on its own, usually within the hour for recent orders. To check now, open the order and click Refresh, or click Sync tracking on the Orders page. For UPS, FedEx and USPS, delivery comes from the retailer's delivery email. See Shipment tracking. |
You can't set a status by hand; it comes from your messages and from carrier tracking. If a retailer's emails keep getting the wrong status, a custom template can set the event type for that email. Then click Re-run parsing. More detail is in Order lifecycle.
An order is missing its item name or price
Item shows as "Unparsed order" (often with status Issue). The template didn't find the item. Open the order and fill in Item name, then click Save changes.
No cost. Open the order and fill in Cost ($). Cost comes from the item price in the message, or the order total if there's no item price. See Costs, sale prices and profit.
The whole retailer or bot is affected. Fix the extraction with a custom template (or build one from a real embed with the Embed Copier), then click Re-run parsing on the Templates page. Values you typed in are kept: re-parsing and mailbox rebuilds never overwrite them.
Note: The order editor is in every order's drawer, and it only fills in blanks. Fields Shippified already extracted have a lock and can't be changed from the dashboard. Sale price is the exception: you can always change it, or clear it to remove it.
My bot webhook returns 429
A 429 response means your monitor is sending faster than Shippified allows. There are two limits, each over a rolling minute:
Limit | Error message |
|---|---|
60 posts per minute to one bot URL |
|
60 posts per minute from one sending server, across all your bot URLs |
|
The response asks the sender to wait 60 seconds. Splitting traffic across more bot URLs helps with the first limit but not the second, because a single monitor server shares one allowance across all your bots.
Other responses you might see:
404 Unknown bot webhook route for this usermeans the bot was deleted or the URL is mistyped.401 Unknown webhook usermeans the workspace part of the URL is wrong.413means the post was larger than 2 MiB. Real monitor posts are far smaller.202means the post was accepted, even if it didn't produce an order. Every post is listed in the bot's Activity, including ones that didn't become an order.
See Discord monitor bots for how to set up bot URLs.
Orders aren't being forwarded to my Discord channel
When a bot has its own output webhook, Shippified posts each parsed order there. If that post fails:
Shippified tries up to 3 times when Discord is rate-limiting it or briefly unavailable.
Errors such as a deleted webhook (
HTTP 404) or an invalid URL aren't retried, because retrying wouldn't help.The order is still created. Only the forwarded post is missing.
To see what happened, go to Links → Webhooks and click the Activity button on the bot's card. Failed forwards show an error such as output webhook forward failed after 3 attempts: HTTP 429 (HTTP 429). If the bot has no output webhook of its own, orders go to the Bot throughput fallback webhook in Settings → Forwarding instead, and a failure there reads fallback webhook forward failed …. If you see 404 or 401, create a new webhook in Discord and paste its URL into the bot's settings.
Shippified only sends to public web addresses. A URL that points at a private or local network address is refused when you save it.
For order notifications (placed, shipped, delivered), check Settings → Forwarding → Shippified pings webhook and make sure the event types you want are switched on. See Account settings and privacy.
Tracking isn't updating
Live carrier tracking currently covers DHL and DHL Express. UPS, FedEx and USPS numbers are recognised, but their timeline is built from your order emails rather than carrier scans.
Symptom | Cause and fix |
|---|---|
The drawer says Live UPS tracking isn't enabled on this Shippified server — showing updates from your order emails. (or FedEx) | Live lookups aren't available for that carrier. The timeline shows what your emails said. Click Copy number to check the package on the carrier's site. There's nothing to change in your Settings. |
The drawer says Live USPS tracking isn't available in Shippified … | USPS isn't tracked live. Use Check on usps.com for live scans; the status follows your USPS emails. |
Unknown carrier | Shippified couldn't identify the carrier from the tracking number's format (for example Amazon Logistics |
A DHL order's timeline is behind | Recent DHL and DHL Express orders are checked in the background about every 30 minutes, orders older than 30 days about twice a day, and orders older than 90 days only when you ask. Click Refresh in the drawer to check now. |
Tracking lookup failed | The carrier didn't respond. Click Try again or Refresh a little later. |
Sync tracking says | Sync tracking only covers Ordered and Shipped orders whose carrier has live tracking (DHL and DHL Express). |
A tracking number and carrier can't be changed from the dashboard once they're set. See Shipment tracking.
FAQ
Is Shippified free? Yes. Billing is currently switched off, and every workspace gets unlimited intake. See Account settings and privacy.
Why is my profit negative? Every order in the window counts its cost, including orders without a sale price, and your subscription costs count too. A loss is shown with a minus sign. Add sale prices from the order rows. See Costs, sale prices and profit.
Why doesn't my "All time" view compare against a previous period? There's no period before "All time", so the comparison is hidden. For a month, quarter or year, the comparison is the previous calendar month, quarter or year. See Home, Analytics, Insights and Calendar.
What does "Total Spend" on Home count? What you paid: each order's cost (the item price, or the order total if there's no item price). Sale prices never count toward spend. See Home, Analytics, Insights and Calendar.
I updated a template. Do old orders change? Only after you click Re-run parsing on the Templates page. Orders whose messages now turn out not to be order mail are removed, unless you've edited them.
Can other people see my orders? No. Share cards, your public profile and the leaderboard only show what's described in Sharing and public profiles. Order numbers, tracking numbers, customer details and your email address are never shown.
How do I download my data or delete my account? Go to Settings → Profile → Your data. Download my data saves a JSON file with your orders, sources, bots, templates, subscriptions and shares; passwords, mailbox credentials and keys are left out. Delete account… permanently deletes the workspace and everything in it once you type your email address to confirm. Deletion only works from a signed-in browser, not with an API key. See Account settings and privacy.
I lost an API key. Keys can't be shown again. Revoke it and create a new one in Settings → Developer.