Membership types

When to use subscription, one-time, and installment plans, and what happens once members start paying.

Overview

A membership type is a priced plan members pay to join your club — for example Junior, Senior, or Family. Each type has a name, an amount, a currency, and a billing period that decides how often the member is charged. Membership types live under Memberships → Membership Types in Club OS.

Every invoice you raise — whether it goes through Stripe Checkout or you record an offline payment — is attached to one membership type. Get this list right before you invite members or open up your public join page.

The three billing periods

When you create a membership type you pick one billing period:

Billing period What members are charged Best for
Annual The full amount once per year, recurring automatically through Stripe. Standard yearly subs (most clubs).
Monthly The full amount once per month, recurring automatically through Stripe. Casual or rolling memberships.
One-time The full amount once, no recurrence. Optionally split into installments — see below. Camps, clinics, term fees, drop-in passes.

Annual and monthly types are subscriptions: Stripe keeps charging the member's saved card on the cycle until the subscription is cancelled. One-time types charge once and stop.

Installment plans (one-time only)

If you pick One-time as the billing period, an Installment plan dropdown appears with these choices:

  • Pay in full — one charge for the full amount.
  • 3 months / 6 months / 9 months / 12 months — split the total into that many equal monthly charges.

The math is straightforward: total ÷ number of months, rounded to the cent. A USD 600 one-time fee on a 6-month plan becomes six monthly charges of USD 100. Stripe handles the recurring charges; the plan ends automatically after the final installment — there's nothing to cancel.

Installment plans are only available on One-time types. If you switch a draft type from One-time to Annual or Monthly, the installment selection is cleared automatically.

Creating a membership type

  1. Sign in to Club OS and open your club.
  2. Go to Memberships → Membership Types.
  3. In the Add membership type panel on the right, fill in:
    • Name — what members will see on the join page and on invoices (e.g. Junior, Senior, Family).
    • Amount and Currency — supported currencies are USD, PHP, EUR, GBP, AUD, and CAD.
    • Billing periodAnnual, Monthly, or One-time.
    • Installment plan (one-time only) — Pay in full or 3 / 6 / 9 / 12 months.
  4. Click Add membership type.

The type appears in the active list immediately and is available the next time someone applies through your public join page or you raise an invoice manually.

Editing and what's locked

Once a membership type has any invoices attached to it, the form locks down to prevent retroactive changes that would mismatch what existing members agreed to pay. From that point on:

  • Name — still editable.
  • Amount — locked.
  • Currency — locked.
  • Billing period — locked.
  • Installment plan — locked.

The edit page surfaces a notice when this happens and shows the locked fields as read-only summary text. If you need to change the price or cycle for new members, create a new membership type and archive the old one.

If a type has no invoices yet, every field is still editable.

Archiving vs deleting

You have two ways to retire a membership type:

  • Archive — hides the type from new signups and from the Add invoice form, but keeps every historical invoice intact and the type itself in the database. Restore it from the Archived tab any time.
  • Delete — removes the type permanently. Only allowed when the type has no invoices. If members have ever been billed against it, the Delete button is replaced with Archive and the API rejects deletes with a "has active invoices" message.

Archiving is the right move 99% of the time — it preserves your finance history. Reserve Delete for types you created by mistake before anyone signed up.

Edge cases / gotchas

  • Free (zero-amount) types. You can save a type with an amount of 0.00 — useful for trial or honorary members — but Stripe Checkout won't be offered for it because there's nothing to charge. Members assigned a free type are activated without payment.
  • Switching billing period clears the installment plan. If you start filling out a One-time type with a 6-month plan and then switch to Annual, the installment selection is dropped. You won't see a leftover 6 months value carried over.
  • Currency change is locked once anyone has paid. If you launched with USD and want to charge in PHP, create a new type — you can't flip the currency on a type that already has invoices.
  • Subscribers keep paying their original price. Editing the name on a locked type does not change what existing subscribers are billed; their Stripe subscription continues at the original amount.

When in doubt, prefer creating a new membership type and archiving the old one over editing — it leaves a cleaner audit trail and avoids surprising members who already enrolled.

Was this helpful?