How to connect WooCommerce to AskVault
What this integration unlocks
One skill: wc_order_status. Customer asks "where is my order?", the bot looks up the order live from WooCommerce by order ID + email, and replies with status and a tracking link when one is available.
Available on Growth and above. Growth+
Setup
Five minutes end-to-end.
- In AskVault, open Automation > Skills > wc_order_status. Click Enable, then Connect WooCommerce.
- Enter your store URL when prompted (e.g.
https://shop.yourstore.com). - You're redirected to your store's WooCommerce authorization screen. Sign in as an admin or shop manager and approve the request.
- WooCommerce redirects you back to AskVault and provisions the API credentials automatically: there's nothing to copy or paste. Connection shows active, and AskVault auto-subscribes to the order and product webhooks it needs.
Test by asking the bot "where's my order?" with a known test order ID and the matching email. Bot should return live status.
Permissions
WooCommerce's app-authorization handshake only offers a single read/write grant for this flow: there's no narrower read-only option to request. In practice, AskVault only issues GET requests to look up a single order by ID for wc_order_status; it never calls a write endpoint unless you turn on one of the two order-change skills described in Let shoppers fix or cancel an order.
Store URL formatting
Enter your store's root address with the protocol, for example https://shop.acme.co. AskVault keeps only the scheme and domain, so any path you add (such as /shop) is dropped. Stores installed under a subpath of another site are not supported today.
AskVault only connects to stores on the public internet over https://. An http:// address, a private
or internal network address, or a URL containing a username and password is refused when you click
Connect WooCommerce (this check is rolling out).
What the customer sees
When a customer asks "where is my order?":
Sure! Could you share your order number and the email you used at checkout?
Customer responds. Bot looks up the order through the WooCommerce API and replies:
Here's the status of your order #4521:
Status: Shipped Tracking: [tracking-link]
Anything else I can help with?
If the order can't be found (wrong number or different email), the bot offers to escalate to a human.
Verification mode
wc_order_status always requires both the order ID and the email on the order: there's no order-number-only lookup. If the email doesn't match the order's billing email, the bot won't return the order details.
Order help from your store pages (rolling out)
With the AskVault Chat Widget WordPress plugin 1.1.0 or later on a WooCommerce store, the order-received page and each order under My Account > Orders show a Get help with this order button, and your customer order emails carry a link to the same help. The chat opens already knowing which order it's about, so the shopper doesn't have to type an order number and email. The plugin passes the order number and WooCommerce's own order key, and AskVault checks both against the order before it says anything about it. Anywhere else, the bot still asks for the order number and email.
Once this reaches your account, the button and the email link appear on stores running plugin 1.1.0 or
later with the chat widget on the page. Connect WooCommerce (above) so the bot can look the order up. To
hide them, add add_filter( 'askvault_cw_order_help', '__return_false' ); to your theme.
Let shoppers fix or cancel an order (rolling out)
Rolling out Two skills are built but not available yet: they switch on only once AskVault itself checks the shopper's confirmation, which is still rolling out. When available, they will be off until you turn them on (Growth and above). Here is how they will work:
- Fix Shipping Address (WooCommerce) changes the delivery address before the order ships. Same country only: a different country changes tax and shipping, so the bot hands that to your team.
- Cancel & Refund Order (WooCommerce) refunds the full amount to the original payment method, with every item restocked, and the order shows as Refunded. Unpaid and cash-on-delivery orders are cancelled with nothing to refund.
Both work only on an order the shopper has proven is theirs, only before anything has shipped, and only
within 60 minutes of checkout by default. To change the window, open the skill's settings and set
{"window_minutes": 120} (any number of minutes up to 7 days).
Before anything changes, the shopper sees a card that says exactly what will happen (for example, the refund amount and where it goes), and nothing happens until they tap Yes. AskVault re-reads the order at that moment, so an order that shipped in the meantime is left alone. Every change leaves a note on the order.
The bot hands the request to your team instead of acting when the order uses bank transfer or cheque, already has a refund, has started shipping, was created by you rather than by the shopper at checkout, or is past the window. The refund goes through your payment gateway the same way as a refund you issue from the WooCommerce order screen. If the gateway refuses it, the order isn't cancelled or refunded (a private note records the attempt), you get an alert, and the bot tells the shopper a person will finish it.
Multi-store setup
Each WooCommerce store needs its own AskVault workspace and its own connection. Cross-store lookups aren't supported. For a 3-store retailer, you'd have 3 separate AskVault workspaces.
Shipping and tracking
The bot returns a tracking link when one is available. It reads the _wc_shipment_tracking_items order meta field used by the WooCommerce Shipment Tracking plugin (and compatible plugins that write to the same field): no carrier name is currently surfaced, and there's no configurable field-mapping UI. If your tracking plugin writes to a different meta key, the tracking link won't be picked up today.
Limits
- WooCommerce REST API rate limits. Set by your host, if any. Each order question makes a single lookup.
- Order history depth. No hard cap on the WooCommerce side, but very old orders (3+ years) might be archived in some setups.
- API timeout. AskVault times out the lookup at 15 seconds. Slow WordPress hosts may fail the lookup.
Common pitfalls
Connection shows an error after approving. The store's callback POST to AskVault didn't complete (a firewall or security plugin blocking outbound requests is a common cause). Retry the connect flow; if it keeps failing, check your site's outbound-request logs.
"Where's my order" fails to find a match. The email you asked for doesn't match the order's billing email exactly, or the order ID is wrong. Both are required: there's no order-number-only lookup.
Slow lookups. Your WordPress host is slow to answer. AskVault can't speed this up: consider a faster WooCommerce host.
Tracking link missing. Your shipping plugin doesn't write to the _wc_shipment_tracking_items meta field, so AskVault has nothing to read. There's no configurable mapping today.
FAQ
Does this work with WooCommerce subscriptions?
Not today: wc_order_status looks up orders only; there's no subscription-status lookup. Subscription questions escalate to a human.
Can the bot apply a discount code?
Not for WooCommerce coupons. The discount_negotiator skill applies Stripe coupons and requires the Stripe integration, not WooCommerce.
What about WooCommerce extensions like WooSubscriptions or WooMemberships?
Not supported by wc_order_status today: it only reads standard order fields plus the shipment-tracking meta key above. For anything extension-specific, use the custom_webhook skill to call your own logic.
Does the bot work with WooCommerce Multistore?
Each store needs its own connection and its own AskVault workspace. Cross-store lookups aren't supported.
Is there a webhook for real-time order updates?
Yes, and you don't need to configure it. AskVault registers order.created, order.updated, product.created, product.updated, and product.deleted webhooks on your store automatically when you connect.
Related guides
- Order Status (WooCommerce) skill
- Order Status (WISMO) skill for Shopify
- Cart recovery skill
- How to add an AI chatbot to your WordPress site
- Shopify integration setup