Hello,
In Shopify Functions, product and order discounts are all calculated in parallel, without the ability to see the results of other discounts’ calculations. As far as I understand, this is for performance reasons: parallel execution prevents slowing down the checkout.
This makes sense from a technical perspective. However, it doesn’t align with many merchants’ expectations, so this leads to a lot of user frustration in use cases like:
- Creating a
WELCOME10
discount that takes 10% off the order. Many expect the 10% discount to be based on the order subtotal after product discounts are applied. - Free gift with purchase offers: Many merchants want to create offers based on the order subtotal after product discounts. For example, “Get a free shirt on an order over $100.”
In both cases, the prices that Shopify Functions reports to apps are before any other discounts are applied, which leads to confusion.
Are there any workarounds possible to allow discounts to depend on other discounts? If not, I totally get it—but do you have any guidance on the best way to communicate this to merchants? We receive many support tickets about this on a regular basis.
Thanks for your help,
Tobe