multi-channel-selling
Sync your catalog and inventory across your own site, Amazon, eBay, and wholesale channels to sell everywhere from one system
Best use case
multi-channel-selling is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Sync your catalog and inventory across your own site, Amazon, eBay, and wholesale channels to sell everywhere from one system
Teams using multi-channel-selling should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/multi-channel-selling/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How multi-channel-selling Compares
| Feature / Agent | multi-channel-selling | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Sync your catalog and inventory across your own site, Amazon, eBay, and wholesale channels to sell everywhere from one system
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Multi-Channel Selling
## Overview
Multi-channel selling lets you list products on your own website, Amazon, eBay, Walmart, and wholesale portals simultaneously — with inventory synchronized in real time so you never oversell. The critical rule: one inventory pool, updated immediately when any channel sells or restocks. Purpose-built channel management tools (Linnworks, Sellbrite, Skubana/Extensiv) make this manageable without custom integration work.
## When to Use This Skill
- When expanding beyond your own website to sell on Amazon, eBay, or Walmart Marketplace
- When running both a retail DTC site and a wholesale B2B portal from the same inventory pool
- When selling the same products under different brand names or content across channels
- When overselling on one channel because inventory is not shared in real time
- When building a channel management platform that lets brands manage all their sales channels in one place
## Core Instructions
### Step 1: Determine your platform and choose the right channel management tool
| Platform | Recommended Tool | Why |
|----------|-----------------|-----|
| **Shopify** | Shopify's native Sales Channels + Sellbrite or Linnworks for external marketplaces | Shopify has built-in Facebook, Instagram, Google, and TikTok channels; Sellbrite adds Amazon/eBay/Walmart with inventory sync |
| **WooCommerce** | WP-Lister Pro (Amazon + eBay) or Linnworks | WP-Lister Pro lists products from WooCommerce directly to Amazon/eBay and syncs orders back |
| **BigCommerce** | BigCommerce Channels + Codisto (for Amazon/eBay) | BigCommerce has a native Channel Manager; Codisto extends it to Amazon, eBay, and Walmart with real-time sync |
| **Any Platform** | Linnworks or Skubana (Extensiv) as a central OMS | These tools sit above all channels and act as the single source of inventory truth for high-volume multi-channel operations |
### Step 2: Set up your primary store as the inventory master
Before connecting any channels, ensure your primary store has:
- Accurate stock levels for all SKUs
- Product dimensions and weights entered (required for marketplace listings)
- HS codes if selling internationally
- UPC/GTIN barcodes on all products (required for Amazon and Walmart listings)
#### Shopify
1. Go to **Settings → Sales channels** — Shopify lists all available channels
2. Add **Facebook & Instagram** (free, by Meta) to sync products to your Facebook Shop and Instagram Shopping
3. Add **Google & YouTube** (free, by Google) to sync products to Google Shopping
4. For Amazon: install **Codisto** or **Sellbrite** from the Shopify App Store — these handle the Amazon SP-API integration
#### WooCommerce
1. Your WooCommerce store is the inventory master
2. Install **WP-Lister Pro for Amazon** and/or **WP-Lister Pro for eBay** from wpla.net
3. WP-Lister reads your WooCommerce products and creates Amazon/eBay listings from them
4. Orders from Amazon/eBay are imported back to WooCommerce automatically
#### BigCommerce
1. Go to **Channel Manager** in BigCommerce admin (available on all plans)
2. Connect Google Shopping, Facebook, Instagram via the native channel connectors
3. For Amazon and eBay: install **Codisto** from the BigCommerce App Marketplace — it's the recommended Amazon/eBay integration for BigCommerce
### Step 3: Connect marketplace channels
#### Amazon
Amazon requires a Professional Seller account ($39.99/month) and approved product categories. You'll also need GTINs (UPCs or ASINs) for every listing.
**Via Shopify + Sellbrite:**
1. Install **Sellbrite** from the Shopify App Store
2. Connect your Amazon Seller Central account in Sellbrite → Channels → Add Channel → Amazon
3. Sellbrite imports your existing Amazon ASINs if you already have listings, or you can create new listings from your Shopify products
4. Enable inventory sync: Sellbrite pushes your Shopify inventory quantity to Amazon in real time (within minutes of a sale on either channel)
5. Amazon orders import into Sellbrite and sync to Shopify as new orders automatically
**Via WooCommerce + WP-Lister:**
1. Connect your Amazon Seller Central account in WP-Lister Pro → Amazon → Settings
2. Map your WooCommerce products to ASINs (match by UPC/GTIN or search Amazon's catalog)
3. WP-Lister syncs inventory from WooCommerce to Amazon and imports Amazon orders to WooCommerce
#### eBay
**Via Shopify + Sellbrite:**
1. In Sellbrite, go to Channels → Add Channel → eBay
2. Connect your eBay Seller account via OAuth
3. Map Shopify products to eBay listing templates; Sellbrite handles category requirements and eBay-specific fields
4. Inventory syncs both ways in near real time
**Via WooCommerce + WP-Lister:**
1. Same setup as Amazon — connect your eBay account in WP-Lister Pro → eBay → Settings
2. Create listing templates in WP-Lister to map WooCommerce product data to eBay category requirements
#### Walmart Marketplace
**Via Shopify + Sellbrite:**
1. Walmart Marketplace requires an application and approval (apply at marketplace.walmart.com)
2. Once approved: connect Walmart in Sellbrite → Channels → Add Channel → Walmart
3. Sellbrite handles Walmart's specific listing requirements (requires GTIN, specific image dimensions)
**Via BigCommerce + Codisto:**
1. Apply for Walmart Marketplace approval separately
2. Once approved: connect Walmart in Codisto → Channels → Walmart
3. Codisto syncs products and inventory automatically
### Step 4: Configure inventory allocation per channel
When one channel sells out, you want to prevent other channels from showing stock you don't have. Most channel management tools handle this — configure buffer quantities per channel.
**In Sellbrite:**
1. Go to Sellbrite → Channels → [Channel] → Inventory Settings
2. Set "Channel Buffer": e.g., keep 5 units in reserve so Shopify always has stock even if Amazon buys the rest
3. Enable "Stop selling when inventory = 0" to prevent oversells
**In Linnworks:**
1. Linnworks → Settings → Stock Management → Configure per-channel stock allocation
2. Set safety stock levels per channel to prevent one channel from consuming all inventory
**In Codisto (BigCommerce):**
1. Codisto → Inventory → Configure "Available stock formula": e.g., `BigCommerce stock - 3` for Amazon (holds 3 units back for other channels)
### Step 5: Handle orders from all channels
Every channel order should flow into your central system and trigger fulfillment from the same process.
**Shopify with Sellbrite:**
- Amazon and eBay orders import to Sellbrite and sync to Shopify as regular orders
- Fulfill in Shopify normally — ShipStation or Shopify Shipping handles label creation
- Sellbrite pushes tracking numbers back to Amazon/eBay automatically (required within 2 business days for Amazon)
**WooCommerce with WP-Lister:**
- Amazon and eBay orders import to WooCommerce as regular orders
- Fulfill in WooCommerce (or ShipStation); tracking numbers sync back to the marketplace automatically
**Linnworks (any platform):**
- All orders from all channels appear in Linnworks → Orders in one view
- Create pick lists and shipping labels in Linnworks
- Linnworks pushes fulfillment confirmation and tracking to each channel automatically
#### Custom / Headless — cross-channel order ingestion
```typescript
// Normalize an order from any marketplace into a common format
interface NormalizedMarketplaceOrder {
channelName: string; // 'amazon', 'ebay', 'walmart', 'shopify'
channelOrderId: string; // the marketplace's order ID
lines: {
channelSku: string;
masterSku: string; // your internal SKU
quantity: number;
unitPriceCents: number;
}[];
shippingAddress: Address;
customerEmail: string;
}
async function ingestMarketplaceOrder(order: NormalizedMarketplaceOrder): Promise<void> {
// Idempotency: skip if already imported
const existing = await db.orders.findByChannelOrderId(order.channelName, order.channelOrderId);
if (existing) return;
await db.transaction(async tx => {
// Create the order in your system
const createdOrder = await tx.orders.insert({
channel: order.channelName,
channel_order_id: order.channelOrderId,
status: 'awaiting_fulfillment',
shipping_address: order.shippingAddress,
customer_email: order.customerEmail,
});
// Reserve inventory for each line
for (const line of order.lines) {
await tx.orderLines.insert({
order_id: createdOrder.id,
sku: line.masterSku,
quantity: line.quantity,
unit_price_cents: line.unitPriceCents,
});
// Decrement inventory immediately
await tx.raw(
'UPDATE inventory SET reserved = reserved + ? WHERE sku = ? AND (quantity_on_hand - reserved) >= ?',
[line.quantity, line.masterSku, line.quantity]
);
}
});
}
```
### Step 6: Monitor cross-channel performance
Track per-channel metrics monthly to understand your channel economics:
| Metric | Where to find it |
|--------|-----------------|
| Revenue per channel | Sellbrite/Linnworks Reports → Sales by Channel |
| Sell-through rate per channel | Compare starting inventory to units sold per period |
| Inventory sync lag (stale listings) | Check your channel tool's "last synced" timestamp — anything over 30 minutes needs investigation |
| Return rate per channel | Amazon has its own return dashboard; WooCommerce/Shopify show returns by source channel tag |
## Best Practices
- **Never maintain separate stock counts per channel** — one pool, updated immediately after every sale on any channel; stale inventory leads to oversells
- **Use channel-specific SKU mappings** — Amazon uses ASINs, eBay uses item IDs, your store uses your internal SKU; maintain a mapping table rather than exposing your internal SKUs to marketplaces
- **Set safety stock buffers per channel** — allocate a reserve so one channel can't sell out your entire inventory before the sync propagates to other channels
- **Test with a single product before scaling** — connect one product to Amazon, verify the listing, place a test order, and confirm inventory syncs before connecting your entire catalog
- **Log all channel sync failures with retry** — marketplace API calls fail intermittently; use your channel management tool's retry logic and review the failure log weekly
## Common Pitfalls
| Problem | Solution |
|---------|----------|
| Oversell when two channels receive orders simultaneously | Use atomic inventory reservation with a WHERE clause checking available qty; Sellbrite/Linnworks handle this; for custom builds use database-level atomic updates |
| Amazon listing goes inactive after a price change | Amazon may require a price change notification or your listing could violate their pricing policies; check the Amazon Seller Central notification inbox immediately when listings go inactive |
| Duplicate order imports when webhook fires twice | Add a unique constraint on (channel_name, channel_order_id) in your orders table and use INSERT ... ON CONFLICT DO NOTHING |
| Tracking number not pushed back to marketplace | Amazon requires tracking within 2 business days or seller performance metrics drop; verify your channel tool's automatic fulfillment confirmation is enabled |
## Related Skills
- @order-management-system
- @vendor-management
- @b2b-commerce
- @dropshipping-integration
- @marketplace-buildingRelated Skills
magento-multi-store
Configure multiple websites and store views in Magento with shared or scoped catalogs, separate URL structures, and store-specific settings
multi-currency
Let international shoppers browse and pay in their local currency with automatic detection, live exchange rates, and locale-specific price formatting
wishlist-save-for-later
Let shoppers save products to a wishlist, share it with friends, and get notified when saved items come back in stock or drop in price
storefront-theming
Build a themeable storefront with design tokens and CSS custom properties that supports white-labeling, multi-brand variants, and dark mode
search-autocomplete
Speed up product discovery with instant search suggestions, fuzzy typo matching, and category-aware results powered by Algolia or Elasticsearch
responsive-storefront
Build a mobile-first storefront with thumb-friendly navigation, sticky add-to-cart buttons, and touch-optimized components for high mobile conversion
recently-viewed-products
Show shoppers the products they recently browsed using browser storage so they can easily pick up where they left off on your store
quick-view-modal
Let shoppers preview product details and add items to cart from the listing page without navigating away, reducing friction in the shopping flow
product-page-design
Design high-converting product detail pages with image galleries, variant selectors, social proof, and clear calls-to-action that drive add-to-cart
product-comparison
Let shoppers select multiple products and compare them side-by-side in a table with highlighted differences to help them make the right buying decision
mega-menu-builder
Build a rich navigation mega menu with product images, category highlights, featured banners, and keyboard-accessible dropdowns for large catalogs
image-zoom-360
Boost product confidence with high-res image zoom, 360-degree spin views, and inline video so shoppers can examine products closely before buying