Reservation states: pending, confirmed, completed, no-show, cancelled
Updated on Friday 22 May 2026
The 6 states of a booking, when it transitions between them, and what notifications each change generates.
Every booking in Citauno is in one of 6 states at each point of its life cycle. This is the complete reference.
States table
| State | Color | Meaning |
|---|---|---|
pending |
🟡 Amber | Awaiting confirmation (manual or deposit). |
confirmed |
🟢 Emerald | Approved. Customer and professional notified. |
rescheduled |
🔵 Blue | Time changed. Customer notified. |
completed |
🟣 Indigo | Customer served successfully. |
no_show |
🔴 Pink | Customer didn’t show up. |
cancelled |
🔴 Pink | Cancelled (by the customer or the business). |
Transition diagram
┌─────────────┐
(comes in)──►│ pending │
└──────┬──────┘
│ confirm
▼
┌─────────────┐
│ confirmed │◄──────┐
└──────┬──────┘ │
│ │ (move time)
┌──────────────┼──────────────┘
▼ ▼ ▼
┌─────────┐ ┌────────────┐ ┌──────────┐
│completed│ │ no_show │ │ cancelled│
└─────────┘ └────────────┘ └──────────┘
Terminal states: completed, no_show, cancelled. A booking in these states no longer transitions (except for manually restoring from “cancelled” to “confirmed” if the slot is still available).
When each state applies
pending
When it appears: depends on the business’s confirmation mode:
- Automatic mode: it never goes through
pending— it comes in straight toconfirmed. - Manual mode: any incoming booking stays
pendinguntil the admin confirms or rejects it. - Deposit-required mode: it stays
pendinguntil the customer pays the deposit.
Holds the slot: yes (so it isn’t double-booked while you decide or the customer pays).
Time limit: depends on the mode:
- Manual: no limit, you confirm whenever you can.
- Deposit: 24 hours (configurable) — after that it expires automatically.
confirmed
When it appears: when the admin accepts a pending booking, when the deposit is paid, or when a booking comes in under automatic mode.
Notifies: email + WhatsApp to the customer with the confirmation + an .ics file.
Notifies the team: the professional receives an .ics if they have “Receive calendar invitations” enabled.
rescheduled
When it appears: when you or the customer change the date/time.
Notifies: email to the customer with the new time. If the option is on, WhatsApp too.
Special behavior: the rescheduled state is temporary — within a few hours it moves to confirmed automatically. It’s mainly used so the customer notices the change in their booking list.
completed
When it appears: when you manually mark “Completed” after the appointment. Some businesses automate it: the system marks it as completed automatically X hours after the scheduled time if it wasn’t changed to another state.
Notifies: optionally, an email/WhatsApp asking for a review.
Appears in: revenue reports, professional statistics, customer history.
no_show
When it appears: when you manually mark “No-show” after the appointment.
Notifies: doesn’t notify the customer by default (configurable).
If deposit mode: the customer loses the deposit they paid.
Appears in: the customer’s no-show statistics (visible when they book again).
cancelled
When it appears: when it’s explicitly cancelled. This can be:
- The customer cancels from their confirmation link.
- The admin cancels from the dashboard.
- The system cancels a pending booking that expired.
Notifies: email to the customer confirming the cancellation + (optional) WhatsApp.
If deposit mode: the refund depends on the cancellation policy:
- If they cancel before the cutoff: full refund.
- If they cancel after, or don’t show up: no refund.
Intermediate payment states (if deposit mode)
When the mode is “Deposit required”, the booking has a payment sub-state:
| Sub-state | Description |
|---|---|
awaiting_deposit |
Waiting for the customer to pay the deposit. The booking is pending. |
deposit_paid |
The customer paid the deposit. The booking moves to confirmed. |
deposit_refunded |
Deposit refunded due to an early cancellation. |
balance_due |
Service provided, the balance is still owed (60-100% of the price). |
balance_paid |
The customer paid the balance. Booking is completed. |
Booking source
Independent of the state, every booking has a source that indicates how it was created:
| Source | Description |
|---|---|
online |
The customer booked from the public link (citauno.com/your-business/book). |
admin |
The admin created it from the calendar. |
walk_in |
A customer who showed up without a prior booking. |
phone |
The admin created it after a call. |
waitlist |
Came from the waitlist (when a slot frees up, the system notifies). |
import |
Imported from another system (CSV, migration). |
The source doesn’t change over time; it’s only set at creation.
Transition rules
| From state | To state | Who can do it |
|---|---|---|
pending |
confirmed |
Admin (manual) or system (deposit payment) |
pending |
cancelled |
Admin (rejection) or system (expiration) |
confirmed |
rescheduled |
Admin or customer |
confirmed |
completed |
Admin or system (post-appointment) |
confirmed |
no_show |
Admin |
confirmed |
cancelled |
Admin or customer |
rescheduled |
confirmed |
System (after a few hours) |
cancelled |
confirmed |
Admin (restore — only if the slot is still free) |
Behavior on the calendar
| State | Visual behavior |
|---|---|
pending |
Amber block, holds the slot, isn’t double-booked |
confirmed |
Emerald block |
rescheduled |
Blue block |
completed |
Indigo block (more opaque) |
no_show |
Pink block with an X icon |
cancelled |
Doesn’t appear on the calendar (filterable) |
Reports and metrics
| Metric | States included |
|---|---|
| Total bookings | All except cancelled |
| Revenue | completed |
| No-show rate | no_show / (completed + no_show + cancelled) |
| Pending conversion | confirmed from pending / total pending |
| Late cancellations | cancelled with less than X hours of notice |
How to change a state manually
- Go to the Calendar and tap the booking.
- In the side panel, tap the matching button:
- Confirm if it’s
pending. - Mark completed or Mark no-show if it’s
confirmedand the time has passed. - Cancel from any active state.
- Confirm if it’s
- Optionally check the “Notify the customer” box if you want an email/WhatsApp sent to them.
How to restore a cancelled booking
If you cancelled by mistake:
- Go to Bookings → Filter: Cancelled.
- Tap the booking.
- Tap “Restore” if the time is still available.
- If the time was taken by someone else, it can’t be restored — create a new one.