---
version: 1.0.0
name: firestarter-seller
description: |
  Onboard as a seller on the Firestarter commerce network. Use when the user says "list my products", "sell on Firestarter", "connect my store", "onboard my catalog", or wants to make their inventory available to AI agent buyers.
allowed-tools:
  - Bash(curl:*)
  - Bash(npx:*)
metadata:
  author: firestarter
  url: firestarter.network
user-invocable: true
---

# Firestarter Seller Onboarding

Get your products in front of every AI agent on the Firestarter commerce network. One onboarding flow - your catalog becomes discoverable, purchasable, and fulfillable by autonomous buyer agents.

## What you need

1. A Firestarter account (sign up at https://firestarter.network/auth)
2. Your store URL or product catalog

## Step 1: Register as a seller

```bash
curl -X POST https://api.firestarter.network/seller/register \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"business_name": "YOUR_BUSINESS", "domain": "yourstore.com"}'
```

This creates your seller profile and initiates Stripe Connect for payouts.

## Step 2: Detect the store platform

Before connecting, identify what platform the store runs on. Check in this order:

### Detection checklist

1. **Check for MCP/OpenAPI** - Fetch `https://STORE_URL/.well-known/mcp.json` and `https://STORE_URL/.well-known/openapi.json`. If either exists, use it directly. No credentials needed.

2. **Check for Shopify** - Fetch `https://STORE_URL/products.json`. If it returns product JSON, this is a Shopify store. Also check page source for `cdn.shopify.com` or `Shopify.theme`. Public `/products.json` requires no authentication.

3. **Check for WooCommerce** - Fetch `https://STORE_URL/wp-json/wc/v3/`. If it returns the WooCommerce REST API root, this is WooCommerce. Also check page source for `woocommerce` or `wp-content/plugins/woocommerce`.

4. **Check for BigCommerce** - Check page source for `bigcommerce.com` in scripts, or `stencil` theme references.

5. **Check for Wix** - Check page source for `wix.com` or `parastorage.com` in script/asset URLs.

6. **Check for Squarespace** - Check page source for `squarespace.com` or `static.squarespace.com`.

7. **Check for TikTok Shop** - Check for `tiktok.com/shop` or `seller.tiktokglobalshop` in URL/source.

8. **Check for Shopee** - Check for `shopee.com` or regional `shopee.` domains.

9. **Check for Lazada** - Check for `lazada.com` or regional `lazada.` domains.

10. **Check for product structured data** - Look for `<script type="application/ld+json">` containing `@type: Product` or `@type: ItemList`. Most e-commerce sites embed this for SEO.

11. **Last resort - crawl** - Use the generic crawl endpoint which extracts products via AI or JSON-LD from the page HTML. Works on any website.

## Step 3: Connect the store

Based on the detected platform, guide the seller to provide the right credentials.

### Shopify (no auth needed for basic catalog)

The public `/products.json` endpoint gives you titles, prices, images, and variants with zero authentication.

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "shopify", "store_url": "https://yourstore.myshopify.com"}'
```

Then sync products:

```bash
curl -X POST https://api.firestarter.network/seller/stores/STORE_ID/sync \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

For full access (inventory levels, variant details, fulfillment), the seller needs an Admin API token:

**Tell the seller:** "For full inventory sync, I need a Shopify Admin API token. Go to your Shopify admin > Settings > Apps and sales channels > Develop apps > Create an app > Configure Admin API scopes (enable read_products, read_inventory) > Install app > Copy the Admin API access token."

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "shopify", "store_url": "https://yourstore.myshopify.com", "credentials": {"admin_token": "shpat_xxxxx"}}'
```

### WooCommerce

**Tell the seller:** "I need your WooCommerce REST API keys. Go to your WordPress admin > WooCommerce > Settings > Advanced > REST API > click 'Add Key'. Set the description to 'Firestarter', permissions to 'Read', and click 'Generate API key'. Copy the Consumer Key and Consumer Secret shown."

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "woocommerce", "store_url": "https://yourstore.com", "credentials": {"consumer_key": "ck_xxxxx", "consumer_secret": "cs_xxxxx"}}'
```

### BigCommerce

**Tell the seller:** "I need your BigCommerce API credentials. Go to your BigCommerce admin > Settings > API > API Accounts > Create API Account. Set name to 'Firestarter', give it read-only access to Products and Orders. Copy the Access Token, Client ID, and Store Hash."

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "bigcommerce", "store_url": "https://yourstore.com", "credentials": {"access_token": "xxxxx", "store_hash": "xxxxx"}}'
```

### Wix

**Tell the seller:** "I need your Wix API key. Go to your Wix dashboard > Developer Tools > API Keys > Generate API Key. Set permissions to include 'Wix Stores - Read Products'. Copy the API Key and your Account ID."

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "wix", "store_url": "https://yourstore.com", "credentials": {"api_key": "xxxxx", "account_id": "xxxxx"}}'
```

### Squarespace

**Tell the seller:** "I need your Squarespace API key. Go to Settings > Developer > API Keys > Generate Key. Copy the key shown."

```bash
curl -X POST https://api.firestarter.network/seller/stores \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform": "squarespace", "store_url": "https://yourstore.com", "credentials": {"api_key": "xxxxx"}}'
```

### TikTok Shop

**Tell the seller:** "I need your TikTok Shop API access token. Go to TikTok Shop Seller Center > Settings > API Management. Copy the access token."

```bash
curl -X POST https://api.firestarter.network/seller/stores/connect/tiktok \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"access_token": "xxxxx", "shop_id": "xxxxx"}'
```

### Shopee

**Tell the seller:** "I need your Shopee shop ID and access token. Go to Shopee Open Platform > My Apps. Copy the shop ID and generate an access token."

```bash
curl -X POST https://api.firestarter.network/seller/stores/connect/shopee \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"shop_id": "xxxxx", "access_token": "xxxxx"}'
```

### Lazada

**Tell the seller:** "I need your Lazada access token. Go to Lazada Open Platform > App Console. Generate an access token."

```bash
curl -X POST https://api.firestarter.network/seller/stores/connect/lazada \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"access_token": "xxxxx"}'
```

### Any website (generic crawl)

For sites without a known platform API, Firestarter can extract products from the page HTML:

```bash
curl -X POST https://api.firestarter.network/seller/stores/connect/crawl \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"store_url": "https://example.com/products"}'
```

This extracts products via JSON-LD structured data or AI-powered crawling. Works on any website with product information.

### Custom site / Structured data

If the site has JSON-LD product data, extract it from the page source and upload directly:

```bash
curl -X POST https://api.firestarter.network/seller/products/bulk \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"products": [{"title": "Widget A", "price": 29.99, "description": "...", "category": "...", "images": ["https://..."]}]}'
```

### Manual entry

If none of the above work, products can be added one at a time:

```bash
curl -X POST https://api.firestarter.network/seller/products/create \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Product Name", "price": 29.99, "description": "...", "category": "Office Supplies"}'
```

## Step 3.5: Verify store ownership

Before products go live, verify you own the store. The fastest method depends on your platform.

**Method 1: Platform credentials (instant, recommended)**

Provide your platform Admin API token. This proves ownership because only store admins can generate these tokens.

```bash
# Shopify
curl -X POST https://api.firestarter.network/seller/stores/STORE_ID/verify-credentials \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"admin_token": "shpat_xxxxx"}'

# WooCommerce
curl -X POST https://api.firestarter.network/seller/stores/STORE_ID/verify-credentials \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"consumer_key": "ck_xxxxx", "consumer_secret": "cs_xxxxx"}'
```

**Method 2: DNS TXT record**

First, get a verification token:
```bash
curl -X POST https://api.firestarter.network/seller/stores/STORE_ID/verify \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

Then add the returned token as a DNS TXT record on your domain. Check verification:
```bash
curl -X POST https://api.firestarter.network/seller/stores/STORE_ID/verify-check \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

**Method 3: File verification**

Upload a file at `yourstore.com/.well-known/firestarter-verify.txt` containing the verification token, then call verify-check.

**Method 4: Meta tag**

Add `<meta name="firestarter-verification" content="TOKEN">` to your homepage, then call verify-check.

**Check verification status:**
```bash
curl https://api.firestarter.network/seller/stores/verification-status \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

## Step 4: Product qualification

After upload, each product is scored for discoverability:

| Check | What it verifies |
|-------|-----------------|
| Has title | Product has a non-empty title |
| Has price | Price is greater than $0 |
| Has image | At least one product image URL |
| Has description | Non-empty description (50+ chars preferred) |
| Valid category | Recognized product category |
| Seller verified | Seller has completed Stripe Connect |

Products that pass all checks are marked **active** and immediately discoverable by buyer agents. Products missing requirements are marked **draft** with notes on what to fix.

## Step 5: Set up payments

To receive money from sales, connect Stripe:

```bash
curl -X POST https://api.firestarter.network/seller/stripe-connect \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

This returns an `onboarding_url`. Open it to complete Stripe Connect Express onboarding. Once connected, payouts happen automatically when orders are delivered.

## Step 6: Monitor sales

Check orders:
```bash
curl https://api.firestarter.network/seller/orders \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

Confirm an order:
```bash
curl -X PUT https://api.firestarter.network/seller/orders/ORDER_ID/confirm \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

Ship an order:
```bash
curl -X POST https://api.firestarter.network/seller/orders/ORDER_ID/ship \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"carrier": "USPS", "tracking_number": "9400111899223..."}'
```

View analytics:
```bash
curl https://api.firestarter.network/seller/analytics \
  -H "Authorization: Bearer $FIRESTARTER_KEY"
```

## Step 7: Register webhooks (optional)

Get real-time notifications when orders come in:

```bash
curl -X POST https://api.firestarter.network/seller/webhooks \
  -H "Authorization: Bearer $FIRESTARTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://yoursite.com/webhook", "events": ["order.created", "order.shipped", "order.delivered", "order.disputed"]}'
```

## Seller API reference

| Endpoint | Method | Description |
|----------|--------|-------------|
| /seller/register | POST | Register as a seller |
| /seller/me | GET | Get seller profile |
| /seller/stores | POST | Connect an e-commerce store |
| /seller/stores/:id/sync | POST | Sync products from connected store |
| /seller/products/create | POST | Add a product manually |
| /seller/products/bulk | POST | Bulk import products (JSON array) |
| /seller/products | GET | List your products |
| /seller/orders | GET | List your orders |
| /seller/orders/:id/confirm | PUT | Confirm a pending order |
| /seller/orders/:id/ship | POST | Mark order shipped with tracking |
| /seller/analytics | GET | View seller analytics |
| /seller/promos | POST | Create promo/discount codes |
| /seller/disputes | GET | View disputes |
| /seller/stripe-connect | POST | Set up Stripe payouts |
| /seller/webhooks | POST | Register webhook notifications |

## Platform fees

Firestarter takes a 3% fee on each transaction. The seller receives 97% of the sale price via Stripe Connect.

## Links

- Seller Dashboard: https://firestarter.network/seller
- Buyer Docs: https://firestarter.network/SKILL.md
- API Docs: https://firestarter.network/docs
- Support: https://firestarter.network/dashboard (tab: Settings)
