Turn pre-orders into linked records in an inventory base
Every pre-order writes an Orders record with quantity and customer details, linked to the matching product row.
New form submission
Create a record in the Orders table and link it to the Products table
One-directional. A submission triggers the action — nothing is written back into your form.
A pre-order sheet works right up until two people order the last of something. Writing each order into an Orders table, linked to the product record it belongs to, keeps the count in one place and lets a rollup show how much of every variant is already spoken for.
Small shops and makers use this for limited runs and restocks. The form can take the order and send the customer to secure hosted checkout; Airtable remains the stock and fulfilment record.
Setting it up
- 1
Publish the pre-order form with Product or Variant as a select whose options are named exactly as the rows in your Products table.
- 2
In Airtable, add an Orders table with a link-to-record field pointing at Products, a Quantity number column and a Status single-select.
- 3
If payment happens later, add Unpaid as the first Status option and type it into the Zap. Otherwise, use the payment status stored with the response.
- 4
In Zapier, choose formformform, the New Submission trigger and your pre-order form, then load a sample order.
- 5
Add the Airtable Create Record action and select the inventory base and its Orders table.
- 6
Map Product or Variant into the linked Products field. Airtable matches on the primary field, so the option text on the form and the product name in the base must be identical.
- 7
Map Quantity to the number column, then map Full Name, Email Address and Shipping Address into the customer columns on the order row.
- 8
Add a rollup on Products that sums Quantity across linked orders, place two test orders for the same variant, and confirm the total moves before turning 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 field | Airtable |
|---|---|
| Product or Variant | Link-to-record field pointing at the Products table |
| Quantity | Quantity number column in Orders |
| Full Name | Customer name, the primary field of the Orders row |
| Email Address | Customer Email column |
| Shipping Address | Shipping Address long text column |
| Special Requests | Notes long text column |
Variations worth knowing
Add a Zapier Paths step on Quantity: anything above your wholesale threshold creates a record in a Trade Orders table with its own Status options and payment terms, everything else goes to Orders. Both paths still link back to the same Products row, so the rollup of committed stock stays complete.
The connection runs one way, so Airtable cannot grey out a variant that has sold out. Add a Cap number column to Products and a view filtered to rows where the committed rollup exceeds it, then close the form or remove that option when a variant shows up in the view.
If something isn't arriving
A link field matches on the primary field text and will happily invent a record when it finds no match. Make the form's option text identical to the product name, including punctuation and case, and turn off the create-new-record toggle the Airtable action offers.
The Quantity column has to be a Number field, and the incoming value has to be digits only — "2 boxes" will not parse and lands as nothing. Make the form's Quantity question numeric, or add a Zapier Formatter step to extract the number before the action runs.
Frequently asked questions
Can the form take payment for a pre-order?
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.
Will the form stop accepting orders when a variant sells out?
No. Nothing is written back from Airtable into the form, so it keeps taking orders until you change it. Watch the committed rollup on the Products table, then remove the option or close the form yourself when a run is full.
Can one submission create several order lines?
A Create Record action makes exactly one row, so a basket with three items arrives as a single order record. Keep one product per submission if you need per-line stock counts, or add a second Airtable action for an Order Lines table.
Related automations
- Add job applicants to a hiring pipeline
Each application becomes a Candidates record with role, start date and stage, ready to drag through a kanban view.
- Capture demo requests as leads in a CRM base
Every demo request becomes a Leads record with name, company, work email and source, ready for an owner and a status.
- Collect event RSVPs as attendee records
Each RSVP becomes an Attendees record with guest count and dietary notes, stamped with the event date.
- Log every support request as a new ticket record
Each help desk submission opens a Tickets record with priority, description and requester email, its status already set to New.
- Store product feedback with a rating for triage
Every response lands in a Feedback record with the rating, the product and the verbatim comment, ready to group by theme.
- Add every inbound enquiry to your Notion leads database
Every business enquiry lands in your Notion Leads database as a page tagged New, with the company and inquiry type already filled in.
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