How to search for an order by tracking number?

AI-generated summary

Searching Shopify orders by tracking number via API. The Admin UI supports this, but the API currently does not.

Status and decision: No direct API endpoint exists. A feature suggestion has been submitted to Shopify.

Workarounds:

  • GraphQL Bulk Query to fetch historical data: retrieve order IDs with associated fulfillment trackingInfo (numbers). Bulk queries pull large datasets asynchronously.
  • Webhooks for fulfillments/create and fulfillments/update: receive ongoing tracking updates tied to order IDs. Webhooks are event notifications sent when data changes.

Outcome: The requester acknowledged the suggestion and workaround.

Alternative solution: A third‑party order tracking app (ParcelPanel) can find orders by tracking number and provide:

  • Real-time tracking, branded tracking page, and email notifications.
  • CSV export (order number, tracking number, courier, transit time, order date, order status) and dashboard analytics.
  • Promotional link offering a 30‑day free trial. An image of the app interface is included.

Resolution: No native API search by tracking number yet. Practical options are bulk query + webhooks or using an app. The thread remains open pending any future API update.

When I’m using the Shopify via the Admin backend, I’m easily able to pop in a tracking number into the main search bar and it will easily return the associated order that had a fulfillment with that tracking number.

I’ve searched and searched and searched - yet I could find no means of doing this myself via the API.

Bump :index_pointing_up:t3:

This should be possible somehow if the Shopify Admin can do it, no?

Bump

Hi TJ_Biddle,

Currently there is not a way to directly search orders by tracking number via API so we’re submitting a suggestion for it on your behalf.

If you wanted to build something on your own, for historical data on a particular shop using a [GraphQL Bulk Query] is a good option where a minimal query to get the order ID and any related tracking numbers for all orders looks like this:

{
orders {
edges {
node {
id
fulfillments {
trackingInfo {
number
}
}
}
}
}
}

For ongoing updates for a particular shop subscribing to the [fulfillments/create] and [fulfillments/update] webhooks would provide all the tracking info and related order ID’s as they get updated.

Great! Thank you for submitting the suggestion & the work-around!

You may use an order tracking app like ParcelPanel to find orders by tracking number. Plus, by doing so, you can access the real-time tracking updates, so do your customers. They can use the branded tracking page and receive shipping notifications via email.

You may also export information including order number, tracking number, courier, transit time, order date, order status into a CSV file if you want. You can access detailed analytics within a certain period through the dashboard.

An order tracking app can streamline your workflow and greatly improve your post-purchase experience.

Currently, ParcelPanel is the top-rated order tracking app in Shopify App Store. If you want to get a 30-day free trial instead of the standard 7-day free trial, use this link to install our app.