A preorder is used to temporarily hold the order for a short period of time awaiting for customer approval, product inventory or some other reason. A preorder is simply an order with the status of "Preordered". It is a way to indicate that the order has all the billing, shipping and all other information necessary to calculate the total amount due but has not yet been actualized. Because a preorder is fully calculated, it is sufficient to be used to send an invoice to the customer to request payment or approval.
Preorder for recurring products
For example, if you sell recurring orders (subscriptions) and you need to invoice your customers ahead of time, you can benefit by configuring the Storefront to pre-generate the orders days ahead of the actual renewal date. A preorder is useful for companies that have their own purchasing department. These customers often require an invoice before approving any payment. It is also a good way to notify customers ahead of time so they can ensure their payment information are up-to-date.
For a recurring product, you can configure your product variant to preorder by the number of days ahead of the actual recurring date.
Preorder for pre-selling products
Another good use of preorder is to pre-sell products that are not yet available. For example, if your business sells mobile phones and you're accepting preorders for the next generation of iPhones that has not yet been released.
Make sure to create the product first and optionally set the inventory value to zero. You can then collect all the customer information by phone and create a preorder for them. Make sure to set the Order date to a date in the future when you think this order should be actualized. As soon as the product inventory becomes available, you can manually actualize the order or let the system do it.
Alternatively, you can also create a deferred product to collect payment at a later date. Please see How to create a deferred product for more information.
Automatically actualizing the order
Just like a regular order, you can capture payment manually and convert the preorder to an order. You can also allow the system to automatically convert the preorder for you and capture payment if a suitable preferred user payment is set. You may need to enable the Sales order feature under Configuration > General settings first. Then under Configuration > Sales order, you can set the Preorder process behavior to automatically process the preorders due. The preorders will be actualized based on their future Order dates.