MyClaw
HomeProductsUse CasesPricingSkillsResourcesCompany
HomeUse CasesPricingSkills
Sign In
Home
ProductsOpenClaw HostingHermes Agent Hosting
Use CasesPricingSkills
ResourcesCompareTutorialLearnBlogUpdatesResourcesCommunity
CompanyAboutSupport
Sign In
MyClaw.ai

Your AI agent, already running.

Product

OpenClaw HostingHermes Agent HostingUse CasesPricingCompareAlibaba Cloud

Resources

BlogUpdatesSkillsModelsSupportCommunityCapybara

Legal

TermsPrivacyCookieGDPRContact

© 2023 Cubo World Inc. All rights reserved.

← Back to Skills
Design & Media
🖼️

Marketplace Catalog Sync

Apply when building catalog or SKU synchronization logic for VTEX marketplace seller connectors. Covers the changenotification endpoint, SKU suggestion lifec…

by vtexv1.0.0
Connecting to VM...
Connecting to VM...
npx clawhub@latest install marketplace-catalog-sync
4.7kStars
3.6kDownloads
1Current Installs
2.8kAll-time Installs
📦
v1.0.0Version
📅
Mar 20, 2026Updated

Requirements

API credential: VTEX_APP_KEYEnvironment variable: VTEX_APP_TOKEN
View Source(ClawHub)

Marketplace Catalog Sync Skill Overview

Marketplace Catalog Sync is a VTEX seller-connector skill that guides correct implementation of the Change Notification + SKU Suggestion flow for pushing product catalog data from an external seller into a VTEX marketplace. It covers the full lifecycle: registering and updating SKUs via the two-segment changenotification/{sellerId}/{sellerSkuId} route, managing the suggestion approval workflow, and keeping prices and inventory synchronized through dedicated notification endpoints. Install this skill to avoid the most common integration mistakes — wrong route shapes, direct Catalog API writes, and fulfillment simulation timeouts — that silently break seller catalog visibility.

How to Use It

Step 1: Run in your terminal or install this skill on MyClaw

npx clawhub@latest install marketplace-catalog-sync
or

Click the Install button at the top of this page for one-click setup

When to Use Marketplace Catalog Sync

Best Fit

  • Building a seller connector that needs to push new SKUs into a VTEX marketplace and handle the suggestion (send → pending → approved/denied) lifecycle.
  • Implementing the Change Notification flow to detect whether a SKU already exists in the marketplace (200 OK) or needs a new suggestion (404 Not Found).
  • Synchronizing price and inventory changes via the /notificator/{sellerId}/changenotification/{sellerSkuId}/price and /inventory endpoints.
  • Implementing the seller-side Fulfillment Simulation endpoint (POST /pvt/orderForms/simulation) that must respond within 2.5 seconds.

When Not to Use

  • You are performing marketplace-side catalog operations such as direct POST /api/catalog/pvt/product or POST /api/catalog/pvt/stockkeepingunit writes — those are not seller-connector flows.
  • You need order fulfillment or invoice handling logic (see the marketplace-fulfillment skill instead).
  • You need rate-limiting patterns in isolation, decoupled from catalog notification flows (see the marketplace-rate-limiting skill instead).

Key Features

Correct Two-Segment Change Notification Routing

Seller connectors must use POST .../changenotification/{sellerId}/{sellerSkuId} — not the single-segment changenotification/{skuId} route, which expects a marketplace VTEX SKU ID. This skill documents the distinction, explains why official docs sometimes conflate the two routes, and provides concrete TypeScript examples for both the 200 (update) and 404 (new suggestion) response paths.

SKU Suggestion Lifecycle Management

New SKUs must go through the suggestion/approval workflow via PUT https://api.vtex.com/{accountName}/suggestions/{sellerId}/{sellerSkuId} — direct Catalog API writes are forbidden for external sellers and will return 403 Forbidden. The skill enforces a status check before any suggestion update, because suggestions can only be modified while in the Pending state; approved or denied suggestions cannot be changed.

Price and Inventory Notification Endpoints

Price and inventory updates are sent via separate POST /notificator/{sellerId}/changenotification/{sellerSkuId}/price and .../inventory endpoints, where the path segment is the seller's SKU ID (not the marketplace VTEX SKU ID). After these notifications, the marketplace calls the seller's Fulfillment Simulation endpoint to retrieve current data.

Fulfillment Simulation with 2.5-Second Deadline

The marketplace calls the seller's POST /pvt/orderForms/simulation endpoint after every price or inventory notification. VTEX waits a maximum of 2.5 seconds for a response; exceeding this limit marks the product unavailable in the storefront. This skill provides a cache-first implementation pattern (in-memory or Redis) so the endpoint responds in under 50 ms.

Rate-Limited Batch Notifications with 429 Handling

Sending bulk Change Notification requests without throttling triggers 429 responses that block the seller's entire API access. This skill provides a batched, concurrency-controlled notification loop with per-batch delays, retry-after header parsing, and exponential backoff on 429 errors.

Authenticated Marketplace Client Setup

Catalog System routes (e.g., changenotification) use the store hostname ({account}.vtexcommercestable.com.br), while SKU Suggestion routes use https://api.vtex.com/{accountName}. Both surfaces authenticate with the same X-VTEX-API-AppKey and X-VTEX-API-AppToken headers. The skill provides a typed SellerConnectorConfig and Axios client factory covering both base URLs.

Use Cases

Initial Catalog Onboarding for a New Seller

A seller is connecting to a VTEX marketplace for the first time and needs to register its entire SKU catalog. The integration calls changenotification/{sellerId}/{sellerSkuId} for each SKU; every 404 triggers a PUT SKU Suggestion, placing each SKU into the marketplace's pending review queue for operator approval.

Ongoing Price and Inventory Synchronization

A seller's warehouse system emits price or stock change events. The connector sends batched price and inventory notifications via the /notificator/ endpoints, and the seller's Fulfillment Simulation endpoint — backed by a pre-warmed cache — responds to marketplace polling requests within the 2.5-second deadline.

Recovering a Stalled SKU Suggestion

An operator needs to update product data on a suggestion that was sent but not yet reviewed. The integration first calls GET /suggestions/{sellerId}/{sellerSkuId} to confirm the suggestion is still in Pending state, then issues a PUT with the corrected data. Suggestions already approved or denied are skipped with a warning.

Bulk Re-Sync After Catalog Update

After a product data migration, hundreds of SKUs need re-notification. The integration uses the batched notification pattern — processing SKUs in groups of five with 200 ms inter-batch delays and 429-aware retry logic — to re-notify the marketplace without triggering rate-limit blocks.

Requirements

  • VTEX App Key and App Token (X-VTEX-API-AppKey / X-VTEX-API-AppToken) with seller-connector permissions on the target marketplace account.
  • Marketplace account name ({marketplaceAccount}) for constructing both the store hostname ({account}.vtexcommercestable.com.br) and the Suggestions API base URL (https://api.vtex.com/{accountName}).
  • Seller ID ({sellerId}) — the seller's account identifier registered on the marketplace.
  • Seller-hosted Fulfillment Simulation endpoint (POST /pvt/orderForms/simulation) reachable by the VTEX marketplace, capable of responding within 2.5 seconds (a pre-warming cache such as in-memory store or Redis is strongly recommended).
  • Node.js / TypeScript runtime — code examples use axios and express; adapt to your HTTP client and framework as needed.
Connecting to VM...
npx clawhub@latest install marketplace-catalog-sync
4.7kStars
3.6kDownloads
1Current Installs
2.8kAll-time Installs
📦
v1.0.0Version
📅
Mar 20, 2026Updated

Requirements

API credential: VTEX_APP_KEYEnvironment variable: VTEX_APP_TOKEN
View Source(ClawHub)

FAQ

Reviews

0 reviews

Log in to write a review

No reviews yet. Be the first to share your experience!