Get a quote
Enterprise Supported and updated

Pilatesco — Class capacity and package balances in one system

Instructor, equipment and time slot together decide how many people a class can take. Members buy packages, so each reservation draws a credit off a balance, while cancellations and no-shows post to it differently. An invoice arises at the sale; usage is read from the calendar.

Visit the site →
Category Enterprise
Client Pilatesco · Sports and fitness
Services Management Systems, CRM, Enterprise & Commercial Software
Year 2023
Status Supported and updated
Role Design & development Built together with: Özcan Teknoloji Yazılım Destek Danışmanlık

The context

A studio hour has a hard ceiling: one instructor, a limited set of equipment, one slot on the clock. Members, though, do not buy an hour. They buy a package of classes.

At Pilatesco those two facts lived in different places. The calendar knew which hours were taken, a notebook held who had credits left, and whether a cancelled class gave its credit back was argued in messages. The system had to make a booking mean something to the balance.

How we work on every project

Planning

We go through how the work runs today and what you expect from the software; the scope comes out of that.

Architecture

We decide what the system is made of and where its information is kept.

Modelling

We draw the screens and the flow before any code, and start building once you have approved them.

Development

We write and hand over the software so another team could carry it on.

See our process →

What we built

  • Capacity from three constraints

    Instructor, equipment and time slot together set how many places an hour has; private sessions and group classes each open under their own rule.

  • Package balance on the member

    Booking a class draws one credit off the member's package; the balance lives on the member record instead of a separate ledger.

  • Cancellation and no-show rules

    A cancellation, a no-show and an attended class each post to the balance differently, and the rule decides which returns a credit.

  • Sale and usage on one record

    An invoice arises when a package is sold; the usage plays out across weeks of calendar. Both sit on the same member record.

How we built it

  • Laravel
  • MySQL

Challenge and result

Each row is a pair: the challenge the work had to solve on the left, and how the system answers it on the right.
Challenge Result
How many people fit an hour depends on instructor, equipment and the slot together A full hour shows as full, with capacity derived from instructor and equipment
Members buy packages, but the remaining credits are tracked off-calendar in a notebook Remaining credits sit on the member record rather than in a notebook
Whether a cancelled class returns its credit gets settled over messages, not by a rule Cancellations and no-shows post to the balance by rule, not by negotiation
Private sessions and group classes share one calendar while obeying different capacity rules Private sessions and group classes share the calendar, each opening at its own capacity

Want a system built like this?

Tell us how the work runs today and we will look at which step could move into software.