Discount Ninja currently supports 3 checkout modes:
To change the checkout mode, go to Settings > Checkout options
Shopify Functions mode
In Shopify Functions mode, Discount Ninja offers the native checkout experience, handled using the standard checkout by Shopify. This allows optimization for speed and high performance, with no delays at checkout.
Shopify Functions product discounts currently have a number of limitations. The app uses a fallback checkout mode in such cases (see below):
Shopify Functions does not yet support shipping discounts. The app applies shipping discounts when necessary by combining a Shopify shipping discount code with a Shopify Functions checkout.
Shopify does not support the use of Shopify Functions on a custom checkout (i.e. with a custom checkout.liquid).
It cannot apply more than 3 product discounts to a cart at checkout
It cannot handle multiple lines with the same product variant (e.g. BOGO)
It cannot handle orders with more than 100 line items
Fallback modes (used when Shopify functions cannot be used)
Discount Ninja offers 2 fallback modes in the situation where Shopify Functions cannot be applied:
Draft Order mode
In this mode, the checkout is discounted using the Shopify Draft Order API. This fallback method is used when excess free gifts must be removed or when multiple lines with the same product variant are presented in the cart.
Order discount applied using Shopify functions
This is the native checkout experience handled using the standard checkout by Shopify. The combined discount(s) are applied as a single order discount at checkout. The label consists of the prefix followed by CMB and a token (example: DN-CMB-ABCD). The line item discounts displayed at checkout are identical to those shown in the cart.
In 'Shopify functions mode' the app creates a Draft Order to prepare a discounted checkout when the app needs to use Draft Order as a fallback.
You can configure the removal time for Draft Orders.
When using Shopify Markets, we strongly recommend using the Shopify Functions mode, however, for situations when this is not possible, or limited, there are 2 fallback checkout modes for a discounted checkout that is not in the base currency:
Draft Order mode
In 'Draft order' mode, the product price at the checkout is calculated based on the product's price in the shop's base currency, multiplied by the conversion rate.
Fixed product prices defined in Shopify Markets are not used by Shopify in a Draft order mode checkout.
This may result in a different price for your customer in the cart and the checkout.
Discount code mode
We recommend using Discount code mode if you have configured custom pricing in Shopify Markets.
Draft order mode
In Draft order mode Discount Ninja uses the standard APIs provided by Shopify to prepare a discounted checkout. This checkout mode uses draft orders to provide the most flexible checkout experience. The checkout screen provides the clearest overview possible so that customers can easily understand how discounts are applied to the checkout.
Discount code mode
In "Discount code mode" the app creates unique discount codes that are applied automatically at checkout. The discount code combines the benefits of all promotions applied to the cart. This can be useful for customers whose backend systems cannot handle complex orders with custom discounts and instead require orders to use a single standard discount code. The visitor is sent to the standard Shopify checkout, which features a 'Return to cart' button. This mode does not support combining free shipping promotions with other (percentage or fixed amount) promotions. To avoid bypassing the rules of your promotions the app detects situations where the visitor returns to the cart after visiting checkout. When the visitor is no longer eligible for a discount after changing the content of the cart the app will void the discount.
Cannot be combined with Shopify's Automatic discounts
Discount Ninja promotions are not compatible with Shopify 'Automatic discounts' because Shopify automatic discounts cannot be combined with Shopify discount codes. We recommend using Discount Ninja automatic promotions instead.