Add member

Profile photo
The membership Start date field (above) is where coverage begins — set it to a future date if the member is paying now but starting later. The amount auto-calculates 1 period (plan duration); change the amount to extend coverage (e.g. 3× price = 3 periods).
Membership Agreement & Waiver of Liability
Have the new member read and sign below. Their typed name + drawn signature acts as legal acceptance.
Drawn signature acts as legal acceptance

Record payment

Membership card

Signed Waiver

Edit signed waiver

Use this to correct the signer's name or capture a fresh signature (e.g. the member re-signs in person). The waiver text and version stay the same; the signed date updates to now.
Leave blank to keep the existing signature and only update the name.

Approve sign-up

Add plan

Add product

Click image to upload product photo

Adjust stock

Edit staff member

Adding a new staff member
Choose a username (no spaces, lowercase). After saving, you'll need to create the matching auth account in Supabase so they can log in — instructions will appear.

Add time entry

Create pay period

Payslip

Add location

Freeze membership

Freezing a membership temporarily pauses it. The member cannot check in until unfrozen. A reason note is required for accountability.

If a date is set, the system will alert when it's time to unfreeze. Leave blank for indefinite freeze.

Mark payroll as paid

Capture photo from webcam

Position the member's face in the centre of the frame, then click Capture.

Void / Refund payment

Voiding a payment marks it as Voided (not deleted). It will be excluded from revenue totals and a void entry will be added to the audit log.

Close shift & reconcile cash

Import members from CSV

Fix barcodes from Gymdesk

Edit member tags

Upload document

Max ~5MB per file. Files are stored as base64 in browser memory in this version — Supabase migration will move them to proper cloud storage.

Change membership plan

Reactivate this cancelled membership
Status will return to Active. Use this if the cancellation was made in error, or the member has returned.
Cancel this member's active membership
Membership status will change to Cancelled. Their access ends on the effective date. A reason is required for the audit log.
Leave blank or 0 for no refund.

Member Visit History Report

Visit history report

Add external instructor

Add rentable space

Default rental rates (instructors can be charged differently per contract)

New rental contract

Record rental payment

Add instructor client

Instructor clients are separate from gym members. They attend this instructor's classes only and don't have general gym access.

Receive new stock

Pick a product from the dropdown and click Add, or scan a barcode if the item has one. Set the quantity received for each, choose backroom or storefront, then Submit to update inventory.
Deliveries usually go to the backroom first, then get moved to the shelf as needed.

Bulk receive stock via CSV

Physical stock count

Stock count history

Sync member plans from CSV

Import products from Gymdesk

Clear imported data

Import payment history from Gymdesk