Pre-order app
ShopWired's pre-order functionality, available through the pre-order app, enables the following features in your account which are useful for ShopWired users who sell products that aren’t available for immediate dispatch:
• Create a product and mark it as a pre-order product
• Enter a 'ships-on' date for a product to tell customers when the product will be shipped to them
• Enter a 'release' date/time, hiding the product on your website until this time
• If using the Stripe payment gateway, don't charge a customer's card until the order is ready to be shipped
To create products on your website that your customers can pre-order you will need to install the pre-order app.
To install the app select INSTALL THIS APP.
from the menu. Find and select the ‘Pre-order products’ app and selectOnce the app is installed you can make products available for pre-order in the product creator/editor.
• Creating pre-order products
• How customers place pre-orders
• Managing pre-orders
• Twig variables
Creating pre-order products
To make a product available for pre-order use the ‘Stock & Delivery Management’ section of the product creator/editor. Place a tick in the box next to ‘This is a pre-order product’:
Some new fields will then appear for you to configure:
In the Ships-on Date field you must enter a date for when the item will be available to be shipped to the customer. This field is required.
In the Release Date and Release Time fields enter the date and time that the product should be released and available for purchase on your website. Prior to the date and time that you enter in these fields the product will not be visible on category/search pages, although customers will still be able to view the product page if they have its URL. If you do not enter a date/time in these fields the product will be available for purchase immediately upon creation.
How customers place pre-orders
Customers are able to place pre-orders in the same way as they place other orders, but there are some important things to note about the process:
- When a customer places an order that contains at least one pre-order product the whole order will be marked as a pre-order within the admin system.
- Customers must login or create a customer account in order to place a pre-order. Guest checkout is disabled for any orders containing a pre-order product.
- Customers can use any payment gateway that you have configured in your account to pay for their pre-order. If they are paying through any payment gateway except Stripe, payment will be taken immediately.
- If you are offering Stripe as one of your payment gateways, you can choose when customers who place pre-orders should be charged. To configure this setting select mark as ready for dispatch and charge card when managing the pre-order. from the menu. In the section for Stripe, use the setting labelled 'When should pre-orders be charged' to determine if you want pre-orders to be charged immediately or on demand. If you select 'Immediately', the customer's card will be charged when they place their order. If you select 'On demand', the customer's card will not be charged until you select
- At checkout, customers are informed of the date that they will receive delivery of their order (using the furthest away 'ships on' date, i.e. the platform assumes you dispatch all items in an order at the same time).
Please note!
Pre-orders cannot be created through the admin system. If you are creating an order in the admin system and you add a pre-order product, the order won't create with the 'Pre-Order Management' section. Instead, the order will display as a normal order.
Managing pre-orders
Order status
Pre-orders (orders containing at least one pre-order product) have their own order status on ShopWired. Once you install the pre-order app you can choose which order status is assigned to pre-orders using the default order status setting.
Viewing all pre-orders
When a customer places an order that contains a pre-order product the order will appear with your other orders on the ‘Your Orders’ page. To access this page select
from the menu.Orders containing a pre-order product will appear with a status of ‘Pre-order’ and with a (P) beside the order total:
To view only your pre-orders use the drop-down in the top right corner under ‘Order State’ and select Pre-order from the list:
You can also filter your pre-orders to only show pre-orders that have specific ships-on dates. To do this select More Filters:
Use the ‘Ships On Date From’ and the ‘Ships On Date To’ fields to only show pre-orders with ships-on dates within the range:
When you use the filter to view certain pre-orders a new column appears in the 'Existing Orders' table which shows the ships-on dates for the pre-orders:
If an order contains more than one pre-order product the latest ships-on date will be shown.
Managing specific pre-orders
As with regular orders you can manage the order by selecting View. The order details can be managed in the same way as regular orders, but a separate ‘Pre-order Management’ section will display for you to manage the pre-order aspects of the order.
For customers who have paid using the Stripe payment gateway, if you have selected for their orders to be charged 'on demand', you will have two actions available to you for marking the order as dispatched:
Using these options you can either mark the order as ready for dispatch and charge the card as you do so, or you can mark the order as ready for dispatch and not charge the card (if you have already collected payment in another way).
If your customer has paid using any other payment gateway (not Stripe), or you have selected for payment for Stripe orders to be taken immediately, then your only action option will be to mark the order as ready to dispatch:
Once you have marked a pre-order as ready to dispatch the order will become like any other ‘paid’ order and will be given the default status of your other paid orders.
Using the management section you can also change the status of the pre-order, send an order status automatic email update, archive the order and input tracking information.
Twig variables
Additional variables are available on the product object for pre-order products. These are listed below.
product.is_pre_order
Returns true if the product is a pre-order product.
product.is_released
Returns true if the time now is after the pre-order product's release date/time.
product.release_date
Returns the product's release date and time in UTC. Use the date filter and a time zone, e.g. {{ product.release_date|date('d/m/Y', 'Europe/London') }}
product.shipping_date
Returns the product's ships-on date in UTC. Use the date filter and a time zone, e.g. {{ product.shipping_date|date('d/m/Y', 'Europe/London') }}
The product.is_released and product.release_date variables can be used to prevent customers from adding a pre-order product to their basket before the release date/time by surrounding the 'add to basket' button in an IF statement (e.g. hiding the add to basket button if its before the release date/time and replacing with a message like 'This product will be released on 1st January 2021 at 9pm').