Skip to main content

Learn About AfterShip Pre-Shipment Tracking

AfterShip Pre-Shipment Tracking: follow setup steps, configure key options, verify behavior, and troubleshoot workflow issues, and avoid setup errors.

Plans: Enterprise Platforms: All platforms & Commerce API

Overview

AfterShip Tracking supports customizable pre-shipment status updates to proactively inform customers before their items ship. Providing frequent updates early in the post-purchase journey can reduce customer queries about order status and reduce support calls.

Before shipping, you can offer additional updates to help customers track their order’s progress and manage expectations, especially if some of your items have longer fulfillment times. These pre-shipment updates help retailers minimize "Where Is My Order?" (WISMO) inquiries by delivering more detailed and timely information.

  • AfterShip integrates with your eCommerce platform to internally label and manage tracking information for orders that are yet to be shipped. This internal labeling paves the way for related tracking pages and notification flows.

  • Customers receive real-time notifications via email and SMS when their order’s shipping fulfillment status updates, such as when the order is processed to when the order is shipped, ensuring clear communication.

  • A centralized orders dashboard to oversee the shipping fulfillment of orders synced from an eCommerce platform to manage customer expectations effectively.

  • A fully customizable, on-brand tracking page for customers to track the status of their orders before they are shipped.

Pre-shipment fulfillment statuses

AfterShip employs predefined fulfillment status codes to track and update the progress of orders before they are shipped, starting from order creation to shipping.

These statuses are communicated to AfterShip via the fulfillment.status field.

Additionally, these statuses are used to send pre-shipment notifications and show the pre-shipment progress of the order on the shipment tracking results page.

STATUS

DESCRITPION

pending

Awaiting fulfillment information of the order.

processing

The processing of the items in the order has started.

shipped

The items in the order have been dispatched and are on their way to the destination.

canceled

The fulfillment of the order has been cancelled and will no longer be processed for delivery.

Merchants can define their pre-shipment status(es) in addition to the above standard triggers in AfterShip.

Pre-shipped orders import to AfterShip Tracking

E-commerce platform

AfterShip Tracking will import your shipping orders from your eCommerce platform if you have an active store connection linked to your organization and will follow the order import rules you’ve set up under your app import settings. Once imported, the order will be labelled as Shipping in the backend and will seamlessly flow into the relevant notification workflows and tracking pages.

Order app import rules

API users

We only support shipping fulfillment for users on the 2024-07 versioned Commerce API and above.

Recommended method

1. Create shipping order

{  "source_id":"5187092316403",  "number":"1086",  "currency":"HKD",  "status":"open",  "fulfillment_status":"unfulfilled",  "delivery_method":"shipping",  "order_total":"97",  "items":[  {  "source_id":"101",  "quantity":1,  "title":"good hair"  },  {  "source_id":"102",  "quantity":2,  "title":"apple"  }  ],  "shipping_address":{  "company": "Example Company",  "first_name": "John",  "last_name": "Doe",  "email": "[email protected]",  "street_1": "1234 Elm Street",  "street_2": "Apt 5",  "city": "New York",  "state": "NY",  "country_region": "USA",  "postal_code": "10001",  "phone": "+11234567890"  }
}

2. Create shipping fulfillment(s) and fill in the ship to location

POST /fulfillments
{  "source_id":"100",  "order_id":"243f72f5d0564f008e9690cc823d2e91",  "type":"shipping",  "status":"pending",  "line_items":[  {  "source_id":"101",  "quantity":1  },  {  "source_id":"102",  "quantity":2  }  ],  "source_created_at":"2024-01-02T00:00:00Z",  "source_updated_at":"2024-01-02T00:00:00Z",  "ship_from_location":{  "location_id":"3a63c1fbc2fb459ba2d27e376072df67"  },  "ship_to_location":{  "address": {  "type": "residential",  "country_region": "United States",  "state": "California",  "city": "Los Angeles",  "postal_code": "90001",  "street_1": "123 Main Street",  "street_2": "Apt 101",  "street_3": "",  "coordinate": {  "longitude": -118.2437,  "latitude": 34.0522  },  "company": "ACME Corporation",  "first_name": "John",  "last_name": "Doe",  "email": "[email protected]",  "phone": "+11234567890"  }  }
}

3. Update status to “Processing”

POST /fulfillments/{id}/update-status
{  "status": "processing",  "occurred_at": "2024-05-04T01:25:00Z"
}

4. Update status to “Delay” (custom status)

POST /fulfillments/{id}/update-status
{  "status": "delay",  "occurred_at": "2024-05-03T00:12:09Z"
}

5. Set status to “Packing” (custom status)

POST /fulfillments/{id}/update-status
{  "status": "packing",  "occurred_at": "2024-05-05T00:00:00Z"
}

6. (If shipped) Ship the fulfillment

POST /fulfillments/{id}/ship
[  {  "tracking_number":"ITOD-3-WA34562EBBQ1",  "slug":"testing-courier",  "service_type":"FedEx Overnight",  "ship_date":"2024-05-06",  "custom_fields":{  "a":"b"  },  "next_couriers": [  "slug": "testing-courier",

7. Update status to “Canceled”(If canceled)

POST /fulfillments/{id}/update-status
{  "status": "canceled",  "occurred_at": "2024-05-06T10:00:00Z"
}

Key takeways

  • Pre-shipment tracking provides updates before an order ships, reducing WISMO inquiries.

  • Imports orders from eCommerce platforms based on your order import rules.

  • Includes a centralized dashboard to monitor order fulfillment progress.

  • Uses standard statuses (pending, processing, shipped, canceled) and allows setting up custom statuses.

  • Trigger email/SMS notifications for all pre-shipment status changes, keeping your customers informed.

Solutions available under the AfterShip Pre-Shipment Order Tracking

For any further questions or help, please contact our chat support team.

Did this answer your question?