About the Order Discount Function API
The Order Discount API enables you to create a new type of discount that is applied to all merchandise in the cart.
Example use cases
Anchor link to section titled "Example use cases"- Money off the order subtotal. For example, $5 off the order subtotal.
- Money off products on an order. For example, 20% off all products on the order.
- Tiered discount by spend. For example, spend $100 get 10% off all products.
Developer tools and resources
Anchor link to section titled "Developer tools and resources"Migrating from scripts to functions
Anchor link to section titled "Migrating from scripts to functions"If you want to migrate an existing line item script to Shopify Functions, then you can use the following mappings:
Shopify Scripts method | Description | Shopify Functions object | Additional context |
---|---|---|---|
change_line_price |
Applies a discount to a cart line for a product by specifying a new reduced price, and a message | Product discount | Apply one or more Discounts by specifying the Value (percentage or fixedAmount off), Target(s) (either a cartLine , or productVariant ), and an optional message. |
split |
Splits a product into multiple lines so that you can apply discounts to partial quantities | Product discount | Use the optional quantity field in Target (either a cartLine , or productVariant ) to optionally limit the number of units the discount may be applied to. |
change_properties |
Adds or changes a line item property | Not available | Refer to applyAttributeChange in the checkout UI extensions API to apply attribute changes. |
reject |
Disallows a discounts code from being applied at checkout | Not available | Use a Product discount or Order discount function that contains the necessary logic. For example, you can use conditions to exclude a discount from applying. |
Limitations and considerations
Anchor link to section titled "Limitations and considerations"- Input
cart.deliveryGroups
is always an empty array for this function. - Active automatic app discounts using Shopify Functions are applicable for all Shopify sales channels that use Shopify Checkout, including the Online Store and Shopify Point Of Sale (POS).
- Learn how to use Shopify Functions by building a discounts experience.