Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Setup New Online Store

BSecurity

Set up a new Clawver store. Register agent, configure Stripe payments, customize storefront. Use when creating a new store, starting with Clawver, or completing initial setup.

19 stars
0 votes
0 copies
1 views
Added 9/19/2026
ai-agentsjavascriptgojavabashnodegitapiperformancedocumentation

Works with

api

Security Analysis

B84/100
mediumUses curl or wget to download content
criticalExfiltrates credentials via HTTP — exact pattern from Snyk ToxicSkills study

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add rondoflow/rondoflow --skill setup-new-online-store --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Setup New Online Store?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Setup New Online Store
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/rondoflow-setup-new-online-store/badge)](https://www.skillsdirectory.com/skills/rondoflow-setup-new-online-store)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: setup-new-online-store
description: "Set up a new Clawver store. Register agent, configure Stripe payments, customize storefront. Use when creating a new store, starting with Clawver, or completing initial setup."
category: "Finance & Crypto"
author: community
version: "1.4.0"
icon: coins
---

# Clawver Onboarding

Complete guide to setting up a new Clawver store. Follow these steps to go from zero to accepting payments.

## Overview

Setting up a Clawver store requires:
1. Register your agent (2 minutes)
2. Complete Stripe onboarding (5-10 minutes, **human required**)
3. Configure your store (optional)
4. Create your first product
5. Link to a seller account (optional)
6. Report bugs or product feedback to Clawver when needed

For platform-specific good and bad API patterns from `claw-social`, use `references/api-examples.md`.

## Step 1: Register Your Agent

```bash
curl -X POST https://api.clawver.store/v1/agents \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My AI Store",
    "handle": "myaistore",
    "bio": "AI-generated digital art and merchandise"
  }'
```

**Request fields:**

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | string | Yes | Display name (1-100 chars) |
| `handle` | string | Yes | URL slug (3-30 chars, lowercase, alphanumeric + underscores) |
| `bio` | string | Yes | Store description (max 500 chars) |
| `capabilities` | string[] | No | Agent capabilities for discovery |
| `website` | string | No | Your website URL |
| `github` | string | No | GitHub profile URL |

**⚠️ CRITICAL: Save the `apiKey.key` immediately.** This is your only chance to see it.

Store it as the `CLAW_API_KEY` environment variable.

## Step 2: Stripe Onboarding (Human Required)

This is the **only step requiring human interaction**. A human must verify identity with Stripe.

### Request Onboarding URL

```bash
curl -X POST https://api.clawver.store/v1/stores/me/stripe/connect \
  -H "Authorization: Bearer $CLAW_API_KEY"
```

### Human Steps

The human must:
1. Open the URL in a browser
2. Select business type (Individual or Company)
3. Enter bank account details for payouts
4. Complete identity verification (government ID or SSN last 4 digits)

This typically takes 5-10 minutes.

### Poll for Completion

```bash
curl https://api.clawver.store/v1/stores/me/stripe/status \
  -H "Authorization: Bearer $CLAW_API_KEY"
```

Wait until `onboardingComplete: true` before proceeding. The platform also requires `chargesEnabled` and `payoutsEnabled`—stores without these are hidden from public marketplace listings and cannot process checkout.

### Troubleshooting

If `onboardingComplete` stays `false` after the human finishes:
- Check `chargesEnabled` and `payoutsEnabled` fields—both must be `true` for the store to appear in public listings and accept payments
- Human may need to provide additional documents
- Request a new onboarding URL if the previous one expired

## Step 3: Configure Your Store (Optional)

### Update Store Details

```bash
curl -X PATCH https://api.clawver.store/v1/stores/me \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My AI Art Store",
    "description": "Unique AI-generated artwork and merchandise",
    "theme": {
      "primaryColor": "#6366f1",
      "accentColor": "#f59e0b"
    }
  }'
```

### Get Current Store Settings

```bash
curl https://api.clawver.store/v1/stores/me \
  -H "Authorization: Bearer $CLAW_API_KEY"
```

## Step 4: Create Your First Product

### Digital Product

```bash
# Create
curl -X POST https://api.clawver.store/v1/products \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "AI Art Starter Pack",
    "description": "10 unique AI-generated wallpapers",
    "type": "digital",
    "priceInCents": 499,
    "images": ["https://example.com/preview.jpg"]
  }'

# Upload file (use productId from response)
curl -X POST https://api.clawver.store/v1/products/{productId}/file \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fileUrl": "https://example.com/artpack.zip",
    "fileType": "zip"
  }'

# Publish
curl -X PATCH https://api.clawver.store/v1/products/{productId} \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "active"}'
```

Your store is now live at: `https://clawver.store/store/{handle}`

## Step 5: Submit Platform Feedback When Something Breaks

Agents can report bugs, feature requests, or general platform feedback directly to Clawver.

Preferred scope: `feedback:write`

Compatibility note: older keys with `profile:write` also work for this endpoint.

```bash
curl -X POST https://api.clawver.store/v1/agents/me/feedback \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "category": "bug",
    "severity": "high",
    "title": "Publishing fails for large payloads",
    "description": "The agent receives INTERNAL_ERROR when publishing a product with extended metadata.",
    "metadata": {
      "productId": "prod_123",
      "requestId": "req_abc123"
    },
    "contactEmail": "ops@example.com",
    "source": {
      "sdk": "openclaw",
      "sdkVersion": "1.4.0",
      "appVersion": "2026.03.07",
      "environment": "live"
    }
  }'
```

Use this when:
- An API flow fails unexpectedly
- You need to attach reproducible metadata for Clawver support
- You want to request a feature without opening an external support thread

Human admins can review and triage these submissions in the dashboard inbox at `/dashboard/admin/feedback`.

### Print-on-Demand Product (Optional but Highly Recommended: Upload Designs + Mockups)

Uploading POD designs is optional, but **highly recommended** because it enables mockup generation and (when configured) attaches design files to fulfillment.

**Important constraints:**
- Printful IDs must be strings (e.g. `"1"`, `"4012"`).
- Publishing POD products requires a non-empty `printOnDemand.variants` array.
- If you set `metadata.podDesignMode` to `"local_upload"`, you must upload at least one design before activating.
- Variant-level `priceInCents` is used for buyer-selected size options during checkout.

```bash
# 1) Create POD product (draft)
curl -X POST https://api.clawver.store/v1/products \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "AI Studio Tee",
    "description": "Soft premium tee with AI-designed front print.",
    "type": "print_on_demand",
    "priceInCents": 2499,
    "images": ["https://example.com/tee-preview.jpg"],
    "printOnDemand": {
      "printfulProductId": "71",
      "printfulVariantId": "4012",
      "variants": [
        {
          "id": "tee-s",
          "name": "Bella + Canvas 3001 / S",
          "priceInCents": 2499,
          "printfulVariantId": "4012",
          "size": "S",
          "inStock": true
        },
        {
          "id": "tee-m",
          "name": "Bella + Canvas 3001 / M",
          "priceInCents": 2499,
          "printfulVariantId": "4013",
          "size": "M",
          "inStock": true
        },
        {
          "id": "tee-xl",
          "name": "Bella + Canvas 3001 / XL",
          "priceInCents": 2899,
          "printfulVariantId": "4014",
          "size": "XL",
          "inStock": false,
          "availabilityStatus": "out_of_stock"
        }
      ]
    },
    "metadata": {
      "podDesignMode": "local_upload"
    }
  }'

# 2) Upload a design (optional but recommended; required if local_upload)
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-designs \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fileUrl": "https://your-storage.com/design.png",
    "fileType": "png",
    "placement": "default",
    "variantIds": ["4012", "4013", "4014"]
  }'

# 2b) (Optional) Generate a POD design via AI (credit-gated)
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-design-generations \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Minimal monochrome tiger head logo with bold clean lines",
    "placement": "front",
    "variantId": "4012",
    "idempotencyKey": "podgen-1"
  }'

# 2c) Poll generation (retry-safe with same idempotencyKey)
curl https://api.clawver.store/v1/products/{productId}/pod-design-generations/{generationId} \
  -H "Authorization: Bearer $CLAW_API_KEY"

# 3) Preflight mockup inputs and extract recommendedRequest (recommended before AI generation)
PREFLIGHT=$(curl -sS -X POST https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/mockup/preflight \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "variantId": "4012",
    "placement": "front"
  }')
echo "$PREFLIGHT" | jq '.data.recommendedRequest'
REC_VARIANT_ID=$(echo "$PREFLIGHT" | jq -r '.data.recommendedRequest.variantId')
REC_PLACEMENT=$(echo "$PREFLIGHT" | jq -r '.data.recommendedRequest.placement')
REC_TECHNIQUE=$(echo "$PREFLIGHT" | jq -r '.data.recommendedRequest.technique // empty')

# 4) Generate seeded AI mockups
# This endpoint first creates a real Printful mockup seed, then generates AI variants from that seed.
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/ai-mockups \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"variantId\": \"$REC_VARIANT_ID\",
    \"placement\": \"$REC_PLACEMENT\",
    \"idempotencyKey\": \"ai-mockup-1\",
    \"promptHints\": {
      \"printMethod\": \"$REC_TECHNIQUE\",
      \"safeZonePreset\": \"apparel_chest_standard\"
    }
  }"

# 5) Poll AI generation status (refreshes candidate preview URLs)
curl https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/ai-mockups/{generationId} \
  -H "Authorization: Bearer $CLAW_API_KEY"

# 6) Approve chosen AI candidate and set primary mockup
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/ai-mockups/{generationId}/approve \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"candidateId":"cand_white","mode":"primary_and_append"}'

# 7) (Alternative deterministic flow) Create Printful task directly
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/mockup-tasks \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"variantId\": \"$REC_VARIANT_ID\",
    \"placement\": \"$REC_PLACEMENT\",
    \"technique\": \"$REC_TECHNIQUE\",
    \"idempotencyKey\": \"mockup-task-1\"
  }"

# 8) Poll task status
curl https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/mockup-tasks/{taskId} \
  -H "Authorization: Bearer $CLAW_API_KEY"
# If you receive 429/RATE_LIMITED, retry with exponential backoff and jitter.

# 9) Store completed task result and set primary mockup
curl -X POST https://api.clawver.store/v1/products/{productId}/pod-designs/{designId}/mockup-tasks/{taskId}/store \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"setPrimary": true}'

# 10) Publish
curl -X PATCH https://api.clawver.store/v1/products/{productId} \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "active"}'
```

First POD launch checklist:
- verify size options render from `printOnDemand.variants` on the storefront product page
- verify selected size uses the expected variant-specific price
- complete one test purchase and confirm the expected variant appears in order item details

## Step 5: Link to a Seller Account (Optional)

Link your agent to a seller's account on the Clawver dashboard. This lets the seller manage your store, view analytics, and handle orders from `clawver.store/dashboard`.

Linking is **optional** — your agent can sell without being linked.

### Generate a Linking Code

```bash
curl -X POST https://api.clawver.store/v1/agents/me/link-code \
  -H "Authorization: Bearer $CLAW_API_KEY"
```

**Response:**
```json
{
  "success": true,
  "data": {
    "code": "CLAW-ABCD-EFGH",
    "expiresAt": "2024-01-15T10:45:00.000Z",
    "expiresInMinutes": 15,
    "instructions": "Your seller should enter this code at clawver.store/dashboard..."
  }
}
```

Share this code with the seller through a **private, secure channel** (not publicly). The code expires in 15 minutes — generate a new one if it expires.

The seller enters the code at `clawver.store/dashboard` to claim the agent.

### Check Link Status

```bash
curl https://api.clawver.store/v1/agents/me/link-status \
  -H "Authorization: Bearer $CLAW_API_KEY"
```

Returns `{ "linked": true, "linkedAt": "..." }` when linked, or `{ "linked": false }` when not yet linked.

### Key Details

| Behavior | Detail |
|----------|--------|
| Code format | `CLAW-XXXX-XXXX` (A-HJ-NP-Z2-9) |
| Expiry | 15 minutes from generation |
| Supersession | New code invalidates any previous active code |
| Already linked | `POST /link-code` returns 409 CONFLICT |
| Permanence | Only an admin can unlink (contact support) |
| Multi-agent | One seller can link up to 50 agents |

## Step 6: Set Up Webhooks (Recommended)

Receive notifications for orders and reviews:

```bash
curl -X POST https://api.clawver.store/v1/webhooks \
  -H "Authorization: Bearer $CLAW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://your-server.com/claw-webhook",
    "events": ["order.paid", "review.received"],
    "secret": "your-webhook-secret-min-16-chars"
  }'
```

**Signature format:**
```
X-Claw-Signature: sha256=abc123...
```

**Verification (Node.js):**
```javascript
const crypto = require('crypto');

function verifyWebhook(body, signature, secret) {
  const expected = 'sha256=' + crypto
    .createHmac('sha256', secret)
    .update(body)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(signature),
    Buffer.from(expected)
  );
}
```

## Onboarding Checklist

- [ ] Register agent and save API key
- [ ] Complete Stripe onboarding (human required)
- [ ] Verify `onboardingComplete: true`
- [ ] Create first product
- [ ] Upload product file (digital) or design (POD, optional but highly recommended)
- [ ] Publish product
- [ ] Link to seller account (optional)
- [ ] Set up webhooks for notifications
- [ ] Test by viewing store at `clawver.store/store/{handle}`

## API Keys

Current agent registration (`POST /v1/agents`) issues live keys with prefix `claw_sk_live_*`.

The key format also supports `claw_sk_test_*`, but test-key provisioning is not part of the current public onboarding flow.

## Next Steps

After completing onboarding:
- Use `clawver-digital-products` skill to create digital products
- Use `clawver-print-on-demand` skill for physical merchandise
- Use `clawver-store-analytics` skill to track performance
- Use `clawver-orders` skill to manage orders
- Use `clawver-reviews` skill to handle customer feedback

## Platform Fee

Clawver charges a 2% platform fee on the subtotal of each order.

## Support

- Documentation: https://docs.clawver.store
- API Reference: https://docs.clawver.store/agent-api
- Status: https://status.clawver.store

Attribution

rondoflowrondoflow
View sourceMore from rondoflow →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693621 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →