Shipping guide

How do I upload tracking numbers in bulk?

Each store has its own bulk path: eBay adds tracking to selected orders in Seller Hub, Shopify makes you fulfil first and add tracking afterwards, and WooCommerce keeps tracking in order meta. A spreadsheet paste works until one carrier name or order id is wrong, then fails quietly. Tracking written back when the label is bought skips the step.

Where each store puts the bulk action

Bulk upload means two different things depending on the store. On eBay it is one action on selected orders. On Shopify the bulk action only changes status, and tracking is a second pass. WooCommerce has no tracking field in core at all, so the number lives in the order meta that the Shipment Tracking convention defines.

StoreBulk pathTracking in the same step
eBaySeller Hub, Orders, select orders, then Add tracking numberYes. An order can carry up to 6 tracking numbers
ShopifyOrders, select, Mark as fulfilledNo. After you mark orders as fulfilled you add tracking manually
WooCommerceOrders, select, bulk action, change status to completedNo. Tracking is order meta: _tracking_number and _tracking_provider

Why the spreadsheet paste breaks

The paste is fine on a clean day. It fails on the days that matter. Order ids drift when an order is edited or combined, carrier names have to match the store's own list, and a carrier the store does not recognise needs a full tracking URL instead of a code.

  1. Check the order id column against the store, not against your label file.

  2. Use the carrier name the store expects, not the one printed on the label.

  3. For a carrier Shopify does not recognise, enter a custom carrier with a complete tracking URL.

  4. Release any fulfillment order on hold first. Held and scheduled fulfillment orders cannot be changed by a bulk action.

  5. Watch the selection size. Shopify says some features may not be available above 250 selected orders.

A failed row says nothing. The order stays Unfulfilled or processing, the buyer hears nothing, and the handling-time clock keeps running.

What the buyer gets when the upload lands

eBay marks the order Shipped and emails the buyer the tracking details. Shopify sends a shipping confirmation when the fulfilment is created, with or without tracking, and a separate shipping update when tracking information is added or changed. WooCommerce sends nothing by itself. The customer hears from you only if a note to customer is added and the Customer Note email is enabled.

Orders that did not come from a connected store

Wholesale, an invoice you raised by hand, a channel with no API: none of these has a store record to write tracking back to, so the number has to be recorded wherever you keep the order. Keep one line per package rather than one per order, carry the carrier code rather than a friendly name, and copy the number straight from whatever bought the label so it is never retyped.

Key takeaways

  • eBay takes tracking in the same bulk action. Shopify does not.
  • WooCommerce stores tracking as order meta, so a status change on its own tells the buyer nothing.
  • Order ids and carrier names are what break a paste, and they break it quietly.
  • Tracking written back when the label is bought removes the upload step entirely.
With I'd Ship That

Buying the label is the upload

When an order came from a connected store, buying its label posts the tracking number and carrier back to that order for you. On eBay that is available now: the order moves to Shipped and eBay emails the buyer.

Shopify and WooCommerce connections are in early access, where write-back creates the fulfilment on Shopify and sets a WooCommerce order to completed with tracking meta and a customer-visible note. Orders that did not come from a connected store can be imported into The Workbench from a CSV or pasted in, then rated, bought and printed the same way.

See the store integrations

eBay accepts up to 6 tracking numbers on a single order, which covers a multi-box shipment. Shopify records tracking per fulfilment, so an order split across boxes carries one number per fulfilment. WooCommerce core keeps a single tracking number in order meta, so a second parcel usually has to be explained in a customer note.

Yes. The shipping confirmation goes out when the fulfilment is created, whether or not tracking is attached. The shipping update email is the separate one that needs tracking information. So a bulk fulfil followed by a manual tracking pass sends the customer two messages instead of one.

Shopify lets you enter a custom carrier name with a complete tracking URL, and it builds the clickable link from that URL. eBay validates against its own list of integrated carriers, and for item not received protection the tracking has to come from a carrier eBay integrates with and show an acceptance scan.

That is normal for a few hours, because the number exists before the carrier has the parcel. It becomes a problem when it stays that way after the drop-off. See Shipping label created, not yet in system for what the status means and how long to wait.