The Shipment Tracking extension provides customers with an easy way to track shipments by adding a link to emails and order pages.
Adding tracking information to orders ↑ Back to top
On the edit/view order screen, you will see a new write panel for shipment information:
To add shipment information for the customer to view:
- Choose a provider. This should be the shipping company you use. If your provider is not listed, choose the Custom Provider option.
- Add the tracking number that the provider assigned. If you chose the custom option, you need to enter the full link to the company’s tracking page (if applicable).
- Choose a shipping date (optional), which is when the package was shipped.
- (optional) Test the preview link to see if it works as you expect.
- Save Tracking. This is also a good time to change the order status to Complete. Marking the order as Complete will send the Completed Order email to the customer, including the shipment tracking code.
- (optional) Add additional tracking numbers by clicking Add Tracking Number.
Customization ↑ Back to top
Note: This is a Developer level doc. If you are unfamiliar with code/templates and resolving potential conflicts, select a WooExpert or Developer for assistance. We are unable to provide support for customizations under our Support Policy.
Custom meta reference ↑ Back to top
The Shipping Tracking plugin stores the tracking information in the order meta with the meta key
_wc_shipment_tracking_items. It’s an array with the following structure:
- tracking_provider — String of predefined provider
- custom_tracking_provider — String of custom provider
- custom_tracking_link — String of custom tracking URL
- tracking_number — String of tracking number
- date_shipped — Timestamp of shipment date
Developers can use the helper function
wc_st_add_tracking_number to add tracking info to an order. In this helper function, the field
$custom_url is optional.
Current available shipping providers ↑ Back to top
- Australia Post
- Fastway Couriers
- Canada Post
- Czech Republic
- Česká pošta
- DHL Intraship (DE)
- Deutsche Post DHL
- UPS Germany
- An Post
- BRT (Bartolini)
- DHL Express
- UPS Netherlands
- New Zealand
- Courier Post
- NZ Post
- PBT Couriers
- Poczta Polska
- Fan Courier
- DPD Romania
- Urgent Cargus
- South Africa
- PostNord Sverige AB
- DB Schenker
- United Kingdom
- Royal Mail
- TNT Express (consignment)
- TNT Express (reference)
- DHL Parcel UK
- United States
- FedEx Sameday
- DHL US
Change the default shipment provider ↑ Back to top
The plugin provides a hook for changing the default provider from ‘custom’ called
woocommerce_shipment_tracking_default_provider. This can be used by adding a custom function to your theme functions.php file and passing back the name of the provider, which should be the default:
Add custom providers dynamically ↑ Back to top
You can add custom providers dynamically by using this snippet in functions.php in your theme folder:
Hide unused shipping providers ↑ Back to top
You can hide the shipping providers you will not use with this snippet. Note: this code will remove ALL shipping providers. Remove the ones you want to appear before using. For example, if you want to use FedEx, then delete line 24.
REST API Support ↑ Back to top
Works with WooCommerce API v1, v2, and v3. In the documentation, only v3 is shown.
Questions and Support
Something missing from this documentation? Do you still have questions and need assistance?
- Have a question before you buy this extension? Please fill out this pre-sales form – please include the name of this extension in your query.
- Already purchased and need some assistance? Get in touch with a Happiness Engineer via the WooCommerce.com Support page and choose this extension name from the “I need help with” dropdown