plugin-icon

Kitgenix Order Tracking for WooCommerce

Door Kitgenix·
Add multi-shipment tracking to WooCommerce orders, show tracking in customer emails, and provide a public “Track Your Order” page.
Versie
1.0.5
Actieve installaties
10
Laatst bijgewerkt
Feb 19, 2026
Kitgenix Order Tracking for WooCommerce

Customers don’t just want a tracking number — they want confidence.

After purchase, the questions are predictable: “Has it shipped yet?”, “Is this coming in multiple parcels?”, “Which courier is it with?”, and “Can I track it right now?”

Kitgenix Order Tracking for WooCommerce gives you a clean, reliable way to manage WooCommerce shipment tracking without bloated shipping suites. Add multiple shipments to a single order (split deliveries, replacements, multi-parcel, different carriers), show tracking clearly to customers, and reduce “where is my order?” support tickets with a self-service tracking page.

It also includes a Tracking Analytics screen inside WooCommerce so you can understand shipping speed, exceptions, and how often customers check tracking.

Built for real-world shipping workflows

This plugin is especially useful if you: – ship orders in more than one box (multi-parcel / multi-shipment), – part-ship items while the rest are backordered, – use multiple couriers (Amazon Logistics, An Post, DHL, DPD, DX, Evri, FedEx, Parcelforce, Royal Mail, UPS, Woodside, Yodel, etc.), – want a branded tracking page instead of sending customers to random courier sites, – want tracking shown in emails (cleanly, without duplicate blocks), – want a “Partially shipped” workflow and email for staged fulfilment.

What the plugin does

  1. Add one or more shipments to a WooCommerce order (carrier + tracking number + optional shipped date + per-item quantities).
  2. Generate courier tracking links from built-in carrier URL patterns (plus an “Other” courier option for custom links).
  3. Display tracking for customers:
    • in emails,
    • and on a public tracking page via shortcode.
  4. Optionally show an approximate delivery route map (Leaflet + OpenStreetMap; no Google Maps, no API key, no CDN).
  5. Monitor operations with a Tracking Analytics dashboard (ship speed, totals, breakdowns, lookups, recent shipments).

Key features

Multiple shipments (multi-parcel, split deliveries, replacements)

Add as many shipments as you need to a single order. Each shipment can include: – carrier (optional; if omitted, no carrier tracking link is generated), – tracking number, – shipped date (optional), – shipped items + quantities (line-item allocation for partial fulfilment).

This makes partial shipments and multi-parcel deliveries accurate and customer-friendly.

Built-in carriers (UK & Ireland friendly)

Includes a carrier registry with icons and tracking URL patterns, so customers get direct “Track shipment” links.

Built-in carriers include: – Amazon Logistics – An Post – DHL – DPD Ireland – DPD UK – DX – Evri – FedEx – Other (custom link / no pattern) – Parcelforce Worldwide – Royal Mail – UPS Ireland – UPS UK – Woodside Distribution – Yodel

Customer tracking page (self-service)

Add a tracking page anywhere using: [kitgenix_tracking_form]

The tracking form supports: – Order-based lookup (order number + billing email + postcode), and – Tracking-number lookup (useful when the customer only has parcel details)

Great for reducing support tickets and giving customers a consistent experience.

Tracking in WooCommerce emails (done cleanly)

Tracking is appended to: – WooCommerce Completed Order email, and – the plugin’s own Partially Shipped email

Includes duplicate-guarding so tracking blocks aren’t repeated if templates/hooks are customised.

“Partially shipped” order status + email (included)

The plugin registers: – a custom order status: wc-partially-shipped (“Partially shipped”), and – a custom email: Kitgenix Partially Shipped

Ideal for stores that ship in stages and want to send tracking early without marking the whole order completed.

Optional route map (OpenStreetMap + Leaflet)

If enabled, the tracking view can show an approximate route map using: – Leaflet (bundled locally — no CDN), – OpenStreetMap tiles, – Nominatim geocoding (endpoint + contact email are filterable)

Includes fallbacks if geocoding fails (shows what it can, or hides the map with a message).

Tracking Analytics dashboard (inside WooCommerce)

Adds an admin screen under the Kitgenix hub with practical metrics: – shipped vs unshipped orders, – total shipments, – exceptions, – average/median time-to-ship, – carrier/status breakdowns, – recent shipments, – customer tracking lookup totals, – date range selection (predefined windows like 7–180 days)

Calculations are batched and cached briefly (transients) to keep the dashboard fast.

How it works (quick overview)

1) Add tracking in wp-admin Edit an order and use the Order Tracking meta box. Create shipments using the “Add tracking” modal: – tracking number – carrier dropdown (explicit selection, or leave blank) – shipped date – item quantities (loaded via AJAX) – optional order status update after save (don’t change / partially shipped / completed)

2) Tracking appears for customers If shipments exist, customers see a clear “Shipment Tracking” section in key emails and via the tracking page.

3) Customers can track without contacting you Use the shortcode page so customers can look up tracking by order details or by tracking number.

4) You can measure shipping performance Open Tracking Analytics to see speed, breakdowns, and customer behaviour.

Quick Start

  1. Install and activate the plugin.
  2. Create a page called “Track Your Order” (or similar).
  3. Add this shortcode: [kitgenix_tracking_form]
  4. Edit any order and add a shipment in the Order Tracking meta box.
  5. Send a Completed Order email (or use Partially Shipped) and confirm tracking is shown.

Developers

Text domain: kitgenix-order-tracking-for-woocommerce

Shortcode: [kitgenix_tracking_form]

Data model (high level): – Shipments are stored as order meta under _kitgenix_tracking_shipments (array) – Tracking numbers are indexed for fast lookup via repeated order meta _kitgenix_tracking_number (one meta row per tracking number) – Admin UI stores the last chosen “update order status” action as order meta kitgenix_order_status_action (values: no_change, partial, completed) – Carrier settings are stored in the option kitgenix_order_tracking_for_woocommerce_carriers_settings – Counter option: kitgenix_order_tracking_for_woocommerce_tracking_numbers_added (privacy-safe total) – Counter option: kitgenix_order_tracking_for_woocommerce_lookup_count (successful tracking-page lookups) – Analytics aggregates are cached briefly in transients prefixed kitgenix_order_tracking_for_woocommerce_analytics_... – Activation redirect uses transient kitgenix_order_tracking_for_woocommerce_do_activation_redirect (about 30 seconds) – No custom database tables are created – Uninstall does not automatically remove order meta (to preserve historical tracking)

Nonces / capabilities (summary): – Order edit tracking save uses nonce action kitgenix_order_tracking_save (kitgenix_order_tracking_nonce) and requires edit_shop_order. – Order-items modal loads via AJAX action kitgenix_order_tracking_for_woocommerce_get_order_items using nonce action kitgenix_order_tracking. – Tracking form submissions use nonce action kitgenix_tracking_lookup (kitgenix_tracking_nonce). – Carriers (Shippers) settings form uses nonce action kitgenix_order_tracking_for_woocommerce_save_carriers (kitgenix_order_tracking_for_woocommerce_carriers_nonce).

Hooks / filters: – kitgenix_order_tracking_for_woocommerce_debug_save( bool $enabled, int $order_id ): bool (enable debug order note on save) – kitgenix_order_tracking_for_woocommerce_nominatim_email( string $email ): string (supply/override Nominatim email param) – kitgenix_order_tracking_for_woocommerce_nominatim_endpoint( string $endpoint ): string (override geocoding endpoint)

Admin AJAX endpoints: – wp_ajax_kitgenix_order_tracking_for_woocommerce_get_order_items (load order items into the shipment modal)

External Services

This plugin may connect to external services in two situations:

1) When customers click courier tracking links Tracking links open the carrier’s tracking page (e.g. Amazon Logistics, An Post, DHL, DPD, DX, Evri, FedEx, Parcelforce Worldwide, Royal Mail, UPS, Woodside Distribution, Yodel) or a custom “Other” URL. These links may contain the tracking number.

2) When the optional map is enabled The tracking view may request: – OpenStreetMap tile images – Nominatim geocoding requests (to convert store/customer address details into coordinates)

Map implementation notes: – Leaflet is bundled locally (no CDN fallback). – Map tiles are loaded from https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png. – Geocoding defaults to https://nominatim.openstreetmap.org/search and may include the full store and delivery address string in the q parameter.

3) In wp-admin (Kitgenix hub) This plugin includes a shared “Kitgenix hub” component in wp-admin which may fetch publicly available plugin metadata from WordPress.org using WordPress core’s plugins_api() function.

Caching: – Transient: kitgenix_hub_wporg_active_installs_v1 – Transient: kitgenix_hub_wporg_ratings_v1

Leaflet assets are bundled locally (no CDN).

No personal data is sold or shared by this plugin. Where external services are used, requests may include data required to perform the function (for example, a tracking number in a carrier link, or address data used for geocoding). Review the relevant provider policies for your use case.

Trademark Notice

All carrier names and logos are trademarks of their respective owners. This plugin is not affiliated with or endorsed by any courier, carrier, OpenStreetMap, or Nominatim service.

Support Development

If this plugin reduces “where is my order?” tickets and helps customers self-serve tracking, you can support ongoing development here: https://buymeacoffee.com/kitgenix

Credits

Built with ❤︎ by @kitgenix – https://kitgenix.com

Gratisop Business abonnement
Door te installeren, ga je akkoord met de Servicevoorwaarden van WordPress.com en de voorwaarden voor plugins van derden.
Getest tot
WordPress 6.9.1
Deze plugin kan worden gedownload, zodat je hem op je kan gebruiken.