Skip to main content

Configure order attribution for sales channel apps

Starting in API version 2026-07, sales channel apps can use order attribution definitions to identify the source that created an order.

Order attribution definitions are useful when your sales channel app needs attribution that is more specific than the app or channel itself. For example, you can attribute orders to a marketplace, region, account, or surface.

Apps that only need default app or channel attribution don’t need to make any changes.

What’s new

Sales channel apps can now:

  • Create channel-based attribution definitions when creating channel connections.
  • Define static attribution sources with the order_attribution_config extension.
  • Create or update attribution definitions with the orderAttributionDefinitionUpsert mutation.
  • Query attribution definitions with the orderAttributionDefinitions query.
  • Delete attribution definitions with the GraphQL Admin API.
  • Pass an attribution definition handle when creating orders with orderCreate.
  • Pass an attribution definition handle through source_name when creating carts with the Storefront API cartCreate mutation or when using cart permalinks.
  • Read resolved attribution details with Order.attribution.

To use order attribution definitions, your app must be a sales channel app with a channel_config extension.

What you need to do

If your app needs attribution that is more specific than app-level or channel-level attribution, create order attribution definitions and pass the definition handle in sourceName when creating carts or orders.

If sourceName doesn’t match an approved order attribution definition, Shopify falls back to app-only attribution.

Use Order.attribution for new attribution reads. Order.channelInformation remains available, but is deprecated.

Was this section helpful?