

Add a tracking number to a WooCommerce order: carrier, tracking number, tracking link, and ship date — all from the Shipment Tracking meta box
Trackora is a free shipment tracking plugin for WooCommerce. Save a tracking number on an order and the link appears everywhere your customer looks: the confirmation email, the My Account order page, and a public Track Your Order page.
“Where is my order?” is the email every store gets most, and every one of them is time you would rather spend shipping. A customer who can see where their parcel is does not write it.
No settings, no account, no API keys. 100% free — no PRO version, no upsells.
HPOS Compatible · Block Checkout Compatible · 152 Carriers · Bulk CSV Import · REST API · Free & Open Source
Whether you ship 5 orders a day or 5,000 — single-product stores, high-volume shops, dropshippers and 3PL-fulfilled catalogues all handle tracking the same way here:
[wcst_tracking] shortcode — customers look up shipments with their order number and billing email, no login requiredYour carrier or your 3PL already sends you a file at the end of the day. Import Tracking turns it into saved tracking numbers, from the Trackora screen or from the button at the top of your orders list.
An import writes tracking and, unless you ask for more, changes nothing else. Two optional switches sit on the mapping step: move every order in the file to a status such as Completed, and send each customer the WooCommerce email for that new status — the email that already carries the tracking number. Both are off by default, and the status changes run only after the whole file has been read, so an order with two shipments in your file is emailed once, with both.
Orders are matched by the number your store displays, an order that already has a tracking number is skipped rather than duplicated, and a carrier name Trackora does not recognise is saved as a custom carrier instead of failing the row.
152 carriers across 37 countries, including UPS, FedEx, USPS, DHL, Royal Mail, EVRi, DPD, Australia Post, Canada Post, PostNL, PostNord, Correos, SEUR, MRW, Estafeta, Servientrega, Coordinadora, Chilexpress, Andreani, OCA, Interrapidisimo, Olva Courier, Correios, Japan Post, SF Express, Thailand Post and 120+ more across the Americas, Europe, Asia-Pacific, the Middle East and Africa.
Don’t see yours? Add it as a custom provider with your own tracking URL — no coding needed. Every carrier is named, with its terms of service and privacy policy, in the External services section below.
Trackora ships with 152 carriers, and no store uses more than a handful of them. The Shipping Carriers tab is where you turn the rest off: a switch on every row, search by carrier or by country, and a country filter that starts with your own market — read from your WooCommerce store address. What you leave on is what the order screen offers, so picking a carrier stops being a scroll through 37 countries.
Add the courier the list does not cover with Add a carrier: a name, a country, and the tracking URL with {tracking_number} where the number goes. It is saved once and offered on every order from then on. Carriers you added can be edited or renamed later — the orders already using them keep their tracking links — and if the carrier has no URL that accepts the number, leave it empty and the number is shown without a link.
Nothing is switched off behind your back: updating Trackora leaves every carrier enabled until you open the tab and choose.
wcst_order_number_meta_keys filterwoocommerce_email_before_order_table hook, so any customiser that keeps the standard order email templates — YayMail, Kadence WooCommerce Email Designer, WP HTML Mail and others — displays it with no extra setupTrackora exposes a REST API with full create, read, update and delete over tracking items, the PHP helpers wcst_add_tracking() and wcst_delete_tracking(), and filters to extend the carrier list, the orders list column and the email output.
Endpoints, filters and code examples are documented on GitHub: https://github.com/slbarriosdev/wc-shipment-tracker — bug reports and contributions welcome.
This plugin generates tracking links pointing to carrier websites. When a tracking number is added to an order, the plugin builds a URL for the selected carrier and displays it to the store admin and customers.
The plugin does not make any server-side HTTP requests to carrier websites. Data is only transmitted when a user (admin or customer) actively clicks a tracking link — at that point their browser connects to the carrier’s website and the tracking number (and in some cases the shipping postcode) is passed in the URL as required by that carrier’s tracking system.
Each carrier operates its own website under its own terms of service and privacy policy. The external carrier services this plugin may link to include: