Skip to main content

Documentation Index

Fetch the complete documentation index at: https://sailia-mintlify-memberships-docs-1775143871.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Memberships and activity passes give customers flexible ways to pay for your activities beyond one-off bookings. Memberships provide ongoing access with recurring billing, while activity passes let customers prepay for a bundle of sessions.

Memberships

Memberships are recurring subscription plans that give customers access to benefits like discounted bookings, exclusive activities, or automatic discounts at checkout.

Create a membership plan

1

Open memberships

Navigate to your memberships section and select Create Membership.
2

Set the plan details

Enter the membership name, description, and recurring price. Choose a billing interval — you can bill by days, weeks, months, or years (for example, every 7 days, every 2 weeks, monthly, quarterly, or yearly). You can also set the price to zero for free memberships.
3

Configure plan options

Optionally set a setup cost (a one-time fee charged when the customer first signs up), a max users limit to cap how many family members can be on the plan, and whether approval is required before new signups are activated.
4

Add benefits

Define what members receive. You can add membership discounts, text benefits (freeform descriptions displayed to members), members-only activities, and members-only activity passes.
5

Attach waivers

Optionally require a waiver to be completed at signup. You can set a family-level waiver (completed once per family) and a per-user waiver (completed by each member added to the plan).
6

Publish

Make the membership available on your booking page for customers to sign up.

Plan visibility

By default, all membership plans are visible on your public booking page. You can hide a plan so that it no longer appears to customers browsing online, while keeping it available for staff to sell through the point of sale. To hide a plan, open the plan settings and set Visible to No. Hidden plans:
  • Do not appear on your public booking page
  • Remain available in the point of sale, so staff can still sign customers up in person
  • Can be made visible again at any time
This is useful when you want to offer a plan exclusively through in-person sales, phase out a plan without archiving it, or temporarily remove a plan from your website while keeping it sellable at the counter.
Hiding a plan does not affect existing members. Customers who are already subscribed continue their membership as normal.

Approval-required plans

When you enable Approval required on a plan, new signups are not activated immediately. Instead, the customer provides their payment details and the membership moves to a Requested status. An admin must then approve or decline the request.
  • If approved, the Stripe subscription is created and billing begins.
  • If declined, the membership instance is cancelled and no charge is made.
This is useful for plans with limited availability or plans where you need to verify eligibility before granting access.

Membership benefits

Each membership can offer four types of benefits:
Benefit typeDescription
DiscountA linked discount code that auto-applies at checkout for members.
TextA freeform description displayed to members (for example, “Priority booking access” or “Free parking”).
Members-only activitiesSpecific activities or tickets that are restricted to members of this membership.
Members-only activity passesSpecific activity passes that only members of this membership can purchase.

Membership discounts

When you link a discount code to a membership, it is automatically applied whenever the member checks out. Membership discounts are always auto-applied and stackable, so members can combine their membership benefit with other promotional codes. You can configure how long the associated Stripe coupon lasts:
  • Forever — the discount applies for the entire membership duration
  • Time-limited — the discount applies for a specified number of months

Billing

Memberships are billed through Stripe. When a customer signs up:
  1. A Stripe subscription is created with the configured billing interval.
  2. If a setup cost is configured, it is charged as a one-time fee on the first invoice.
  3. Payments are collected automatically on each billing cycle.
  4. If a payment fails, Stripe’s retry logic attempts to collect again.

Member status

Each membership instance moves through a status lifecycle as the subscription progresses:
StatusMeaning
PendingThe member has been created but has not yet provided payment details.
RequestedPayment details collected, waiting for admin approval (only for approval-required plans).
ActiveThe subscription is running and payments are in good standing.
Past dueA payment has failed. Stripe will retry collection automatically.
PausedBilling has been paused by an admin.
CancelledThe membership has been terminated.

Adding members from the same family

Multiple members of the same family can hold the same membership, as long as each person is only added once. When you purchase a membership for specific family members, Sailia checks whether any of the selected users are already on that membership. If one or more of them are, the purchase is blocked with an error. This means you can buy the same membership for different family members in separate transactions. For example, if a parent purchases a membership for one child, they can later purchase the same membership for a sibling — but they cannot re-purchase it for a child who is already a member. If a plan has a max users limit, the total number of family members on a single membership instance cannot exceed that cap.

Managing users on an existing membership

You can add or remove family members from an active membership instance at any time. When adding a user, Sailia checks that the user is not already on the membership and that the max users limit (if set) is not exceeded. When removing a user, at least one member must remain on the instance.

Changing plans

Members can be moved from one plan to another within the same membership. When you swap a member’s plan:
  • The Stripe subscription is updated with proration, so the member is credited for the unused portion of the old plan and charged for the new plan.
  • Any recurring add-ons are carried over to the new plan where available. If the new plan has different pricing or quantity limits for an add-on, the subscription is adjusted accordingly.
  • One-time add-ons that were already purchased are preserved.

Pausing and resuming billing

You can pause payment collection on an active membership. When paused, Stripe stops collecting payments and any upcoming invoices are held as drafts. Optionally set a resume date to automatically restart billing on a specific date. If no resume date is set, billing remains paused until you manually resume it.
Pausing billing does not cancel the membership. The member retains their status and benefits during the pause.

Cancelling a membership

There are two ways to cancel a membership:
  • At period end — the membership remains active until the end of the current billing cycle, then cancels automatically. The member continues to receive benefits until the cancellation takes effect.
  • Immediately — the membership is cancelled right away and benefits are removed.
If a cancellation is set to take effect at the end of the billing period, you can reverse it by selecting Do not cancel. This restores the membership to its active state and billing continues as normal.

Refunding membership invoices

You can issue full or partial refunds on individual membership invoices. When processing a refund, VAT is pro-rated automatically based on the refund amount. The refund is processed through Stripe and the balance is updated on the membership instance.

Membership add-ons

Add-ons let you attach optional extras to a membership plan. Customers can subscribe to add-ons when they sign up, or you can add them to an existing membership later. Each add-on can be one-time or recurring, and you can set a maximum quantity per member.
1

Open a membership plan

Navigate to the membership plan you want to add extras to.
2

Add an add-on

Select Link Add-on. You can create a new add-on or link an existing one. Enter the add-on name, an optional description (up to 150 characters), and choose whether billing is recurring (charged each billing cycle) or one-time.
3

Set pricing and limits

Set the price for the add-on. Optionally set a max quantity to cap how many units a member can subscribe to.
Add-ons are billed through Stripe alongside the membership subscription. Recurring add-ons follow the same billing interval as the membership plan.

Add an add-on to an existing member

You can attach add-ons to an active membership at any time. When you add a recurring add-on to an existing member, Stripe prorates the charge for the current billing cycle. One-time add-ons are invoiced immediately.

Remove an add-on

Recurring add-ons can be removed from an active membership. One-time add-ons cannot be removed because they have already been charged.

Membership notes

Staff can add notes to individual membership instances to track important context — for example, special arrangements, customer requests, or migration details. Notes can be created, edited, and deleted from the membership instance detail view.

Audit history

Every membership instance maintains a detailed audit trail of all changes. You can view the history to see when the membership was created, when plans were changed, when billing was paused or resumed, when payments succeeded or failed, and when cancellations or reversals occurred.

Migrating memberships

If you are switching to Sailia from another membership system, you can bulk-import your existing members. The migration process creates families, users, and membership instances from your import data. Imported members start in a migration state where they are active on their current billing cycle but do not yet have Stripe payment details. When a migrated member provides their payment information, a Stripe subscription is scheduled to begin at the end of their current billing cycle, ensuring a seamless transition with no overlap or gap in billing. During migration, you can also assign add-ons to each imported membership instance. This means members keep their existing add-on subscriptions when they move to Sailia — there is no need to manually re-add them after import. Each row in your import data can include:
  • Plan ID — the Sailia membership plan to assign the member to
  • Billing cycle dates — the current billing period start and end
  • Member number — an optional custom member number to preserve from your old system
  • Add-ons — a list of add-on selections, each with a membership add-on ID and quantity
  • Note — an optional note attached to the membership instance
  • Discount code — an optional discount code to apply to the membership
Add-ons included during migration must already be linked to the target membership plan in Sailia. Create your membership plans and link the relevant add-ons before running the import.

Activity passes

Activity passes are prepaid bundles that give customers a set number of sessions to use over time. They are ideal for regular attendees who want a better per-session price.

Create an activity pass

1

Open activity passes

Navigate to your activity passes section and select Create Pass.
2

Set basic details

Enter the pass name, description, and upload an optional image.
3

Configure pricing and validity

Set the price, max redemptions, and expiry. Expiry can be a number of months after purchase or a fixed date.
4

Set redemption rules

Choose which activities the pass can be redeemed against. Optionally enable Single user only to restrict the pass to one family member (see below).
5

Set purchasing rules

Choose whether the pass is available to anyone or restricted to membership holders. If members-only, select which memberships are eligible.

Single user only

By default, an activity pass can be used by any participant in a booking. When you enable Single user only, the pass is locked to a specific family member chosen at the time of purchase.
  • During checkout, the buyer selects which family member the pass is assigned to.
  • Only bookings that include that specific user will have the pass discount applied.
  • Confirmation emails display the name of the restricted user so both you and the customer know who the pass belongs to.
  • If the pass is also restricted to certain memberships, only family members who hold a qualifying membership can be selected.
This is useful when you want to ensure a pass is non-transferable — for example, a 10-session pass that should only be used by one child rather than shared across the family.

Redeeming a pass

When a customer with an active pass books an eligible activity, they can apply the pass at checkout instead of paying the full price. Each booking deducts uses from the pass balance based on the number of participants. For example, a booking with three participants deducts three uses. Activity pass discounts stack with other discounts, so customers can combine a pass with promotional codes or membership benefits.

Accounting

If you use Xero accounting sync, assign accounting categories to your membership plans and activity passes. This ensures revenue is categorized correctly on Xero invoices.

Discounts

Both memberships and activity passes are eligible for discount codes. When creating a discount, enable Memberships or Activity passes under product eligibility to allow the discount to apply.

Discount codes

Create discounts for memberships and passes.

Payments

How Stripe handles membership billing.