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.
When to use
Section titled “When to use”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.
When not to use
Section titled “When not to use”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.
Inputs
Section titled “Inputs”Configured per use: order_id, email, open_statuses.
Outputs
Section titled “Outputs”foundorder_idnumberstatuspaidcreatedcompletedmodifiedtotalcurrencyline_itemsshipping_countryshipping_methodscustomer_nameemailcarriertracking_numberage_daysis_opentracking_added_attracking_added_todaytracking_added_sourceother_orderserror
Requires
Section titled “Requires”the woocommerce integration
Auto-generated from the skill registry (load_skills()). Do not edit by hand.