Checkout large orders
With the new Checkout extensibility setting, all the price calculation for custom product options is executed on Shopify server infrastructure. This ensures a very fast customer experience and prevents any server downtime affecting the customer not being able to check out.
Limitation
Shopify checkout allows only a limited amount of instructions (time) that can be used in the checkout to calculate a price of the order. For complex products with lots of options, the limit can be reached, and the calculations not completed, which can result in an order with incorrect prices.
Shopify is aware of this limitation and the issue has been reported and discussed by many app developers: https://github.com/Shopify/function-examples/discussions/329
A common app setup can calculate between 50-100 cart items before reaching the limit. When exactly the limit is reached is dependent on the complexity of the product option configuration. You can test adding items to the cart and verify the price updating, once the price total not including the option prices, the limit has been exceeded.
Shopify Plus allows apps to use a more efficient way of updating the product price. Standard product setups can calculate up to 200 items without reaching the limit.
Please note that every other app with the same functionality has this limitation, the limit is from Shopify and not from the app.
Solutions
Below is a list of possible solutions that can be applied to avoid large orders from not being calculated correctly.
Prevent checkout for large orders
Shopify allows to block the checkout when the calculation exceeded the limits to prevent an invalid order from being created:
- Visit your Checkout settings page: https://admin.shopify.com/settings/checkout
Scroll down to the Checkout rules section:
Select the "Cart price add-ons" rule > uncheck the setting > Save.
This will prevent checkout when the limit is reached.
Validate max line items
As the limit of maximal line items is different depending on the complexity of the product options setup, there can not be any general validation to prevent the large orders from not being calculated.
With the Quantity discount extension, it is possible to configure a validation that shows after a specific number of line items are in the cart. The customer will see a message to create two separate orders:
If you want to use this method, please reach out to our support, and we can configure the checkout validation based on your specific setup.
Shopify Plus
As mentioned in the beginning of this guide, on Shopify Plus apps can use the more efficient UpdateOperation which supports up to 200 cart line calculations with our app.