Recurring bookings: the same appointment, repeated
Updated on Tuesday 15 September 2026
Book every Friday at 3pm in one go. The conflict report, what to do with each clashing date, and how to change one appointment without touching the rest.
Some clients always come on the same day at the same time: the touch-up every three weeks, the weekly massage, the ten sessions of the package they already paid for. Entering that one appointment at a time costs twenty minutes at the counter and, sooner or later, a week somebody forgot to book.
A recurring booking (a series) does it in one go: you set the rule — “every Friday at 3pm, for ten weeks” — you look at the full list of dates, and only then is anything created.
The three screens
- The rule. What, with whom, which day, what time, how often and how many times.
- The conflict report. Every date the rule produces, one by one, with a reason for each one that cannot be booked. Nothing has been created yet.
- The series. Once created: the appointments that were booked, the ones that were skipped, and why.
Writing nothing before step 2 is the most important design decision here. Software that books ten appointments and silently “skips” the ones that clash is software that loses you a client without telling you.
Creating a series
Two ways in:
- From a package, to book the client’s remaining sessions in one go. The form arrives with that person already chosen, with the services the package covers, and with the number of appointments capped at what the balance can pay for.
- On its own, for a standing appointment with no package involved. You pick the client as you would on any booking (and create them there if they’re new).
Then you fill in the rule:
| Field | What to put |
|---|---|
| Branch | Where it happens. |
| Service | One only. A series repeats an appointment, not a combo. |
| Professional | A specific person, or Anyone who’s free. Careful: if you name someone, the appointment happens with them or not at all. |
| Weekday and time | Your business’s local time. |
| Repeats | Every week, or every 2 to 8 weeks. |
| How many appointments | Up to 52, and never more than a year ahead. From a package, up to what the balance covers. |
| Starting from | The first appointment falls on the first chosen weekday on or after that date. |
| Internal notes | Only the team sees these, never the client. |
And one tick box worth understanding: “Tell the client with a single message”. A series does not send a confirmation per appointment — ten emails in a row end up marked as spam. It sends one, for the first appointment, and the client sees everything that was booked. Untick it and the whole series is booked silently, and you tell them yourself.
When it’s ready, hit See the dates.
The conflict report
Every date shows up here as either Free or Clash, with a count of each at the top.
These are the possible reasons, and they are all of them:
| Reason | What happened |
|---|---|
| The branch is closed that day | The branch doesn’t open on that weekday. |
| A block or a holiday covers that slot | One of your blocks, the branch’s, or the professional’s. |
| The professional is already busy then | You named a specific person and they are taken. |
| No professional is free then | You chose Anyone and nobody is available. |
| That date is in the past | The rule starts before today. |
| The package has expired by that date | The series draws on a package that expires before that appointment. |
| It’s beyond the year you can book ahead | The horizon limit. |
| That time doesn’t exist that day | It’s the day the clocks change and the hour is skipped. |
For each clash you choose what to do:
- Skip (what happens by default if you touch nothing): that date isn’t booked, and the reason is recorded on the series. Nothing is dropped in silence.
- Move to…: give that one appointment another date and time. It is still “appointment number 6” of the series.
- Book anyway: tries to book it regardless of the warning. Citauno checks the calendar again as it writes, so a slot that is still taken is never booked over: that appointment goes to “skipped” with its reason. It is not a way to double-book.
When you confirm, Citauno recalculates the dates before writing: if somebody took a slot while you were reading the report, that appointment falls out on its own instead of booking over them.
What you end up with
Ordinary bookings. Each appointment in the series:
- Shows on the calendar and in the professional’s agenda.
- Sends its reminder like any other.
- Is charged, rescheduled and cancelled like any other.
- If the series came from a package, it takes one session under the usual rules (see Packages).
The series screen shows what was created, what was skipped and why, how many are still to come, and the state (Active, Finished, Cancelled).
Changing one appointment without touching the rest
This is the question everyone asks, so here it is as a table:
| You want to… | Do this |
|---|---|
| Move one appointment | Reschedule that booking. The series doesn’t change at all. |
| Cancel one appointment | Cancel just this one. The rest stands. |
| Stop from a date onwards | Cancel this one and the following. Past appointments are untouched. |
| End the series | Cancel the series: everything still to come is cancelled. |
| Change the rule (other day, time or professional) | Cancel what’s left and create a new series. |
There is no “edit all”: a series isn’t a live rule being re-evaluated, it is real appointments already sitting in somebody’s diary. Rewriting the rule backwards would move bookings the client has already confirmed.
When you cancel several appointments at once the client gets one message, not one per appointment. And if the appointments came from a package, the sessions go back to the package exactly as they would on any cancellation.
Daylight saving
If your business is in a country that changes its clocks, “Fridays at 3pm” means 3pm on your clock, always, before and after the change. The appointment does not drift by an hour.
The only odd case is the day the clock jumps forward and that hour doesn’t exist: that date shows in the report with exactly that reason, and you move it to another time.
Limits
- Up to 52 appointments per series and one year ahead.
- Every 1 to 8 weeks. There is no “every day” and no “first Tuesday of the month”.
- One service per series.
- It is an internal tool: clients cannot build a series from your public page.
- An admin creates it (one submit here commits up to 52 slots of the diary). See Roles and permissions matrix.
Common mistakes
| Symptom | Cause | Fix |
|---|---|---|
| “That rule produces no dates” | The weekday and the start date never meet inside the horizon | Check the chosen weekday and the “starting from” date |
| “The branch doesn’t open on that weekday” | You picked a day the branch is closed | Change the day, or set that branch’s opening hours |
| “That professional doesn’t work at that branch” | They aren’t assigned to the branch, or don’t perform that service | Check their record under Team, or choose Anyone |
| Fewer appointments were booked than I asked for | There were clashes and they were skipped | They’re listed with their reason on the series: book those by hand |
| From a package, fewer than I wanted | The package didn’t have that many sessions left | The balance is the cap: sell or add sessions and create another series |
| The client says nobody told them | The notify box was unticked, or they only got the message for the first appointment | That is the intended behaviour: a series sends one message |
| I cancelled the series and the old appointments are still there | Cancelling never touches the past | Correct: those are history, and each was either charged or not |
Good habits
- Read the conflict report properly. It is the only moment when deciding is cheap.
- Don’t pin a professional unless it matters. With Anyone who’s free, far more dates get booked.
- Start with 8 or 10 appointments, not 52. Adding another batch takes a minute; unpicking a year does not.
- If the series comes from a package, check the expiry first: dates falling after it arrive flagged, but extending the package beats skipping four appointments.
- Send one message and follow up on WhatsApp. Ten automatic emails are the fastest way to have your mail treated as spam.