Sales channel under price rule configuration using Admin API

Topic summary

A developer is attempting to create price rules and discounts programmatically via Shopify’s Admin API but encounters a limitation: discounts created through the API only work on the Shopify web channel, not on other sales channels.

Key Issue:

  • The REST Admin API’s PriceRule resource lacks a sales channel field
  • Manual configuration allows selecting specific sales channels, but this isn’t possible via the API
  • The developer wants discounts to be usable across multiple sales channels

Official Response:
A Shopify representative explained that sales channels are apps, and exposing installed app information through a public API isn’t feasible. As a result:

  • Any price rule or discount created via API will only apply to the Online Store
  • No sales channel configuration is available through the API

Developer Request:
The original poster suggests there should at least be an option to allow all sales channels by default or through some configuration, even if specific channel selection isn’t possible.

Status: The discussion remains unresolved with no workaround or alternative solution provided.

Summarized with AI on November 25. AI used: claude-sonnet-4-5-20250929.

Hey, I am using my internal service to create price rule and discounts automatically on events basis in the shopify using the admin API. However I am not able to use created discounts on any other sales channel apart from shopify web.

https://shopify.dev/api/admin-rest/2022-10/resources/pricerule

There is no sales channel selected under price rule configuration, I want to allow specific channels to use created discount codes but I am not able to configure the same from the admin rest endpoint. Please let us know how can we configure price rules to allow specific sales channel apart from manual configuration.

Hi @sroshan106 !

Because Sales Channels are also just apps and because being able to see what apps a merchant has installed is not something that we would surface through a public API, there is no Sales Channel field for the PriceRule resource. Any discount or pricerule made through the API will be for Online store only.

Hey @mikerowave

Thanks for your reply,I agree with you that we should not expose other apps information, however I think there should be option to atleast allow all sales channel by default or some configuration if possible.