Description: I am reporting a discrepancy in how Shopify handles Discount entitlements when a scoped collection is deleted.
Observed Behavior: In previous iterations of the Shopify platform deleting a collection associated with a discount would often result in the discount defaulting to a “Global” state (All Products), to signify store-wide application discount.
Currently, when using the GraphQL Discount API (discountCodeBasicCreate), if a collection assigned to a discount is deleted:
-
The discount remains active but becomes invalid for all products.
-
The
customerGets.itemsobject remains typed to the deleted collection ID rather than falling back toall: true. -
This creates a “broken” discount state where the merchant believes a sale is active, but no products qualify at checkout.
Impact: This causes significant confusion for merchants using my app. When they delete a collection, they expect the “Specific Collection” restriction to be lifted, not for the discount to stop working entirely for the rest of the store.
Request: Can you confirm if this change from “implicit fallback” to “explicit null entitlement” is the intended permanent behavior for the GraphQL implementation? If so, are there plans to provide a “fallback” flag in the API to prevent orphaned discounts?