The Ultimate Guide
to Pre orders on Shopify

the unofficial guide

Why take pre orders Why take pre orders

Boost Cashflow

Start taking pre orders on Shopify for upcoming releases at any point in the new product cycle. This gives you a much bigger window and a faster track to selling and recouping cash.

Build Hype

There’s a good chance your customers will love the opportunity to order new and upcoming releases. Pre orders on Shopify can be a great way to build FOMO and excitement.

Gauge Demand And De-risk

Taking pre orders can help you forecast how well a product will sell. Whether that’s measuring variant breakdown or running a sustainability focused made-to-order model.

Pre order campaign life cycle

The customer goes through checkout at the time of pre order and agrees to a deferred charge. Shopify will then ‘vault’ this card and charge it once the merchant triggers the deferred charge.

Pro: High conversion rate for short-medium term pre orders as the customer doesn’t need to do anything. The card-charge is triggered by the merchant.
Con: Risk of customers changing addresses and/or cards expiring.
  • Customer clicks pre order.
  • Chooses variant/quantity and is redirected to cart/checkout where they accept the payment.
  • Receives optional confirmation email.
  • Time...
  • Brand triggers deferred charge. Customer receives optional upcoming charge email.
  • After specified delay, customer’s card is charged.

Installing an app

Once you’ve installed a Shopify pre-order app from the Appstore you’ll need to integrate it with your storefront. Customer support can do this all for you, but here are the two main methods if you would like to integrate the app yourself:

Shopify 1.0 (themes created before Aug 2021)

We generally recommend reaching out to the app provider for 1.0 installation. The process is usually very similar though; finding the Shopify theme file with your buy button in it and adding the app’s specific snippet below the {% endform %} tag.

The correct file varies, but it often goes by one of these names: product-template.liquid, product-form.liquid, product-main.liquid etc.

Adding an app snippet to a themes code

Shopify 2.0 (themes created after Aug 2021)

The Shopify 2.0 update enables app blocks to be added from the drag-and-drop theme customizer in the Shopify admin. This makes for a quick setup with an added bonus that app blocks are automatically removed when an app is uninstalled. (Doc here with animated GIFs)

Adding an app snippet to a store 2.0 site

Listing pre orders on Shopify

You’re now ready to start taking pre orders on Shopify, you’ll have to list a product in your chosen pre order app. The add to cart button should then be replaced by a pre order one, alongside additional front-end elements (messaging, widgets etc).

changing buy now to pre order


The most basic way to set a discount in Shopify is to change the 'price' and 'compare at price' in Shopify to different values. This has the added benefit of many store-themes displaying automatic discount messaging.

However, pre order listings that use Shopify purchase options can take advantage of a more sophisiticated kind of discount. Instead of the product’s price being directly changed, the discount lives in the product’s purchase option plan, as well as any Shopify orders that are created with it. So, the price and discount are locked in for the future charge and won’t change if your product’s price changes after the order is made.

Pro: when using discounts on pre orders with Shopify purchase options, you don’t need to worry about future price changes.
Con: the purchase options discounts won’t automatically display a discount badge or price/compare-at-price messaging e.g. $10.00, now $7.50 etc. Although, your app should show discount messaging.


It’s possible to require a deposit upfront for deferred charge pre order listings. In this situation, the customer will pass through your checkout only once, but be charged the deposit amount straight away, as well as accept the future charge. Deposit listings also support discounts.

Note that shipping will be charged in the final outstanding payment. The initial charge will just be for the deposit amount.

Allowing pre orders
to pass through your checkout

By default your Shopify checkout will reject any products that don’t have stock. There are two ways around this issue.

A) Adding stock in Shopify

Adding stock ahead of receiving it in Shopify is a perfectly reasonable approach and can even be required for some auto-charge automations to work. However, it may be a non-starter for certain shipping and fulfilment setups.

B) Ticking the 'continue selling when out of stock' box

This is the most common approach for pre orders and can also be a good way for your theme to determine whether a product is on pre order. This box is available in the Shopify product/variant admin.

What happens after
a customer clicks pre order?

Your pre order app will facilitate the add-to-cart/checkout process, sitting on top of Shopify’s native checkout and order systems.

  • Customer clicks pre order.
  • Chooses variant/quantity and is redirected to cart/checkout where they accept the payment.
  • Receives optional confirmation email.
  • Time...
  • Brand triggers deferred charge. Customer receives optional upcoming charge email.
  • After specified delay, customer’s card is charged.

Mixed pre order/buy-now carts

There are two potential options here and merchants often strongly gravitate towards one or the other. Toggle the bars below for more info.

A) Allow mixed carts of pre order and buy-nows

Your pre order app can add the item to cart alongside any existing/future buy-now cart items. This is great for AOV (average order value), however if you plan to ship the items out separately, you may end up paying for two shipments. One solution to this is to invoke an internal policy that mixed cart orders only ship when all items are ready.

B) Isolate pre orders to their own cart/checkout session

Some apps offer the ability to force redirect to checkout when a customer clicks 'pre order'. The benefit of this is that customers are forced to pay for the pre order item on its own and with a dedicated shipping charge for that pre order.

Available redirects may vary by pre order listing type.

Shipping delays

When dealing with pre orders on Shopify and e-commerce in general, freight times are never certain. The further out that the pre order is taken, often the less certain lead times become. This can all be navigated successfully, as long as honest communication is kept up with customers. If you do experience a shipping delay, there are two actions we’d recommend:

  1. Update the shipping statement in your pre order app/Shopify
    Updating the shipping statement to the latest estimated delivery date will mean customers are kept in the loop. Doing this should automatically update any other pre order related touch points you have open with customers. Please note that Shopify pre orders may rely on a Shopify ‘purchase option’. Both your app and the Shopify purchase option plan will have a delivery date record. Updating the former should update the latter, but this may vary by app.
  2. Sending out update emails
    If you extend the shipping time substantially, then sending out an update email to customers is a great idea, via your pre order app or choice of email marketing service.

Keeping customers updated

Communicating with customers in the stimulus rich 2020s can be quite the task. We recommend a multiple pronged approach. A good pre order app should keep the following touch points in sync with minimum effort on your part.

Front-end wording

Most pre order apps offer some kind of communication to customers, past that of the button wording. This is cruicial to prevent chargebacks, ease customer support and mantain customer affinity.

Customer portals

If supported, portals can be a terrific way to keep customers up to date and reassured that their pre order is still happening. They should show the most recent shipping statements and details for any unfulfilled pre orders that a customer has.

Email campaign

pre order apps can offer a transactional email campaign to keep customers in the loop. The series is usually based around key events, such as; order confirmation, update email, upcoming charges etc.

Keeping customers updated

Cancelling pre orders

Just like regular Shopify orders, pre orders can be cancelled by the store owner or customer. Refunding is optional and can be for the partial or full amount. Cancelling the pre order in your app should flow through to the Shopify orders admin automatically (although issuing refunds will probably be a manual process in Shopify). Customers can cancel their pre orders themselves if your app’s customer portal supports it.

Fulfilment holds

When a customer places a pre order for a listing with a Shopify purchase option attached, their Shopify order entry will have an ‘On hold’ fulfilment status. This means that this particular line item will be ignored by any Shopify shipping apps/services and won’t be fulfilled until it’s lifted. Fulfilment holds can be released via your app, as well as being automatically lifted when a deferred charge is successfully paid. Once lifted, the ‘On hold’ badge in the Shopify orders admin will change to ‘Unfulfilled’.

If the customer has a mixed order of pre order items and buy now, the pre order items will have fulfilment holds and the buy now items will go straight to status:unfulfilled.
Fulfilment status
On hold

Triggering deferred charges

When making a deferred-charge pre order, the customer accepts a future charge at checkout. Shopify then ‘vaults’ the card details to use for the future transaction. Once you’re ready to initiate this charge, you’ll typifically use your pre order app, although the Shopify orders admin has support for this too.
Once you trigger the charge, Shopify will use the vaulted card details to start the transaction and pay off the order. Charges can fail for all of the usual reasons, like an expired card or insufficient funds. If a charge does fail, Shopify will let your app know why, so that you can try and solve the issue and re-attempt the charge.

Charging via your pre order app

The method of triggering charges will vary between apps. Using an app will let you bulk charge all of your customers or just specific cohorts. Some apps also support an “upcoming charge” email feature, which will notify customers before the charge is attempted. This is a great way of increasing the likelihood that customer’s accounts will have sufficient funds before the charges are attempted.

Charging via the Shopify orders admin

If for whatever reason, you can’t trigger outstanding charges via your pre order app, Shopify surfaces an option within the 'collect payment' button dropdown. Once you’ve clicked this button, the option should be named 'Charge Visa • 7474', where 'Visa' and '7474' are specific to the order in question. It’s great to know you have this fallback method, but it doesn’t allow for bulk charging or automatic release of fulfilment holds like your app should.

Deferred charges can not specify items within the Shopify order. Triggering the charge will attempt to pay off all outstanding pre order items.

Releasing fulfilment holds

If you’re using deferred-charge pre orders, then your app may automatically release fulfilment holds once a charge has been successfully processed. However, if it doesn’t or if you’re using charge-upfront pre orders, then you’ll have to trigger the release of them. This will be possible through your app, as well as in the Shopify orders admin via the 'Release fulfillment' button. Once a fulfilment hold is released, your fulfilment integrations will kick in and treat the order like a regular buy-now item.

What happens next?

Once any outstanding charges have been triggered and fulfilment holds released, you can start to think of these pre orders as regular Shopify orders. Your regular buy-now processes should all apply; the same fulfilment, shipping, notification and reporting proccesses etc.

A shipping trolly

A generic app icon Apps

Our (biased) recommendation

This article was put together by the team at PreProduct, a next generation pre order app focused on helping brands launch new products. If you’d like to add the above capabilitiies to your Shopify stack, then we’d love you to start a free trial and see if PreProduct is a good fit.

There’s also a range of other capable pre order apps on the Shopify App Store.

Made with ❤️ by the team @PreProduct