Outbound Integrations

Outbound integrations handle data flowing from VARIO ERP to the external platform. This is the most common direction for shop integrations, where the ERP is the master system for products, stock, prices, and fulfillment data.

General Pattern

All outbound integrations follow a webhook-driven pattern:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Webhook  │────►│  Queue   │────►│  Fetch   │────►│Transform │────►│  Push    β”‚
β”‚ from ERP β”‚     β”‚  Item    β”‚     β”‚ from ERP β”‚     β”‚ to       β”‚     β”‚ to       β”‚
β”‚          β”‚     β”‚          β”‚     β”‚ (VQL)    β”‚     β”‚ Platform β”‚     β”‚ Platform β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  1. Webhook β€” VARIO ERP notifies your app about a data change

  2. Queue β€” The webhook handler adds a work item to your queue (see Queue-Based Processing)

  3. Fetch β€” The queue processor retrieves the full entity data from the ERP

  4. Transform β€” Your app maps the ERP data to the platform's format

  5. Push β€” Your app sends the data to the platform's API

Fetch-Transform-Push

The core of each outbound integration is the fetch-transform-push cycle:

Fetch

Use VQL queries or the ErpApi to retrieve entity data from the ERP. VQL is preferred for complex queries that need to join related data (descriptions, prices, stock levels across locations).

Transform

Map ERP data structures to what the platform expects. This is where platform-specific logic lives β€” different platforms have different APIs, field names, and data formats.

Push

Call the platform's API to create or update the entity. Handle rate limits, errors, and partial failures according to the platform's requirements.

Transfer Toggles

Each outbound sync type can be independently enabled or disabled per sales channel using transfer toggles. Before processing a queue item, check whether the corresponding toggle is active.

Initial Sync vs. Incremental Sync

Incremental sync (the default) processes only entities that changed since the last sync. Webhooks naturally deliver only changed entities.

Initial sync pushes all entities to the platform. This is needed when:

  • Connecting an existing ERP catalog to a new platform

  • Recovering from a failed sync

  • Periodic reconciliation

For initial sync, query all relevant entities from the ERP and push them to the queue in batches. Be mindful of performance and rate limits.

Last updated

Was this helpful?