OpenClaw + Shopify
The Complete Guide
How to connect them, everything your agent can do inside your store, the hard limits you need to know, and the automations worth building first.
Step 1 — Choose Your Method
Two Ways to Connect OpenClaw to Shopify
Both methods work. The Composio route is faster to set up and handles authentication for you. The Custom App route gives you more control and keeps everything within your own Shopify account.
Method A — Composio MCP Server
Composio acts as a middleware layer that connects your OpenClaw agent to Shopify's API. Authentication is handled for you — no digging around in Shopify settings for API keys.
- Fastest setup — under 5 minutes
- Handles OAuth and token management
- Works with multiple stores
- Free tier available
Method B — Shopify Custom App (Direct API)
Create a private Custom App directly inside your Shopify Admin. You generate your own API credentials and paste them into your OpenClaw SOUL.md or config. More setup, more control.
- No third-party middleware
- You choose exact API scopes
- Credentials stay in your Shopify account
- Best for privacy-focused setups
Method A
Connect via Composio MCP (Recommended)
Create a free Composio account
Go to composio.dev and sign up for a free account. Composio is the MCP server that bridges OpenClaw and Shopify — it manages the OAuth handshake so you don't have to handle API tokens yourself.
Connect your Shopify store in Composio
Inside Composio, find Shopify in the integrations list and click Connect. You'll be redirected to Shopify to authorize access. Log in to the store you want to connect and approve the permissions.
Copy your Composio MCP server URL
After connecting, Composio gives you a personal MCP server URL. It looks like this:
Add the MCP server to OpenClaw
Open your OpenClaw settings and add the Composio URL as an MCP server. OpenClaw will automatically discover all the Shopify tools Composio exposes and make them available to your agent.
Test the connection
In your OpenClaw task panel, type a simple test prompt:
If you see real order data come back, you're connected.
Method B
Connect via Shopify Custom App (Direct)
Enable custom app development in Shopify
In your Shopify Admin, go to Settings → Apps and sales channels. Click Develop apps, then click Allow custom app development. Confirm when prompted.
Create a new custom app
Click Create an app. Name it something clear like OpenClaw AI and enter your email as the app developer. Click Create app.
Set the API scopes you need
Go to the Configuration tab of your new app and click Configure Admin API scopes. Enable only what you actually need — more on choosing scopes below. A typical OpenClaw setup needs:
Click Save when done.
Install the app and get your API credentials
Go to the API credentials tab and click Install app. Once installed, you'll see your Admin API access token — copy it now, it's only shown once. Also note your API key and API secret key.
Add credentials to your OpenClaw SOUL.md
Add a section to your SOUL.md (or use OpenClaw's config file) with your store credentials:
Install the Shopify skill from the Marketplace
Open the OpenClaw Marketplace and search for Shopify. Install the official Shopify Commerce skill — it gives your agent structured tools for products, orders, customers, and inventory using the credentials you just configured.
Capabilities
What OpenClaw Can and Cannot Do
OpenClaw works through Shopify's Admin API. That means it can do anything the API supports — and nothing the API doesn't. Here's the full breakdown.
Real Examples
10 Automations Worth Building First
These are the highest-ROI things to set up once your connection is live. Most can be running within a day.
📊 Daily Store Morning Briefing
Set up a scheduled workflow that runs every morning at 8 AM. OpenClaw pulls yesterday's total orders, revenue, any unfulfilled orders older than 24 hours, and flags any products that sold out overnight. It sends everything to your email or phone in one clean summary.
Sample prompt to set it up
🔔 Low Inventory Alerts
OpenClaw monitors your inventory levels daily and alerts you the moment any product drops below a threshold you define. No more discovering you're out of stock after customers have already tried to buy.
Sample prompt
✍️ Bulk Product Description Rewriter
Got a catalog of products with thin or poorly written descriptions? OpenClaw can read each listing, rewrite the description to be more compelling and SEO-friendly, and update it in Shopify — all in one pass. Especially useful after importing products from a supplier.
Sample prompt
🏷️ Automatic Order Tagging
Tag incoming orders automatically based on rules — high-value orders get tagged for priority handling, international orders get flagged for customs, repeat customers get recognised. Makes your fulfillment workflow dramatically faster to manage at a glance.
Sample prompt
📤 Weekly Sales Export
OpenClaw pulls the past 7 days of orders every Monday morning and generates a structured CSV or summary — product breakdown, top sellers, revenue by channel. Saves you from clicking through Shopify admin reports every week.
Sample prompt
👤 Customer Segment Builder
Ask OpenClaw to find customers meeting specific criteria — spent over $200, haven't ordered in 90 days, bought a specific product — and build a list with their names and emails. Use it to brief a re-engagement campaign.
Sample prompt
📦 New Product Launch Prep
When you're adding a new product, OpenClaw can draft the full listing for you — title, description, SEO meta title, meta description, and suggested tags — based on a brief you give it. Then create the product draft in Shopify ready for your review.
Sample prompt
🔁 Abandoned Order Follow-Up Drafts
OpenClaw can check for orders stuck in unfulfilled status and draft a customer note or internal task for each one. It won't send emails directly without a connected email skill, but it can prepare everything for your review and one-click sending.
Sample prompt
🎟️ Discount Code Generator
Generate a batch of unique discount codes for a promotion — fixed amount, percentage off, or free shipping — with expiry dates and usage limits, ready to distribute to your list.
Sample prompt
📋 Inventory Audit Report
Once a month, OpenClaw audits your full product catalog — finds products with zero inventory, products with no images, products still in draft that should be live, and any pricing inconsistencies — and sends you a clean report.
Sample prompt
Important
API Rate Limits & Known Gotchas
Shopify enforces API rate limits and OpenClaw has its own request handling quirks. Know these before you build anything that touches your catalog in bulk.
| Limit | Details | Severity |
|---|---|---|
| Shopify REST API — bucket rate | 40 requests per bucket. The bucket refills at 2 requests/second. If OpenClaw fires requests faster than that (e.g. bulk product updates), it will start getting 429 errors. | Watch out |
| Shopify GraphQL API — cost limit | 1,000 cost points per second. Complex queries (fetching orders with all line items) consume more points per request. If your queries are large, you'll hit this faster than you expect. | Watch out |
| OpenClaw 429 cooldown bug | A known issue in OpenClaw means that when it receives a 429 (rate limit) response, it can enter an aggressive cooldown and refuse to retry even after the limit has cleared. If your agent goes quiet during a bulk task, this is likely why. Restarting OpenClaw clears it. | Known bug |
| API token shown once | When you create a Shopify Custom App, your Admin API access token is only displayed once at install time. If you miss it, you have to uninstall and reinstall the app to generate a new one. | Hard limit |
| Bulk operations > 250 products | For stores with large catalogs, bulk operations via the standard Admin API can be slow. Shopify's Bulk Operations API (GraphQL) is more efficient for catalogs over 250 products, but requires more configuration. | Large stores |
| Read-only scopes for sensitive data | Even with write_customers scope, OpenClaw cannot access customer passwords, stored payment methods, or protected PII that Shopify encrypts at rest. | By design |
| Draft orders vs. live orders | OpenClaw can create and manage draft orders (quotes, manual orders). Converting a draft order to a live order with payment collection requires the customer to complete checkout — OpenClaw cannot do this step for them. | By design |
Security
Keeping Your Store Safe
Your Shopify Admin API token has real power over your store. A few simple practices dramatically reduce your risk.
-
Grant only the scopes you actually need. If you're only using OpenClaw for read-only reporting, don't enable write scopes. Each scope you grant is an additional surface area if your credentials are ever leaked. Start minimal and add scopes only when you need them.
-
Never put your API token in a prompt. Your SOUL.md is the right place for credentials — it's local to your machine. Typing your token into a chat prompt means it could appear in logs, conversation history, or memory. If you accidentally paste it in a prompt, regenerate the token immediately.
-
Always review before publishing or sending. Configure OpenClaw to present changes for your approval before pushing them live. A prompt like "show me all the changes before updating anything in Shopify" costs you 30 seconds and protects you from a runaway bulk operation that overwrites your entire catalog.
-
Rotate your API token periodically. Especially if anyone else ever sees your SOUL.md, or if you share screen during a setup. In Shopify Admin, go to your Custom App settings and reinstall the app to generate a fresh token.
-
Use a separate Custom App for OpenClaw. Don't reuse credentials from another integration. A dedicated app with its own token makes it easy to revoke OpenClaw's access in one click without disrupting anything else.
-
Check the audit log after bulk operations. Shopify keeps a log of API activity. After any large automated task, spend a minute in Settings → Plan → Activity log to confirm everything that changed was expected.
Get integration guides in your inbox.
New OpenClaw integrations, tutorials, and tips — no spam, unsubscribe any time.
Unsubscribe any time · Powered by ConvertKit