Billing Types
REMMU supports six billing models. Each class is set to one or more billing types when created.
๐ท๏ธ Monthly
The student pays a fixed fee at the start of each calendar month.
- Fee is the same every month regardless of attendance
- Best for students with a consistent weekly schedule
- Payments are generated automatically at the start of each month
- Overdue if not paid within the grace window
Example: RM 150/month for two classes per week.
๐ฆ Package
The student pre-purchases a block of sessions. Each attendance deducts one session.
- Student pays upfront (e.g. 10 sessions for RM 200)
- Sessions are tracked automatically via attendance check-in
- When sessions run low, student is notified to purchase another package
- Packages can have an expiry date
Example: Buy 10 yoga sessions for RM 180 โ use them within 3 months.
๐ณ Per Session
The student pays each time they attend.
- No commitment โ pay only when you show up
- Best for drop-in students
- Payment can be collected before or after the session
- Suits trial classes or irregular attendees
Example: RM 25 per session, paid at the door.
How invoices are created
By default, marking a per-session student Present (or Late) automatically creates a pending invoice for that session.
You can also create the invoice before the class starts โ useful for collecting payment at the door. On the attendance roster, each per-session student without an invoice shows a Generate Invoice button (admins and team members only). Click it to raise the session invoice on the spot; the roster then shows the invoice number and whether it's paid.
- Generating early never creates duplicates โ marking the student Present later reuses the same invoice
- The button is only available for today's or past sessions, never future ones
- If the student ends up Absent, the invoice is not automatically cancelled โ it stays exactly as it was (pending or paid). Refunding or reassigning it to a future session is a manual admin action
Prefer to raise every per-session invoice yourself? In Settings โ Billing, turn off Auto-invoice on attendance (shown when Per Session is enabled). Attendance marking then never creates invoices โ only the Generate Invoice button does.
โฑ๏ธ Per Hour
The student is billed for actual hours attended each month โ rate ร session duration ร number of lessons.
- Hourly rate set on the student's enrolment (or a fallback rate on the class)
- Duration per session comes from the class schedule
- Lesson count comes from attendance records for the billing month
- Calendar holidays / off-days are excluded automatically
Each month, an invoice is generated showing the rate, duration, and lessons attended โ fully itemised. Admins can review and tweak the lesson count from the Review Drafts page before invoices are sent.
Example: RM 80/hour ร 1.5 hours/session ร 8 lessons attended = RM 960 for the month.
Per-hour billing is ideal for one-to-one tutoring or coaching where attendance varies month to month.
๐ Frequency-Based
The student pays a fee that varies depending on how many sessions per week they attend and their chosen billing cycle. Each student is enrolled at a specific frequency tier.
- Admin defines fee tiers per class โ combining sessions/week and billing cycle (e.g. 2x/week ยท Monthly = RM 140, 2x/week ยท Quarterly = RM 390)
- When enrolling a student, the admin selects their sessions/week and billing cycle
- Invoices are generated automatically at the selected tier rate and cycle
- Supports any sessions/week (1x, 2x, 3x, 4x, 5x, etc.)
- For students attending 2x or more per week, additional class slots are assigned (one per extra session)
- Ideal for academies where students choose their own weekly frequency
Example: A martial arts class offers 1x, 2x, or 3x per week, each payable monthly or quarterly. Each student pays the rate matching their frequency and payment cycle.
Billing cycles per tier
Each tier (sessions/week combination) can have one or more billing cycles:
Cycle | Billing period |
|---|---|
Monthly | Invoice generated each month |
Quarterly | Invoice generated every 3 months |
Semi-Annual | Invoice generated every 6 months |
Annual | Invoice generated once per year |
This lets you offer upfront discounts โ e.g. monthly rate RM 150, but quarterly prepay for RM 420 (saving RM 30).
Additional class slots
For students attending 2+ sessions per week, admin selects a separate class slot for each extra session during enrollment. For example, a student enrolling at 3x/week on a Monday class would also be assigned two additional slots (e.g. Wednesday class and Friday class).
Deposit per tier
Each tier can have an optional deposit amount. The deposit is collected as part of the enrollment invoice when the student first enrols.
Tier suggestions
When creating a frequency-based class, REMMU can suggest fee tiers from other classes in the same category. Click Copy from [class name] to pre-fill the tier table.
Frequency-Based billing must be enabled in Settings โ Billing before it appears as an option when creating classes.
๐งช Trial Class
Allow students to try a class before committing to a paid plan.
- Students enrol with billing type Trial โ a trial fee (or free) is generated
- Maximum trial sessions is configurable (default: 1 session) โ can be overridden per class
- After the trial period, the student converts to a paid billing type (monthly, package, etc.)
- The trial fee can optionally be credited towards the first paid payment on conversion
Example: A student tries a dance class for RM 30 (1 session). When they convert to monthly billing, RM 30 is deducted from their first invoice.
Trial settings
Configure trial class defaults in Settings โ Billing (shown when Trial billing is enabled):
Setting | What it does |
|---|---|
Default max trial sessions | How many sessions a trial student can attend before converting (can be overridden per class) |
Trial fee redeemable on conversion | When enabled, the trial fee paid is deducted from the student's first payment after converting |
Redeemable on | Choose which billing types the trial credit can apply to (monthly, package, per session, frequency) |
Credit expiry | How many days the trial credit stays valid after payment โ expired credits are excluded from automatic redemption |
Trial confirmation notification
When admins enrol a student in a class with Trial billing, a Send trial confirmation toggle appears in the enrolment dialog. With it on, the student (and guardians) receive:
- A push notification with the trial class name and date/time
- A confirmation email with the same details and a link to view the class
The class time is formatted in 12-hour AM/PM. The toggle defaults on and is opt-in per enrolment โ useful when an admin wants to add a trial quietly without alerting the student until later.
The same notification fires when a trial signup is created from the public landing-page form.
Trial credit on conversion
When converting a trial student to a paid billing type (monthly, package, or frequency), the enrolment form shows the student's current trial credit:
- Valid credit โ the unredeemed, non-expired trial fee is automatically deducted from the first payment
- Expired credit โ shown as struck-through text with the number of days past expiry; not applied by default
- Admin override โ check Apply anyway (admin override) to redeem expired credit as a courtesy
The resulting discount is shown in the enrolment summary before you confirm.
Trial billing must be enabled in Settings โ Billing before it appears as an option when enrolling students.
Opening a class to public trial signup
To let prospects self-book a trial from your landing page, edit the class and enable Trial bookable. The class will then appear in the dropdown on the Trial Class Signup๏ปฟ block.
โ๏ธ Choosing the Right Billing Type
Scenario | Recommended Type |
|---|---|
Regular students, fixed weekly class | Monthly |
Students who attend at different frequencies | Frequency-Based |
Students who attend inconsistently | Package |
Drop-in students | Per Session |
New students trying a class before committing | Trial |
Kids' academy with term-based fees | Monthly |
Fitness bootcamp with session packs | Package |
๐ง Mixed Billing
A single class can accept more than one billing type โ e.g. both Monthly and Package. Tick each type under Billing Types for This Class when editing the class, and choose which one applies when you enrol each student. See Classes & Schedule๏ปฟ.
๐ Turning Billing Types On or Off
Billing types are enabled academy-wide in Settings โ Billing. Each switch saves the moment you flip it โ there's no Save button.
Only types enabled here can be offered on a class.
Bulk-editing billing types across classes
To change which billing types many classes offer at once, without opening each class:
- Go to Locations and click Bulk Billing
- Select classes โ classes are grouped by location, with Select all / Deselect all
- Choose billing type changes โ click a type to cycle through Enable โ Disable โ Leave as-is
- Under Online sign-up, do the same for public enrolment and public trial sign-up (see Classes๏ปฟ)
- Click Update X classes
Bulk Billing only changes which billing types and online sign-up options each class offers. Fees and tiers already set on each class aren't changed โ if you enable a type that has no fee set on a class yet, edit that class to add the fee.