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?