My week
| When | Student | Instrument | Branch | State |
|---|
No lessons in the next seven days.
Check a student in
Scan the code on the student's phone, or type it. The lesson must be within its check-in window.
Today's lessons
| Time | Student | Teacher | State |
|---|
Find a student
| Name | Contact | Level | Active |
|---|
Activity
Every booking as it happens. Nothing here needs answering — it is so the desk knows who is coming and who still owes payment.
Nothing yet today.
Take a cash payment
Today's till
| Receipt | Time | Student | For | Branch | Amount | Taken by |
|---|
Waiting on you
Complaints triage
Students file these and nobody could read them. Work each one from open to closed.
| Kind | Student | Subject | Status | When |
|---|
No complaints or suggestions.
Request queues
Home tutoring, music tours, rehearsal slots and parents asking to stop a plan — each queue moves to its next state.
No requests in this queue.
Grant a session
A free lesson issued as goodwill or redress — the student schedules it themselves.
Issued gifts
| Student | Teacher | Reason | Status | Expires |
|---|
No gift sessions issued.
Reschedule a lesson
Move a student's lesson on their behalf. The student's own allowance and tier rules apply — the desk does not override them, and the server's answer is shown as it comes.
Waiting list
Students waiting for a place. Notify when one opens; they confirm before the deadline or the entry expires.
| Student | Wants | Status | Since |
|---|
No waitlist entries.
Trial follow-ups
Families whose trial lesson was yesterday or earlier. Call them and record what happened. A family that books a plan is marked Booked on its own.
| Student | Trial | Phone | App invitation | Status |
|---|
No trial follow-ups.
Freezes
A paid freeze holds the family's time. Cancel one that has not started, or end one early — no refund is issued automatically.
| Student | Period | Lessons | Amount | Status |
|---|
No freezes.
Evaluations
Write an evaluation after each completed lesson — one per session. The song, homework, Trinity grade and your comment are shown to the parent; the performance rating and the technical report stay inside the academy.
| When | Student | Instrument | Evaluation |
|---|
No completed lessons yet. Completed lessons appear here so you can evaluate them.
Make-ups
Make-up lessons waiting to be placed on a slot. The slot must belong to the original teacher and the date must fall on that slot's weekday — the server enforces both. A teacher no-show owes two: the missed lesson and one extra lesson, both free with the same teacher.
| Student | Teacher | Instrument | Branch | Cause | Expires |
|---|
No make-ups waiting.
Cover requests
Each teacher gets one cover a month, and all their lessons on one day count as one. The first, asked for before the cut-off, is automatic — the substitute teaches (the request form says whether a lesson is in time, and gives its cut-off when it is not). From the second on, ops approves and then each student is asked. A student who declines gets a make-up with their own teacher that does not use their monthly make-up, and from the second cover the teacher is charged the no-show amount. No answer before the lesson starts means the substitute teaches.
| Lesson | Teacher | Substitute | Student | Cover # | Status |
|---|
No cover requests.
Schedule changes
A teacher proposes a permanent change to their slot grid — a new day, time or branch. Academics approve or reject; an approved change retires the old slot (if one was named) and creates the new one.
| Teacher | Requested | From | Reason | Status |
|---|
No schedule-change requests.
Events
Recommend your students for a concert, and share rehearsal materials with them. The academy approves recommendations before they reach a student.
| Event | Phase | When | Branch |
|---|
No upcoming events.
Events & concerts
Create the academy's concerts and move them through the phase ladder one rung at a time — recommendations → approvals → published → closed. New events open for teacher recommendations first.
| Event | Phase | When | Branch | Seats | Ticket |
|---|
No events yet — create the first one above.
Participants
| Student | Performer | Part | Song | Instruments | T-shirt | Rehearsal | Status | Fee |
|---|
No registrations yet.
Rehearsals
Schedule rehearsals for the event and seat the confirmed students. A band-lineup slot records a seat label (e.g. Guitar 1); a general slot just holds seats.
| When | Kind | Duration | Seats | Seated |
|---|
No rehearsals yet — add one above.
Recap & gallery
Publish this event into the customer past-concerts showcase, then manage the recap text and its gallery. One recap per event; an image key is the path of an uploaded photo (poster / gallery file).
Gallery
| Order | Image key |
|---|
No gallery images yet.
Join requests
Students who asked to join without a teacher recommendation. Approve or decline — only a requested seat can be decided, and the server enforces it.
| Student | Event | Part | Song | Requested | Status |
|---|
No join requests.
Past concerts
Recaps and galleries shown on the customer past-concerts screen. Edit a recap or manage its gallery here; publish a new recap from an event row.
| Title | Event | Held | Gallery |
|---|
No past-concert recaps yet.
Cash flow
| Method | Payments | Total |
|---|
No payments in this window.
Revenue
| Type | Count | Gross | Refunded |
|---|
No bookings in this window.
Branches
| Branch | Classes held | Trials | Payments | Lessons | Books & shop | Concerts | Other | Refunded | After refunds |
|---|
Attendance
| Teacher | Lessons | Attended | Missed | No-show |
|---|
No lessons in this window.
Retention
| Cohort | Created | Active | Churned | Paused |
|---|
No cohorts yet.
Refunds
| Student | Item | Refunded | Status |
|---|
No refunds in this window.
Waitlist conversion
| Instrument | Waiting |
|---|
No waitlist entries in this window.
Branch check-in codes
Each branch has a code students scan on arrival, and staff clock in and out on the same code. Print the QR or give the code at reception. Rotate if a code is shared.
| Branch | Code |
|---|
Teachers
| Teacher | Tier | Delivered | Missed | Students | Utilisation |
|---|
Most popular
| Instrument | Bookings | Revenue |
|---|
Money owed
| Student | Contact | Amount |
|---|
Nothing outstanding.
Salary this period
| Teacher | Lessons | Value | No-shows / covers | Net |
|---|
Punctuality & penalties
No unmarked sessions in this window.
Teacher penalties
| Teacher | Lesson | Why | Amount | Status |
|---|
No penalties.
All schedules
| When | Student | Teacher | Branch | Instrument | Status |
|---|
No sessions in this window.
Shifts
| Name | Role | Branch | In | Out | Worked | State | Method |
|---|
Nobody clocked in on this day.
No clock-out on other days
| Name | Role | Branch | Day | In |
|---|
Not clocked in
No shift recorded for this day at this branch. They may be off — days off are not kept here.
| Name | Role |
|---|
Staff clock in and out by scanning the branch code in the Bandmakers app (typed codes are marked “typed”). A shift left open is closed with no end time — never a guessed one — and shows as “No clock-out” until the head of operations or an owner corrects it, within 7 days.
Orders to collect
| Code | Family | Items | Total | Payment | Branch | When |
|---|
No orders here.
Collect takes the money — unless the family already paid in the app — and hands the items over in one step. An unpaid order is cancelled on its own when its hold ends, and its stock goes back on the shelf.
Sell at the counter
Someone with no account? Record it under Stock as “Sold, no account”. That money is on the card machine but not in the app, so it is counted apart.
Stock
| Item | Branch | On the shelf | Held for orders | Free | Low at |
|---|
No stock recorded yet.
Every change is kept with your name and the reason. Stock can never go below what open orders hold.
Low at: when what is free drops to this number or below, the row shows it here and on the app's Stock screen. It is not a stock change.
Products & prices
| Product | Sizes / brands | Price | Parents | Status |
|---|
A product reaches parents only when it is switched on, has a price, and a branch has it in stock. New products start switched off. Orders keep the price they were placed at.
Shop takings
| Branch | Orders | Taken |
|---|
| Item | Sold | Taken |
|---|
Sold with no account — the money is on the card machine, not in the app:
| Item | Branch | Sold |
|---|
Orders handed over in the window, by the Cairo day they were collected.
Teachers
| Name | Tier | Branches | Instruments | Staff account | Status |
|---|
No teachers yet — add the first one above.
Booking in the app
The app opens one branch at a time. Where a branch is not open, parents see it as Opening soon and cannot book themselves there. The desk still books every branch, and a family that already has a plan at a branch keeps booking it in the app.
No branch is open to parents, so nobody can book themselves in the app.
| Branch | Area | Parents can book here in the app |
|---|
No active branches.
Weekly slots
A held time belongs to a student the academy already teaches outside the app. Parents see it as taken and the desk cannot book it until the hold is released.
| Teacher | Branch | Day | Start | Min | Instrument | Status | Held |
|---|
No slots yet — add the weekly grid above.
Open a whole window at once
Fills the run in one go — 16:00 to 20:00 at 45 minutes gives six times. Times that already exist are skipped, so you can widen a window whenever you like.
Days off
A teacher who cannot make a day, or one time on it. The time stops being offered from the moment you save. Lessons already booked are not cancelled — you will be shown who is affected so you can arrange cover or a new time.
| Teacher | Date | Time | Reason |
|---|
No days off recorded.
Extra one-off lessons
A single extra time on one date — "open me Thursday 8pm, just this week". It does not join the weekly grid. Ask for the same time on another date and it simply opens again.
| Teacher | Branch | Date | Time | Reason |
|---|
No extra lessons open.
Pricing per teacher tier + instrument
A price is a version that starts on a date. Adding a new price never rewrites the past — if a price changes, add the new one with a new date.
| Tier | Instrument | Branch | Price | Effective from |
|---|
No prices yet — add the first one above.
Instruments
| Name | Icon | Sort | Tour | Status |
|---|
No instruments yet — add the first one above.
Day minimums
A day below its minimum does not run — students who booked that day hold as waitlist until the day fills.
| Teacher | Day | Min students |
|---|
No day minimums set — the default of 0 means a day always runs.
Closure days
| Date | Branch | Reason |
|---|
No closure days recorded.
Inventory
Stock, products, prices and shop orders now live in the Store tab.
Books
| Level | Instrument | Title | Price | Tracks | Status |
|---|
No books yet — add the first one above.
Book purchases
Recording a book here unlocks its backing tracks for the student — what the desk does when the book is paid for at the counter.
Missing the first book
| Student | Phone |
|---|
Everyone has the level-1 book.
| Student | Book | Purchased | Recorded by |
|---|
No book purchases recorded.
Bundles
Every active bundle is offered to parents in the app as a package, on the last screen before booking (at most two). The package runs from the first lesson to the end of its last month, is paid up front, and then continues month by month at the normal price. Its discount is never added to a sibling or second-instrument discount — the bigger one applies — and promo codes cannot be used on it. Deactivate a bundle to stop offering it; packages already booked are not affected.
| Name | Months | Discount | Status |
|---|
No bundles yet — add the first one above.
Discount codes
Percentage is entered as a percent (10 = 10%), fixed as EGP, free-session/free-month as a count. The code is stored uppercase.
| Code | Type | Value | Uses | Max | Expires | Status |
|---|
No discount codes yet — add the first one above.
Freezing a plan
Charged for each lesson that falls inside the freeze, as a percent of that plan's lesson price. A lesson on a date inside a low-season period uses the low rate; every other date uses the high rate. A period may run over the new year (20 Dec – 7 Jan). A freeze covers only lessons not yet paid for, and one unbroken freeze lasts at most the longest freeze length. The family's time stays held during the freeze, then goes back on general availability if they do not pay for the month after it. A freeze already paid keeps its price.
Parent reminders
Sent by push (payments by email too) and always kept in the app's inbox. A parent who muted Lessons or Payments & plan in the app still sees the inbox message, but gets no push.
| Reminder | Families | Lessons or plans | Tonight |
|---|
| Last 7 days | Sent | Pushed | Muted or no device | Failed | Waiting |
|---|
Evening reminders go out from 6 pm Cairo time. Each lesson, plan or make-up is reminded once. Families who asked to stop, turned off renewal, or have not been invoiced for next month are never asked to pay.
Staff & roles
A role grants its standard capabilities; every account can be suspended or offboarded without deleting history.
| Name | Role | Branch | Status | Teacher |
|---|
No staff accounts yet — add the first one above.