> ## Documentation Index
> Fetch the complete documentation index at: https://help.clinikehr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Work the appointment book

> Book a patient onto a provider and service, read the hospital calendar, set availability and reminders, and charge saved cards automatically.

export const AuditNote = ({action = 'This action'}) => <div className="ck-callout ck-callout--info" role="note">
    <p className="ck-callout__body">
      {action} is written to your workspace's audit log with your name, the
      record touched and the time — a HIPAA requirement, and one you can review
      yourself under <strong>Audit Log</strong>. See{' '}
      <a href="/platform/security/audit-log">Audit log</a>.
    </p>
  </div>;

export const StillStuck = ({topic}) => <div className="ck-callout ck-callout--note" role="note">
    <p className="ck-callout__body">
      <strong>Still stuck{topic ? ` with ${topic}` : ''}?</strong>{' '}
      Check <a href="/platform/help/troubleshooting">Troubleshooting</a> first —
      it covers the failures we see most often. If that does not resolve it,{' '}
      <a href="/platform/help/contact-support">contact support</a> and include
      your workspace name and the time the problem happened, so we can find the
      matching entry in your audit log.
    </p>
  </div>;

export const TaskHeader = ({before, time, after}) => <div className="ck-task">
    {before ? <div className="ck-task__cell">
        <div className="ck-task__title">Before you start</div>
        <p className="ck-task__body">{before}</p>
      </div> : null}

    {time ? <div className="ck-task__cell">
        <div className="ck-task__title">Takes about</div>
        <p className="ck-task__body">{time}</p>
      </div> : null}

    {after ? <div className="ck-task__cell">
        <div className="ck-task__title">When you're done</div>
        <p className="ck-task__body">{after}</p>
      </div> : null}
  </div>;

export const Path = ({steps = []}) => <span className="ck-path">
    {steps.map((s, i) => <span key={i} className="ck-path__step">
        {i > 0 ? <span className="ck-path__sep" aria-hidden="true">
            ›
          </span> : null}
        {s}
      </span>)}
  </span>;

export const Availability = ({editions = ['all'], plans, roles, note}) => {
  const list = editions.includes('all') ? ['clinic', 'pharmacy', 'lims'] : editions;
  return <div className="ck-avail" role="note" aria-label="Feature availability">
      <span className="ck-avail__label">Available in</span>

      {list.map(e => <span key={e} className={`ck-pill ck-pill--${e}`}>
          {EDITION_LABELS[e] || e}
        </span>)}

      {plans ? <span className="ck-avail__label">Plan</span> : null}
      {plans ? <span className="ck-pill ck-pill--plan">{plans}</span> : null}

      {roles ? <span className="ck-avail__label">Who</span> : null}
      {roles ? <span className="ck-pill ck-pill--role">{roles}</span> : null}

      {note ? <span className="ck-avail__note">{note}</span> : null}
    </div>;
};

<Availability editions={['clinic']} plans="Enterprise" roles="Front desk staff, schedulers, managers and the owner" note="Needs the Front desk care area" />

**Appointments** is the hospital's book. In a solo practice patients mostly book themselves; at a hospital front desk it is usually the other way round — reception books on the patient's behalf, onto a named provider and service, while the patient is at the counter or on the phone.

<Path steps={['Sidebar', 'Front Desk', 'Appointments']} />

<TaskHeader before="At least one appointment service, and one provider with a schedule" time="Under a minute per booking" after="A booked appointment on the calendar, with the patient reminded" />

## Before you start

The **Front desk** care area must be on — see [Care areas](/hospital/get-started/care-areas). You also need something bookable: a service under **Appointment Services**, and a provider with hours under **Availability**. A provider with no schedule offers no times at all, rather than every time.

## What you're looking at

The module has its own left rail headed **Appointments**, with four entries. **Overview** is the calendar; the other three open the matching page in hospital **Settings**, so do not be surprised when the screen changes around you.

| Entry            | Opens                                                                                                                  |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------- |
| **Overview**     | The calendar — the book itself                                                                                         |
| **Services**     | [Appointment services](/hospital/settings/appointment-services), the bookable things a patient can be given a slot for |
| **Booking Page** | [Booking page designer](/hospital/settings/booking-page-designer), the public page patients book on                    |
| **Settings**     | [Booking settings](/hospital/settings/booking-settings) — availability, rules, resources, dates and communication      |

**Overview** is a full-screen calendar and nothing else. There are no stat tiles, because at a front desk the day itself is the summary.

| Control                                    | What it does                                                                                                                                                                    |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Day** · **Week** · **Month**             | How much of the book you see at once                                                                                                                                            |
| **Providers**                              | One lane per clinician — the hospital view, and how you spot the consultant with a hole in their morning                                                                        |
| **Resources**                              | One lane per room or piece of equipment                                                                                                                                         |
| **Color by Status** / **Color by Service** | What the colours mean                                                                                                                                                           |
| **Search patients, services...**           | Narrow to one person or one service                                                                                                                                             |
| **More filters**                           | Opens **Calendar Filters** — **Appointment Status**, **Urgency Level**, **Event Types**, **Task Status**, **Task Priority**, **Venue Type**, **Services** and **Staff Members** |
| **Refresh** · **Create**                   | Reload the book; open a new entry                                                                                                                                               |
| **Current Schedule**                       | The day laid out as a list                                                                                                                                                      |

## Book an appointment

<Steps>
  <Step title="Select Create">
    Or select the empty slot you want on the calendar — both open the same **Initial Entry** sheet, on the **Appointment** tab. The other two tabs, **Event** and **Task**, put something in the day that is not a patient booking.
  </Step>

  <Step title="Find the patient">
    Search under **Patient**. If they are not registered, create them without leaving the sheet — or register them properly first in [Patients](/hospital/front-desk/patients).
  </Step>

  <Step title="Choose the service">
    **Services** offers the bookable list. This is what the visit is for, and what it is charged at.
  </Step>

  <Step title="Set the schedule, provider and place">
    **Schedule** is the date and time, **Select Provider** the clinician, and **Location** the room or address — "Enter office address/room number" if it is not one of the saved locations. A resource attached to the service shows as **Auto-reserved for this service**, so nobody else can claim it.
  </Step>

  <Step title="Add what the clinician needs">
    "Describe the symptoms or reason for visit..." under **Symptoms Description**, plus **Patient Notes** ("Any notes from the patient...") and **Clinic Notes** ("Internal notes for clinic staff..."). Set **Notification** so the patient is told.
  </Step>

  <Step title="Read the summary back, then save">
    **Appointment Summary** repeats the provider, location and schedule. Check it against what the patient just told you, then save.
  </Step>
</Steps>

<Note>
  **A booking is made against a provider, not a department.** There is no department field on this sheet, and people look for one. The department is chosen later at [triage](/hospital/outpatient/triage), which is what puts the patient into a consultation queue. Booking the right clinician is what matters here.
</Note>

## Set availability and reminders

<Path steps={['Appointments', 'Settings']} />

**Appointment Settings** has five tabs: **Availability** (your operating hours and slots — **Add Schedule** for each pattern you keep), **Booking Rules** (how far ahead people may book and how late a change is accepted), **Resources** (rooms and equipment a booking claims), **Special Dates** (holidays and off-days — **Add Special Date**) and **Communication** (confirmations, reminders and message templates).

Enter special dates in advance and in bulk. Every holiday you forget is a patient who arrives to a locked door.

Reminders need a channel as well as a schedule. Channels live under [Communications](/hospital/settings/communications), and a reminder with no enabled channel reaches nobody.

## Charge the card automatically

**Auto Pay** charges a patient's saved card when their appointment is confirmed or completed, with nobody at the desk pressing a button. Switch it on under **Settings → Auto Pay**, choose the trigger, and each invoice is charged once only. Patients with no saved card are skipped for manual collection, and a declined card is never force-charged.

<Warning>
  Auto Pay carries a **1.9% platform fee per charge**, on top of your normal card processing. Confirm your patients have consented to a card on file before switching it on, and check the first day's charges by hand. Full detail and the setup steps are on [Auto Pay](/hospital/settings/auto-pay).
</Warning>

## Who can do this

| Action                                   | Who by default                                    | Governed by                                                                       |
| ---------------------------------------- | ------------------------------------------------- | --------------------------------------------------------------------------------- |
| Open the calendar                        | Any role shown the Front Desk group               | Role Navigation + the **Front desk** care area                                    |
| Create, move or cancel a booking         | Front desk staff, schedulers, managers, the owner | Role, plus a permission for managing appointments where your hospital has set one |
| Change availability, rules and resources | Owner and managers                                | Owner or manager                                                                  |
| Switch Auto Pay on or off                | Owner only                                        | Owner                                                                             |

Enforcement is **opt-in per person**. Someone who has never been saved in the permissions sheet is unrestricted, and the sheet warns **"Saving starts enforcing"** — so nothing changes for your existing staff until you save them once. A denied action is recorded in the audit log; an allowed one is not. Hiding **Appointments** from a role in [Role Navigation](/hospital/settings/role-navigation) tidies their sidebar; it is not a security boundary. See [Permissions](/platform/team/permissions).

## Check it worked

* The appointment is on the calendar for the right day, and the **Providers** view shows it in that clinician's lane.
* The patient's confirmation reached them on the channel you expect.
* A time outside the provider's schedule is not offered, and a special date is closed off entirely.
* With Auto Pay on, confirming an appointment records a payment against it without anyone taking one.

<AuditNote action="Opening a patient's appointment" />

## Common issues

<AccordionGroup>
  <Accordion title="There is no Appointments entry in my sidebar">
    The **Front desk** care area is off — see [Care areas](/hospital/get-started/care-areas) — or your role has the group hidden.
  </Accordion>

  <Accordion title="I cannot find a department field on the booking">
    There is not one. Appointments are booked onto a provider; the department is assigned at triage.
  </Accordion>

  <Accordion title="A provider has no bookable times">
    They have no schedule under **Availability**, or a special date covers the period. Check the schedule first — an empty one offers nothing rather than everything.
  </Accordion>

  <Accordion title="Auto Pay is not charging">
    Three things must all hold: the plan, a connected payment account, and a card saved for that patient. Any one missing and the appointment stays unpaid.
  </Accordion>

  <Accordion title="Reminders are not going out">
    Check the channel under [Communications](/hospital/settings/communications) before you touch the reminder schedule.
  </Accordion>

  <Accordion title="Two clinics were booked into the same room">
    The room was not added under **Resources**. A resource is what makes the book refuse a double booking.
  </Accordion>
</AccordionGroup>

## FAQ

<AccordionGroup>
  <Accordion title="Does booking an appointment put the patient in a consultation queue?">
    No. Only [triage](/hospital/outpatient/triage) does that. A booking reserves a provider's time; triage takes vitals and routes the patient to a department.
  </Accordion>

  <Accordion title="What is the difference between an Appointment, an Event and a Task?">
    An **Appointment** is a patient booking. An **Event** is something in the day that is not a patient — a meeting or a seminar. A **Task** is a job somebody has to do, with a priority and a status, and no slot on anyone's clinic list.
  </Accordion>

  <Accordion title="Can patients book themselves?">
    Yes, through your public booking page. Reception still books most hospital appointments, but the two share one calendar and one set of availability rules. See [Booking page designer](/hospital/settings/booking-page-designer).
  </Accordion>

  <Accordion title="Where did Bookings, Products, AI Agents and Analytics go?">
    Those entries are not released. The appointment rail deliberately shows four: **Overview**, **Services**, **Booking Page** and **Settings**.
  </Accordion>

  <Accordion title="If I cancel an appointment, is the patient refunded?">
    No — cancelling frees the slot and notifies the patient, but money is handled separately in [Billing](/hospital/revenue/billing). Refund or void the payment there.
  </Accordion>
</AccordionGroup>

<StillStuck topic="the appointment book" />
