The member portal gives your membership customers a self-service dashboard where they can view their benefits, check credit balances, manage upcoming bookings, update their payment method, and make new bookings. The portal is accessible at /member-portal.
Login
Members log in using a one-time password (OTP) sent to their email address:
- Enter the email address associated with their membership.
- Receive a one-time code via email.
- Enter the code to authenticate.
No password is required. The session is stored in the browser and expires after a configurable duration. The session keys are member_portal_session and member_portal_session_expiry.
Dashboard sections
Membership overview
The top of the dashboard shows:
- Current tier name and description
- Membership status (active, paused, cancelled, pending cancellation)
- Billing cycle (monthly, annual)
- Current period start and end dates
- Tier benefits -- list of benefits included in the membership
Credits
When credits are enabled for the membership tier:
- Current balance -- available credits
- Credit type (dollar credits, booking credits, etc.)
- Last renewal date and next renewal date
- Lifetime earned -- total credits earned since membership started
Quick book
The member portal includes a Quick Book section that allows members to initiate a new booking directly from the portal. This pre-fills their information and applies membership pricing automatically.
Upcoming bookings
A list of future reservations that have not yet occurred, showing date, time, inventory, and status.
Past bookings
Completed rental history for the member.
Actions
| Action | Description |
|---|---|
| Pause membership | Temporarily suspend the membership while retaining tier and benefits. Subject to the pause policy (maximum pauses per year, maximum pause duration). |
| Resume membership | Reactivate a paused membership. Billing resumes on the next cycle. |
| Cancel membership | End the membership. Cancellation takes effect at the end of the current billing period if cancelAtPeriodEnd is set. |
| Change tier | Switch to a different membership tier. Opens a tier change dialog showing available tiers and their benefits. |
| Update payment method | Update the card on file via Stripe's secure setup form. Opens a Stripe Elements payment form directly in the portal. |
| Log out | End the current session and return to the login page. |
Pause policy
Membership pausing is governed by the tier's pause policy:
| Setting | Description |
|---|---|
| Enabled | Whether pausing is allowed for this tier |
| Max pauses per year | Maximum number of times a member can pause per year |
| Max pause duration (days) | Maximum length of a single pause period |
The portal tracks how many times a member has paused (pause.pauseCount) and prevents pausing when the limit is reached.
Cancel policy
Cancellation is governed by the tier's cancel policy:
| Setting | Description |
|---|---|
| Enabled | Whether self-service cancellation is allowed |
| Minimum commitment months | Members cannot cancel before this period has elapsed |
When a member cancels, their membership is flagged for cancellation at the end of the current billing period. They retain access until then.
Configuration
From your admin settings, configure membership features:
- Tiers -- define membership levels with different benefits, pricing, and credit allocations
- Credits -- set monthly or annual credit allocations per tier
- Discounts -- percentage or fixed discounts per tier, applied automatically at checkout
- Priority booking -- give members early access to availability
- Pause and cancel policies -- configure rules for pausing and cancelling memberships
- Billing options -- set minimum commitment periods and billing cycles
Share the member portal URL with your customers so they can manage their own accounts. Self-service payment updates reduce failed billing and churn. Pausing a membership retains the member's tier -- they do not have to re-qualify when they resume. Credits roll over or reset based on your rollover policy.
Cannot log in -- Make sure the customer is using the same email address associated with their membership. Check that the membership is active and not expired.
OTP not arriving -- Verify the email address on file. Check the spam folder. OTP emails are sent via your configured email provider.
Credits not showing -- Credits are allocated on the billing date. If the member just signed up, credits will appear after their first billing cycle.
Discount not applying at checkout -- The member must log in through the booking widget or checkout before the review step for discounts to apply. Verify the membership tier has discounts configured.
Cannot update payment method -- Check for popup blockers. The Stripe payment form renders inline in the portal.
Cannot pause membership -- The member may have reached the maximum number of pauses for the year, or the tier's pause policy may be disabled.
Cannot cancel membership -- Self-service cancellation may be disabled for the tier, or the minimum commitment period may not have elapsed yet.

