Item Fields
Item fields are the building bricks of Advik Booking. Every question your customer is asked on the booking form is an item field. Define them once, attach them to any service, and they automatically drive price and duration.
Why this exists
Standard form plugins store data with the form. Advik Booking stores it in a library, so a single Number of bedrooms field can be reused across a dozen services — and updating the price-per-unit propagates everywhere.Where to find it
Advik Booking → Services → Item Fields. Or open a service and click Add Fields — both lead to the same library.
Field types
| Type | Use it for | Has price/unit? |
|---|---|---|
| Dropdown | Property type, oven size, subject | Yes (per option) |
| Radio | Same as dropdown but visible at a glance | Yes (per option) |
| Checkbox | Yes/no, single upsell (e.g. "Add laundry?") | Yes (flat) |
| Number / Stepper | Quantities (bedrooms, bathrooms, guests) | Yes (per unit) |
| Text | Free text (postcode, address, special instructions) | No |
| Textarea | Longer notes | No |
| File | Reference photo, prescription | No |
| Date | Specific dates, deadlines | No |
Creating a field — step by step
- Open the field libraryGo to Advik Booking → Services → Item Fields and click Add Field.
- Choose a label and keyLabel is what the customer sees. Field key is the internal machine name (auto-generated from the label; you can change it). Once saved, the key cannot be renamed without breaking integrations — choose carefully.
- Pick a field typeSee the table above. Changing the type after creation requires re-entering the options.
- Add choices (dropdown / radio / checkbox only)Each choice has a label, an optional price modifier, and an optional duration modifier. Leave both blank for choices that don't change the price.
- Set price per unit (number fields only)For stepper fields, set a base price-per-unit. Example: $15 per bedroom. The customer's quote updates live as they change the value.
- Set duration per unit (optional)The total booking duration is
base_duration + (field_value × duration_per_unit). Example: 30 minutes base + 15 min per bedroom. - Set validationMark required, set min/max, and any regex for text fields.
- Save and attach to servicesOnce saved, the field is in the library. Open any service and toggle it on in the Fields panel.
Anatomy of a field
| Property | What it does | Example |
|---|---|---|
| Label | Customer-facing name. | Number of bedrooms |
| Field key | Internal ID, used in REST & exports. | bedrooms |
| Type | UI control. | Stepper |
| Min / Max | Allowed value range. | 1 — 10 |
| Default | Pre-selected value. | 2 |
| Required | Customer cannot skip. | Yes |
| Price per unit | Added to the service base price per unit. | $15.00 |
| Duration per unit | Minutes added to the booking per unit. | 15 |
| Group | Logical grouping in the admin UI. | Property |
Reusing a field across services
The Number of bedrooms field with price_per_unit = $15 is attached to:
- Standard Clean (1–6 hours)
- Deep Clean (2–8 hours)
- End-of-Tenancy Clean (3–10 hours)
Change price_per_unit from $15 to $18 once, and all three services reprice instantly.
Per-service price overrides
If a single service needs to charge a different price per unit (e.g. Deep Clean charges $20 per bedroom, not the library default of $15), you can override it from the service edit screen.
The override is stored on the service-field link, not on the field itself, so other services are unaffected.
Field groups
Group related fields together to keep the admin tidy. Example group: Property details with Number of bedrooms, Number of bathrooms, Square footage. Groups don't affect the front-end form layout.
Common patterns
Yes / No add-on question
Use a single-choice radio or a checkbox field with two options. Price goes on the "Yes" option. Example: Include laundry? with Yes +$25 and No +$0.
Quantity with price-per-unit
Use a stepper field. Set price_per_unit. The customer changes the number; the price updates live. Example: Number of windows to clean at $4 per window.
Choose one of many variants
Use a dropdown or radio. Each option can have its own price modifier. Example: Property type with Studio +$0, Flat +$10, House +$25.
Conditional question
Add the field to an add-on rather than a service. The field will only appear when the customer selects that add-on. Example: Type of mattress only when Mattress cleaning is selected.
Next up
Now that you understand fields, see how they bundle into Services.