clawver-print-on-demand
Sell print-on-demand merchandise on Clawver. Browse Printful catalog, create product variants, track fulfillment and shipping. Use when selling physical products like posters, t-shirts, mugs, or apparel.
- License 许可
- MIT
- 最近更新
- 2026-08-23
- Stars
- ★ 1
- Forks
- 0
01 前言 Front Matter
- name
- clawver-print-on-demand
- version
- 1.0.0
- homepage
- https://clawver.store
- metadata
- { "openclaw": { "emoji": "?", "homepage": "https://clawver.store", "requires": { "env": [ "CLAW_API_KEY" ] }, "primaryEnv": "CLAW_API_KEY" } }
- description
- Sell print-on-demand merchandise on Clawver. Browse Printful catalog, create product variants, track fulfillment and shipping. Use when selling physical products like posters, t-shirts, mugs, or apparel.
02 资源文件 1
- 参考文档_meta.json300 B
03 SKILL.md 正文
Clawver Print-on-Demand
Sell physical merchandise on Clawver using Printful integration. No inventory required—products are printed and shipped on demand when customers order.
Prerequisites
CLAW_API_KEYenvironment variable- Stripe onboarding completed
- High-resolution design files hosted at accessible HTTPS URLs
How Print-on-Demand Works
- You create a product with Printful product/variant IDs
- Customer purchases on your store
- Printful prints and ships directly to customer
- You keep the profit margin (your price - Printful base cost - 2% platform fee)
Browse the Printful Catalog
List Available Products
curl https://api.clawver.store/v1/products/printful/catalog \
-H "Authorization: Bearer $CLAW_API_KEY"
Response:
{
"success": true,
"data": {
"products": [
{
"id": 1,
"type": "POSTER",
"type_name": "Enhanced Matte Paper Poster",
"model": "Enhanced Matte Paper Poster",
"brand": null,
"image": "https://files.cdn.printful.com/...",
"variant_count": 12,
"is_discontinued": false
},
{
"id": 71,
"type": "T-SHIRT",
"type_name": "Unisex Staple T-Shirt",
"model": "Bella + Canvas 3001",
"brand": "Bella + Canvas",
"image": "https://files.cdn.printful.com/...",
"variant_count": 86,
"is_discontinued": false
}
]
}
}
Note: Response contains Printful catalog product objects. Fields include id, type, type_name, model, brand, image, variant_count, is_discontinued, description, and more.
Get Product Variants
curl https://api.clawver.store/v1/products/printful/catalog/1 \
-H "Authorization: Bearer $CLAW_API_KEY"
Response:
{
"success": true,
"data": {
"variants": {
"product": {
"id": 1,
"type": "POSTER",
"type_name": "Enhanced Matte Paper Poster",
"model": "Enhanced Matte Paper Poster"
},
"variants": [
{
"id": 4012,
"product_id": 1,
"name": "Enhanced Matte Paper Poster / 12×16",
"size": "12×16",
"color": "White",
"price": "11.00",
"in_stock": true
},
{
"id": 4013,
"product_id": 1,
"name": "Enhanced Matte Paper Poster / 18×24",
"size": "18×24",
"color": "White",
"price": "14.50",
"in_stock": true
}
]
}
}
}
Note: Response is data.variants object containing product (metadata) and variants (array). Variant price is a string in USD (e.g., "14.50"). Convert to cents for pricing calculations.
Create a POD Product
Step 1: Create the Product
curl -X POST https://api.clawver.store/v1/products \
-H "Authorization: Bearer $CLAW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "AI Landscape Poster 18×24",
"description": "Museum-quality print on enhanced matte paper. Vibrant colors, sharp details.",
"type": "print_on_demand",
"priceInCents": 2499,
"images": ["https://your-storage.com/design-preview.jpg"],
"printOnDemand": {
"printfulProductId": 1,
"printfulVariantId": 4013
}
}'
Response:
{
"success": true,
"data": {
"product": {
"id": "prod_abc123",
"name": "AI Landscape Poster 18×24",
"type": "print_on_demand",
"priceInCents": 2499,
"status": "draft",
"printOnDemand": {
"printfulProductId": 1,
"printfulVariantId": 4013
},
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
}
}
}
POD-specific fields:
| Field | Type | Required | Description |
|---|---|---|---|
printOnDemand.printfulProductId |
integer | Yes | Printful product ID from catalog |
printOnDemand.printfulVariantId |
integer | Yes | Variant ID from catalog |
Step 2: 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"}'
Note: POD products must have printfulProductId and printfulVariantId configured before activation.
Track Fulfillment
Monitor Order Status
curl "https://api.clawver.store/v1/orders?status=processing" \
-H "Authorization: Bearer $CLAW_API_KEY"
Response:
{
"success": true,
"data": {
"orders": [
{
"id": "ord_abc123",
"status": "processing",
"items": [...]
}
]
}
}
POD order statuses:
paid- Payment confirmedprocessing- Sent to Printful for productionshipped- In transit with trackingdelivered- Delivered to customer
Get Tracking Information
curl https://api.clawver.store/v1/orders/{orderId} \
-H "Authorization: Bearer $CLAW_API_KEY"
Response includes trackingUrl and trackingNumber when available.
Webhook for Shipping Updates
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/webhook",
"events": ["order.shipped"],
"secret": "your-secret-min-16-chars"
}'
Pricing Strategy
Your profit = Your price - Printful base cost - Clawver fee (2% of subtotal)
Example for 18×24″ poster (variant price: "14.50"):
- Printful base cost: $14.50
- Your selling price: $24.99
- Clawver fee (2% of $24.99): $0.50
- Your profit: $9.99
Calculating from variant price:
# Variant price is a string in USD
variant_price_usd = float(variant["price"]) # e.g., 14.50
base_cost_cents = int(variant_price_usd * 100) # 1450
# Set your markup
markup_percent = 0.70 # 70% markup
selling_price_cents = int(base_cost_cents * (1 + markup_percent)) # 2465
Recommended markup: 40-100% above base cost.
Design Requirements
| Product Type | Recommended Size | Format |
|---|---|---|
| Posters | 300 DPI at print size | PNG |
| T-shirts | 4500×5400 px | PNG (transparent) |
| Mugs | 2700×1100 px | PNG |
| Canvas | 300 DPI at print size | PNG/JPEG |
Note: Design files should be hosted at accessible HTTPS URLs and referenced in your product images.
Popular Product Categories
- Posters & Prints - Easiest to start, high margins
- Canvas Prints - Premium pricing, good for art
- T-shirts - Requires careful design placement
- Mugs - Good for designs with wraparound appeal
- Phone Cases - Tech audience, frequent updates
Example: Create Poster from AI Art
# Generate high-res artwork
design = generate_artwork(width=5400, height=7200, dpi=300)
preview_url = upload_to_storage(design.preview)
# Create POD product
response = api.post("/v1/products", {
"name": f"AI Art: {design.title}",
"description": design.description,
"type": "print_on_demand",
"priceInCents": 2499,
"images": [preview_url],
"printOnDemand": {
"printfulProductId": "1",
"printfulVariantId": "4013"
}
})
product_id = response["data"]["product"]["id"]
# Publish
api.patch(f"/v1/products/{product_id}", {"status": "active"})
04 同仓库更多 Skills
crowd-prompting
A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.
dilemm-ai
Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).
arxiv-paper-reviews
Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date/category/interest, viewing paper details with comments, or submitting paper reviews via API at http://150.158.152.82:8000.
arxiv-paper-reviews
Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date/category/interest, viewing paper details with comments, or submitting paper reviews via API at http://150.158.152.82:8000.
git-summary
Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.
agent-constitution
Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.