Skip to main content

[Admin] Pause & Resume memberships

Members can pause their membership without cancelling — their account stays intact, billing stops, and they resume where they left off. This feature significantly reduces churn: industry data shows paused members return at higher rates than cancellers.

Where to enable:

  • Clubs: Admin → Settings → Membership policies → "Allow members to pause"
  • Studio: Admin → Settings → Membership policies → "Allow members to pause"

Configuration:

  • Toggle pause on/off (product-wide)
  • Optional max-duration cap (1–12 months), default unlimited
  • Per-plan override available for Studio (some plans may not be pausable)

How pause works under the hood:

  • Member clicks "Pause for N days" in their dashboard
  • Stripe is told to pause billing via `pause_collection: { behavior: 'void', resumes_at: <unix> }` — no charges during pause, no proration
  • Membership status flips to `'paused'` with `pausedAt` + `pauseResumeDate` timestamps
  • Email confirmation sent to member with exact resume date
  • On the resume date, Stripe automatically reactivates billing; status flips back to `'active'`

What stays active during pause:

  • Member's account + profile + history
  • Previous attendance / booking records
  • Community access (if your product allows — Clubs can toggle)

What pauses:

  • Billing (no charges)
  • New bookings (depends on your setting)
  • Class-pack consumption countdown (if applicable)

Audit trail:

Every pause + resume writes to `membership-package-history` with `membership_paused` / `membership_resumed` actions + who (member self or admin) + when + reason.

Admins can pause on a member's behalf via the member's row in the admin dashboard (useful for "I broke my leg, pause me" phone requests).

Still have questions?