Shopify Actions
Connect a Shopify store so your agent can search your catalog and look up order status in chat.
Connect a Shopify store to your agent and it can answer product questions from your live catalog and look up an order's status during a conversation. This is separate from putting the chat widget on your storefront — see Shopify embed for that.
Connect Your Store First
Both actions need a connected store.
- Go to your agent's Actions tab
- Open Integrations and find the Shopify card
- Enter your store domain in the form
store-name.myshopify.com - Complete Shopify's consent screen
The card then shows the connection state and lets you Reconnect or Disconnect. If the connection needs attention, an amber banner appears with a reconnect prompt.
The connection is per agent. Each agent connects its own store, so an agent that should answer for a different store gets its own connection rather than sharing one.
What Access Is Requested
At the consent screen, Agentkit requests exactly two read scopes:
| Scope | Used for |
|---|---|
read_products | Searching your catalog |
read_orders | Looking up an order's status |
No write scopes are requested. The connection also uses Shopify's default offline token — the request deliberately omits the per-user grant option — so the agent keeps working after the person who connected the store signs out.
These are the scopes the current implementation asks for. Shopify decides separately what data an app is allowed to receive: some customer and order fields are protected, and being granted read_orders does not by itself guarantee every field is returned.
The Two Actions
Each action is added and configured on its own under Actions.
Search products
Lets the agent search the connected store's catalog when a visitor asks about products, pricing, or availability. It can narrow results by query, an optional maximum price, and a result limit.
Search results include only active products published to your Online Store. Availability comes from Shopify's variant saleability. Results also include up to ten available variant options with prices and checkout links when Shopify supplies them. Opening a checkout link preloads one unit of that variant; the shopper reviews and pays in Shopify. These links do not support products that require a selling plan.
The default "when to use" instruction is "Use when the user wants to find products, compare prices, or check whether an item is available." Edit it to match how your visitors phrase things.
Get order status
Looks up a single order. The visitor must supply both the order number and the checkout email, and both must match the same order before anything is returned.
That pairing is a privacy measure: an order number alone is easy to guess or overhear, so it is never enough. If the order does not exist, or the email does not match the order, the agent gets the same generic "We could not find an order matching those details." response — it cannot tell which of the two was wrong, and neither can the visitor.
Older orders can produce the same not-found response even when the number and email are correct: Agentkit requests Shopify's standard read_orders scope, which covers the store's recent orders (roughly the last 60 days), not the separately approved full order history. If historical lookups matter to your store, expect visitors with older orders to be directed to your support channel instead.
The default "when to use" instruction is "Use when the user asks for an order status or tracking details and can provide the order number and checkout email."
Two Gates to Enable an Action
Both must be true before an action can be switched on:
- A connected store - without one, the enable toggle shows an inline notice linking to Actions → Integrations
- A paid plan - the same requirement as Custom API, Web Search, Read Document Links, and the booking actions
You can still create, edit, and save either action while it is disabled, with neither prerequisite in place. The gates only apply to turning it on.
Troubleshooting
OAuth completed, but order lookups return nothing. Check the order number format your store uses and confirm the email you are testing with is the checkout email on that order. Then verify the app's eligibility for protected customer and order data on the store — access to that data has to be necessary for the app and can be restricted by Shopify. Requesting broader scopes does not change this, and reconnecting does not guarantee approval.
The agent answers from training content instead of the catalog. Sharpen the "when to use" instruction so product, price, and availability questions clearly route to the search action.
The card shows a reconnect warning. The stored authorization is no longer usable. Click Reconnect and complete the consent screen again. Reconnecting restores the connection but not the actions: when the stored authorization fails, both Shopify actions are switched off automatically, and the consent screen does not switch them back on. After reconnecting, return to Actions and re-enable each action you want active.