> ## Documentation Index
> Fetch the complete documentation index at: https://docs.1club.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Organizations and clubs

> How 1Club's multi-tenant model works - organizations as the top-level tenant, clubs as locations, org and club switching, and how every record is scoped by organizationId.

Every record in 1Club belongs to an **organization** - the top-level tenant that owns your members, bookings, plans, invoices, messages, and settings, and the unit of billing, branding, and permissions. An organization has one or more **clubs**, the physical locations (a gym, studio, court complex, or venue) where activity actually happens. A single user can belong to more than one organization, with a different role in each, and when they open the admin they work inside one organization at a time.

## When this matters

* **Opening a second location** - add it as another club in the same organization, so the two share memberships, billing, and branding while each keeps its own address, hours, sports, and amenities.
* **Running two separate businesses** - keep them as two organizations under one login, each with its own Stripe account and member base, and move between them with the organization switcher.
* **Comparing locations** - admins switch to **All clubs** for the org-wide picture, while front-desk staff work within one club.
* **A member visits two locations** - members belong to the organization, not to a club, so front desk at either location finds the same member record instead of creating a duplicate.
* **Data that seems to be missing** - most "missing data" reports are really the wrong organization or club selected.

## Organizations

An organization is your 1Club account. Its identity and account-wide settings live under **Settings** > **Organization** (see [Organization settings](/settings/organization)).

The organization owns:

* **Identity** - name, slug, and description used in emails, member portals, and admin headers. The organization **Email** is the fallback sender for organization-wide mail; see [Email sending](/settings/email-sending).
* **Locale and formatting** - time zone, currency, supported locales, and default locale. The time zone is the default for every date-related feature: today/this-week widgets, recurring jobs, and exports.
* **Billing and branding** - Stripe mode and connection, plan, and brand assets apply to the whole org and are shared by all of its clubs.
* **People** - members, contacts, staff, and the users who can sign in to the admin. A member belongs to the organization, not to one of its clubs: their memberships, bookings, check-ins, and orders each carry their own club.

Because everything is scoped by `organizationId`, a member, booking, or invoice created in one organization is invisible in another - even if the same person administers both.

<Note>
  "Organization" is an internal term. It is never shown to members in the mobile app or portal. To a member, your brand is simply the club (or a set of clubs) they choose from. Use "organization" in the admin and in staff-facing docs, not in member-facing copy.
</Note>

### Switching organization

If your user belongs to more than one organization, an organization switcher appears in the organization menu at the top of the left rail. Selecting a different organization:

1. Calls the switch-organization flow, which reissues your session for the new org (the org context is carried in your JWT).
2. Drops all cached queries so the previous organization's records cannot linger on screen.
3. Reloads every list and detail view against the new organization's data.

Your role, permissions, currency, and time zone all follow the organization you switch into. If a page or menu item disappears after switching, it is because your role in the new org does not grant it - not a bug.

<Note>
  Creating a new organization is a platform-level action available only to 1Club staff (super admins). To add another organization to your account, contact support rather than looking for a "New organization" button in settings.
</Note>

## Clubs

A club is a physical location that belongs to an organization. Every organization has at least one club; multi-location businesses add more. Manage them under **Settings** > **Clubs** > **Clubs**, which lists each club as a card showing its name, slug, address, contact details, status, and 1Club review rating.

Bookings, areas, classes, and schedules are associated with a club, so the club you have selected determines which location's activity you are looking at.

### Creating or editing a club

Click **Add** on the Clubs list to create a club, or open a card to edit one. The club form is grouped into sections:

**Basic information**

* **Club name** - the location's display name.
* **Slug** - the URL-safe identifier used in public links (lowercase letters, numbers, and hyphens). Change it carefully; existing links break.
* **Subtitle** and **Description** - short tagline and richer copy shown on public booking pages.
* **Status** - **Active**, **Hidden**, or **Closed**. **Active** is visible to everyone. **Hidden** keeps the club fully open to your staff (schedule, bookings, and reports keep working) but takes it off your website, the member portal, and the 1Club marketplace. **Closed** retires it: it leaves the schedule, the club switcher, and every club picker. Use **Set closing date** on the club page to close it automatically on a given day.
* **Club type** - an optional preset (for example a racket-sports or fitness template) that seeds sensible defaults.
* **Club managers** - staff contacts who receive contact-form messages sent to this club. When empty, those messages fall back to organization-level staff.

**Contact information**

* **Phone**, **Email**, and **Website** - the location's public contact details. **Email** does double duty: it is also the **From** address on most member email for this club, so keep it on a domain you have verified. See [Email sending](/settings/email-sending).
* **Address** - typed or picked from autocomplete; latitude and longitude are stored so the location can be mapped and its time zone derived.
* **Social profiles** - links shown on public pages.

**Media**

* **Club logo** and **Club images** (up to 8) - shown on the public booking and marketplace pages.

**Features**

* **Sports** - the activities offered at this club. These feed area types, class setup, and marketplace discovery.
* **Amenities** - club-wide services such as showers, parking, or a cafe. Amenities describe the whole location, distinct from per-area [attributes](/settings/areas) that describe an individual court or room.

**Operating hours**

* Per-day open and close times. Areas can fall back to these when they do not set their own hours.

Editing uses a floating save bar: change any field and **Save** appears at the bottom. Nothing is auto-saved.

### Club extras

* **Daily summary** - toggle **Send to admins** and pick a send time to email a per-club daily summary.
* **Google Business Profile** - connect a club to import Google reviews, ratings, and business data. See [Google Business](/settings/integrations/google-business).
* **OpenStreetMap** - connect to enrich the club with address, sports, amenities, opening hours, and contact details.
* **Visibility** - a club can be Public or Private, controlling whether its public page is reachable.
* **Booking labels** - your own names for the booking cards members choose from. See [Booking labels](#booking-labels).

### Booking labels

When members book, they first pick what they want to book: time with a coach, a place in a class, or a court or room. Each choice is a card, titled **Private training**, **Group activities**, and **Areas** by default. Booking labels let each gym give those cards its own names, so members read the words your gym actually uses.

* **A tennis academy** renames **Private training** to "Lessons", because that is what its coaches sell.
* **A boutique studio** renames **Group activities** to "Classes".
* **A padel venue** whose courts have no area type renames **Areas** to "Courts".

To set them, open **Settings** > **Clubs** > **Clubs**, open the club, and expand **Booking labels** in the right-hand column, below **Google Business Profile** and **Daily summary**. The section starts collapsed because most gyms never change it. Type a name, then click **Save** on the save bar.

| Field | Default card title | Where members see it |
| - | - | - |
| **Name for private training** | Private training | The card for booking a coach's time |
| **Name for group activities** | Group activities | The card that lists your classes |
| **Name for areas** | Areas | The card for areas that have no area type of their own, and the single card shown when all areas are shown together |

How the labels behave:

* **Only the title changes.** The line under each card is always set by 1Club: a count such as "4 available", or, under group activities, the names of your class types.
* **A named area type keeps its own name.** A card for an area type such as "Padel court" shows the area type's name, not your areas label. To change that card, rename the area type, which renames it everywhere it appears. See [Areas](/settings/areas).
* **Each club has its own labels.** In an organization with several clubs, set each club separately, so two locations can sell different things under the same card.
* **Up to 30 characters, on one line.** Each translation has the same limit.
* **Leave a field blank to use the default.** The default titles are already translated into every language 1Club supports. Clearing a label also removes its translations.
* **Changes are live as soon as you save**, on your website, the member portal, the mobile app, and 1club.me.

To translate a label, click the **Translations** icon beside its field. Use **Auto Translate** to fill every language your organization offers, or type each one yourself. A member reading in a language with no translation sees the label as you wrote it.

<Note>
  AI assistants connected through [MCP](/mcp/tools) can set the same labels and their translations with `update_club_booking_labels`, which needs the `organization:write` scope (the same one that sets the languages your organization offers). Integrations can call `PATCH /v1/platform/clubs/{slug}` on the [Platform API](/api-reference/introduction).
</Note>

### Switching club and "All clubs"

When an organization has more than one club staff are running, the club is the first crumb of the breadcrumb at the top of each page (for example **All clubs** > **Sales** > **Finance** > **Invoices**). Click it to switch. Switching club re-scopes club-specific views (bookings, schedule, areas, and analytics) to the selected location. A **Hidden** club stays in the list with a badge, because staff still run it.

Users with organization-wide operations access (admins by default) can also select **All clubs** to see aggregated data across every club at once - useful for comparing locations in analytics. Other roles work within a single club. Your last selection is remembered per organization, so switching orgs and back returns you to where you were.

### Deleting a club

Deleting a club is available from the club detail page. A club that still has associated data cannot be deleted - the admin blocks it with "Cannot delete club: it has associated data. Remove or reassign it first." Prefer setting a club to **Closed** when you want to stop activity at a location while keeping its history, or **Hidden** when you only want members to stop seeing it.

## Why the split matters

* **Permissions and access** - Roles (Admin, Manager, Front desk, Instructor, Member) are assigned per organization. When you invite a user you place them in an organization with a role; they see only that organization's data when it is selected. Permission scope (`organization` includes `club` includes `own`) then decides whether they see all clubs, one club, or only their own records. See [Roles and permissions](/reference/roles-permissions).
* **Billing and branding** - Stripe, plan, branding, member portal, and marketplace listing are configured at the organization level, so every club under the org shares the same billing account and brand.
* **Reporting** - Analytics can be broken down by club so you can compare locations, and admins can flip to "All clubs" for the org-wide picture. See [Clubs analytics](/analytics/clubs).
* **Operations** - Bookings, areas, classes, and check-ins are club-scoped, so front-desk staff always act in the context of one location. Members are not: member permissions are always organization-scoped, so every location's desk sees the same member list.

## Worked examples

### Single-location padel club

You run one padel venue. You keep a single organization with one club. Members never see the word "organization" - to them your brand and your one location are the same thing. You set opening hours and sports on the club, configure Stripe once at the org level, and never touch the club switcher because there is only one active club.

### Multi-location fitness brand

You operate three gyms under one brand. You create one organization and three clubs (for example "Central", "Riverside", and "Harbor"). Shared plans, branding, and Stripe live at the org level, so a membership sold at one gym is recognized across the brand. Front-desk staff at each location get the Front desk role scoped to their club, while regional managers use "All clubs" to compare performance. Each gym sets its own address and operating hours.

### Martial arts school plus affiliate gym

You own two legally separate businesses - a jiu-jitsu academy and a strength gym - each with its own Stripe account and member base. You keep them as two organizations under one login. In the morning you work in the academy org; a click on the organization switcher moves you to the gym org, where your role and currency may differ. Nothing crosses between them.

### Yoga studio piloting a second room

You run a yoga studio and open a second reformer Pilates space nearby. You add it as a second club rather than a second organization so the two share memberships, billing, and branding. During the soft-launch you set the new club to **Hidden** so it stays off the website and member portal while staff set it up, then flip it to **Active** on opening day.

## Tips & best practices

* **One org per brand and billing account.** Use separate organizations only when you need genuinely separate billing, branding, or member bases. Otherwise add clubs, which share plans and Stripe.
* **Add clubs, do not clone orgs, for new locations.** Locations that share memberships and billing belong in the same organization as additional clubs.
* **Set the time zone and currency at the org level early.** They drive dates and money everywhere; changing them later shifts how history is reported.
* **Prefer Closed over Delete for clubs.** A club with any associated data cannot be deleted anyway. Closed removes it from the switcher and every club picker while preserving its history.
* **Assign club managers** so contact-form messages route to the right people instead of falling back to org-level staff.
* **Confirm the active org and club before you act.** Most "missing data" reports are really "wrong org or club selected." The organization menu and the breadcrumb show where you are.

## Troubleshooting

**Issue**: A member, booking, or invoice you expect is missing.

**Solution**: Confirm you are in the right organization. Data is scoped by `organizationId`, so records created in another org are invisible here. Use the organization switcher in the organization menu, then re-check.

**Issue**: A club's bookings or schedule look empty.

**Solution**: Check the club in the breadcrumb. You may be viewing a different club, or an admin "All clubs" view that spreads the data across locations. Select the specific club.

**Issue**: A club is missing from the switcher or from members' booking choices.

**Solution**: Members only see **Active** clubs, and a **Closed** club leaves the staff switcher too. Open **Settings** > **Clubs** > **Clubs** and check the club's status.

**Issue**: You can't delete a club.

**Solution**: A club with associated data (bookings, areas, memberships, and so on) is protected from deletion. Reassign or remove that data first, or set the club to **Closed** instead of deleting it.

**Issue**: A page or menu item disappeared after switching organization.

**Solution**: Roles are per organization. Your role in the org you switched into may not grant that module. Check your role for that org under **Settings** > **Organization** > **Users** (an Admin can confirm it). See [Roles and permissions](/reference/roles-permissions).

**Issue**: The wrong currency or time zone shows across the admin.

**Solution**: Those are organization settings, not per-club. Update them under **Settings** > **Organization** > **Details**.

## Related

* [Organization settings](/settings/organization) - Edit org identity, time zone, currency, and locales.
* [Settings overview](/settings/overview) - Where organization and club settings live.
* [Roles and permissions](/reference/roles-permissions) - How roles and permission scope decide what each user sees.
* [Areas](/settings/areas) - Bookable spaces within a club.
* [Clubs analytics](/analytics/clubs) - Compare performance across locations.
* [Signing in](/reference/sign-in) - How one login resolves across organizations.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.