Shopify integration use cases
1. Order status lookup (WISMO)
"Where is my order?" is one of the most common e-commerce support questions.
How AskVault handles it:
- Customer asks in chat or WhatsApp: "Where is order #12345?"
- The
wismo_order_statusskill fires. - Skill queries Shopify's Order API for the order matching the number or email.
- Bot replies with status and tracking URL.
Example response:
Your order #12345 has shipped. Tracking: [FX-9876543210].
See the wismo_order_status skill.
Setup: connect Shopify via Shopify integration setup, enable the wismo skill under Automation > Skills.
2. In-chat cart concessions (not working yet)
The cart_recovery skill lets the bot offer a policy-approved concession (free shipping, extended returns, or a capped discount) when a visitor is hesitating on their cart during an active chat conversation:
- Visitor expresses hesitation in chat (asks about shipping cost, sizing, returns).
- The bot calls
cart_recoverywith the reason and, optionally, a proposed concession. - AskVault checks the concession against your written policy before offering it: no policy on file means no offer.
This is a same-conversation tool, not an automated outbound campaign: there's no checkout.abandoned webhook wired up and no proactive outreach to visitors who left without chatting. Current limitation: the live Shopify cart lookup this skill depends on is a stub in this build, so it currently returns a configuration error instead of a real cart-based offer: see Shopify setup.
For Stripe-based discounting instead, the discount_negotiator skill applies Stripe coupons within a written policy (requires the Stripe integration).
3. Product Q&A from the catalog
Customers ask product questions before buying: sizing, materials, compatibility, shipping windows.
Once a product reaches AskVault (see below), these fields are indexed:
- Product titles, descriptions, vendor, tags, and variant names/SKUs/prices.
Custom metafields, product images, and customer reviews aren't indexed today: only the fields above.
Connecting Shopify does not import your existing catalog unless Product Recommendations is switched on for your account. Without it there is no initial full catalog sync. What connecting does is subscribe AskVault to Shopify's products/create, products/update and products/delete webhooks, so a product reaches the catalog the first time it is created or edited after you connect. There's no configurable sync-frequency setting either.
Your existing products are indexed from a different path: when AskVault crawls your storefront during onboarding it reads your public product data (structured data and the public store feed). That crawl is what gives you day-one product coverage; the Shopify integration keeps changes flowing after it. To pull one specific product in sooner, edit and save it in Shopify: that fires products/update.
Sample conversation:
Customer: "Does the leather tote come in navy?"
Bot: "Yes, the Madison Leather Tote comes in 3 colors: tan, black, and navy, starting at $128."
The bot cites the exact product URL so the customer can click to buy.
4. Return-policy lookup
Policy lookup. Customer asks "what's your return policy?". Bot answers from your indexed policy page with the specific terms (e.g., "30 days from delivery for unworn items").
Escalation. Anything beyond a policy question, checking eligibility, generating a label, processing the return itself, can go to your team through the escalate_to_human skill, if you turn it on.
Not yet available: automatic return-eligibility checks or return-label generation. The Shopify integration doesn't call a Returns API today. The connection reads orders, customers and products and never changes them. The cart actions in use case 5 below work on the shopper's cart, not on your orders.
5. Catalog search, cart, and order tagging
Available on Growth and above. Each action is off by default; turn it on from the Skills page.
Four actions go beyond answering from indexed text and talk to your store directly:
- Search products. The bot searches your live Shopify catalog and replies with product cards: image, current price, and a link. Because the price comes from the store rather than from a page we crawled earlier, it does not go stale between crawls. If nothing matches, the bot says so rather than inventing a product.
- Get cart. The bot reads what the shopper has in their cart in this conversation, and hands them the checkout link.
- Update cart. The bot adds a variant to the shopper's cart. The bot is instructed to ask the shopper for a yes first; this is not yet enforced by AskVault itself.
- Tag an order. The bot adds tags (for example
return-requested) to an order so your own Shopify flows and filters pick it up. Tagging records a fact; it does not action anything by itself, and re-running the same tag does not tag twice.
What you need to turn each on:
| Action | Requires |
|---|---|
| Search products | Your existing Shopify connection. Nothing extra. |
| Get cart / Update cart | A Storefront API access token on your Shopify connection. Carts live in Shopify's Storefront API, which the admin connection cannot read. Without the token these two actions report a configuration problem: they never claim your cart is empty. |
| Tag an order | Write access to orders. The Shopify connection asks only for read access today, so Shopify refuses order tagging until the connection requests that permission. Leave this action off for now. |
On WhatsApp: native product cards. If you have synced your Shopify catalog to your WhatsApp Business account and put that catalog's id on your AskVault WhatsApp channel, product results are sent as WhatsApp's own product cards, tappable, priced, browsable inside the chat, instead of a list of links. Without a synced catalog id, WhatsApp replies are exactly what they are today. If any product in a result has no matching catalog id we send the text version for the whole result rather than a partial card list, so a shopper is never shown two of four matches and left assuming the other two do not exist.
Not in this release: creating an order, creating an exchange, updating a customer profile or billing address, and sending an account-activation email.
Shopify API version: these actions are built against Shopify API 2026-07.
6. What this integration does not do (yet)
To set expectations correctly, capabilities that aren't built today:
- Automated post-purchase outreach. No delivery-confirmation follow-ups, cross-sell suggestions, or review-request messages triggered automatically after an order ships.
- Return processing. No return-label generation or automated return creation: only policy Q&A and escalation, per above.
- Order creation, exchanges, customer-profile and billing-address edits, activation emails. Not built: see use case 5 for what the bot can write today.
- Proactive cart-abandonment outreach. No
checkout.abandonedwebhook is wired up;cart_recoveryis an in-chat tool the bot can call, not an automated campaign (see use case 2).
If your use case depends on any of these, the custom_webhook skill is the way to bridge to your own Shopify-connected backend today.
Identity verification
Identity verification tells the agent which signed-in customer it is talking to. It does not change the order lookup today: the bot still asks for the order number and the email or phone on the order.
Sample customer journey
End-to-end example for a mid-size apparel store:
- Customer browses product page. Widget shows: "Hi! Ask me about sizing or shipping."
- Customer asks about sizing. Bot answers from the indexed product catalog.
- Customer mentions hesitating on cart in chat. Bot can offer a policy-approved concession via
cart_recovery(subject to its current cart-lookup limitation above). - Customer completes purchase. Order confirmation handles in Shopify.
- 2 days later, customer asks WISMO in chat. Bot pulls live tracking status from Shopify.
- Customer asks about returns. Bot explains your policy and escalates anything beyond a policy question to a human agent.
Across this journey, AskVault handles order status, product Q&A, and return-policy questions directly, and hands off anything that needs a human.
Plan considerations
Use cases by plan tier:
- Free & Starter. No Shopify integration: connecting any integration requires Growth or above.
- Growth. Shopify connection with WISMO order lookup and product Q&A. The cart_recovery skill is listed but not working yet. The recommended starting point. Growth+
- Business. Larger message allowance and discount_negotiator (Stripe-based, separate from Shopify). For higher-volume stores. Business+
- Enterprise. A custom allowance, quoted by sales.
Most e-commerce teams settle on Growth or Business depending on monthly order volume.
Privacy and compliance
What we read from Shopify:
- Order data (number, items, status, tracking, customer email).
- Customer profile (name, email, addresses, order history).
- Product catalog (titles, descriptions, vendor, tags, variants).
What we don't read:
- Payment card details. Never stored or transmitted.
- Customer passwords. Shopify doesn't expose these via API.
GDPR and CCPA compliance follow Shopify's data-handling rules. AskVault is a sub-processor of customer data under your Shopify-customer agreement. See sub-processors.
Planned features (on the roadmap)
Documented for accuracy:
- Subscription product handling. Today, one-time products supported. Recurring subscriptions (via Shopify Subscriptions API) on the roadmap.
- Multi-store inventory. Today, one Shopify store per workspace. Multi-store on the roadmap.
- Pre-order handling. Today, treat as standard orders. Native pre-order status messaging planned.
Common pitfalls
Bot doesn't recognize order numbers. The skill auto-detects 1001, #1001, and similar customer-facing formats: there's no separate format setting to configure. If lookups still fail, confirm the order actually exists on the connected store.
Product Q&A returns outdated or missing info. Usually the product hasn't changed since you connected, so no products/update webhook has ever fired for it, and the crawl-time copy of your storefront is what's being answered from. Reconnecting does not force a full sync: it re-runs OAuth and re-registers the webhooks, nothing more. Two things that do work: edit and save the product in Shopify (fires products/update), or select the product's page in the Knowledge page and click Resync selected so its public product data is re-read (a small change such as a new price can be missed; see why). Running the Web Crawler again only adds pages that aren't indexed yet; it doesn't re-read existing ones.
cart_recovery always returns an error. Expected today: the skill's underlying Shopify cart lookup is a stub in this build (see Shopify setup).
Return requests don't complete automatically. Expected: there's no return/label-generation API call built yet. The bot answers policy questions and escalates the rest to a human.
FAQ
Does this work with Shopify Plus?
Yes. All features available. Shopify Plus gives higher API rate limits, which improves bot response time under heavy load.
Can I use this with headless Shopify (Hydrogen, etc.)?
Yes. The widget embeds anywhere. The Shopify integration uses Shopify's backend API, independent of your storefront framework.
Does it work for cross-border stores with multiple currencies?
Order lookups return status and tracking only, so currency does not come into them. Product answers use whatever prices your crawled pages show.
Can I limit the bot to specific product categories?
Partly. Exclude those product pages from your crawl, or set their source's audience to internal, which hides them on every public channel. There is no per-customer visibility, so you cannot show them only to wholesale customers.
Does cart_recovery send proactive messages on WhatsApp or email?
No: it's a same-conversation tool the bot calls in chat, not an outbound messaging campaign on any channel.
Related guides
- Shopify integration setup
- WISMO order status skill
- Cart recovery skill
- Discount negotiator skill
- Embed on Shopify
Product recommendations in chat
Once your catalog is in, your agent can answer product, price, stock and "what do you recommend" questions with real products: cards carrying the price, availability and a link straight to the product page on the web widget, Block Kit cards in Slack, and the same details as text on WhatsApp and Telegram.
Everything it shows comes from the synced catalog. If a visitor asks for something you do not stock, the agent says so rather than inventing a product or a price. Check Knowledge › Products to see exactly which products the agent can see.
Once Product Recommendations is switched on for your account, connecting Shopify also starts an initial catalog sync in the background. It imports up to 2,000 of your existing products, so the agent can recommend them straight away; edits after that arrive through the product webhooks as before.
This is the recommend_product skill. It is off by
default: turn on Product Recommendations on the Skills page for the workspace
you want it on. (In preview: if it is not in that list, it is not switched on for your
account yet.)