Can an order have multiple discount applications?
As far as I understand only a discount code can be applied to any order.
Is that the case for discount applications as well?
What scenarios could lead to multiple applications on a single order?
Solved! Go to the solution
discount_applications are applied on the checkout/order level and as you suspect, a checkout can only have one at a time. You might see multiple discounts on some orders on the line item level, which typically happens through POS (but these are not discount codes). Those will appear on the variant level, not on the top order level.
I think I wasn't very clear earlier sorry.
Let me try to rephrase my question.
There are actually 2 separate questions, although related.
1) Is it ever possible for the order.discount_codes array to have more than 1 element in it?
As far as I know, there can only ever be a single discount code applied to an order. But then why is it an array?
2) Is it ever possible for the order.discount_applications array to have more than 1 element in it?
My understanding is that automatic discounts cannot be combined with a discount code.
But is it possible to have a discount code (type = 'discount_code') or automatic discount (type = 'automatic'), combined with additional discount_applications of type 'manual' or 'script' or other?
I would image it is, otherwise why would discount_applications be an array?
I hope this clarifies the question.
Thanks for clarifying.
discountCodefield in GraphQL was designed to show one code as a string to contrast.
Order.discount_applicationsarray. As an example, if I start an order Shopify POS, manually discount a line item and apply a discount code to the cart, the resulting order will have both a
discount_application. Automatic discounts show up with the type
automatichere too if they are applied alongside types of manual, script, and discount_code.
Let me know if that makes sense.