Helm
Start a project

Module · PT sessions

Ten sold, and the count is not on a sticky note.

Session credits on a real ledger. Added when you open a block on somebody's record, taken when a session is used, and the balance is the same number you and they are both looking at. Every movement is a row with a date, so “I have three left” is something you look up rather than negotiate.

Start a projectHow it works

Switched on for trainers during setup. Not on a checkout page.

Blocks and credits

Sell a block, then open it on their record.

A block is a number of sessions at a price — five, ten, twenty, whatever you sell. It sits in the catalogue with its price and its size. When they have paid you, you open it on their record and the credits land as a row with a date.

Credits themselves never expire. Access to PT can: a grant carries an optional end date, so a season block can stop being open in March without anybody remembering to close it.

The session

One tap after the session, and nine becomes eight.

Mark the session from your phone as they leave. It takes one credit, writes a row with the date, and the client sees the same number in their account that afternoon. No spreadsheet, no “I think we did four in March”.

Cancel a session you had already marked and the credit goes back, as its own row. There is no separate late-cancellation reason — if your policy is to keep the credit, you simply do not refund it, and the row that spent it stays where it is.

Why a ledger

The balance is never anyone's recollection, and every change carries its reason.

There is a balance, and there are the rows behind it. They are written in the same transaction: the row records the number it left behind, so the figure and its explanation cannot disagree even if something fails halfway. When a client asks why they have six, you read the rows aloud.

It cannot go wrong quietly

Nobody types the balance — every change goes through a movement that writes its own row. A decrement is refused outright if it would take the balance below zero, and a grant carries a key so paying twice cannot credit twice.

Every row has a reason

Opened, session used, session refunded, adjusted by hand. Four reasons, and each row carries a date, the change and the number it left behind.

Both of you see it

The same ledger is in their account on your site. The number you have is the number they have, updated the moment you mark the session.

How you get it

On your plan, switched on for you.

Available on every plan. Switched on during setup for people who sell sessions.

LiteSwitched on at setupStandardSwitched on at setupBusinessSwitched on at setup

PT sessions is switched on per account during setup, not bought from a page.

Before you start

What this does not do, said now rather than later.

It counts down; it does not take the money

Helm records that credits were opened and spends them. The card payment for the block is not something it processes, and nothing here notices one arriving.

No calendar or scheduling links

It knows a session happened because you marked it. It does not hold your diary, send booking links or block out Thursdays.

Credits do not expire

A credit stays until it is used. Access to PT can be given an end date, which is a different thing: the door closes and the unused credits are still sitting there when you open it again.

Getting started

Tell us how you sell sessions, and the ledger is ready for the first block.

Switched on for trainers on any plan. Plans start at ⁨$20⁩ a month.

Start a projectSee pricing

Prices in USD, EUR, GBP and CAD on the pricing page.