Skip to content

Prepaid passes admin setup.

Enable prepaid passes per plan or per partner, set template limits, and run the daily expiry task from the Health Center.

Jul 22, 2026

Prepaid passes are a plan feature. As an administrator you decide which partners get them, how many pass products each partner can create, and you can watch the daily expiry task do its work. This page covers the full admin side.

The two controls

Passes follow the same permission model as vouchers:

Control What it does
Prepaid passes (toggle) Enables pass management, sales, and visit controls for the partner and their staff. When off, those controls are unavailable, while issued passes remain visible in member wallets and staff history as read-only records.
Prepaid passes (Limit) Caps how many pass products the partner can create. -1 means unlimited, 0 means view-only.

Both controls live in two places, and the same precedence applies as everywhere else: per-partner overrides win over plan defaults.

Enabling via plans

Each tier carries two values: whether the plan includes prepaid passes, and how many pass products a partner may create (-1 for unlimited). They ship off on the free tier, then 3, 10, and unlimited on the paid tiers, and assigning a plan to a partner derives their permissions from these values.

To change a tier, open Settings → Set up plans and switch both in the Plans editor. A server-managed install can set the same values from the environment instead; Configuring plan values from the environment is the full reference.

Upgrading from an earlier version? An update ships the two keys as defaults on the shipped tiers, so a normal update delivers them. Your own values live in the Plans editor or as PLAN_<TIER>_HAS_PREPAID_PASSES / PLAN_<TIER>_MAX_PREPAID_PASSES environment values and survive the update. Only a very old install that never took the update since passes shipped starts without them; Upgrading from an earlier version covers turning passes on there.

Enabling per partner

To grant passes to a single partner without changing any plan:

  1. Go to Partners in the admin sidebar
  2. Edit the partner and open the Permissions tab
  3. Switch on Prepaid passes
  4. Set Prepaid passes (Limit), -1 for unlimited
  5. Save

A partner's Permissions tab with per-feature toggles and creation limits for cards, vouchers, passes, and the Agent API.

The partner sees the Prepaid passes menu on their next page load. This route suits a trial run of the feature or a one-off arrangement. Remember that a later plan change re-derives permissions from the new tier, so re-apply the override afterwards if the tier's defaults differ.

What partners get

With the feature on, a partner can create pass products per club: a use count or unlimited visits, an optional validity window of 1 to 366 days, a display price, and the same design options as other cards (colors, background image, logo). Their staff sell and scan the passes, and the partner dashboard includes pass analytics and an exportable transaction history, like the other card types. Partner setup walks through it.

With the feature off, pass-management controls disappear from the partner dashboard, and staff cannot sell passes or record or undo visits. Existing passes remain visible in member wallets and staff history as read-only records. The stored data is not deleted. Restoring the permission makes the controls available again.

Admin surfaces

Passes appear everywhere the other program types do on the admin side:

  • Members → Pass Transactions is the platform-wide pass ledger across all partners, with the partner per row, exportable like the other transaction histories.
  • The member list shows each member's passes beside their cards, stamps, and vouchers.
  • Activity logs have a Prepaid passes category; every sale, visit, correction, and expiry the pass service writes lands there.
  • The dashboard headline counts pass products in its totals, so milestones include them.

Corrections belong to the admin side too. From the member list, opening one of a member's passes shows that pass's own ledger with a Delete last visit action. It voids the most recent visit that has not been undone yet, returns it to the member's balance, and writes the correction as its own entry, through the same audit-safe primitive the partner dashboard uses, recorded with an admin origin. Admin oversight is unscoped: it reaches any pass of any partner, with no club or entitlement gate in the way.

The daily expiry task

One scheduled task keeps passes honest. Each day it:

  • Marks passes as expired once their validity window closes
  • Sends one reminder email per pass that enters its final week with visits left

The health center with 19 environment checks and the scheduled tasks panel, each task with its last run result and a Run now button.

The task appears on Health center → Scheduled tasks beside the other daily tasks (birthday vouchers, win-back vouchers, stamp expiration). You can see when it last ran and run it by hand. It runs with cron on schedule, and without cron the first portal activity of the day triggers it. No queue worker is involved, and repeating it is safe: no duplicate reminders, no double expirations.

Money, for the record

The platform never charges members. A pass's price is a display value: staff record what the customer paid at the counter, and the amount lands in the pass history for receipts and reporting. There is no payment provider to configure and no payout to reconcile. If your deployment bills partners (SaaS mode), passes need no extra billing setup.

Google Wallet

If your installation has Google Wallet configured, passes join the same chain of conditions: Google Wallet must be included in the partner's plan (Gold and Platinum by default) or granted to the partner, the platform credentials must be in place, and then the per-product toggle appears. A member can then save a pass to Google Wallet, and the remaining count updates after each visit. Without the plan entitlement or the credentials, the per-product toggle stays hidden.

Demo data

Installations seeded with demo data include three pass products for The Daily Grind, the demo coffee shop: "Coffee Club — 10 Drinks", "Pastry Pass — 10 Treats", and "Cold Brew Pass — 10 Pours". The demo member Emma holds a Coffee Club pass bought 25 days ago with four visits ticked off. Its 30-day window puts it about five days before expiry, and the demo resets daily, so the pass always sits inside its final week: handy for showing the reminder and the Health center run.

Cookies on this site.

Google Analytics runs only if you allow it. Cookie policy