Skip to content
Case study · EdTech & music education · Custom ERP + CRM

RSIM: one platform to run a multi-branch music institute

How we designed and built the end-to-end operating system for Rhythm Soul Institute of Music (RSIM): admissions, class scheduling, payments, franchise payouts, rentals, events, hiring and WhatsApp automation.

50+Automated WhatsApp messages
30+business modules live on one platform
9scheduled jobs running the institute day and night
2payment gateways, with automatic reconciliation
01 Project at a glance

The engagement in numbers


A single custom platform, built and evolved by JMDA Analytic, now runs RSIM's academy, network, commerce and communication.

30+business modules live on one platform
90+screens, endpoints and workflows in the core app
50+automated WhatsApp message types
260+database evolutions shipped as the business grew
50+data models in the core institute app alone
530+page templates across web, student and staff portals
9scheduled jobs running the institute day and night
2payment gateways, with automatic reconciliation
Client
Rhythm Soul Institute of Music (RSIM), rsim.in
Industry
Music education, multi-branch / franchise network
Partner
JMDA Analytic Pvt Ltd, Goregaon West, Mumbai
Service
Custom software development: ERP, CRM, e-commerce, LMS and automation
Users
Students and parents, teachers, branch heads, admin staff, management, partner schools, freelance musicians
Stack
Python · Django · PostgreSQL · REST/JSON endpoints · scheduled jobs · web push
Integrations
Worldline (Paynimo), CCAvenue, WhatsApp Business messaging, Zoom, email (SMTP), Firebase
02 Executive summary

From spreadsheets and phone calls to a single operating system


RSIM teaches instruments like keyboard, drums and guitar through its own centres and a growing network of partner schools. Every student generates a long chain of work: an enquiry, a demo class, an admission, a weekly timetable, attendance, fee instalments, reminders, renewals and often an instrument purchase or rental. Doing that by hand across several branches does not scale.

JMDA built RSIM a single web platform that runs the whole institute. The public website sells courses, events and instruments and takes payment online. Behind it, a staff dashboard covers the full student lifecycle. A rules-driven scheduling engine places every student in a real classroom slot without overbooking. Payments are reconciled with the gateway automatically. Partner branches see their revenue share month by month. And more than fifty WhatsApp messages go out automatically at the right moment.

Grow

Website, online demo booking, course and event checkout, instrument shop and rentals, lead capture from forms, JustDial and WhatsApp, structured follow-ups.

Operate

Admissions, fee structures, batch and slot planning, automatic session generation, attendance, rescheduling, leave, holidays, teacher workloads.

Control

Online and offline payments, receipts, dues and reminders, franchise revenue share and monthly payouts, role-based access, branch-level reporting.

The goal

Every rule the institute runs on, from “a drum room holds one student” to “remind the student ten days before the course ends”, should live in software, not in someone's head.

Highlights of what was delivered

  • One platform, many audiences. A public website, a student portal, a teacher home, branch and head-office dashboards, a partner-school onboarding flow and a freelance-musician marketplace, all on one codebase and one database.
  • A real scheduling engine. Sessions are generated from the course length, sessions per week and chosen slots, respecting room capacity per instrument, monthly limits, teacher availability and the holiday calendar.
  • Money that adds up. Fee structures per course, branch and frequency; discounts; instalments; online payment with gateway verification; automatic admission on success; receipts; dues; and a payout ledger for every partner branch.
  • Automation by default. Nine scheduled jobs handle payment checks, expiry reminders, absence alerts, follow-up reminders and unpaid-fee controls without staff intervention.
  • Built to keep growing. 260+ database releases and a newer modular layer of 30+ apps, with a separate test server where WhatsApp and payments run in a safe sandbox.
03 The client

Rhythm Soul Institute of Music


RSIM is a music institute that combines its own centres, partner schools and online classes. It earns through several connected business lines, and each one needed its own workflow.

1

Course admissions

Instrument courses (keyboard, drums, guitar, vocals and more) sold as 1, 3 and 6-month packages at a chosen number of sessions per week, in one-to-one or group format. A pay-as-you-go option sells single sessions; integrated multi-course packages are also offered.

2

Events and workshops

Paid and free workshops, recitals and recurring programmes, each with a capacity, age limit, language, venue and gallery. Tickets are booked and paid online.

3

Instrument shop and rentals

New and pre-owned instruments for sale, and rentals billed monthly with a security deposit, a delivery charge by pincode, dispatch photos, extensions and a damage-checked return.

4

Partner network and talent

Schools join as partner branches through an online KYC form and earn a share of fees. RSIM also places students and freelance musicians into paid gigs, and runs a stock-music library.

Who the platform serves

AudienceWhat they need from the system
Students and parentsBook a demo, enrol and pay online, see their timetable, rearrange a missed class, apply for leave, view homework and topic videos, pay dues, buy or rent an instrument, book events.
TeachersSee today's classes, mark attendance, rate progress, assign homework and lesson videos, answer student questions, apply for leave, use a shared teaching library.
Branch headsWork their own branch's leads, demos, admissions, batches and dues, without seeing other branches' data.
Admin and managementApprove admissions, set fees and holidays, control templates and users, track collections, pay partner branches and see the whole network.
Partner schoolsRegister, submit KYC and bank details, and track enrolments, revenue share and payouts.
Freelance musiciansCreate a public profile with portfolio and gallery, and receive gig opportunities through RSIM.
04 The challenge

A growing institute running on manual coordination


As RSIM added branches, instruments and revenue lines, the operational load grew faster than the team. The core problems were coordination, capacity and money.

1

Leads slipping through

Enquiries arrived from the website, JustDial, WhatsApp and walk-ins. Without one pipeline and reminders, follow-ups were missed and demo classes went unconverted.

2

Timetables built by hand

Every admission meant working out dates for 4 to 24 weeks of classes, avoiding holidays and making sure the room and teacher were free. A drum room can take one student at a time; a keyboard room only a few.

3

Missed classes and leave

Students miss classes, go on holiday or fall ill. Each case changes the schedule and the course end date, and every change had to be tracked and communicated.

4

Fees and dues

Instalments, discounts, cash, bank transfers and online payments had to be matched to the right admission, with reminders before and after due dates.

5

Online payments without certainty

A student can pay and close the browser before returning to the site. Without a check against the gateway, a paid admission could sit unconfirmed.

6

Partner payouts

Each partner branch earns a percentage of fees, paid monthly. Calculating shares, tracking what has been paid and what is due had to be transparent for both sides.

7

Too many messages

Confirmations, reminders, absence notices, renewal alerts and internal approvals meant hundreds of WhatsApp messages a week, typed by staff.

8

Separate tools for separate businesses

The shop, rentals, events, hiring and HR each needed their own process, yet they all share the same customers and staff.

What RSIM asked JMDA for

A single system that captures every lead, converts it into a scheduled, paid admission with minimal staff effort, keeps students and teachers informed automatically, and gives management and partners an accurate view of money and capacity, while also running the shop, rentals, events and people operations.

05 Solution overview

The RSIM platform at a glance


One platform organised into seven functional areas that share a common data core: people, branches, courses, admissions and payments.

Grow

Sales

  • Website & online demo booking
  • Lead CRM & follow-ups
  • JustDial / WhatsApp / Excel leads
  • Demo-class funnel & referrals
Admissions & academics

Teaching

  • Fee structures & admissions
  • Batches, slots & scheduling
  • Attendance, homework, lessons
  • Leave, extensions, renewals
Money

Collections

  • Worldline & CCAvenue checkout
  • Auto payment reconciliation
  • Fees, receipts, dues
  • Partner share & payouts
Automation

Hands-free

  • 9 scheduled jobs
  • 50+ WhatsApp messages
Commerce

Shop & rentals

  • Instrument shop & cart
  • Rentals: dispatch → return
  • Inventory & deposits
  • Invoices
People

Staff & talent

  • Users, roles & permissions
  • Salary, advances, documents
  • Staff & student leave
  • Careers, hiring, freelance gigs
Engage

Community

  • Events & recurring workshops
  • Blogs, media, marketing
  • Stock music library
  • Chat & notifications
Control

Shared data core

  • Users · roles · branches · courses
  • Admissions · sessions · payments
  • Branch-scoped access
  • Dashboards & exports
Every area reads and writes the same core records, so a single student is one record across admissions, payments, shop and events.

Public website

Course catalogue with SEO pages, product pages with reviews, online demo booking, admission and pay-as-you-go checkout, events, shop and rentals, blogs, careers, policies and partner registration.

Student portal

My courses, session calendar, attendance, homework, topic videos, questions to the teacher, rearrange requests, leave, payments and receipts, profile.

Staff dashboard

Leads, demos, admissions, batches, fees, branch payouts, shop, rentals, events, HR, templates and settings, with counts and alerts on the home screen.

06 Platform architecture

Built on a proven, maintainable stack


JMDA chose Python and Django with PostgreSQL: a mature, secure framework with a strong data model and admin tooling, ideal for rules-heavy business software.

ChannelsPublic website rsim.in · student portal · teacher home · staff dashboards · partner & talent
ApplicationDomain routing · role & permission middleware · business rules (scheduling, fees, payouts) · 30+ modular apps · scheduled jobs
Data & integrationsPostgreSQL · Worldline · CCAvenue · WhatsApp · Zoom · SMTP · Firebase

Key design decisions

Domain-based routing

One deployment serves several websites. A routing middleware reads the incoming domain and loads that site's pages, so RSIM's portal and other client sites share infrastructure but stay separate.

A dedicated RSIM user model

Students, teachers and staff share one account type with role, branch, unique student code and country code, supporting password and WhatsApp-OTP login.

Rules close to the data

Fee status, dues, monthly payout dates and branch totals are calculated whenever a record is saved, so every screen shows the same numbers.

Modular growth layer

New capabilities (lead management, finance, permissions, communication, hiring, batches and more) were added as 30+ separate apps mounted ahead of the core, so new features ship without destabilising existing ones.

Staging with safe sandboxes

On the test server, outgoing WhatsApp messages are captured instead of sent and payments run through a test page, so releases can be rehearsed safely.

Branch scoping

Branch heads automatically see only their own branch's leads, demos and admissions.

07 The student journey

From first enquiry to renewal, fully connected


Every stage of the student lifecycle is a screen, a set of rules and a set of automatic messages. Nothing has to be re-entered between stages.

1 · Enquirywebsite, JustDial, WhatsApp, walk-in
2 · Demo classslot booked, done / missed
3 · Admissioncourse, slots, fee, pay online / offline
4 · Schedulesessions generated automatically
5 · Learnattendance, homework, videos, questions
6 · Adjustrearrange, leave, extension, holidays
7 · Pay & remindinstalments, dues, 10/7/3-day alerts
8 · Renew / upsellre-enrol, events, instrument shop
StageWhat the platform doesAutomatic communication
EnquiryCaptures leads from website forms, a JustDial API endpoint, WhatsApp and Excel import; assigns a branch; tracks status and follow-ups.New-lead alert to admin and super admin; response to the enquirer.
DemoBooks a demo slot by branch, subject and time; records teacher and student feedback; tracks referrals.New demo received, approved, done, missed and cancelled notices to student, teacher and admin.
AdmissionLooks up the fee, captures slots and teachers, takes payment online or records it offline, creates the student account and code.Form received, payment pending, admission approved, admission confirmed.
ScheduleGenerates every session for the course, applying capacity, monthly and holiday rules; sets course end, grace and payment-due dates.“Your admission is confirmed, log in to see your sessions.”
LearnTeacher marks attendance, rates progress, sets topics, homework and video links; students upload homework and ask questions.Absent, cancelled and backup-class messages; unmarked-attendance reminder to teachers.
AdjustStudent rearranges a missed class into a free slot; leave approvals push the end date; schedule edits regenerate only future sessions.Session rearranged; leave approved with new end date.
Pay and renewRecords instalments and discounts; computes dues; flags unpaid students; supports re-enrolment.Fee receipt, fee reminder, 10/7/3-day expiry alerts, subscription over.
08 Lead and demo-class CRM

A sales pipeline built for a music school


For a music institute the demo class is the moment of truth. The CRM is built around getting every enquiry to a demo, and every good demo to an admission.

Lead management

  • Multiple sources, one list. Website forms, a JustDial lead-receiving API, WhatsApp leads, manual entry and Excel import, with duplicate checks on email and mobile.
  • Clear stages. New, Warm, Hot, Prospect, Missed and Dead, each with its own fast, filterable list.
  • Follow-up discipline. Every follow-up records a remark, a reason and the next date. Today's, pending, upcoming and past follow-ups each have their own queue; a 10:00 job reminds admins of the day's follow-ups.
  • Branch assignment. Branch heads work only their own pipeline.
  • One-click outreach. Course details, demo invitations, admission links or pay-as-you-go offers by WhatsApp to one lead or a filtered segment; CSV export.

Demo-class funnel

  • Real availability. Demo slots come from configured demo batches per branch, day and time, including one-to-one demos and demos inside running classes.
  • Two independent statuses. Demo status (pending, approved, rejected) set by the office; class status (done or missed) set by the teacher, both timestamped.
  • Queues for action. Upcoming, pending, completed, missed, rescheduled, cancelled and admission-done lists.
  • Feedback loop. Teacher and student feedback recorded against the demo, visible when the counsellor calls.
  • Referrals and conversion. Students refer friends as their own funnel; “Mark admission done” links the demo to its admission.
Why it matters

Because the funnel, the follow-up dates and the WhatsApp nudges live in one place, a counsellor opens one screen in the morning and sees exactly who to call, who missed their demo and who is ready to enrol.

09 Pricing and admissions engine

Flexible pricing, consistent rules


RSIM sells the same instrument in many shapes: different durations, frequencies, formats and branches. The admissions engine turns those choices into a correct price and a correct timetable.

Normal admission (package)

The fee comes from a fee structure matrix: Course × Sessions per week × Branch. Each branch can price the same course differently. Fee status is computed, never typed: Unpaid · Partially Paid · Paid.

Total sessions = Weeks in course × Sessions per week
1-month course → 4 weeks
3-month course → 12 weeks
6-month course → 24 weeks
# e.g. 3 months at 2/week = 24 sessions

Due = (Total fee − Discount) − Paid   # never below 0

Pay-as-you-go

For flexible learners, a price per session type (for example one-to-one or group) is set per branch. Each approval creates one session at a time, and the end date follows that session plus a configurable grace period.

Price    = Pay-as-you-go rate (session type, branch)
Sessions = 1 per approval
End date = session date + grace days

Three ways to enrol

RouteHow it works
Website self-enrolmentStudent picks subject, course, branch, frequency, start date and slots; a provisional admission is held during online payment, then confirmed with an instant timetable.
Staff-assisted admissionA counsellor enrols a walk-in or phone enquiry, reusing or creating the student account (auto student code); sessions generate on approval.
Admission linkStaff send an admission or pay-as-you-go link on WhatsApp; the student completes and pays by phone.

Admission lifecycle and states

PendingSubmitted, awaiting payment or approval. Provisional records are kept separately so unpaid attempts never pollute live data.
ActiveApproved and within its end date (including grace). Sessions visible to student and teacher.
On-HoldAn approved leave covers today. Shown automatically; resumes when the leave ends.
Completed / CancelledPast the end date, or cancelled with a full archived copy and the timetable released.
When an admission is approved, the platform also sets the payment due date (start + 30 days), the course end date, the grace end date (end + 7 days by default) and updates the branch's enrolment count and active date range.
10 Smart class-scheduling engine

Every session placed in a real, available slot


The heart of the platform is a scheduling engine that converts an admission into a dated list of classes, while respecting the physical limits of each classroom and instrument.

  1. 1Read slots

    Read the student's chosen weekly slots: day, time and the teacher for each.

  2. 2Walk forward

    Walk week by week from the start date, placing at most the agreed number of sessions in each week.

  3. 3Check

    For each candidate date, check the holiday calendar, the monthly limit, teacher assignment and room capacity.

  4. 4Create or skip

    Create the session if all checks pass; otherwise skip it and let the schedule run on to a later week.

  5. 5Stop

    Stop when the course's full session count is reached; set the course end date and grace period.

Capacity rule per slotLimit
Students in one branch slot (date + time)8
Keyboard students in one slot4
Drum students in one slot1
Sessions per calendar month4 × sessions per week
Session without an assigned teachernot created

Rearranged classes are excluded from the count, so a moved class never blocks a regular one twice.

Holiday intelligence

Regular holiday

The session is still created and marked H. It counts towards the package, matching RSIM's policy that public holidays are part of the course calendar.

“Extra week” holiday

The date is skipped entirely and the session moves to the next available week, so the student keeps every class. Used for institute-wide breaks.

Changing a schedule safely

SituationWhat the engine does
No class attended yet, start date changedRegenerates the full timetable from the new start date and recalculates the session count and end date.
No class attended, start date unchangedRegenerates sessions from the “applicable from” date only, keeping rearranged and backup classes.
Classes already attendedKeeps every past record (present, absent, leave, holiday), deletes only future sessions, and generates just the remaining count, never past the original end date.
Batch Management screens show every running batch with how full it is, free seats, empty and full batches, and let staff copy running slots from one branch or day to another.
11 Attendance, rescheduling, leave & renewals

Handling real life without losing a class


Students miss classes, travel and fall ill. The platform turns each of these into a defined workflow with clear rules and automatic messages.

PPresent
AAbsent · student alerted
LLeave
BBackup / rearranged
CCancelled · alerted
HHoliday

Teachers also record a progress rating, the topic covered, homework (with uploads and status) and lesson-video links for every session. A daily 09:00 job calculates each active student's absence rate and alerts them when it reaches 25%; an evening job lists unmarked sessions for each teacher.

Rearranging a missed class

  • The student or staff picks a new date and time from slots that actually have room, with an available teacher.
  • The same instrument limits apply: a drum class only moves into a slot with no other drum student; a keyboard class only where fewer than four are booked.
  • Duplicate bookings are blocked, unless the original slot was marked as leave.
  • The original session is flagged as rearranged and a new B session is created, with notes linking both. The student receives the old and new date and time on WhatsApp.

Leave and course extension

  • Students apply for leave from their portal with dates and a reason.
  • An admin approves a number of days, optionally with a fee, and the system pushes the course's end date by that many days.
  • While the leave covers today, the admission shows as On-Hold automatically.
  • The student is told the approved dates and the last date by which missed classes can be rearranged.
  • Staff can grant extensions directly from a student search, with a full history of change requests.

Renewal and retention

Expiry reminders

At 10:00 daily, students whose course ends in 10, 7 or 3 days get a renewal reminder with sessions and end date, unless their payment is on hold.

Expired subscriptions

A dedicated list of recently ended courses gives counsellors a ready-made renewal call list.

One-click re-enrolment

Re-enrolment reuses the student's account and history, so a renewal takes a minute.

12 Payments and online reconciliation

Online and offline collections in one ledger


Fees, event tickets, shop orders and rentals can all be paid online. Office staff record cash, bank and UPI payments in the same ledger, with receipts and automatic messages.

Checkoutprovisional record
GatewayWorldline / CCAvenue
Verify responsesigned hash check
Confirmadmission / order
Actschedule, receipt
A background reconciliation job asks the gateway about pending payments and confirms them, so if the student closes the browser before returning, the admission or order is still completed.

Online payments

  • Provisional first, confirmed on success. Admissions, event bookings and carts are held as temporary records until payment succeeds, then promoted to live records with sessions, tickets or invoices.
  • Tamper-evident responses. Each gateway response is verified with the gateway's signed hash before anything is confirmed, and every response is logged for audit.
  • Automatic reconciliation. Jobs query the gateway for pending admissions (every minute), shop orders and event bookings (hourly).
  • Payment desk tool. Staff look up any transaction's live status by ID and date to answer “I paid but…” calls in seconds.
  • Second gateway. CCAvenue checkout with encrypted requests and a full response record, alongside Worldline.

Offline payments and dues

  • Record amount, date, mode and remark with a photo of the receipt or transfer.
  • Apply discounts per admission; dues and fee status update instantly.
  • The student gets a WhatsApp receipt listing all payments so far, and admins get a notice with a link to the transaction history.
  • Fee reminders individually or in bulk; a nightly job flags students past their payment due date with an outstanding amount.
  • Printable receipts and a transaction history per admission for students and staff.
13 Franchise revenue share and payouts

Transparent money for every partner branch


RSIM grows through partner schools that host RSIM classes. Each partner earns a percentage of the fees from its students, paid out monthly. The platform makes that arrangement visible to both sides.

Partner onboarding

  • Public registration form with school details, logo, area, contact and owner information.
  • Bank details for payouts, Google Maps location, an optional upload of the school's existing enquiry database, self-declaration and acceptance of terms.
  • Branches move through Pending → Active → Inactive, can be online, offline or both, and carry their own currency symbol and conversion rate for international centres.
  • Students can be shifted from one branch to another when needed.

Revenue-share model

Payout dates: start + 1 month + 1 day, then monthly. The final payout moves to the grace end date + 1 day, so the partner is paid once the course has fully run.

Share   = Fee × Payout %
Monthly = Share ÷ Months

# illustrative: 3-month course starting 1 Jan
Payout 1 → 2 Feb
Payout 2 → 2 Mar
Payout 3 → grace end (course end + 7 days) + 1 day

Payout ledger

Each payment made to a partner is recorded as a branch transaction against a payout month, with mode and remark. The system prevents paying more than the month's amount due and keeps a running share, paid and due total for every branch. The fees record screen shows each student's monthly payout, payments made and balance, with leave periods visible.

Outcome for partners

Partners no longer wait for a monthly spreadsheet. Their enrolments, revenue share, payments received and amount due are calculated by the same system that runs their classes.

14 Shop and instrument rentals

A music store and rental desk inside the institute


Students need instruments. The platform adds a full e-commerce and rental operation that shares customers, payments and messaging with the academy.

Instrument shop

  • Catalogue by category and condition (new, pre-owned) with colour variants and colour-specific photos.
  • MRP, discount and selling price; purchase date, serial number and warranty records.
  • Cart with quantity updates, online checkout, order numbers and invoices with amount in words.
  • Booking history, abandoned-cart view and active/inactive product control.

Instrument rentals

  • Monthly rent, security deposit, rental terms and minimum months per product.
  • Delivery availability and charge checked by pincode.
  • Start and end dates, rental invoices, extensions and expiry reminders at 10:00 daily.
  • Rental customers can be added by staff for walk-in rentals.

Rental lifecycle

Book & payrent + deposit
Dispatchphotos, serial no.
In usereminders, extend
Returncondition, damage
Refundback to stock
Rent total      = Monthly rent × Months + Deposit
Refund          = Deposit − Damage deduction − Late charge
                  # never below 0; damage ≤ deposit
Closing stock   = Opening − Rented + Returned

Evidence for every rental

Dispatch and return photos are stored against each rental, giving RSIM evidence for any damage discussion, and payment history covers rent, extensions and deposits separately. Returns record quantity, condition, damage description and photos, the person who received it, refund mode and whether the item goes back into stock.

15 Events, content and community

Keeping students engaged beyond the classroom


Events and workshops

  • Event types, sponsors, dates, time, hours, language, venue, age limit, capacity and price, with banners, gallery and an “about” section.
  • Recurring programmes defined by a recurrence rule, generating individual occurrences on a calendar; multi-day workshops supported.
  • Free and paid booking, with online payment, provisional bookings and automatic confirmation.
  • Manual booking and student registration for events from the office.
  • Feedback and ratings after the event; an academic calendar view combining events, holidays and classes.

Content and marketing

  • Course and product pages with SEO title, description, keywords and reviews.
  • Blogs with canonical links, heading tags and schema markup.
  • Brand & Marketing and Media Gallery: photos and videos with captions, consent flags (“OK for promotions”, “OK to repost”) and one-click download.
  • Share your music: students submit performances to feature on the website and social channels.
  • Stock music library with genre, theme and mood, BPM, duration, free and paid tracks, and favourites.
  • Institute policies, terms, refund, cancellation and privacy pages managed from the dashboard.

Learning resources

Course structure

Courses broken into lessons and topics with videos and links; topic access can be unlocked per admission.

Teacher library

A private shared library of teaching material; students see “My lessons” for their own course.

Online classes

Recurring Zoom meetings created from the platform, with a meeting history and “My classes” for students.

16 People

Staff, teachers, hiring and freelance gigs


Staff administration

  • User management with roles, branch, status and secure profile updates
  • Salary: basic salary, dated increments and advances with notes
  • Staff documents stored against each employee
  • Staff leave with types, history and unplanned-leave handling
  • Internal task tracking from pending to closed

Teacher home

A focused daily screen: today's classes, what needs attention (attendance to mark, questions to answer), lessons given this month and attendance rate, plus profile and leave.

Careers and hiring

  • Public “Careers at RSIM” page with openings, online applications, resume and portfolio links
  • Hiring pipeline with applicants, assignment, notes, documents received and onboarding
  • The account role to create when someone is hired

Talent and gig marketplace

  • Freelance musicians sign up, get approved and receive a public profile with gallery, portfolio and upcoming shows
  • RSIM posts gigs with a brief, category and client budget; approved freelancers express interest
  • Student placement pool and “Hire talent from RSIM” booking enquiries
A new revenue line from existing strengths

The talent marketplace lets RSIM earn from its network of teachers, students and freelancers, using the same accounts, profiles and messaging as the academy.

17 Communication and automation

WhatsApp-first, automated by default


In India, families live on WhatsApp. JMDA made it the platform's main channel: more than fifty message types are sent automatically, with admin-editable text and a full delivery log.

How messaging works

  • Editable templates with placeholders such as student name, amount, date and links; each can be switched on or off.
  • Approved WhatsApp templates for time-critical notices (absence, cancellation, rearrangement, expiry, demo updates) and OTP login.
  • Delivery log with recipient, template, content and success or failure.
  • Bulk and custom campaigns to filtered lead and demo segments.
  • Country codes per user for international students.
  • Safe testing: on the test server messages are captured, not sent, except to an approved list.
AudienceExamples
StudentsForm received, admission confirmed, absent, cancelled, rearranged, backup class, fee receipt, fee reminder, leave approved, 10/7/3-day expiry, subscription over, 25% absence warning
TeachersUnmarked attendance, demo assigned or cancelled
AdminsNew lead, new demo, demo done or cancelled, fee submitted, follow-ups due
Super adminsNew demo received, admission approved

The automation calendar

WhenJobBusiness purpose
Every minuteOnline admission payment checkConfirms paid admissions even if the student never returned from the gateway.
HourlyShop and event payment checksConfirms paid orders and event tickets.
00:05 dailyUnpaid-fee controlFlags students past their payment due date with an outstanding amount.
09:00 dailyAbsence analysisWarns students whose absence reaches 25% of sessions.
10:00 dailyCourse expiry remindersRenewal nudges at 10, 7 and 3 days before the end date.
10:00 dailyRental expiry remindersPrompts rental extension or return.
10:00 dailyFollow-up remindersTells the sales team which leads to call today.
20:00 dailyUnmarked attendanceLists each teacher's sessions still waiting for attendance.
In-app chat, a notifications centre and browser push notifications complement WhatsApp for logged-in users.
18 Role-based experiences

The right screen for every person


A single login routes each person to an experience built for their job. Students land on their courses; staff land on a dashboard with today's counts and alerts.

RoleHome and key screensData scope
StudentMy courses, sessions calendar, homework and videos, questions, rearrange, leave, payments, receipts, profile, shop and eventsOwn admissions, sessions and payments only
TeacherTeacher home, today's classes, attendance, progress, topics and homework, student questions, library, leaveSessions assigned to them
Branch HeadLeads, follow-ups, demos, admissions, batches and fees for the branchOwn branch only
Admin / Admin ExecutiveFull operations: approvals, payments, templates, holidays, users, shop, rentals, eventsAll branches
Super AdminEverything, plus partner payouts, roles and permissions, and approval notificationsEntire network
Partner / FreelancerRegistration and KYC; freelancer profile, gigs and updatesOwn records

Flexible sign-in

Login by email or student code with password, or by WhatsApp one-time password; forgotten-password flow by OTP.

Permission layer

A roles-and-permissions module with middleware that controls which screens each role can open.

Protected deletions

Sensitive deletions, such as sessions and message templates, require an OTP confirmation.

Dashboards and reporting. The staff home shows the day's leads, JustDial leads, demos, admissions, pay-as-you-go bookings, pending online admissions, shop orders and rentals at a glance, with lists for every pipeline stage. A newer dashboard adds a mobile-friendly sidebar layout. Leads, demo bookings and users export to CSV and Excel; receipts and records print to PDF.
19 Complete module catalogue

Everything JMDA built for RSIM


AreaModuleKey capabilities
GrowPublic websiteCourses, products with reviews, events, shop, rentals, blogs, careers, policies, contact
GrowLead managementMulti-source capture, stages, follow-ups, branch assignment, import/export, WhatsApp outreach
GrowDemo bookingsDemo batches and slots, status tracking, feedback, referrals, conversion
GrowApply / booking pagesMobile booking and payment pages for classes and integrated programmes
AcademicsCourse catalogueCategories, subjects, courses, durations, minimum age, SEO
AcademicsCourse structureLessons, topics, videos, integrated packages
AcademicsAdmission managementWebsite, staff and link-based admissions; approval; cancellation archive; receipts
AcademicsBatch managementShifts, days, time slots, teachers, occupancy, copy slots between branches
AcademicsSession managementAutomatic generation, attendance, progress, homework, rearrangement
AcademicsAcademic calendar & holidaysHoliday types, extra-week breaks, event calendar
AcademicsExpired subscriptionsRenewal call lists for recently ended courses
MoneyFee structuresCourse × frequency × branch pricing; pay-as-you-go rates; grace period
MoneyPaymentsWorldline and CCAvenue checkout, verification, auto-reconciliation, status lookup
MoneyFees and duesOffline payments, discounts, receipts, reminders, unpaid control
MoneyFinance & partnersBranch share, monthly payout schedule, payout ledger, partner views
CommerceShopCategories, conditions, colours, cart, checkout, invoices
CommerceRentalsPincode delivery, deposits, dispatch/return photos, extension, refunds
CommerceInventoryOpening, rented, returned and closing stock
EngageEventsOne-off and recurring events, booking, payment, feedback
EngageMarketing & mediaMedia gallery, consent flags, share-your-music submissions
EngageStock musicGenre, theme, mood, BPM, free and paid tracks, favourites
EngageMeetings & libraryZoom classes, teacher library, my lessons
PeopleUsers, roles & permissionsRole model, branch scoping, permission middleware
PeopleHRSalary, increments, advances, documents, staff leave
PeopleStudent & teacher portalsStudent home and courses; teacher home and profile
PeopleHiring & careersOpenings, applications, pipeline, onboarding
PeopleTalent marketplaceFreelancer profiles, gigs, student placement, booking enquiries
CommunicateWhatsApp communicationTemplates, campaigns, delivery log, on/off control, test capture
CommunicateChat & notificationsIn-app chat, notification centre, web push
CommunicateCompany branchesPartner KYC, status, online/offline, currency, branch transfers
20 Delivery approach

How JMDA built and evolved the platform


RSIM's platform was not delivered in a single drop. It grew with the business, release by release, from a core admissions system into a complete operating platform.

Phase 1Core academy

Courses to student portal

Courses, subjects, fee structures, admissions, batches, automatic sessions, attendance and the student portal.

Phase 2Sales & payments

Pipeline and money

Lead CRM, demo funnel, online payments with reconciliation, offline fees and WhatsApp automation.

Phase 3Network & commerce

Partners and store

Partner branches with revenue share, shop, rentals, events, blogs and stock music.

Phase 4Modular expansion

30+ focused apps

New dashboards, batch and session management, finance, permissions, communication, hiring, talent marketplace, media and more, released through a controlled go-live process.

Engineering practices

Business rules first

Each rule (capacity, grace period, payout dates, refund formula) was agreed with RSIM and documented in the code next to its implementation.

Versioned data model

260+ database migrations let the schema evolve without data loss as RSIM's offering changed.

Staging environment

A separate test server with WhatsApp capture and a payment test page lets RSIM's team try new features safely before go-live.

Additive releases

New modules are mounted alongside the core and switched on per environment, so existing workflows keep running during upgrades.

Configurable, not hard-coded

Message templates, holidays, fees, grace periods, roles and country codes are managed by RSIM's staff.

Technology summary

LayerTechnologies
ApplicationPython, Django, Django admin (Jet), server-rendered pages with JSON endpoints for interactive screens
DataPostgreSQL, Django ORM and migrations, pandas and openpyxl for imports and exports
Automationdjango-crontab scheduled jobs; rule-based date logic with dateutil and recurrence rules
DocumentsReportLab PDF generation, printable receipts and invoices, amounts in words
IntegrationsWorldline (Paynimo) and CCAvenue payments, WhatsApp Business messaging and OTP, Zoom API, SMTP email, Firebase and VAPID web push
HostingLinux cloud server with separate live and staging environments; one deployment serving multiple domains
21 Business impact

What changed for RSIM


The platform replaced manual coordination with defined, automatic workflows across every part of the institute.

AreaBeforeWith the RSIM platform
Lead follow-upEnquiries spread across phones, sheets and portalsOne pipeline, daily follow-up queues and automatic reminders
TimetablingDates worked out by hand for each admissionA full course timetable generated in seconds, with capacity and holidays applied
Room capacityOverbooking caught only when students arrivedSlot, keyboard and drum limits enforced at booking and rearrangement
Missed classesMake-up classes negotiated over callsSelf-service rearrangement into free slots, with confirmation
Online paymentsPaid admissions sometimes left unconfirmedGateway-verified confirmation and background reconciliation
Fees and duesManual tracking of instalmentsLive dues, receipts on WhatsApp and automatic reminders
Partner payoutsMonthly spreadsheets and queriesCalculated share, payout schedule and ledger per branch
CommunicationMessages typed by staff50+ message types sent automatically and logged
RetentionRenewals noticed after courses ended10/7/3-day reminders and an expired-subscription call list
New revenueAcademy fees as the main incomeShop, rentals, events, stock music and talent gigs on the same platform

For students and parents

Self-service enrolment and payment, a clear timetable, instant updates and an easy way to make up missed classes.

For teachers and staff

A focused daily view, fewer phone calls and messages, and rules that make decisions consistent across branches.

For management and partners

One source of truth for enrolments, capacity, collections and payouts across the whole network.

What comes next

Unified finance and analytics

Consolidated revenue, collections and partner-payout analytics across admissions, shop, rentals and events, with branch-level dashboards for management.

Native mobile apps

Student and teacher apps on the same back end, with push notifications for classes, homework and payments.

AI-assisted operations

Smarter slot suggestions, churn prediction from attendance patterns, and an assistant that answers student and parent questions from institute data.

Tax-ready invoicing

GST-ready invoices and accounting exports for the shop, rentals and course fees.

Platform hardening

Continued security review, consolidation of earlier code into the modular layer, and automated testing of the core scheduling and payment rules.

Partner self-service

A dedicated partner portal for enrolments, payouts and statements, with downloadable monthly reports.

Free consultation

Running a multi-branch institute or a franchise network?

Talk to JMDA Analytic about a platform like RSIM's, built around your real business rules.

This case study describes the RSIM platform as built and maintained by JMDA Analytic Pvt Ltd. Platform figures are drawn from the codebase at the time of writing. Product and company names belong to their respective owners.

Call WhatsApp Get Quote