automation

Connect OpenClaw to Shopify for PDP rewrites, weekly store digests, and competitive intelligence.

A full setup and execution guide for running OpenClaw as a Shopify AI agent, including Shopify API authentication, token management, HTML report delivery, and three production use cases for store operations.

OpenClaw
Claude Code logoClaude Code
Claude CoWork
Codex logoCodex
Cursor logoCursor
Rewrite PDPsGenerate store digestsAnalyze competitorsshopify


How it works

OpenClaw × Shopify Skill

This skill covers everything needed to connect OpenClaw to Shopify and run the three flagship use cases demonstrated in the Prompt Circle video series.

Read the reference files when you need detail on a specific area:

  • references/auth.md — Shopify API auth, token flow, env setup
  • references/use-cases.md — Full prompts + expected outputs for all 3 demos
  • references/report-server.md — How OpenClaw serves HTML reports via Fly.io


How to use it

1

Download the skill package

Hit the Download button in the sidebar (desktop) or the button pinned at the bottom (mobile). You'll get a ZIP.

2

Add it to your agent

Extract and drop the folder into your agent's plugins directory. For Claude Code / OpenClaw, that's .claude/plugins/ in your project root.

3

Start prompting

Your agent now knows the skill. Describe the task in plain English — it handles the rest.


Developer & Source DetailsRaw SKILL.md and repository files

Skill Definition (SKILL.md)

The raw instruction document consumed by your AI agent.

OpenClaw × Shopify Skill

This skill covers everything needed to connect OpenClaw to Shopify and run the three flagship use cases demonstrated in the Prompt Circle video series.

Read the reference files when you need detail on a specific area:

  • references/auth.md — Shopify API auth, token flow, env setup
  • references/use-cases.md — Full prompts + expected outputs for all 3 demos
  • references/report-server.md — How OpenClaw serves HTML reports via Fly.io

Architecture Overview

You (Slack) → OpenClaw (Fly.io) → Shopify API
                    ↓
             HTML Report Server
             openclaw.fly.dev/reports/
                    ↓
             Link posted back to Slack

OpenClaw receives prompts via Slack, calls the Shopify API with a short-lived access token, generates results, optionally saves an HTML report to its own report server, and posts the link back to the Slack channel.


Quick Start Checklist

Before running any use case, verify these four things are in place.

1. Environment variables set

SHOPIFY_CLIENT_ID=your_client_id
SHOPIFY_CLIENT_SECRET=your_client_secret
SHOPIFY_API_KEY=your_api_key
SHOPIFY_STORE_DOMAIN=yourstore.myshopify.com

2. Access token can be generated Run the auth check in references/auth.md. You should get back a shpat_... token. If you get a 401, your client ID or secret is wrong. If you get a 403, your app is missing the required scopes.

3. Scopes cover your use cases

Use caseRequired scopes
PDP rewriteread_products, write_products
Weekly digestread_orders, read_products, read_inventory
Competitive intelligenceread_products, read_price_rules

4. Report server route exists on Fly.io See references/report-server.md. The /reports/{filename} route must be registered before any use case that generates an HTML output.


Deciding Which Use Case to Run

User says...Run
"rewrite my product description" / "improve my PDP"UC1 — PDP Rewrite
"weekly digest" / "how did my store do" / "Monday briefing"UC2 — Reporting
"check my competitors" / "pricing gaps" / "what should I charge"UC3 — Competitive Intel

For full prompts, expected outputs, and on-camera tips for each use case, read references/use-cases.md.


Token Lifecycle

Shopify access tokens from the client credentials grant expire after 24 hours. OpenClaw must request a fresh token at the start of each session or workflow run. Never cache a token across days. See references/auth.md for the full token request flow and a Python helper function you can drop into your agent code.


Common Errors

ErrorLikely causeFix
401 UnauthorizedWrong client ID or secretCheck .env values against Dev Dashboard
403 ForbiddenMissing API scopeAdd scope in Dev Dashboard, reinstall app
404 on /reports/Route not registeredSee references/report-server.md
Token expiredToken > 24h oldRequest a new token — see references/auth.md
Empty product listWrong store domainConfirm SHOPIFY_STORE_DOMAIN in .env