Learn About Shipment Tracking Using a Test Slug and Number
Plans: All plans Platforms: All platforms
AfterShip facilitates tracking for over 1200 carriers, streamlining shipment monitoring for users. If you're unsure how AfterShip aids in tracking shipments, you can create a test shipment using a designated test slug and tracking number. This allows you to familiarize yourself with how we share details for each checkpoint and update post-purchase Estimated Delivery Dates (EDDs). This guide will walk you through the necessary steps.
Be careful while creating test shipments because they do use your shipment quota.
Before you start testing slugs and number, here are a few things you need to keep in mind.
Tracking numbers follow a predefined format: Status code - Update frequency (in mins) - Test number
Example: ITOD-1-643642, I001T001E010E011-1-643642
Each status code can be followed by a 3-digit sub-status code. If no sub-status is specified, 001 will be used as default.
For a complete list of available sub-status codes and their meanings, please refer to our Delivery Substatus Documentation.
I: Info Received
T: In Transit
O: Out for Delivery
D: Delivered
E: Exception
F: Failed Attempt
A: Available for Pickup
Format examples
Without sub-status: I = I001 (using default sub-status)
With sub-status: I001, I002 (explicitly specified sub-status)
A flow can have a maximum of 10 checkpoint status codes.
Each status code must be followed by a 3-digit sub-status code, or the default sub-status code 001 can be used.
The same status code may appear multiple times, each with a different sub-status code.
Format: [Status code] - [Update frequency (in minutes)] - [Test number]
Examples
Below are some test tracking numbers you can experiment with:
ITOD-3-6436426452526
ITE-3-65653653231564
ITAD-3-76542345665
ITFD-3-234657687643
TOD-3-765423454567
ITD-3-3456787654345
TD-3-234567654654
D-3-234567654654
ITE010D-3-643642
I001T001E010E011-1-643642
I001T002O001D001-2-643642
D002-3-234567654654
If no sub-status is specified, the system will default to 001.
You can create any combination of status flows, as long as the 10-checkpoint limit is not exceeded.
Each status in the flow will generate a corresponding checkpoint in the tracking history.
The tracking number format should follow this pattern: [Status code] - [Update frequency (in minutes)] - [Test number].
For detailed information on available sub-status codes, refer to our Delivery Substatus Documentation.
The post-purchase Estimated Delivery Date (EDD) for test shipments will be generated using the Carrier EDD. This value will be updated in each status to reflect both the Carrier EDD and the post-purchase EDD.
The next number tells the system how quickly you want it to update the shipment status. So if you select ITOD as the status code and add the number “3”, it will change the status from “Pending“ to “Info received” to “In transit” to “Out for delivery” and then to “Delivered” every 3 mins. You can choose any frequency between 1 and 20 minutes.
Note: You can use a test shipment imported by CSV or API. The below-given steps explain how to create one directly in AfterShip admin.
Log in to your AfterShip account > Go to Tracking dashboards > Shipments and click Add shipment

The last part of the tracking number is just a string of numbers that will act as the shipment number. Enter a random set of 6-16 numbers.
Now, you should be able to create your own test shipment number.
After entering the shipment number, mention “testing-courier” as the carrier slug
Now, if you want to provide other details, go ahead. Otherwise, skip this part to save yourself some time. This won’t cause any errors
Click Save shipment

Again, go back to the Shipments page and click on the test shipment (created with the test tracking number and slug) to check how we show details to you

Always use the testing slug testing-courier when creating a test shipment. It is crucial to input this slug because the tracking will not auto-update otherwise.
A test shipment number can only be used once. We shared a few test tracking numbers above with you, just as an example. If you've used any of them and are seeing the final status, it means some another AfterShip user has already tried it. So, replace the last part of the test tracking number with another random string of 6-16 numbers or a-z alphabets and try again.
CURL:
API description
API: POST https://api.aftership.com/v4/trackings
Payload:
Still have questions about shipment tracking? Discuss them with our chat support team.
Overview
AfterShip facilitates tracking for over 1200 carriers, streamlining shipment monitoring for users. If you're unsure how AfterShip aids in tracking shipments, you can create a test shipment using a designated test slug and tracking number. This allows you to familiarize yourself with how we share details for each checkpoint and update post-purchase Estimated Delivery Dates (EDDs). This guide will walk you through the necessary steps.
Be careful while creating test shipments because they do use your shipment quota.
Testing carrier guide
Before you start testing slugs and number, here are a few things you need to keep in mind.
Basic format
Tracking numbers follow a predefined format: Status code - Update frequency (in mins) - Test number
Example: ITOD-1-643642, I001T001E010E011-1-643642
Status codes and sub-statuses
Each status code can be followed by a 3-digit sub-status code. If no sub-status is specified, 001 will be used as default.
For a complete list of available sub-status codes and their meanings, please refer to our Delivery Substatus Documentation.
Main status codes
I: Info Received
T: In Transit
O: Out for Delivery
D: Delivered
E: Exception
F: Failed Attempt
A: Available for Pickup
Format examples
Without sub-status: I = I001 (using default sub-status)
With sub-status: I001, I002 (explicitly specified sub-status)
Rules and limitations
A flow can have a maximum of 10 checkpoint status codes.
Each status code must be followed by a 3-digit sub-status code, or the default sub-status code 001 can be used.
The same status code may appear multiple times, each with a different sub-status code.
Format: [Status code] - [Update frequency (in minutes)] - [Test number]
Examples
Below are some test tracking numbers you can experiment with:
ITOD-3-6436426452526
ITE-3-65653653231564
ITAD-3-76542345665
ITFD-3-234657687643
TOD-3-765423454567
ITD-3-3456787654345
TD-3-234567654654
D-3-234567654654
ITE010D-3-643642
I001T001E010E011-1-643642
I001T002O001D001-2-643642
D002-3-234567654654
Additional considerations
If no sub-status is specified, the system will default to 001.
You can create any combination of status flows, as long as the 10-checkpoint limit is not exceeded.
Each status in the flow will generate a corresponding checkpoint in the tracking history.
The tracking number format should follow this pattern: [Status code] - [Update frequency (in minutes)] - [Test number].
For detailed information on available sub-status codes, refer to our Delivery Substatus Documentation.
EDD Value
The post-purchase Estimated Delivery Date (EDD) for test shipments will be generated using the Carrier EDD. This value will be updated in each status to reflect both the Carrier EDD and the post-purchase EDD.
Update frequency
The next number tells the system how quickly you want it to update the shipment status. So if you select ITOD as the status code and add the number “3”, it will change the status from “Pending“ to “Info received” to “In transit” to “Out for delivery” and then to “Delivered” every 3 mins. You can choose any frequency between 1 and 20 minutes.
Steps to use a test slug and number
Note: You can use a test shipment imported by CSV or API. The below-given steps explain how to create one directly in AfterShip admin.
Log in to your AfterShip account > Go to Tracking dashboards > Shipments and click Add shipment

The last part of the tracking number is just a string of numbers that will act as the shipment number. Enter a random set of 6-16 numbers.
Now, you should be able to create your own test shipment number.
After entering the shipment number, mention “testing-courier” as the carrier slug
Now, if you want to provide other details, go ahead. Otherwise, skip this part to save yourself some time. This won’t cause any errors
Click Save shipment

Again, go back to the Shipments page and click on the test shipment (created with the test tracking number and slug) to check how we show details to you

Notes
Always use the testing slug testing-courier when creating a test shipment. It is crucial to input this slug because the tracking will not auto-update otherwise.
A test shipment number can only be used once. We shared a few test tracking numbers above with you, just as an example. If you've used any of them and are seeing the final status, it means some another AfterShip user has already tried it. So, replace the last part of the test tracking number with another random string of 6-16 numbers or a-z alphabets and try again.
API sample
CURL:
curl --location --request POST 'https://api.aftership.com/v4/trackings' \
--header 'aftership-api-key: xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"tracking": {
"slug": "testing-courier",
"tracking_number": "ITOD-3-qwertyuiop12345"
}
}'
API description
API: POST https://api.aftership.com/v4/trackings
Payload:
{
"tracking": {
"slug": "testing-courier",
"tracking_number": "ITOD-3-qwertyuiop12345"
}
}
Still have questions about shipment tracking? Discuss them with our chat support team.
Updated on: 24/03/2025
Thank you!