Bookings
Delayed Booking Confirmations
Last updated 8 July 2026
Delayed Booking Confirmations
Use Customer update timing to delay team-triggered customer messages for a short review window. This helps when a team member creates or changes a booking and wants a minute to catch mistakes before the customer receives the SMS or email.
TL;DR
- Go to Settings > Booking settings > Customer update timing.
- Set Team-triggered customer updates to Send immediately, Delay 1 minute, Delay 2 minutes, Delay 5 minutes, Delay 10 minutes, or Delay 15 minutes.
- The booking appears on the calendar immediately; only the customer message waits.
- Pending rows show on booking detail with Send now and Cancel.
- Customer online bookings, customer self-service changes, magic links, and receipts still send immediately.
What gets delayed
The setting applies to team-triggered customer updates from the management app.
| Update type | When it can be delayed |
|---|---|
| Confirmation message | A team member creates a booking for a customer. |
| Reschedule notice | A team member moves or edits a confirmed booking in a customer-facing way. |
| Cancellation notice | A team member cancels a booking and the cancelled-appointment message is enabled. |
The delay does not apply to every outbound message.
| Message type | Behaviour |
|---|---|
| Customer online booking confirmation | Sends immediately. |
| Online booking request acknowledgement | Sends immediately. |
| Confirmation after accepting an online booking request | Sends immediately. |
| Customer self-service reschedule or cancellation | Sends immediately. |
| Magic-link sign-in and manage-booking links | Send immediately. |
| Receipts | Send immediately. |
| Manual resend confirmation | Sends directly and uses the resend cooldown. |
Set customer update timing
Only owners and managers can change the timing setting.
- Go to Settings.
- Open Booking settings.
- Find Customer update timing.
- Open Team-triggered customer updates.
- Choose one of:
- Send immediately
- Delay 1 minute
- Delay 2 minutes
- Delay 5 minutes
- Delay 10 minutes
- Delay 15 minutes
The setting saves automatically. If saving fails, the page shows Confirmation timing not saved with a retry action.
What operators see
When a booking confirmation is delayed after creating a booking, the toast says:
Booking created for [client name] - confirmation sending in [delay]
The toast includes Send now so you can send the confirmation immediately.
The booking detail also shows a compact Customer update row while a customer update is pending, sending, or failed.
| Row label | Meaning |
|---|---|
| Confirmation message | A first booking confirmation is waiting. |
| Reschedule notice | A customer-facing reschedule notice is waiting. |
| Cancellation notice | A cancellation notice is waiting. |
| Sends in 4:59 | The scheduled send time is still in the future. |
| Sending now | The update is being sent. |
| Failed | Sending failed after retry attempts or needs manual retry. |
Actions on the row:
| Action | What it does |
|---|---|
| Send now | Sends the current customer update and clears the pending row. |
| Try again | Appears after a failed send and retries the update. |
| Cancel | Cancels the pending customer update. The booking stays on the calendar. |
Successful manual sends show Customer update sent. Cancelling shows Pending customer update cancelled.
What happens during the delay
OpenChair stores one durable pending customer update for the booking. If the team changes customer-facing details before it sends, the pending update is refreshed so the customer receives the latest version rather than an older one.
Customer-facing changes include staff, start time, customer name, customer email, and customer phone. Calendar drag-and-drop moves refresh a pending first confirmation; if the customer was already notified, the normal reschedule notice behaviour applies.
If the booking becomes cancelled, declined, expired, or no-show before a pending confirmation or reschedule notice sends, OpenChair cancels the pending row.
Automatic sending and retry
A background job processes due pending updates. The job claims a row before sending so a cron run and a Send now click do not send duplicate messages.
If delivery fails, OpenChair records the error and retries. After repeated failure, the booking detail row shows a failed state and Try again.
Booking approval is different
Delayed booking confirmations are not the same as Review first booking approval mode.
| Feature | What waits |
|---|---|
| Customer update timing | Only the outbound customer SMS or email waits. The booking is already confirmed. |
| Review first | The online booking request waits for venue approval before it becomes a confirmed booking. |
Troubleshooting
| Issue | What to check |
|---|---|
| Customer did not receive a confirmation yet | Open the booking detail and check for a Customer update row. It may still be counting down. |
| A booking confirmed online sent immediately | Expected. Customer self-service bookings are not delayed. |
| Confirmation timing not saved | Retry from Customer update timing. Confirm you have owner or manager access. |
| Customer update not sent | Use the retry action. Check that the booking still has an email address or phone number. |
| Customer update not cancelled | Retry from the error panel or refresh the booking detail and try again. |
| The pending row disappeared | It may have sent, been cancelled, or become ineligible because the booking status changed. |
FAQ
What does Customer update timing delay?
It delays team-triggered customer updates: booking confirmations, reschedule notices, and cancellation notices.
Does this make the booking pending?
No. The booking is confirmed on the calendar immediately. Only the outbound customer SMS or email waits.
Do online booking confirmations wait too?
No. Customer self-service bookings, customer self-service changes, magic links, and receipts still send immediately.
Can I send a pending update early?
Yes. Open the booking detail and select Send now on the Customer update row. If the row has failed, the same action appears as Try again.