provider-strategy

Implement provider-specific strategy builders for e-commerce and ERP data synchronization.

Updated Mar 1, 2026
One-click install
npx skills add https://github.com/Zoppy-crm/.github --skill provider-strategy
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: provider-strategy
Source: https://github.com/Zoppy-crm/.github/tree/main/skills/backend/provider-strategy
Command: npx skills add https://github.com/Zoppy-crm/.github --skill provider-strategy

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Integrating a new e-commerce or ERP provider requires implementing provider-specific API calls, consistent error handling, and wiring job queuing and processing across multiple layers; this Skill documents a repeatable pattern and checklist to avoid missed steps and fragile integrations.

Core Features & Use Cases

  • Standardized strategy classes: Shows how to extend the appropriate SyncRequestStrategyBase for orders, abandoned carts, customers, and similar domains so provider-specific logic stays isolated.
  • End-to-end wiring checklist: Explains enum updates, queue and job constants, QueueService creation, OrderSyncBuilder dispatching, and QueueProcessor implementation that instantiates the strategy.
  • Error handling guidance: Describes how to build dataNotSynced records, use the unprocessable flag for permanent vs transient failures, and ensure retries/deduplication.
  • Use case: Add a Shopify or Yampi connector that fetches provider orders, maps them to sync requests, reports per-id failures, and enqueues processing with the correct priority and deduplication.

Quick Start

Create a new provider strategy for your-provider by extending the correct SyncRequestStrategyBase, implement build(management, ids?) with try/catch and unprocessable handling, add the provider to the enum, create queue service and processor, and register all entries following the checklist.

Frequently Asked Questions about provider-strategy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new e-commerce provider for order sync in TypeScript?

To add an e-commerce provider for order sync, extend the appropriate SyncRequestStrategyBase class with provider-specific logic, implement the build method with error handling, update provider enums, and wire queue services and processors to dispatch sync requests.

What is the strategy pattern for ERP and e-commerce integrations?

The strategy pattern for ERP and e-commerce integrations isolates provider-specific API logic within standardized strategy classes that extend a base sync request strategy, ensuring consistent data mapping, error handling, and queue processing across multiple connectors like Shopify or VTEX.

How do I handle sync failures and permanent errors in order synchronization?

Handle order synchronization failures by creating dataNotSynced records that report per-id failures, using an unprocessable flag to distinguish permanent errors from transient ones, and configuring queue retries and deduplication to manage transient failures automatically.

Does this integration pattern support abandoned cart and customer data sync?

Yes, the integration pattern supports abandoned cart and customer data sync by extending the appropriate SyncRequestStrategyBase for each domain, allowing you to implement provider-specific logic for fetching and mapping data across orders, carts, and customers.

What's the best way to wire a queue processor for a new provider connector?

The best way to wire a queue processor for a new provider connector is to update queue constants, create a QueueService, implement a QueueProcessor that instantiates the strategy, and register dispatching through the OrderSyncBuilder with correct priority and deduplication.

Why does my provider integration need both a queue service and a strategy class?

A provider integration needs both a queue service and a strategy class because the strategy class isolates provider-specific API calls and data mapping, while the queue service manages job dispatching, processing priority, retries, and deduplication across the synchronization workflow.