Orders and their lifecycle
- Written for
- + Written for
- Deprecated
- + Deprecated
- Applies to
- + Applies to
Orders and their lifecycle
An order in Shippified is one purchase, built up from every message about it. A Discord checkout post, the retailer's confirmation email, the shipping notice and the delivery email all fold into the same order. This guide explains how that works, what each status means, which retailer emails Shippified understands, and how to add or edit orders yourself.
The five statuses
Every order has exactly one status:
Status | What it means | What sets it |
|---|---|---|
Ordered | The purchase went through, and there's no tracking yet. | An order confirmation email, a checkout post from a bot, or an order you add by hand without a tracking number |
Shipped | The order has a tracking number or a shipping notice. | A shipping email, any message that includes a tracking number, a live carrier lookup that shows the package has been scanned, or you adding a tracking number to an Ordered order |
Delivered | The package arrived. | A delivery email, or a live carrier lookup that reports the package delivered |
Canceled | The retailer or bot reported a cancellation. | A cancellation email or bot message |
Issue | Shippified couldn't work out enough to be useful. | A message where neither the store nor the item could be identified |
You can filter by any of these on the Orders page with the Status menu.
What "Issue" means
An order gets the Issue status when its store is unknown and no item name could be found. In the list the item shows as "Unparsed order", and when there's no tracking number or order number either, the order is marked Needs review. Each bot and email source card counts these orders under Review.
To fix an Issue order, open it and fill in the missing details (see "Editing an order" below). If a whole type of message keeps producing Issue orders, the lasting fix is a template: pin the right built-in template to the bot, or build a custom one on the Templates page. Then use Re-run parsing to rebuild the affected orders.
You don't set the status by hand
Status is always derived from real signals: what the retailer or bot said, whether there's a tracking number, and what the carrier reports. The order editor shows the Status field as read-only. The one way you affect it directly is adding a tracking number to an Ordered order, which moves it to Shipped.
Status only moves forward
Messages don't always arrive in order. A confirmation email can land after the shipping email, and a bot can repost an old checkout. To stop late messages undoing progress, statuses are ranked, and an order only ever moves to a higher rank:
Rank | Status |
|---|---|
1 (lowest) | Issue |
2 | Ordered |
3 | Canceled |
4 | Shipped |
5 (highest) | Delivered |
Some examples:
An order is Delivered, then a late "Thanks for your order" email arrives. It stays Delivered.
An order is Shipped, then a cancellation email arrives. It stays Shipped.
An order is Canceled, then a shipping email with tracking arrives. It moves to Shipped.
Why Canceled ranks below Shipped
Retailers often cancel part of an order ("Sorry, we had to cancel some items from your order") and ship the rest. Because Canceled ranks below Shipped, a partial-cancel email can't pull a shipped order backwards.
Important: Shippified can't tell a partial cancellation from a full one. If a partial-cancel email arrives before anything has shipped, the order is marked Canceled. It moves on to Shipped when the shipping email for the remaining items arrives. Until then, it shows as Canceled even though some items are still coming.
When a single subject mentions both a cancellation and shipping, Shippified treats the email as a cancellation notice.
How messages merge into one order
Every message with an order number is matched against your existing orders. If an order with exactly the same order number already exists anywhere in your workspace, the new message merges into it. Otherwise it creates a new order.
When a message merges into an order:
Existing details are kept, and gaps are filled. If the order has no tracking number yet and the new message has one, it's added. A value that's already there isn't overwritten by a later message.
A better item name replaces a placeholder. If the item was "Unparsed order", a real item name from a later message replaces it.
The status takes the higher rank of the two (see above).
The earliest date wins. The order keeps the date it was first placed.
The channels are combined. Shippified records every channel that has seen the order: Discord, email or manual.
It doesn't matter which channel or source each message came from. A checkout from a Discord monitor and a confirmation email from your Gmail merge as long as the order numbers match.
Note: Discord posts are never treated as duplicates of each other by content. Two identical checkout posts can be two real orders. Posts that carry the same order number still merge. A post without an order number always creates its own order.
Emails are protected separately: every email is identified by its unique Message-ID, so the same email can never be counted twice. See Connect an email inbox.
The confirmed badge
When more than one channel has seen an order (for example a Discord monitor and a retailer email), its card on the Orders page shows a badge such as 2× confirmed. Hover over the badge to see which channels confirmed it. That's your quickest check that a cook is real and was actually processed by the retailer.
Supported retailers
Shippified has built-in email support for four retailers. It recognises their mail by the sender's domain, including subdomains (for example oe.target.com counts as Target).
Retailer | Sender domain | What order numbers look like |
|---|---|---|
Target | target.com | A long number, 9 to 20 digits |
Walmart | walmart.com |
|
Amazon | amazon.com |
|
Best Buy | bestbuy.com |
|
Each retailer has one built-in template per email type: Order Placed, Order Shipped, Order Update, Order Delivered and Order Canceled. These are the templates you can pin to an email source.
For other retailers, build a custom email template on the Templates page from a sample email.
Which subjects are recognised
The email type is decided mainly by the subject line. Shippified checks for a cancellation first, then delivery, then an update, then shipping, then a new order. The first match decides the type. These are representative subjects for each type:
Email type | Resulting status | Example subjects |
|---|---|---|
Order Placed | Ordered | "Thanks for your order", "Thank you for your purchase", "Thanks for shopping with us!", "Here's your order", "Order confirmed", "We've received your order", "Ordered: item name" |
Order Shipped | Shipped | "Your order has shipped", "Shipping confirmation", "Your order is on its way", "Your package is coming" |
Order Update | Status unchanged (see below) | "Out for delivery", "Arriving today", "Arriving tomorrow", "Your items are about to ship", "Your order is ready for pickup", "Pickup reminder", "Your order is delayed", "Delivery update", "New delivery date", "Update your payment" |
Order Delivered | Delivered | "Your order was delivered", "Delivered: item name", "Your order has been picked up", "Your items have arrived" |
Order Canceled | Canceled | "Your order was canceled", "Order cancellation", "Sorry, we had to cancel some items from your order", "We couldn't fulfill your order" |
Amazon shipping emails are recognised by subjects that start with "Shipped:", that say an item "has shipped", or that say a shipment "has been sent".
Order Update emails, such as out for delivery, pickup ready or delayed, keep the order where it is. They move it to Shipped only if they include a tracking number. An "Out for delivery" email doesn't mark an order Delivered. The delivery email or a carrier lookup does.
Amazon seller mail from the same domain (payouts, listings, brand approval, feedback removal, replies) is never treated as an order.
Tip: An email whose subject doesn't match can still become an order. If it comes from one of these retailers, contains an order number, and its subject or opening text reads like an order event, Shippified picks it up through its general rules.
Tracking and delivery
When a message includes a tracking number, Shippified works out the carrier from the carrier name or the number's format. Click an order with a tracking number to open its tracking panel:
DHL and DHL Express: live tracking events, with a Refresh button. Shippified also checks these packages in the background, so an order moves to Shipped and then Delivered as the carrier scans it, even if you never open the dashboard.
UPS, FedEx and USPS: recognised, but live tracking isn't available for them yet. The panel shows a timeline built from your emails. USPS packages get a Check on usps.com link; for UPS and FedEx, use Copy number and check the carrier's site. The order moves to Shipped and Delivered when the matching emails arrive.
Sync tracking on the Orders page refreshes up to 50 Ordered or Shipped orders on live-tracking carriers at once, and reports how many were delivered. See Shipment tracking for the details.
Adding an order by hand
Use this for purchases that didn't come through a connected monitor or inbox.
On the Orders page, select New order.
Fill in Add an order. Only Item name is required.
Field | Notes |
|---|---|
Item name | Required |
Retailer | Target, Walmart, Amazon, Best Buy, or Other / unspecified |
Order number | Optional, but recommended. If an order with this number already exists, your entry merges into it instead of creating a second order. Later emails and bot posts with the same number merge into this order too. |
Tracking number | Optional. With a tracking number, the order starts as Shipped. Without one, it starts as Ordered. |
Carrier | Leave it on Auto-detect from tracking number, or choose UPS, FedEx, DHL, DHL Express or USPS |
Cost ($) | What you paid. Used for profit. |
Quantity | Optional |
Order date | Defaults to today |
Link an inbox (optional) | Associates the order with one of your email sources |
Select Add order.
As you type a tracking number, the dialog tells you what to expect. For example, Live tracking on — Shippified checks DHL in the background and marks the order delivered when DHL confirms it. for a carrier with live tracking, or a note that live tracking isn't available, in which case linking an inbox lets shipping and delivery emails update the order.
Tip: Add the order by hand with its order number when you buy. When the retailer's shipping email arrives, it merges into your order and adds the tracking number.
If your plan's monthly order limit has been reached, the button reads Limit reached and new orders can't be added until the limit resets.
Editing an order
Shippified follows a fill-in-the-blanks model. You can add information that's missing, but you can't overwrite what was read from the retailer's or bot's own messages. The exception is sale price, which is always yours to change.
Adding a sale price
Every order card on the Orders page has a sale price control:
Select + sale price (or the pencil next to an existing sale price).
Enter the amount and press Save (or Enter).
The card shows the sale and a profit chip (sale price minus cost). Use Clear to remove a sale price.
You can also set Sale price ($) in the order editor in the drawer.
Sale prices feed the profit figures on the Insights page.
Filling in missing details
Click any order to open its drawer. The order editor sits at the bottom of the drawer, under the tracking timeline if the order has a tracking number, or on its own if it doesn't. It has three sections:
Identity: Item name, Order number, Quantity, and the read-only Status
Shipping: Tracking number, Carrier
Pricing: Cost ($), Sale price ($)
Fields that already have a value show a lock icon and can't be changed. Item name is only editable when the order is still "Unparsed order". Fill in what's missing and select Save changes.
What happens when you save:
Adding a tracking number to an Ordered order moves it to Shipped and opens live tracking for supported carriers.
Your edits are protected. Shippified remembers which fields you filled in, including a sale price. Re-run parsing never overwrites them, and Rebuild orders from mailbox keeps edited orders as they are.
Adding an order number lets future emails and bot posts with that number merge into this order.
Saving without changing anything does nothing: no update is recorded and no notification is sent.
Deleting an order
Every order's editor has a Delete order button, whether or not the order has a tracking number. It asks you to confirm. The order disappears from your order list and analytics. Share cards you already created keep their snapshot.
Note: If the order was built from an email Shippified still has stored, a later mailbox rebuild can bring it back.
Related guides
Connect an email inbox: how emails reach Shippified, and which ones are ignored.
Rebuild from mailbox: rebuild orders from the original emails.
For developers: the orders API and outbound webhooks, which emit events as orders are created, merged, shipped and delivered.