Skip to content
Try Free →

The wc_order_status skill (WooCommerce)

Last updated: · 4 min read

What the skill does

Same pattern as the Shopify wismo_order_status skill but for WooCommerce stores. Customer asks "where is my order?", bot looks up live data, replies with tracking details. No human involved.

For e-commerce stores running WordPress + WooCommerce, this skill plus the WooCommerce integration takes order-status questions off your team's plate.

The skill is on Growth and above. Growth+

How a typical interaction looks

Customer asks "where's my order?". Bot:

  1. Asks for the order number and the email used at checkout.
  2. Customer provides both.
  3. Bot calls WooCommerce REST API live.
  4. Replies with the order status and tracking link.

How long it takes depends mostly on how quickly your WordPress host answers.

Customer identification

Order status and tracking links are only handed over to someone who can prove the order is theirs. The rule is fixed: there is no setting that relaxes it:

  • The order has an email on file. The customer must give that email. A different email, or none, gets a polite refusal and no order details.
  • The order has no email on file: normal for phone, WhatsApp and cash-on-delivery orders. An email cannot prove these orders, and looking them up by phone number alone is not available yet. Today the WooCommerce bot needs the order number and an email for every lookup.
  • Neither on file. The bot refuses and hands off; there is nothing it can verify against.

Knowing the order number alone is never enough. WooCommerce order numbers are sequential, so anyone could guess a neighbour's.

What's returned

A typical bot response:

Here's the status of your order #4521:

Status: Shipped Tracking: [tracking-link]

Anything else I can help with?

The response is fixed to these two fields; line items, prices and shipping address are not returned.

Tracking info from shipping plugins

WooCommerce out of the box stores the order status but no tracking link. Tracking usually comes from shipping plugins:

  • WooCommerce Shipment Tracking (official plugin).
  • AfterShip for WooCommerce.
  • TrackShip.
  • Custom themes that store tracking in order meta.

AskVault auto-detects the most common plugins. For a custom setup, map the tracking-number meta key under Skills > wc_order_status > Tracking Field.

Multi-store setup

Each WooCommerce store needs its own AskVault workspace and integration. Cross-store lookups aren't supported.

For a multi-brand retailer with 3 WooCommerce stores, you'd have 3 AskVault workspaces. Each one's wc_order_status skill is independent.

Order history depth

WooCommerce stores orders indefinitely by default. AskVault can look up any order regardless of age. For stores with archived order tables (some performance setups archive old orders), the lookup might fail for very old orders. Bot offers to escalate to a human.

Limits

  • WooCommerce API rate limits. Most hosts throttle at 10 to 60 requests per minute. AskVault stays well under this.
  • Lookup speed. Depends on your WordPress host; a very slow host can time out.
  • Order privacy. Read-only access. Bot can never modify orders.

Common pitfalls

Bot says "I couldn't find that order". Order number missing the # prefix, typo, or different store. Bot offers to escalate.

Tracking link missing. Your shipping plugin stores tracking in a custom meta key AskVault didn't auto-detect. Configure the field mapping.

Slow responses. WordPress host is slow on REST API calls. Cache product/shipping zones, upgrade your host, or use a CDN.

Wrong currency. Multi-currency plugins sometimes return prices in store base currency rather than customer's local. Configure currency handling under Skills > wc_order_status > Currency.

FAQ

Can the bot cancel an order?

No. Read-only access prevents this by design. Cancellations escalate to a human via the escalate_to_human skill.

Can the bot apply a discount code to an existing order?

No. Read-only. For order-modifying actions, escalate to a human.

Does it work with WooCommerce subscriptions?

Yes for read-only status lookup. The bot can answer "when's my next renewal?" or "what subscription am I on?". For pause/cancel/upgrade actions, escalate.

What about WooCommerce Bookings, Memberships, or Marketplace extensions?

Custom field mapping covers most. For deep extension-specific logic, use the custom_webhook skill to call your custom logic.

How is this different from Shopify's wismo_order_status?

Same skill pattern, different backend. wismo_order_status calls Shopify's Admin API; wc_order_status calls WooCommerce's REST API. Both produce equivalent customer experiences.

Was this page helpful?