WooCommerce logo

Hold pre-orders as on-hold orders before a launch

Every reservation becomes an on-hold WooCommerce order with the chosen variation and quantity, so launch day starts with a real queue.

When this happens

New Submission on your reservation form

Do this

Create an on-hold order in WooCommerce for the upcoming product

One-directional. A submission triggers the action — nothing is written back into your form.

Counting interest in a spreadsheet tells you how many people clicked. An on-hold order tells you what they picked, in which size, and where it has to ship. This flow creates that order while the product is still out of stock.

Brands running a drop or a restock use it to size the production run. When stock lands, the queue is already in WooCommerce in the order it arrived, and working through it is the same job as any other batch.

Setting it up

  1. 1

    Publish the reservation form and offer Product or Variant as a fixed list of variations you can actually make. Free text here cannot be matched to anything in the catalogue.

  2. 2

    Create the upcoming product in WooCommerce first, published but out of stock with backorders allowed. An order cannot hold a line for a product that does not exist yet.

  3. 3

    In Zapier, select formformform, the New Submission trigger, and your reservation form.

  4. 4

    Add the WooCommerce Create Order action, connect the store, and set the order status to on-hold so no payment is expected and no fulfilment email goes out.

  5. 5

    Map Product or Variant to the line item, matching the variation name exactly as WooCommerce spells it, and Quantity to the line quantity.

  6. 6

    Copy Full Name, Email Address and Shipping Address into both the billing and shipping blocks, so the order can be picked at launch without chasing the customer for an address.

  7. 7

    Send Special Requests to the customer note on the order, which is the field the packing team reads before the parcel is made up.

  8. 8

    Reserve one of each variation as a test, check the orders appear on-hold with the correct lines, then turn the Zap on.

What maps where

Using the Pre-Order Form as the starting point. These are its real fields — swap in your own and the mapping works the same way.

Form fieldWooCommerce
Full NameBilling and shipping first and last name
Email AddressBilling email on the order
Shipping AddressShipping address, city and postcode
Product or VariantOrder line item, matched to the variation
QuantityLine item quantity
Special RequestsCustomer note on the order

Variations worth knowing

Stop reserving once the run is full

Set the stock quantity on the upcoming product to the size of the production run and switch backorders off. Once the count is reached the Create Order step fails rather than promising stock you cannot make, and you can close the form or add a waiting-list branch.

Split the launch email list from the queue

Read the Notifications answer in a Zapier path and add a second action sending only the people who opted in to your email tool. The order is still created either way, so a customer who wants no marketing keeps their place in the queue.

If something isn't arriving

Orders arrive with an empty line where the product should be.

Variation matching is exact. Check the option text on the form against the variation attributes on the product page, including capitals and hyphens, or map the variation ID instead of the name so a wording change on the form cannot break it.

Customers reply asking why they owe money.

WooCommerce sends its own on-hold email, and the default wording reads like an unpaid invoice. Rewrite that template under WooCommerce, Settings, Emails to explain the reservation, or switch the action to pending payment and send your own confirmation from the Zap.

Frequently asked questions

Can we take a deposit when someone reserves?

Yes. Add products and priced options to the form, then collect payment through secure hosted checkout with Stripe, PayPal, or Square. Payment status is tracked alongside the response.

How do we turn the queue into paid orders at launch?

Filter the orders list by on-hold status and sort by date to get the reservations in the order they arrived. Change each to pending payment and send the customer invoice, or take payment however you already do it for phone orders.

If the launch date moves, does the reservation update?

No. Nothing flows back from WooCommerce into the form or the submission, so the reservation stays exactly as it was made. Email the affected customers from the store, and update the copy on the form itself so new reservations show the new date.

Related automations

Build the form first

The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.

Start free