Skip to content

Find WooCommerce order

Module · Stable

Look up a customer’s order by order number or e-mail — status, payment state, what they bought, and carrier plus tracking number when the shop records them.

Reads one order out of the connected WooCommerce shop. Give it an order number when you have one and it fetches that order directly; give it a customer e-mail instead and it returns their most recent order, with any older ones listed in other_orders so a reply can ask which one they mean. Pass both and the order number wins, because it is unambiguous. Branch on found: a customer quoting an order number that doesn’t exist, or writing from a different address than they ordered with, is common and needs a question rather than a guess. age_days and is_open tell a live order from history (a customer’s newest order can be years old); tracking_added_at / tracking_added_today say when the shipping label was made — from the shop’s tracking items when it publishes them, else from the first time Routario saw the number, and empty when that cannot be known. On the label day the parcel is usually still with the shop. Read-only towards the shop — it never changes anything there; it only records its own first sighting of a tracking number.

Whenever the answer depends on a real order: was I charged, what did I actually buy, which of my orders is this about, has the shop marked it complete, and — when the shop records them — who is carrying the parcel and under what tracking number. Put it before the drafting step so the draft is written from the order rather than around it.

Not for ‘where is my parcel’ when carrier and tracking_number come back empty. They are filled only when the shop records them, and an empty carrier means the parcel has no label yet — not that it shipped. An order marked complete only means the shop closed it, not that anything was scanned or delivered, so answering a tracking question from status alone produces a confident wrong reply; hand those to a human. When the two fields ARE filled, answer from them. Not for stock or price questions about a product nobody has ordered yet — that’s Check WooCommerce stock. Not for changing an order: this package has no write path at all, by design. And don’t use it to fish for a customer’s history when the ticket doesn’t need it — it returns personal data, so read it when the question requires it.

Configured per use: order_id, email, open_statuses.

  • found
  • order_id
  • number
  • status
  • paid
  • created
  • completed
  • modified
  • total
  • currency
  • line_items
  • shipping_country
  • shipping_methods
  • customer_name
  • email
  • carrier
  • tracking_number
  • age_days
  • is_open
  • tracking_added_at
  • tracking_added_today
  • tracking_added_source
  • other_orders
  • error

the woocommerce integration


Auto-generated from the skill registry (load_skills()). Do not edit by hand.