Appointments

The Appointments module gives your team a shared calendar for booking and managing customer appointments. You define the services you offer, control availability and working hours, and book appointments against an existing customer or a brand-new one.

Enabling appointments

Appointments are controlled by the Appointments feature toggle, which is off by default. Enable it in Administration > Feature Toggles.

While the toggle is off, the module's pages return Not Found, the Appointments entry is hidden from the main menu, and the Appointments tab is hidden on customer records. No appointment data is deleted when the feature is switched off.

Setting up appointments

Complete these steps before booking your first appointment:

  1. Create the services you offer in Administration > Appointment Services.
  2. Set availability, timezone, and working hours in Administration > Appointment Settings.
  3. Open Appointments from the main menu and create a booking.

Admin only: Appointment Services and Appointment Settings require the Administrator role. Standard users can book, edit, and reschedule appointments from the calendar, and edit or delete them from the customer record.

Appointment services

Every appointment is booked against a service. The service determines the default duration, calendar colour, and optional price.

Open Administration > Appointment Services to see the list and use Add Service to create one. Each service has:

FieldPurpose
Service NameRequired name shown on the booking form and calendar (for example, Consultation or Site Visit).
Duration (minutes)Required default length. The booking form pre-fills this duration and lets staff override it.
PriceOptional reference price for the service. It is not posted to the customer's balance automatically.
Calendar ColourColour used for the appointment cards, making services easy to tell apart.
Default AssigneeOptional team member recorded as the service's default assignee.
Display OrderControls the order of services in selection lists.
ActiveOnly active services are offered when booking. Inactive services remain on historical appointments.
DescriptionOptional internal notes describing the service.

Every tenant starts with a 30-minute Consultation service. A service cannot be deleted while appointments are assigned to it.

Appointment settings

Open Administration > Appointment Settings to control the shared booking rules.

Availability and scheduling

SettingDescription
Enforce availabilityWhen on, appointments must start and finish inside the configured working hours. Bookings outside those hours are rejected.
Slot length (minutes)Stored default slot length (30 minutes by default). Booking durations still come from the selected service or the duration entered on the form.
TimezoneThe Windows or IANA timezone ID used to interpret and display appointment times (for example, GMT Standard Time).
Warn on overlapWhen on, booking or moving an appointment over another appointment for the same assignee shows a warning. The booking is still saved.
Scheduling modeTime slots books a start time and duration. Day blocks divides the day into fixed blocks.
Blocks per dayNumber of equal blocks used in Day blocks mode (two by default).

In Day blocks mode, the blocks run from the earliest opening time to the latest closing time across the configured week, split evenly by Blocks per day. Choosing a block sets both the start time and the appointment duration.

Working hours

The working-hours table has one row per day of the week. For each day you can mark it Closed or set an Open and Close time. The defaults are Monday to Friday, 09:00–17:00, with Saturday and Sunday closed.

Working hours are enforced only when Enforce availability is on. Times are interpreted in the configured timezone.

The appointment calendar

Select Appointments in the main menu to open the shared calendar. The calendar opens in Week view and offers four views:

  • Day — one day with an hourly grid.
  • Week — Monday to Sunday with an hourly grid.
  • Month — a six-week grid showing appointments in each day cell.
  • Agenda — a list of appointments for the next 30 days from the selected date.

Use the previous, Today, and next buttons to move through time. Time-grid cards show the time, customer, service, and assignee, while month cards show the customer and assignee. The card colour comes from the appointment service, and the agenda also shows the current status.

Click a card to open the appointment for editing. In Day and Week views you can:

  • Drag a card to another time or day to reschedule it.
  • Drag the bottom edge of a card to change its duration. Times snap to 15-minute increments.

In Month view, drag a card to another day to reschedule it at the same time of day.

Rescheduling from the calendar saves immediately. If the new time overlaps another appointment for the same assignee, the overlap check is applied according to your settings.

Booking an appointment

  1. Click New Appointment on the calendar, or use the New Appointment shortcut on a customer record.
  2. Find an existing customer by typing a name, phone number, email, reference number, or postcode. Alternatively, capture a new customer in the form.
  3. Choose the Service, Status, and Assignee.
  4. Enter the start date and time and, if needed, override the duration. In Day blocks mode, choose the date and block instead.
  5. Add any notes and click Book Appointment.

New bookings default to the next half hour and the Booked status. The duration defaults to the selected service's duration.

Creating a customer while booking

If the customer is not already in the CRM, complete the capture fields: title, first name, surname, mobile phone, and email. At least one name is required. SurelyCrm creates the customer record and its reference number at the same time as the appointment.

Availability and overlap checks

When availability is enforced, a booking outside the working hours for that day is refused with an error and is not saved. When overlap warnings are on, booking or moving an appointment over another appointment for the same assignee shows a warning; the appointment is still saved.

Editing, rescheduling, and deleting

Open an appointment from the calendar or from the Appointments tab on a customer record. You can change the service, status, assignee, date and time, duration, and notes, then click Save Changes.

  • Reschedule — drag the card on the calendar, or edit the start time.
  • Change duration — drag the bottom edge of the card, or edit the duration field.
  • Cancel — set the status to Cancelled and save. The appointment remains in the calendar and history.
  • Delete — use the delete action on the customer's Appointments tab. Deletion is permanent.

Rescheduling cancels any active workflow instances for the appointment and queues the appointment triggers again, so reminder workflows run against the new time.

Appointments on the customer record

When the feature is enabled, each customer record has an Appointments tab. It lists the appointment date and time, service, status, and assignee, with actions to edit or delete each appointment. The customer header also includes a New Appointment shortcut that opens the booking form with the customer already selected.

Appointment statuses

Appointment statuses are separate from Customer and Lead statuses. Each tenant is seeded with:

StatusMeaning
BookedThe appointment has been created.
ConfirmedThe customer has confirmed the booking.
CompletedThe appointment took place.
CancelledThe appointment was cancelled.
No-showThe customer did not attend.

Choose the status on the booking form. The status appears on the customer's appointment list and in the agenda view, with its colour shown in the customer list.

Confirmation and reminder workflows

Appointments raise an Appointment Added workflow trigger when a booking is created. The CRM ships with two draft workflows and matching email templates:

WorkflowWhat it does
Appointment ConfirmationSends the Appointment Confirmation email as soon as the appointment is booked.
Appointment ReminderWaits until one day before the appointment start, then sends the Appointment Reminder email.

Both workflows are created as drafts with the trigger already attached. Review the templates and content in Workflows, then activate the workflows when you are ready to send mail.

The reminder workflow uses a Wait stage relative to the appointment start. The offset supports days, hours, and minutes. If the reminder time has already passed when the workflow reaches the wait, the instance is cancelled and the reminder is skipped rather than sent late.

The background engine must be running for queued triggers and workflows to execute. See Feature Toggles and Starting Workflows.