Skip to main content

Sales Channels vs Integrations

Purpose and Role

  • Sales Channel: Represents a specific point of sale or order source (like an online store, retail location, or marketplace)
  • Integration: Represents the connection to an external system (like Shopify, Amazon, or a custom API)

Relationship

  • A sales channel can be connected to an integration, but it doesn't have to be
  • One integration can be connected to multiple sales channels
  • The relationship is managed through the integration_id field in the sales channel

Configuration

Each sales channel has its own configuration for:

  • Routing strategy
  • Auto-fulfillment
  • Custom packing slips
  • Default channel status

Data Flow

Integrations are responsible for:

  • Importing sales channels from external systems
  • Syncing data between systems
  • Managing the connection details

Sales channels are responsible for:

  • Defining how orders from that source should be handled
  • Setting business rules for that specific channel
  • Managing channel-specific configurations

Example Scenario

Integration (Shopify)
├── Sales Channel 1 (Online Store)
│ └── Configuration: local routing, auto-fulfill
└── Sales Channel 2 (Mobile App)
└── Configuration: external routing, manual fulfillment

Benefits

This separation allows for:

  • Flexible configuration of how orders are handled from different sources
  • Multiple sales channels from the same integration to have different behaviors
  • Independent management of integration connections and sales channel configurations
  • Better organization of business rules and order processing logic