Free OpenClaw skill · No signup · v1.0.0

Free OpenClaw Skill for Shopify Stores: Support and Cart Recovery Agent (Download)

A working OpenClaw skill for Shopify Plus and Advanced stores. Owns customer support triage, abandoned cart recovery sequences, review request orchestration, and post-purchase upsell, all wired into Klaviyo, Gorgias, and Shopify Flow.

Built and maintained by Adhiraj Hangal, OpenClaw Consult. Code I wrote runs inside OpenClaw's source, merged by the project's creator.

Free OpenClaw skill for Shopify stores

14 KB file. Free for any use. Drop it into your OpenClaw setup and your agent knows your business in 60 seconds.

v1.0.0

We email you a copy plus the install notes. One email, no list, no spam.

What this skill does for your Shopify stores

  • Triages Gorgias / Re:amaze / Zendesk tickets by intent (refund, shipping, sizing, exchange, complaint) and drafts the response.
  • Reads abandoned cart events from Shopify Flow and orchestrates Klaviyo or Postscript sequences keyed to product price, customer LTV, and cart contents.
  • Sends review requests at the optimal post-delivery window per product category, routes responses through Yotpo, Okendo, or Junip.
  • Detects refund risk early from support sentiment, surfaces it to the operator with a one-click win-back offer.
  • Logs everything to a single source-of-truth memory so support, retention, and reviews share context across the customer lifecycle.

What's inside this OpenClaw skill

The full file you download, indexed below for search engines and for operators who want to read before they install.

---
name: shopify-support-and-cart-recovery
description: Support triage, abandoned cart recovery, and review request orchestration for Shopify stores. Integrates with Klaviyo, Postscript, Gorgias, Re:amaze, Yotpo, Okendo, Junip, Shopify Flow.
version: 1.0.0
author: OpenClaw Consult (Adhiraj Hangal)
license: MIT
url: https://openclawconsult.com/skills/shopify-stores
---

# OpenClaw Skill: Shopify Support and Cart Recovery

## Overview

This skill turns the OpenClaw agent into the cross-channel orchestration layer
for a Shopify store. It owns customer support triage in Gorgias / Re:amaze /
Zendesk, abandoned cart recovery via Klaviyo or Postscript, and review request
timing through Yotpo, Okendo, or Junip. The single source of truth is the
customer memory shared across all three workflows.

Designed for Shopify Basic, Advanced, and Plus. Some workflows lean on Shopify
Flow and Shopify Functions when Plus is detected. On lower plans, the
workflows fall back to direct API polling.

## What this skill does

1. Triages Gorgias / Re:amaze / Zendesk tickets and drafts replies
2. Detects refund risk early from support sentiment and surfaces it to the operator
3. Reads Shopify Flow abandoned cart events and orchestrates Klaviyo or Postscript sequences keyed to cart contents and customer LTV
4. Sends review requests at category-specific post-delivery windows
5. Bridges support, retention, and reviews around one shared customer memory
6. Logs every customer interaction across channels for the operator's daily standup

## Triggers

```yaml
triggers:
  - type: heartbeat
    schedule: "0 8 * * *"           # Daily 8am
    action: morning_inbox_triage

  - type: heartbeat
    schedule: "0/15 * * * *"        # Every 15 minutes
    action: poll_helpdesk_for_new_tickets

  - type: on_event
    event: shopify.checkout_abandoned
    action: enter_abandoned_cart_sequence

  - type: on_event
    event: shopify.fulfillment_delivered
    action: schedule_review_request

  - type: on_event
    event: helpdesk.ticket_created
    action: triage_and_draft_reply

  - type: on_event
    event: shopify.refund_created
    action: log_refund_to_memory_and_pause_klaviyo_flows
```

## Workflow: support triage

When a new ticket lands in Gorgias / Re:amaze / Zendesk, the agent:

1. Classifies intent: order status, shipping change, sizing, refund, exchange, complaint, wholesale inquiry, PR inquiry
2. Pulls the customer's full history from Shopify (order count, LTV, last contact)
3. Checks for known patterns (same SKU complaint repeating, address-change after fulfillment, etc.)
4. Drafts a reply keyed to intent + customer LTV
5. Routes to the operator for approval (or autonomous send if the intent is on the approved-templates list)
6. Logs sentiment to memory; flags refund risk before the customer asks

The skill defaults to handling order-status, shipping-window, and sizing autonomously. Refunds, chargebacks, complaints, wholesale, PR all route to a human.

## Workflow: abandoned cart recovery

Shopify Flow fires `checkout_abandoned` to OpenClaw. The agent:

1. Inspects cart contents and total value
2. Looks up customer history (returning customer? VIP? recent refund?)
3. Picks the Klaviyo or Postscript sequence to enter based on segmentation rules in the config
4. Schedules the messages: SMS at 30 min if Postscript subscribed, email at 1 hour via Klaviyo, second email at 24 hours, third at 72 hours
5. Pauses any of those sends if the customer opens a support ticket or hits a do-not-disturb signal
6. Reports recovery rate in the weekly digest

The default segmentation: high-LTV abandoners get SMS + email + a personal Slack ping to the operator. New-customer abandoners get email-only. Recent-refund customers get no cart recovery.

## Workflow: review request orchestration

When Shopify fulfillment is marked delivered, the agent waits a category-specific window then requests a review via Yotpo, Okendo, or Junip.

Default windows:

```yaml
review_windows:
  apparel: 7d
  footwear: 14d
  skincare: 21d
  supplements: 28d
  food_beverage: 5d
  electronics: 14d
  furniture: 14d
  big_ticket_over_500: 14d
  default: 10d
```

Editable in the config block. The agent will not request a review from a customer with an open support ticket, or from a customer who issued a refund in the last 30 days.

## Workflow: cross-channel customer memory

The skill maintains a single customer memory shared across support, retention, and reviews. Every channel reads and writes the same memory keys, so:

- A customer asking about sizing in Gorgias gets paused from their abandoned cart Klaviyo flow until the sizing question is resolved
- A customer who refunded last week does not get a review request this week
- A high-LTV customer who tickets in with a complaint gets a personal Slack ping to the operator instead of an auto-reply

## Memory keys

```yaml
memory:
  - key: customer.profile[{customer_id}]
    description: Customer LTV, segment, opt-in status, last contact
    schema: { ltv: number, segment: string, sms_opt_in: bool, email_opt_in: bool, last_contact: datetime }

  - key: customer.support_state[{customer_id}]
    description: Active support thread status
    values: [none, open_low, open_mid, open_high, refund_pending, escalated]

  - key: customer.retention_state[{customer_id}]
    description: Active retention flow context
    schema: { active_flow: string, paused_until: datetime, last_message_sent: datetime }

  - key: customer.review_state[{customer_id}]
    description: Pending and completed review requests
    schema: { last_purchase: datetime, review_requested: bool, review_submitted: bool, review_blocked_reason: string }

  - key: store.daily_metrics
    description: Daily roll-up of tickets, recoveries, reviews
```

## Message templates

```yaml
templates:
  support_order_status:
    body: |
      Hi {customer_first_name},

      Order {order_number} shipped on {ship_date} and is in transit. Latest
      scan: {latest_carrier_scan}. Expected delivery: {expected_delivery}.

      Tracking link: {tracking_url}

      Reach back if you need anything else.

      {brand_name} Support

  support_sizing_repeat_complaint:
    body: |
      Hi {customer_first_name},

      Thanks for the note on the {product_name}. I noticed a few customers
      have flagged similar concerns this week, so we are looking into it on
      the product side. In the meantime, here is what I can offer:

      1. Exchange to a half-size up at no charge
      2. Refund if you prefer not to keep trying

      Just let me know which works for you.

      {brand_name} Support

  abandoned_cart_high_ltv_sms:
    channel: sms
    body: |
      Hey {customer_first_name}, it's {brand_first_name}. Saw {cart_items_short}
      sitting in your cart. Want me to hold it for you, or grab one of these
      open spots before they sell? {cart_link}

  abandoned_cart_email_24h:
    channel: email
    subject: "Your cart is still there"
    body: |
      Hi {customer_first_name},

      You left a few things behind:

      {cart_items_list}

      Quick recap on why these are worth the click:

      {cart_items_value_props}

      {cart_link}

  review_request_apparel:
    channel: yotpo_or_okendo
    subject: "How is your new {product_name} treating you?"
    body: |
      Hi {customer_first_name},

      It has been about a week since your {product_name} landed. Now that you
      have worn it a few times, we would love to hear how it is holding up.

      Even a one-line review helps the next customer make the call.

      {review_link}

      Thanks for being a {brand_name} customer.

  vip_complaint_slack:
    channel: slack
    body: |
      VIP COMPLAINT
      Customer: {customer_first_name} {customer_last_name}
      LTV: {customer_ltv}
      Issue: {ticket_summary}
      Suggested response: {drafted_response}
      Ticket link: {ticket_url}
```

## Required integrations

| Integration              | Purpose                                        | Read | Write |
|--------------------------|------------------------------------------------|------|-------|
| Shopify Admin GraphQL    | Order, customer, fulfillment data              | yes  | optional |
| Shopify Flow             | Event triggers (Plus only)                     | yes  | yes   |
| Klaviyo                  | Email subscriber data + flow control           | yes  | yes   |
| Postscript               | SMS subscriber data + send control             | yes  | yes   |
| Gorgias / Re:amaze / Zendesk | Ticket read + draft reply                 | yes  | optional |
| Yotpo / Okendo / Junip   | Review request orchestration                   | yes  | yes   |
| Slack                    | Operator alerts for VIP and exceptions         | no   | yes   |
| OpenClaw Memory          | Cross-channel customer memory                  | yes  | yes   |
| OpenClaw Heartbeat       | Scheduled triage and review windows            | yes  | yes   |

Write-back to the helpdesk starts disabled. Operator-approves-every-reply is the first two weeks. Flip individual templates to autonomous as they prove out.

## Compliance notes

The skill respects subscriber opt-in status from Klaviyo and Postscript before
sending. All outbound copy includes the unsubscribe footer pulled from your
provider's compliance settings. The skill does not send marketing SMS or email
to customers not opted into that channel. Operators in regulated regions
(EU GDPR, CA CCPA) should review the config block flag for cookie-and-consent
checks before enabling abandoned cart recovery on EU traffic.

## Configuration

```yaml
config:
  brand_name: "Your Brand"
  brand_voice: "warm-direct"          # or "playful", "luxury", "no-nonsense"
  approval_mode: operator_approves_all   # or "autonomous_after_2_weeks"
  ticket_intent_categories: [order_status, shipping, sizing, refund, exchange, complaint, wholesale, pr]
  autonomous_template_allowlist:
    - support_order_status
    - support_sizing_standard
  vip_ltv_threshold: 500
  cart_recovery_segments:
    - segment: high_ltv_returning
      cadence: [sms_30min, email_1h, email_24h, email_72h]
    - segment: new_customer
      cadence: [email_1h, email_24h]
    - segment: recent_refund
      cadence: []
  review_windows:
    apparel: 7d
    footwear: 14d
    skincare: 21d
    supplements: 28d
    food_beverage: 5d
    default: 10d
```

## Quick install

```bash
mkdir -p ~/.claude/skills
mv shopify-stores.md ~/.claude/skills/shopify-support-and-cart-recovery.md
# Edit the config block to match your store
```

Launch OpenClaw and the skill is live. Trigger it manually with `triage support inbox`
or `run cart recovery` or wait for Heartbeat to fire on the configured cadence.

## Want it wired to your stack?

The free SKILL.md is the starting point. If you want this plugged into your
specific Shopify Plus app stack, your brand voice, your escalation rules, and
the operator's daily ritual, OpenClaw Consult ships a fixed-price 14-day build.
https://www.adhirajhangal.com/work

Install in 60 seconds

  1. 1

    Drop the file into your OpenClaw skills directory

    Save the downloaded shopify-stores.md as ~/.claude/skills/shopify-support-and-cart-recovery.md (or your project-level .claude/skills/). OpenClaw picks up new skill files on next agent launch.

  2. 2

    Wire in your Shopify, Klaviyo, and helpdesk credentials

    Edit the integrations block to add your Shopify Admin GraphQL token, Klaviyo or Postscript API key, and Gorgias or Re:amaze API key. Read access is enough for the support and cart workflows; write access on the helpdesk lets the agent reply directly when you flip it to autonomous.

  3. 3

    Start in approval mode, validate, then move to autonomous

    Run for two weeks with the operator approving every outbound reply. The skill defaults route anything that touches a refund, a chargeback, or a complaint to a human. After two weeks of validation, flip the templates that consistently perform to autonomous and the operator gets notified only on exceptions.

Example conversation

You

Triage the support inbox and tell me what needs human attention right now.

Agent

Inbox triage complete. 47 tickets reviewed in the last 4 hours. 38 fell into auto-resolvable categories with drafted replies queued for your approval: 19 order status checks, 8 sizing questions on the Bridger boot, 6 shipping address changes (within Shopify's edit window), 5 review requests for orders delivered 5+ days ago. 9 tickets need your eyes: 2 chargebacks just opened (Mastercard), 3 customers asking for exchanges past the 30-day window, 1 sizing complaint that has appeared 4 times this week on the same SKU (possible product-side issue), 1 wholesale inquiry from a retailer in Denver, 2 PR inquiries from boutiques in LA. Top priority is the SKU-level sizing pattern; drafted a Slack summary for your product team.

Founder-led · 14 days

Want this support and cart recovery agent live in your Shopify store in 14 days?

Adhiraj ships OpenClaw AI agents into real businesses. Short discovery to map it to Klaviyo, Gorgias, and Shopify Flow, build in 14 days, then optional ongoing support so your OpenClaw system keeps working.

Build it with me

Common questions

Does this work for Shopify Basic or Advanced, or only Plus?

+

It works on Basic, Advanced, and Plus. Some workflows (Shopify Flow advanced triggers, Shopify Functions) are Plus-only and the skill detects which plan you are on and adjusts. On Basic, the abandoned cart workflow runs off Klaviyo events directly rather than Flow events.

Which helpdesks are supported out of the box?

+

Gorgias, Re:amaze, Zendesk, Kustomer, and Front have read and write integration prompts in the SKILL.md. For others (HelpScout, Front, Crisp), the skill ships read-only by default and you wire the write side via Zapier or a small webhook.

How does this play with my existing Klaviyo flows?

+

The skill is designed to coexist with your Klaviyo flows, not replace them. Klaviyo handles email send and segmentation. The skill orchestrates higher-judgment workflows: which Klaviyo flow to enter based on cart contents and customer LTV, when to pause a flow because the customer is now in a refund conversation, when to add a customer to a VIP segment based on support sentiment.

Does it write back to Shopify?

+

Optional. Write-back uses the Shopify Admin GraphQL API and starts disabled. Enable it once you trust the agent for low-risk operations like updating tags, adding internal order notes, and applying customer-segment tags. Order modifications stay in the operator's hands.

What about TCPA and CAN-SPAM compliance?

+

The skill respects opt-in status from your Klaviyo and Postscript subscriber data. It will not draft SMS or email outbound to a customer not opted in for that channel. All outbound copy includes the unsubscribe footer pulled from your Klaviyo or Postscript account.

How does it know when to send a review request?

+

The skill keys on Shopify fulfillment events, then waits a category-specific window before requesting the review. Apparel: 7 days post-delivery. Skincare and supplements: 21-28 days post-delivery (so the customer has used the product). Furniture and big-ticket: 14 days post-delivery. The windows are editable in the config block.

Can I modify this skill?

+

Yes. MIT licensed. Edit the templates, the cadences, the segmentation rules, the integration hooks. Most stores fork it within the first 30 days to match their brand voice.

What does this cost to run?

+

Token cost depends on your ticket volume. A representative 8-figure DTC brand running 800-1,500 tickets per month sees expected monthly token spend in the $80-$200 range with OpenClaw's default model selection. The skill batches triage to minimize per-ticket inference.

How does this compare to Gorgias Auto-Reply or Klaviyo AI features?

+

Gorgias Auto-Reply and Klaviyo AI are excellent at the single-channel automation each was built for. The OpenClaw skill is cross-channel: it reads Gorgias intent, decides whether Klaviyo should pause a flow, decides whether Yotpo should hold a review request, and ties it all to the same customer memory. The right setup is usually Gorgias Auto-Reply + Klaviyo AI + the OpenClaw skill on top for the cross-tool judgment calls.

Want it built into your stack on a 14-day clock?

+

The free SKILL.md is the starting point. If you want the skill wired into your specific Shopify Plus app stack, your specific brand voice, and your specific support escalation rules, OpenClaw Consult ships a fixed-price 14-day build at openclawconsult.com/hire.

Want the full implementation playbook?

Read the deep-dive guide for Shopify stores

The playbook covers workflows, software integrations, compliance, ROI math, and a four-week rollout plan. The skill file above is a working slice of that build.

Read the Shopify stores playbook →

Related free skills

Want it wired to your stack?

The free skill is the starting point. If you want it plugged into your actual software, on a fixed-price two-week clock, with the founder writing every line, this is the door.