How do I customize booking form fields?

Modified on Tue, 5 May at 9:30 PM

How do I customize booking form fields?

Control exactly which fields appear in your booking form — and which are required. You can add any campaign field, make it required at system level or inline, and show different content conditionally based on what the customer selects.

TL;DR

Go to Campaign → Booking forms → [your form]. In the field settings, select which fields to include. In the content editor, use @input[slug] to place fields and add ; required to enforce them. Test on the public URL before going live.

Get started in 4 steps

1

Go to the relevant Campaign → Booking forms in the left menu → click the form you want to configure. For existing booking forms, field editing is in Part 3: Confirmation.

2

In the "Add fields to form" area, select which Fields (text, phone, email, notes), Select fields (dropdowns), and Files (uploads) should be available in the form. Save to confirm.

3

In the content editor, use Ctrl/Cmd+K to open the placeholder modal and search for @input to add fields. To make a field required inline, use @input[slug; required]. For system-level required fields, configure it in the campaign field settings.

4

Open the public URL of the form and test: submit with missing required fields to verify error messages, and try invalid values to confirm validation works as expected.

System required: blocks submit, always  ·  Inline required: only on this form  ·  Best practice: Keep forms short — only ask what you truly need
Read more

Field types and validation

  • Text — free-form; optionally validated with regex
  • Number — must be numeric (ZIP codes, amounts)
  • Date/DateTime — must match date/time format
  • Select — must be one of the predefined options
  • File — supported file type and within size limits

For phone numbers and emails, use dedicated phone/email field types — they have built-in format validation.

Conditional fields — show only when relevant

Use conditional logic to show different content based on what the customer selects. Example:

at-if( at-select[visit-type,slug] == online ){
  Please make sure your camera is working.
}at-else{
  Please be at the address 5 minutes early.
}at-endif

Conditional logic is processed when the form renders — it controls surrounding content, not the input field itself. Common uses: different instructions per visit type, commercial vs. private customer messages, service-specific requirements.

Form messages — validation and error text

Each booking form has a Form messages section for configuring what users see when booking fails. Examples:

  • Unsupported postal code: "Booking is not available in postal code [postal_city]."
  • Address too far: "The address [location] is too far to book through this form."
  • No times found: "No available times before [date]. Try another date or contact us."

Use clear, actionable messages so customers understand why a booking cannot be completed — not just a generic error.

Common searches

booking form fields • required field • add field to booking form • at-input required • conditional field • field validation • form messages

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article