Order form
An order form is the one place where a typo costs money. This one keeps the choosable things choosable — product from a list, quantity as a number — so the only free text is the address, where it belongs. The same shape covers a product order, a food order, a t-shirt run or an internal purchase order: change the dropdown options and nothing else.
The form beside this text is live. Fill it in and submit it — it validates exactly as it would for a real respondent, and saves nothing.
Number fields validate before they submit
Quantity is a number field, not a text box, so "two" or an empty string never reaches your spreadsheet. Validation runs in the browser before the response is sent.
Send each order onward as it arrives
Point the form at a webhook and every order is delivered to your own system the moment it is placed, in addition to being stored in your dashboard. A Slack or Discord channel works the same way, and every order is in the CSV export regardless.
No card required.
Order
Live previewHow to build this form
5 steps in the editor. Nothing here needs a paid plan.
- Add short text and email fields for the customer, plus an optional phone field for delivery problems.
- Add a dropdown listing your products with prices in the option labels, so the customer picks rather than types.
- Add a number field for quantity. Because it is a number field, a word or a blank never reaches your records.
- Add a long text field for the delivery address, and a second optional one for delivery notes.
- In Settings, add a webhook, Slack or Discord destination so each order reaches your system as it is placed.
Fields in this form
7 fields, using 6 of the 19 field types available.
| Question | Field type | Required |
|---|---|---|
| Full name | Short text | Yes |
| Yes | ||
| Phone | Phone | Optional |
| Product | Select | Yes |
| Quantity | Number | Yes |
| Delivery address | Long text | Yes |
| Anything we should know? | Long text | Optional |
What goes wrong with this form
Specific to a order form, not general advice about forms.
Letting the customer type the product name
A dropdown with prices in the option labels removes an entire class of dispute. Free text produces "the large one", "large x2" and misspellings you then have to interpret, and every interpretation is a chance to ship the wrong thing.
Quantity as a text field
Use a number field. It is validated in the browser, so "two", "a couple" and an empty string never reach your records. This is the single field on an order form where a wrong type costs real money.
Treating the webhook as a guarantee
Each destination gets five seconds and one attempt, with no retries. If your endpoint is down when an order arrives, that delivery is simply not made — the order is still stored in Seagit and still in your CSV export, so reconcile against those rather than assuming your system saw everything.
Questions about this form
How do I create an online order form?
Put the choosable things in a dropdown with prices in the option labels, quantity in a number field, and leave free text for the delivery address where it belongs. Because quantity is a number field, "two" or a blank is rejected in the browser before the order ever reaches your records.
Can an order form send orders to my own system?
Yes. Add a webhook destination and each order is POSTed to your endpoint as JSON the moment it is placed. Each destination gets five seconds and one attempt with no retries, so treat it as a notification — the order is stored in Seagit either way and exports to CSV.
Can I take payment through the order form?
No. This collects the order — product, quantity, address and contact details — and hands it to you or your system to invoice. If you need card payment at the point of order, a dedicated checkout is the right tool; this is for taking the order itself.