Organization Settings
As an admin, you can customize how your organization looks and operates. All of these settings are found in the organization settings area of the admin panel.
Timezone
Section titled “Timezone”Set your organization’s timezone on the General settings page. This is your studio’s local clock, and it matters more than it might seem:
- Session and rent times are shown in your organization’s timezone for everyone. When you schedule a class for 18:00, every member sees 18:00 — even a member travelling abroad whose phone is set to a different timezone. Times are stored precisely and always displayed on the studio’s clock, so there is never any confusion about when a session actually starts.
- “Today” and date boundaries follow your timezone. Dashboard stats (“sessions today”, monthly totals, attendance streaks) and the day a session belongs to are all calculated against your studio’s calendar, not the viewer’s device or the server.
- The advance booking window is measured in your timezone (see Booking settings below).
The default is Europe/Kyiv. Pick the city closest to your studio from the searchable list. Changing the timezone affects how existing and future session times are displayed — the underlying schedule (for example, “every Monday at 18:00”) keeps its wall-clock time.
Theme and branding
Section titled “Theme and branding”Trainery lets you personalize the look and feel of your organization’s interface:
- Colors: Customize your primary, secondary, and accent colors. The sidebar has its own color palette. Over 20 color tokens are available, including destructive, warning, success, info, tertiary, and muted.
- Fonts: Choose heading and body fonts from Google Fonts.
- Radius and shadow: Adjust the border-radius (roundness of buttons, cards, inputs) and box-shadow (depth/elevation of cards and elevated elements).
- Logo: Upload your organization’s logo. It appears in the sidebar/header branding area for all members. You can remove it at any time.
You can pick from 9 predefined themes (Trainery, Clean Slate, Onyx, Frost, Aurora, Dune, Midnight, Brutalist, Vapor) or create a custom theme. Custom themes inherit from a base theme and let you override specific color tokens.
Applying a theme takes effect immediately for all members.
The default theme is “Trainery”. Try the predefined options first — you can always switch to a custom theme later if you need more control.
Public links
Section titled “Public links”Add your studio’s website and social profiles so members can reach you outside the app. Found at the top of the Brand tab.
- Website: Your studio’s main website.
- Instagram: Your Instagram profile URL.
- Facebook: Your Facebook page URL.
- Telegram: Your Telegram channel or chat URL.
Each field is optional and saved independently. Once saved, the populated links appear as small icons in the sidebar (above the user menu) for every member, with a single click opening the page in a new tab. Leave a field blank to hide that icon entirely.
URLs must include the protocol (
https://...orhttp://...). The icon row stays hidden until at least one link is set, so a brand-new organization will not see an empty placeholder.
Booking settings
Section titled “Booking settings”Control how members interact with the booking system:
- Cancellation deadline (default: 3 hours, range: 0—168 hours): How many hours before a session starts members must cancel to receive a pass refund. Cancellations after the deadline are blocked. Set to 0 to allow cancellation any time before the session.
- Advance booking window (default: no limit, range: 1—365 days or none): How far in advance members can book sessions, counted in calendar days in your organization’s timezone. When set, sessions beyond this window are visible but not bookable. Leave empty for no restriction.
- Buffer time (default: off, range: 5—240 minutes): Set a minimum gap between trainings at the same space. When enabled, the system prevents scheduling sessions that would conflict within the buffer window. Useful for allowing setup/cleanup time between sessions.
- Auto-cancel for low participation (default: off): When enabled, a background job checks each session at the configured time before start. You configure:
- Check hours (default: 24, range: 1—168): How many hours before the session to check. Lower values give members more time to book; higher values give earlier certainty.
- Minimum participants (default: 1): Sessions with fewer confirmed bookings than this threshold will be auto-cancelled.
- Notify-only mode (default: off): When on, the system sends a warning notification to affected members and trainers but keeps the session active. Useful for soft warnings without actually cancelling.
Waitlist
Section titled “Waitlist”- Waitlist enabled (default: on): When enabled, members can join a queue when sessions are full and are automatically promoted (with notification) when a spot opens. When disabled, full sessions simply show as unavailable and members cannot join a queue.
Pass settings
Section titled “Pass settings”Choose how passes behave in your organization:
- Start on first use (default: off — starts on assignment): Controls when a pass validity countdown begins.
- Off: Validity days count from the moment the pass is granted to the member.
- On: Validity days count from the member’s first booking with that pass.
- This is useful when you grant passes in advance — members do not lose validity days before they attend their first session. Applies to all new pass grants; existing passes are unaffected.
- Extension on cancel (default: off): When enabled, the session cancel dialog offers trainers an option to extend affected members’ pass expiry by a configurable number of days. This compensates members when sessions are cancelled unexpectedly.
Attendance window
Section titled “Attendance window”Set how many minutes after a session ends trainers can still mark attendance (default: 120 minutes, range: 0—1440 minutes).
Outside this window, the attendance UI locks and trainers can no longer update who attended. Set to 0 to require real-time marking during the session only. This gives trainers a grace period to record who showed up without requiring them to do it during the session itself.
Locales
Section titled “Locales”Configure which languages your organization supports:
- Default locale: The primary language used across the interface. Used as the default for new members and as the fallback for multilingual content. Cannot be unchecked from the available locales list.
- Available locales: Additional languages members can choose from. Members see a language switcher with only these options. When empty, all active system locales are allowed.
Multilingual fields (like training names, pass descriptions, and space names) will prompt for content in each available locale.
Notification settings
Section titled “Notification settings”Adjust how notifications behave for your organization:
- Disable notification types: Turn off specific notification categories that are not relevant to your organization. Disabled types are never sent to any member regardless of their personal preferences. For example, disable “Pass requested” if your organization does not use pass requests.
- Reminder timing (minimum: 5 minutes): Set how many minutes before a session to send training reminders. Lower values send reminders closer to session time; higher values give more advance notice.
Members can further customize their own notification preferences per channel (in-app, push, email, Telegram), but the organization-level settings define the baseline. Types disabled here are not shown in members’ settings at all.
Available notification types
Section titled “Available notification types”| Category | Type | What it notifies |
|---|---|---|
| Bookings | Booking confirmed | A member successfully booked a session |
| Bookings | Booking cancelled | A booking was cancelled (by the member or an admin) |
| Bookings | Booking waitlisted | A member was placed on the waitlist |
| Bookings | Waitlist promoted | A member was promoted from the waitlist to confirmed |
| Training | Training cancelled | A training session was cancelled |
| Training | Training reminder | Upcoming session reminder |
| Training | Training rescheduled | A session was moved to a different time or date |
| Training | Auto-cancel warning | A session may be cancelled due to low participation |
| Passes | Pass granted | A pass was granted to a member |
| Passes | Pass expiring soon | A pass is about to expire |
| Passes | Pass expired | A pass has expired |
| Passes | Pass sessions low | A pass has few remaining sessions |
| Passes | Pass session refunded | A session was refunded back to a pass |
| Passes | Pass requested | A member requested a pass (admin-facing) |
| Passes | Pass request rejected | A pass request was rejected (member-facing) |
| Members | Member invited | A new invitation was sent (admin-facing) |
| Members | Member joined | A new member joined the organization (admin-facing) |
| Members | Role changed | A member’s role was changed (admin-facing) |
Rent settings
Section titled “Rent settings”If your organization rents out spaces, you can configure the rental system here:
- Enable or disable the rent feature entirely (default: off). When off, the rent section is hidden from the admin panel and calendar. When on, admins can create space rentals that appear on the calendar alongside training sessions.
- Default rent price: Set a fallback price used when no per-space price is configured. If no default is set either, the price must be specified manually on each rental.
- Per-space price overrides: Set custom default prices for individual spaces in the space management section. Price hierarchy: explicit rental price > space default > tenant default.
Permission overrides
Section titled “Permission overrides”While each role comes with a default set of permissions, you can fine-tune access for individual members:
- Grant additional permissions to a specific member beyond what their role normally allows. The member gains that capability immediately (on next login/token refresh).
- Revoke specific permissions from a member that their role would normally grant. The member loses that capability immediately.
This is useful when you need someone to have a particular capability without changing their entire role.
For adjusting the default permissions that apply to all members of a given role, see the role configuration section under system settings.