Schedule class series
Recurring series and one-off sessions from Programs — days, time, instructor and seats.
A Group class offering says what you run. The schedule says when. They live on different screens, and without the second one clients see nothing — which is why this page is the mandatory second half of every class.
The schedule is built in Catalog → Programs. There are two tools there: a series (a repeating pattern from which the system generates classes) and a one-off class (a single session on a specific date). This article is about series.

1. How to get there
- Open the board.
- In the left menu pick the Catalog hub.
- Click Programs.
The section is always visible, even with zero series — it does not hide itself until you create the first one. If the board has no Group class offering at all, the page shows “No class-type offerings” with a Go to offerings button, and both top-right buttons (New series and One-off class) are disabled.
2. Creating a series — field by field
Press New series top right. A side panel titled New series opens.
| Field | Required | What it does | If you leave it empty |
|---|---|---|---|
| Offering | yes | which group offering runs. The list contains only Group class offerings | you can’t save; when editing, the field is locked |
| Label (optional) | no | the series’ name in the list, e.g. “Yoga — Tuesday evenings" | "Falls back to the offering’s name when left empty.” |
| Days of week | yes | ”Pick the days when the class runs.” | a series with no day won’t save |
| Start time | yes | start of the session, HH:MM, in the board’s timezone | — |
| Duration | yes | minutes; defaults from the offering | — |
| Instructor | yes | who runs it. The list comes from resources in the “person” kind | a series without one shows a red No instructor in the list |
| Capacity | yes | seats for every session this series creates (1–1000); defaults from the offering | — |
| Location | only with 2+ locations | which branch it runs at | — |
| Active from | yes | the first date the series may emit sessions | defaults to today |
| Active until | no | the last date | empty = Open-ended — the series runs indefinitely |
| Pauses | no | temporary suspensions (holidays, vacation) | “No pauses.” |
| Notes (admin-only) | no | ”Not shown to customers. Useful for internal reminders.” | — |
At the bottom sits Advanced: repeat interval — how many weeks apart the pattern repeats:
“1 = every week (the common case). 2 = every other week. 4 ≈ once a month. Does NOT control how long the series runs — use ‘Active until’ for that.”
Press Create. You get “Series created”.
3. What the system does after you save
A series is a rule, not a schedule. The moment you save, Mountify evaluates the rule and creates the real sessions for the next 60 days. Every night a background job walks every active series and tops the horizon up, so there are always about two months of ready sessions ahead.
Consequences:
- Don’t be surprised that you can’t see sessions six months out. They appear once they enter the 60-day window.
- The client sees exactly those materialised sessions. If a series stops emitting them (Active until passed, a pause, archiving), the class disappears from the public page.
- Sessions are created without duplicates — re-evaluating never creates a second copy of an existing session and never wipes the manual tweaks you made to a single date.
The model’s limits are deliberate: a weekly rhythm with chosen days and an interval. Monthly patterns (“every third Thursday”), a repeat count and an end time inside the rule itself are not supported — use Active until for the end and Start time for the time.
4. Editing an existing series
Click the series row (or Edit in the three-dot menu). The panel opens as Edit series and carries a warning:
“Pattern / time changes DO NOT move already-materialised instances. They apply to future dates only.”
That is the most important rule on the screen. In practice:
| Change | What happens to existing sessions | What happens going forward |
|---|---|---|
| change the days | they stay as they are | new dates follow the new pattern; sessions that no longer match the rule are cancelled |
| change the time | they stay at the old time | new ones are created at the new time |
| change capacity | unchanged | new ones carry the new capacity |
| change instructor | unchanged | new ones carry the new instructor |
| add a pause | sessions in the range are cancelled | after the pause the series resumes |
| remove a pause | — | the range is restored |
| pull Active until backwards | sessions after that date are cancelled | the series stops |
If you need to move one specific date (Christmas falls on the Monday your Monday class runs), don’t touch the series — edit that session. See §7.
5. Pauses
The Pauses section takes “from — until” ranges, both dates inclusive.
“Temporary suspensions (holidays, vacation). Future instances in the range are cancelled. Remove a pause to restore the range.”
Press Add pause, pick the two dates, add more rows if needed (Remove pause deletes a row). A series currently inside a pause shows a yellow dot in the list instead of a green one.
Pauses are the right tool for “we close for two weeks in August”. For a single day it is faster to cancel that one session.
6. The series list and what it shows
Series are grouped by offering; when there is more than one group, each gets a header with a count (“{N} series”) and collapses on click. The toolbar has an Offering filter (default All offerings) and a Show archived switch.
Each row shows:
- a state dot — green (active), yellow (paused today), grey (archived);
- the label (or the offering’s name if there is none) and an offering badge;
- the pattern — “Tue, Thu · 19:30”, plus “Every {N} weeks” when the interval isn’t 1;
- the period — “1 Jul 2026 →” for an open-ended series, “1 Jul — 31 Aug 2026” with an end date;
- the instructor (or a red No instructor);
- the location, if any;
- the seat count.
The chevron on the right expands Next 30 days — up to 10 concrete sessions with date, time, instructor, note and a {booked}/{seats} counter. Full ones carry a warning badge. Cancelled ones are hidden by default; when there are some, a Show {N} cancelled link appears (and Hide cancelled to reverse it). If there is nothing: “No upcoming classes in the next 30 days.”
7. Editing or cancelling a single session
From the expanded list, click a session. Edit single class opens with:
- a Scheduled or Cancelled badge, a
{booked}/{capacity} bookedcounter and a From series / One-off tag; - fields Start time, Duration, Instructor, Capacity, Location;
- Customer-facing note — “Shown on the public class detail. Use for last-minute messages (substitute, room, equipment).” e.g. “Substitute instructor today: Maria”;
- the attendee list: {N} attendees and {N} on waitlist, with a Promote button next to each waitlisted person;
- a Cancel this class button.
Capacity cannot drop below the number already booked — the field shows “Min: {N} (current bookings)”.
Cancel this class opens the Cancel this single class? dialog. When there are attendees, the text says how many customers are affected: their bookings are auto-cancelled and the series stays intact. A cancelled session can be brought back with Revive.
8. Duplicating and archiving
- Duplicate (three-dot menu) opens a new series prefilled from the current one. Handy for “same thing but on Wednesday” or “same thing, different instructor”.
- Archive moves the series to the archive. The dialog warns: “Future instances of this series will be cancelled (booked customers see a strike-through); past attendance stays intact. You can revive it later.”
Archived series aren’t gone — flip Show archived to see them.
9. Troubleshooting
I can’t press “New series”. The button is disabled when the board has no Group class offering. Create the class first: Set up a class.
The save is refused with a resource error. The instructor must be a resource of a kind the offering itself requires. Open the class → Resources & add-ons → Main resource.
The series saved but clients see nothing. Three common causes: the series is scheduled at a branch where the offering isn’t available; Active from is in the future; or the workspace lost the Group classes feature.
Sessions stopped appearing after two months. Check Active until. If it is filled in and has passed, the series no longer emits sessions. If it is empty, the nightly job tops the horizon up on its own.
I changed the time and the old sessions kept the old time. By design — see the warning in §4. Move each affected session individually, or cancel the old ones and let the series create new ones.
The list is full of cancelled sessions. Normal after a pattern edit: sessions that no longer match the rule are cancelled so no orphans remain. Hide them with Hide cancelled.
What’s next
- One-off classes — a single session with no series.
- Capacity & waitlist — what happens when a class fills up.
- Group classes — the big picture.
- The calendar (Schedule) — where the materialised sessions appear.