Field types and conditional logic

The 17 field types, validation, conditional visibility, field mapping

Field types and conditional logic

A form is made of fields. Bookinda knows 17 field types, each serving a different purpose.

The 17 types

Text inputs

  1. Text – single line (name, address)
  2. Textarea – multi-line (note, description)
  3. Email – email address (auto-validation)
  4. Phone – phone number

Numeric

  1. Number – integer or decimal

Selection

  1. Radio – pick one of several (classic radio button)
  2. Dropdown – pick one from dropdown
  3. Checkbox – simple yes/no
  4. Checkbox Group – multiple selectable

Date / time

  1. Date – date picker
  2. Time – time picker
  3. DateTime – date + time

Media

  1. Signature – e-signature (drawn)
  2. Drawing – general drawing (e.g., body marking)
  3. File Upload – file upload (PDF, DOC)
  4. Image Upload – image upload (reference photo)

Layout (non-input)

  1. Heading – section header (separator)
  2. Text Block – static text (info, explanation)
  3. Divider – horizontal line
  4. Image – static image

(Layout fields don't ask for a value, they're for structure.)

Per-field settings

Basics

  • Title (the question text)
  • Help text (sub-label)
  • Placeholder (gray text in input)
  • Required (mandatory)
  • Width: full, half, third
  • Sort order

Validation

  • Min / max length (text)
  • Min / max value (number)
  • Pattern (regex, advanced)

Mapping

  • Map to customer field – incoming value goes to customer profile (name, email, phone, birthday, etc.)

Conditional logic (visibleIf)

A field appears only if another field has a specific value.

Example

  • Field 1: "Any allergies?" (Radio: Yes / No)
  • Field 2: "What to?" (Text) – visible only if Field 1 = "Yes"

Setup

On Field 2 editor:

  • Visible if: Field 1 = "Yes"

If customer picks "No," Field 2 doesn't appear.

Signature field details

In the Signature field:

  • Drawing surface (mouse / touch)
  • Clear button (redraw)
  • On save: PNG image + IP + timestamp + user-agent

All stored for legal auditability.

File / Image upload

Customer:

  • File: PDF, DOC, max 10 MB
  • Image: JPG, PNG, max 10 MB

Stored on salon server, linked to customer profile.

When to use it

Scenario 1, beauty allergy screening

  • Radio: "Skin problem?" (Yes/No)
  • Visible-if Yes: Textarea "What?"
  • Visible-if Yes: Image Upload "Photo?"

Scenario 2, massage consultation

  • Drawing: "Where does it hurt? Mark on the body"
  • Textarea: "Details"
  • Number: "Pain 1-10 scale"

Scenario 3, Consent

  • Text Block: full consent text
  • Checkbox: "I read and accept"
  • Signature: signature

Scenario 4, Intake

  • Text: "Last name" (mapped to customer.lastName)
  • Text: "First name" (mapped to customer.firstName)
  • Email: "Email" (mapped to customer.email)
  • Phone: "Phone" (mapped to customer.phone)
  • Date: "Birthday" (mapped to customer.birthday)

Scenario 5, Feedback

  • Radio: "How many stars (1-5)?"
  • Textarea: "What did you like?"
  • Textarea: "What can we improve?"

Tips

  • Required strictly: only what's truly needed. Long form + many required = high abandonment.
  • VisibleIf builds short forms from long data: only relevant fields show.
  • Drawing field is versatile: body painting markup, dental status, garden plan.
  • Use File Upload sparingly, customers don't like attaching files. Image Upload is simpler.
  • Field width (full/half/third) is desktop-only, mobile is always full.
  • Pattern (regex) misvalidation = turn it off, don't frustrate customer.
  • Heading and Divider don't count toward field count, they're for structure.

Related articles

#fields#mezők#conditional#visibleif#signature#mapping
💬

Have a question? Ask the AI assistant

The Bookinda AI knows the entire help center and can answer in seconds.

B

Bookinda AI Assistant

Ask anything about features, settings, or integrations.

Hi! I'm the Bookinda assistant. I can answer questions about features, billing, integrations, and more. What would you like to know?

Still need help?

Get in touch with our support team.

Contact us