> ## 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.

# Plans

> Membership and pass templates - pricing, billing frequency, usage limits, and what they get access to.

A plan is the template you sell to members. It defines the price, the billing cadence, the usage allowance, the sports it covers, and a few visibility and accounting fields. When someone is enrolled in a plan they get a **membership** record; the plan itself just describes the offer.

Plans live under **Billing > Plans**. The page opens on the **Active** tab; switch to **Inactive** to see archived offers.

## What a plan defines

The fields you'll fill in when creating or editing a plan:

* **Name** and **description**. Public-facing.
* **Price** per billing period.
* **Signup fee**. A one-off charge added to the first transaction when someone joins. Optional.
* **Billing frequency**: `one_time`, `weekly`, `monthly`, `quarterly`, `annually`, or `custom`. Custom plans pair with a **Custom period** number and a unit of `days`, `weeks`, or `months`.
* **Max uses**. Optional usage cap. For recurring plans this means uses per period; for one-time plans it's the lifetime total.
* **Session unit**: `booking` or `hour`. Decides whether each use is counted as one booking or as the duration of the booking in hours.
* **Valid for**. The list of class types, areas, or instructors the plan grants access to. Empty means broad access; otherwise the membership only counts against the entries you select.
* **Validity period** (one-time plans only). How many days after issue the plan remains usable.
* **Sports**. Tags the plan with one or more sports so it surfaces under sport-specific filtering.
* **Household allowance**. Optional. The number of additional household members the plan covers, used in account-level billing.
* **Auto renewal default**. Whether new memberships on this plan are flagged to auto-renew at the end of each period. Members can flip this on their own membership later.
* **Visibility**: `Public`, `Member_only`, or `Private`. Controls which sales surfaces the plan appears on.
* **Revenue account**. The accounting code transactions for this plan are tagged with. Optional; falls back to the organization default.
* **Images**. Drag-to-reorder gallery shown in the member-facing sales pages.
* **Features**. Free-text bullet list shown on the plan detail card.

The plan's **Active** flag controls whether it can be sold. Toggling a plan inactive does not affect existing memberships on it - they keep running until they expire or are cancelled.

## The plans grid

Each row in **Billing > Plans** shows:

* **Name**
* **Price** (with the signup fee underneath when one is set)
* **Sessions** (max uses, or `-` when unlimited)
* **Frequency** (decoded for `custom` plans into "N days/weeks/months")
* **Auto renewal** default
* **Visibility**

A frequency filter at the top of the page narrows the grid to a specific billing cadence. Above the grid, four cards summarize **Total plans**, **Active plans**, **Average price**, and **Recurring plans** (anything with a billing frequency other than `one_time`).

Click a row to open the details page. The kebab menu on each row has **Edit** and **Delete**.

## Plan details

The details page shows the same fields, plus two stats: **Active memberships** (a count of memberships on the plan currently in `active` status) and **Total revenue** (sum of the prices of those active memberships).

If the plan has images, they appear at the top in a sortable gallery; drag to reorder and the change is saved as you drop.

The right column shows the assigned **Revenue account**, or a "uses organization default" hint when none is set.

## Trials, free days, and intro offers

Plans don't have a built-in "trial days" field. Instead, trials and intro pricing are modelled as [promotions](/marketing/promotions) attached to the plan. This keeps the same offer machinery (eligibility, caps, audience, analytics) behind every kind of incentive.

The plan-details page has a **Promotions** section listing everything currently targeting this plan. **Add promotion** opens the editor pre-scoped to this plan; from there you pick the shape:

* **Free trial** - a discount with **Auto-apply** on and **Value** of 100%. New customers buying this plan get it free the first time, no code. The first-time-buyer rule prevents repeat redemptions.
* **First-month intro** - same idea with a partial discount (e.g. 50% or a fixed amount off the first period). For recurring plans this rides through every renewal once applied, so prefer a one-shot code if you only want it on the creation transaction.
* **Coded promotion** - leave **Auto-apply** off and give the discount a code to share via email or partners. Members or staff enter the code at checkout.

See the [Promotions](/marketing/promotions) page for the full set of controls (schedule, redemption caps, audience targeting, analytics).

## How plans turn into transactions

When a contact buys a plan you get a membership and, immediately, a transaction:

* **One-time plans**: one transaction at the plan's price, plus a separate `membership_signup_fee` transaction when the signup fee is set.
* **Recurring plans**: a `membership_creation` transaction for the current period, with the next period scheduled. An hourly job creates a fresh `membership_recurrence` transaction when each period rolls over.

For plans that have a stored Stripe payment method on file and require payment up front, the recurrence job also attempts to charge immediately. If the charge fails or no default method is on file, the transaction is left `pending` and you collect through the [Invoices](/billing/invoices) or [Transactions](/billing/transactions) flow.

## Plan order

Plans have a single global sort order that controls how they appear everywhere - the public plans listing, the booking-confirmation upsell suggestions, and the admin Plans list. On **Billing → Plans**, drag rows to reorder them; the order is saved and applied across all of those surfaces.

<Note>
  Booking policies no longer keep their own upsell order. When a policy upsells
  plans, they display in the global plan order set here. See [Booking
  Policies](/operations/booking-policies).
</Note>

## Plan categories

You can group plans into categories (for example, "Adults", "Juniors", "Day passes"). Categories are optional - uncategorized plans simply appear ungrouped.

* **Manage categories** - On **Billing → Plans**, click **Categories** to add, rename, reorder, or delete categories. Deleting a category clears it from any plans that used it (the plans are not deleted).
* **Assign a category** - Set a plan's **Category** in the plan dialog. You can pick an existing category or type a new name to create one inline.
* **On your website** - Categories show as a small tag on plan cards and on the plan details page. When a Plans section has more than one category, members get a pill filter (with an **All** option) to narrow the list, and you can scope which categories a section shows from the website editor's **Categories** field.

## Deleting a plan

Delete is permanent and clears the plan record. If active memberships still reference it you'll need to migrate or cancel them first. Inactive plans you've stopped selling but want to keep for historical reporting should stay on the **Inactive** tab rather than being deleted.

## Related

* [Transactions](/billing/transactions) - the records created when someone is billed for a plan.
* [Memberships](/members/memberships) - the per-contact record produced when someone buys a plan.
* [Invoices](/billing/invoices)
* [Promotions](/marketing/promotions) - vouchers, discount codes, and auto-apply trials that attach to a plan.
