Billing

Membership Plans

Set up recurring memberships with automatic billing, class discounts, and priority booking — and let Stripe handle the rest.

Last updated March 11, 2026

Recurring revenue from memberships can be a real stabilizer for a training business. Instead of relying entirely on per-class bookings, memberships give you predictable income and give your clients a reason to keep coming back.

SitStay’s membership plans handle the billing automatically through Stripe. You set it up once, and it runs on its own.

How memberships work

A membership plan is a recurring subscription tied to a Stripe price. When a client subscribes:

  1. Stripe charges them automatically on your billing interval (monthly or annual).
  2. SitStay marks them as a member of your business.
  3. They get access to member perks — discounted class pricing, priority booking, and anything else you’ve configured.

That’s it. No manual tracking, no chasing invoices.

Creating a plan

  1. Go to Memberships > Plans in your dashboard.
  2. Click New Plan.
  3. Fill in the details:
    • Name — what clients see (e.g., “Monthly Membership,” “Annual Training Pass”)
    • Price — the recurring charge
    • Billing interval — monthly or annual
    • Stripe Price ID — links to the price you’ve created in your Stripe account
  4. Save.

Each plan is connected to a Stripe price, which means you get Stripe’s built-in handling for failed payments, automatic retries, and the full subscription lifecycle. You’re not duct-taping billing together — you’re using real subscription infrastructure.

What members get

Once a client has an active subscription, they’re flagged as a member across your entire business. This unlocks:

Class discounts — Any template, series, or class with a member discount shows the reduced price automatically at checkout. No coupon codes needed.

Priority booking — If you’ve turned on the members-first booking window, members get early access to newly published classes before they open to the public. The window duration is configurable in your business settings.

Visible savings — The booking widget shows both the standard price and the member price side by side. Your members see exactly what they’re saving, which reinforces the value of staying subscribed.

Subscription statuses

SitStay tracks three states:

StatusWhat it means
ActiveCurrent and paid — full member benefits
Past duePayment failed, Stripe is retrying — member benefits continue
CanceledSubscription ended — member flag removed

A client keeps their member status as long as they have at least one active or past-due subscription. Once everything’s canceled, the member flag drops automatically. You don’t have to manage any of this manually.

The Stripe side

Membership billing lives entirely in Stripe. SitStay listens for webhook events to keep everything in sync:

  • New subscriptions appear when a client completes checkout
  • Payment failures and cancellations update automatically
  • Invoices, payment methods, and billing details are managed from your Stripe dashboard

The good news? You don’t need to babysit subscription statuses. The webhook integration keeps SitStay and Stripe aligned without any manual work on your end.