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

# Booking basics

> Book appointments against your services in BillBasket — pick a service, time, and customer, see the day's agenda, and let capacity limits prevent double-booking.

The Appointments add-on turns BillBasket into a booking calendar for
service businesses — salons, clinics, repair desks, anywhere customers
reserve a time slot. You book against the **services** you already sell, and
BillBasket keeps a day-by-day agenda of who's coming and when.

<Note>
  Appointments is an optional add-on module — turn it on from Settings →
  Add-ons (Admin PIN required) if you don't see it in your menu. It works
  hand in hand with your **services**; set up which services can be booked
  first — see [Bookable services setup](/customer-guide/appointments/bookable-services).
</Note>

## Understanding the fields

The **booking form** captures:

* **Service** — which service is being booked. The list only shows services
  you've marked bookable, and each shows its default duration.
* **Start date & time** — when the appointment begins. BillBasket fills the
  **end time automatically** from the service's duration, so you don't set it
  by hand — change the duration on the booking if this one runs longer.
* **Customer** (optional) — the party the booking is for; picking one lets
  you send them a confirmation or reminder later.
* **Staff / provider** (optional) — the employee delivering the service. If
  you assign a provider, that person can only take one appointment at a time,
  so assigning a provider effectively caps that slot at one booking.
* **Notes** — anything the staff should know for the visit.

### The day agenda

The home screen shows one day's bookings in time order, with a week strip to
jump between days. Each booking carries a **status** — booked, confirmed,
in-progress, completed, cancelled, or no-show — that you move along as the
visit happens.

### Capacity — no accidental double-booking

Each service has a **parallel capacity** (how many can run at once — see
[Bookable services setup](/customer-guide/appointments/bookable-services)).
When a time slot is already full, BillBasket blocks the booking with a "slot
full" message instead of overbooking — and offers to add the customer to the
[waitlist](/customer-guide/appointments/waitlist-and-cancellations) instead.

## See it on your device

<Tabs>
  <Tab title="Phone">
    <Frame>
      *Screenshot coming soon — Android phone view.*
    </Frame>
  </Tab>

  <Tab title="Tablet">
    <Frame>
      *Screenshot coming soon — Android tablet view.*
    </Frame>
  </Tab>

  <Tab title="Windows PC">
    <Frame>
      *Screenshot coming soon — Windows desktop view.*
    </Frame>
  </Tab>
</Tabs>

## Try it: James Spa

<Steps>
  <Step title="Open Appointments and tap Book">
    James Fernandes opens the **Appointments** calendar at James Spa and taps
    the Book button to reserve a slot for a returning client.
  </Step>

  <Step title="Pick the service and time">
    He selects "Aromatherapy Massage" — BillBasket fills in the 60-minute end
    time automatically — sets the start to 4:00 PM, and picks the client and
    Priya as the provider.
  </Step>

  <Step title="See it on the day agenda">
    The booking appears on today's agenda in time order, marked **booked**.
    As the client arrives James moves it to **in-progress**, then
    **completed** when the session ends.
  </Step>

  <Step title="Hit a full slot">
    When another client asks for the same 4:00 PM slot with Priya — already
    at capacity — BillBasket shows "slot full" and offers to add them to the
    waiting list instead of double-booking.
  </Step>
</Steps>
