Skip to content

Adhyayan & Utsav (Raj Adhyayan & Raj Utsav)

Part of the Aashray Business Logic. Related: Booking Lifecycle & Engine, Food, Travel, Payments, Credits & Reconciliation, Notifications, Short Links & App Updates, WhatsApp Groups.

Aashray runs two kinds of events for members: Raj Adhyayan, multi-day study programmes led by a speaker, and Raj Utsav, festivals sold as one or more dated ticket packages. Both are staff-created and staff-run: an Adhyayan or Utsav exists, with its dates, price, and capacity already set, before any member sees it. A member's booking sits inside that configured event. For events held at the Research Centre, staff track attendance and on-site logistics. The system also accepts feedback after the event start time, subject to separate timing and booking checks.

The shared mechanics, seats, payments, cancellation and credit, work the same way described in Booking Lifecycle & Engine; this file covers only what's specific to Adhyayans and Utsavs.


Adhyayan

What it is

An Adhyayan is led by a speaker (a Swadhyay Karta) over one or more days at a location, the Research Centre or elsewhere. A member can register a seat for themselves, for a guest, or for other Mumukshus they're acting on behalf of. Registration may be free or paid; a free Adhyayan is confirmed immediately, with no payment step. Members whose account type is "guest" can only register themselves, they can't register other guests or Mumukshus on an Adhyayan.

Setting up and running an Adhyayan

Before an Adhyayan is visible to any member, staff create it, setting the speaker, dates, location, price, and total number of seats, and it opens for registration by default.

  • Staff can open or close registration on an Adhyayan at any time; while closed, every new booking goes straight to the waitlist regardless of seats remaining.
  • Staff can edit an Adhyayan's total seats at any time, and, once attendance has started being recorded for it, can no longer change its length (number of days).

Details staff set (staff panel and backend):

  • Fields. Name, location, start and end dates, speaker, total seats, price, whether food is included, comments, and an optional WhatsApp group link (see WhatsApp group link). All but comments and the group link are required in the staff panel.
  • Locations. The staff panel offers the Research Centre (Parli), Rajnandgaon (Mokshdham, the Raj centre), Mumbai, Dhule and Kolkata.
  • No duplicates. The backend refuses a new Adhyayan with the same speaker and start date as an existing one ("Adhyayan Already Exists").
  • Attendance sessions. For a Research Centre Adhyayan, the backend creates three sessions per day as soon as the Adhyayan is saved: two regular sessions at 10:00 AM and 3:45 PM, and an early-morning session at 4:30 AM, shown as "MV". The regular sessions are numbered first, day by day; the early-morning sessions follow.

Editing (backend):

  • When staff change the total seats, the seats left move by the same difference, but never below 0. When the total stays the same, staff can type a new seats-left number directly. Neither change cancels or waitlists existing bookings.
  • A change of price, dates or speaker does not change existing bookings or their charges, and sends no message.
  • Changing the number of days is refused once any attendance is recorded ("Cannot change shibir duration because attendance records already exist"). Moving the same number of days to new dates is allowed, and the sessions move with it. When the length gets shorter before attendance starts, the extra sessions are removed.
  • Changing the location away from the Research Centre removes all sessions and recorded attendance (see Known limitations).
  • The backend refuses to load, edit, list bookings for, or change bookings of an Adhyayan that started more than 15 days ago ("Adhyayan not found").

Opening, closing, deleting (backend and staff panel):

  • Open or close asks for confirmation, changes only the registration status, and sends no message. It does not change existing bookings.
  • Delete marks the Adhyayan as deleted. Members no longer see it in the list. The backend sends a push notification, "Adhyayan Cancelled by Admin", to every member and booker who holds a waitlisted, confirmed or unpaid booking, but it does not cancel the bookings or give credit (see Known limitations).
  • On the "Edit Existing Adhyayan" list, a deleted Adhyayan shows a "Re-instate" button, which opens it again for registration.

Staff roles for Adhyayans

The staff panel decides which Adhyayan screens a role can open. The backend accepts every Adhyayan action from one shared list of roles (see Known limitations).

Role What the staff panel offers
Super admin, office admin, Adhyayan admin All of Adhyayan Management: create, edit, open or close, delete and re-instate, summary reports, booking lists, status changes, registration, attendance, feedback
Adhyayan admin for the Kolkata, Raj or Dhule centre The home menu opens that centre's Adhyayan summary report. From it: booking lists, status changes, attendance scanning and reports, feedback. The admin for the Raj centre can also open registration.
Adhyayan read-only role The home menu opens the Research Centre summary report. Booking lists, attendance scanning and reports, and feedback. No open or close, no status change, no registration.
Utsav admin, Utsav admin for the Raj centre The Adhyayan status-change page and Adhyayan booking lists. The Utsav admin also sees the Param Gyaan Sabha report.
Utsav read-only role The Param Gyaan Sabha report and Adhyayan booking lists
  • The centre-scoped roles reach their centre only through the home menu link. The summary report takes the centre from the page address, so it can show any centre (staff panel).
  • Only super admins can change the status of a waitlisted booking from the booking list. Other roles see no action for waitlisted rows (staff panel).
  • The backend list of allowed roles is: super admin, office admin, Adhyayan admin, the three centre Adhyayan admins, the Adhyayan read-only role, both accounts admin roles, and the Utsav admin. Only the group join reminder has a narrower list (super admin, Adhyayan admin, office admin).

Staff reports and booking lists for an Adhyayan

  • Summary report, per centre (staff panel and backend). Staff pick a centre from "Adhyayan Summary Report": Research Centre, Kolkata, Rajnandgaon, Dhule or Mumbai. The report lists that centre's Adhyayans that start 15 days ago or later. Each row shows the dates, the speaker, and counts of confirmed, unpaid, waitlisted, member-cancelled and staff-cancelled bookings. Each count opens the matching booking list. A row also has open or close (hidden from the read-only role) and two session pickers that open the card-tap scanner or the mobile scanner for one session. The whole list downloads as a spreadsheet.
  • Quick actions on a row (staff panel): attendance report; attendance summary (with download); copy the member app link to the Adhyayan; copy the WhatsApp short link; "Audit & Send Reminders" (see WhatsApp Groups); copy the feedback link; view feedback; and "Register Mumukshu" (hidden from the read-only role).
  • Edit list (staff panel and backend). "Edit Existing Adhyayan" lists Adhyayans at every centre that start 7 days ago or later, with seats, seats left, food, and Edit, Delete, Open or Close, and Re-instate.
  • Param Gyaan Sabha report (staff panel and backend). Param Gyaan Sabha is run as an Adhyayan whose name starts with "Param Gyaan Sabha". Its report lists those Adhyayans that start 30 days ago or later, with confirmed, unpaid and waitlisted counts, total seats, status, open or close, and a spreadsheet download.
  • Booking list (staff panel and backend). One list per status: confirmed (including bookings marked paid by cash), unpaid (including cash pending), waitlisted, member-cancelled, or staff-cancelled, oldest booking first. Columns: booking number, name, mobile, gender, centre, member type, booking status, booked at, last updated, payment status, staff comments, and booked by. Staff can search and download the list. A row also offers "Update Booking Status" and, when the booking has no attendance entry, "Add Attendance".

Staff status changes and registrations for an Adhyayan

Status changes (backend). Staff pick the new status and can add a note. The backend refuses the same status again, any change to a cancelled or staff-cancelled booking, and a change to waitlisted.

New status Allowed from What happens
Confirmed Waitlisted or payment pending From the waitlist, it takes a seat and is refused when the Adhyayan is full. An unpaid charge is marked paid, with the staff note. From the waitlist with no charge yet, a new charge is created with Adhyayan credit applied first (see Known limitations). An attendance entry is added.
Payment pending Waitlisted only. Refused from confirmed. Takes a seat and is refused when full. A charge is created for the payer, payable in cash, with the payer's Adhyayan credit applied first.
Admin cancelled Waitlisted, payment pending or confirmed A confirmed or unpaid booking frees its seat, and the oldest waitlisted booking moves to payment pending. Attendance for the cancelled booking is removed. The payer gets Adhyayan credit: the full amount if paid, or the credit already applied if unpaid.

After each change, the attendee and booker get the messages in Adhyayan messages. A promoted booking gets its own messages.

Staff registration (staff panel and backend). Staff open "Register Mumukshu" for one Adhyayan and add one row per person. Each row looks up the card by mobile number.

  • The backend checks every card, refuses a person who already holds a confirmed, waitlisted or unpaid booking for that Adhyayan, and refuses an Adhyayan that started more than 15 days ago.
  • Seats work as for a member: when the Adhyayan is open and has a seat, a free Adhyayan is confirmed and a paid one waits for payment, charged to the person with their Adhyayan credit applied first. Otherwise the booking is waitlisted. No one is recorded as the booker.
  • Each person gets the new-booking WhatsApp message for their status. No email is sent.

A member's booking: browsing and registering

Once an Adhyayan exists and is open, a member's booking is what actually claims a seat inside it, not what creates the Adhyayan in the first place.

  • A member browses upcoming Adhyayans (grouped by month) and opens an Adhyayan to see the speaker, dates, location, price, and how many seats remain, the details staff set when they created it.
  • Registering opens a short form asking who the seat is for, then hands off to the normal booking and payment flow.
  • If seats remain and the Adhyayan is open for registration, the seat is reserved right away (confirmed immediately if free, or held pending payment if not). If the Adhyayan is full, or staff have closed registration, the booking instead joins a waitlist. When several people try for the last seat at the same moment, only one gets it and the rest join the waitlist.
  • A member cannot hold more than one active booking (confirmed, waitlisted, or pending payment) for the same Adhyayan.

What the member app shows (member app and backend):

  • The list shows Adhyayans that start after today and are not deleted, closed ones included, 10 at a time.
  • The Adhyayan screen shows "Waitlist only" and a "Join waitlist" button when registration is closed or no seats remain. It shows "Only N spots left" when 10 or fewer seats remain, and "Spots available" otherwise. It also shows the price, the comments, and "Food arrangements" when food is included.
  • A member can share the Adhyayan. The shared text has the name, dates, location and a link to the Adhyayan.
  • Members whose account type is guest see only the "Self" option. Booking someone else needs a 10-digit mobile number for each person. A new guest also needs a name, gender and type.
  • For an Adhyayan away from the Research Centre, the flow goes straight to the booking review with no add-on step.
  • When a member books a stay, the stay flow offers Adhyayans that start and end within the stay dates as an add-on (backend).
  • "My bookings" lists the member's own bookings and the bookings they made for others, latest Adhyayan first, with the amount and payment status.

Cancelling and the waitlist

  • A member cancels from their bookings. The backend lets a member cancel only a booking that is theirs or one they made for someone else. Cancelling a confirmed or pending-payment seat automatically promotes the oldest person on the waitlist into that seat. A freed seat goes to one person only, even when two cancellations of the same booking arrive at once.
  • Money on cancellation (backend): a member who cancels a paid booking gets no refund or credit. Cancelling an unpaid booking simply cancels it, and any Adhyayan credit already applied to it is not returned. When staff cancel a member's booking, the payer always gets Adhyayan credit: the full amount for a paid booking, or the credit already applied for an unpaid one. See Payments, Credits & Reconciliation.
  • Staff can also close or delete an Adhyayan entirely. Closing sends no message. Deleting sends a push notification to affected members, but, see Known limitations, below, it does not automatically cancel or refund their individual bookings.
  • A promoted booking moves to payment pending, gets a charge with the payer's Adhyayan credit applied first, and gets an attendance entry (backend). The 24-hour payment window then applies to it (see Status Vocabulary & Automatic Checks).
  • Cancelling also removes the booking's attendance entry and records (backend).

Attendance during an Adhyayan

For Adhyayans held at the Research Centre, staff track attendance day by day. This happens two ways: scanning a member's card (by phone camera or a dedicated card-tap reader at the door), or a staff member manually marking someone present or absent, one at a time or in bulk. Only members whose booking is confirmed (including those who paid by cash) are eligible to be marked.

Staff can pull a per-person, per-session attendance report, and a per-session summary of how many attended versus were absent. A recurring assembly called "Param Gyaan Sabha," which is run as an Adhyayan under the hood, has its own dedicated report.

How attendance works (backend and staff panel):

  • Who can be marked. A booking gets an attendance entry when it is confirmed or waiting for payment at a Research Centre Adhyayan. Staff can add a missing entry from the booking list with "Add Attendance". The backend does not check the booking status for that button.
  • Scanning. Staff pick a session on the summary report, then scan cards with the card-tap reader page or the phone-camera page. A scan is refused when the session does not exist, when the person has no confirmed booking ("Attendance record not found"), or when that session is already marked ("Attendance already marked for session N").
  • Scanning offline (staff panel). When the device is offline, both scanner pages keep scans on the device and send them later with the time of the scan. The same card for the same session is not queued twice within 5 minutes.
  • Manual marking. The attendance report has one Yes or No per person per session. Staff can switch one cell, or select people and mark a session present or absent in bulk.
  • Attendance report. One row per confirmed booking, with card number, name, mobile, gender, centre and member type, and a Yes or No for every session. MV sessions are labelled.
  • Attendance summary. For each session: registrants, attended, and absent. It downloads as a spreadsheet.

Feedback after an Adhyayan

The backend allows a member to submit a feedback survey from 1:00 PM IST on the Adhyayan start date until 15 days after that start time. The member must have a confirmed or cash-completed booking. Each member can submit once for their own booking. The survey asks about the speaker, the member's experience, and the food and stay, with space for suggestions.

Known limitation: the member app can show a feedback action by a display rule that does not fully match the backend eligibility rule, see Known limitations, below.

  • Questions (member app). Ratings for the Swadhyay Karta, personal interaction with the Swadhyay Karta, the food at the bhojanalay, and the stay at the Research Centre. Suggestions for the Swadhyay Karta, whether the member would attend Raj Adhyayan again, what they loved most, and other improvements. The staff report also has a "future topics" column, which the member app never fills.
  • Opening the survey. A member opens it from the booking in "My bookings", or from the feedback link staff copy from the summary report. The screen first asks the backend whether feedback is allowed, and shows "Access Denied" with the reason when it is not.
  • Feedback report (staff panel and backend). For one Adhyayan: card number, name, mobile, gender, centre, member type, every answer, and the time submitted. It has search and a spreadsheet download. The panel shows only the 20 most recent responses (see Known limitations).

Adhyayan messages

These rules cover WhatsApp, email and push messages for Adhyayan bookings (backend). Notifications, Short Links & App Updates owns the shared channel rules.

New booking, WhatsApp:

  • Research Centre Adhyayan. A waitlisted, payment-pending or confirmed message with the Adhyayan name. The confirmed message to the member who booked also carries the payment reference. When a member books for someone else, the booker gets a version that names the attendee, and the attendee gets a version that names the booker. Members abroad get a separate payment-pending wording.
  • Adhyayan elsewhere. One general message for waitlisted, payment pending or confirmed, with the recipient's and attendee's names, booking number, status, Adhyayan name, venue, speaker and dates. The waitlisted and payment-pending versions have a button that opens the Adhyayan.
  • Param Gyaan Sabha bookings get no WhatsApp message.

Status changes, WhatsApp (Research Centre Adhyayans only):

Status change Who causes it Attendee Booker, when someone else booked
Waitlisted → cancelled Member Yes Yes, naming the attendee
Waitlisted → admin cancelled Staff Yes Yes
Waitlisted → payment pending Waitlist promotion after a member or staff cancellation, or staff Only when no one else booked Yes
Waitlisted → confirmed Staff Yes Yes
Payment pending → cancelled Member Yes Yes
Payment pending → admin cancelled The automatic 24-hour check, or staff. Each has its own wording. Yes Yes
Payment pending → confirmed Staff mark it paid Yes, with the payment reference and the WhatsApp group button Yes, with the payment reference
Confirmed → cancelled Member Yes Yes
Confirmed → admin cancelled Staff Yes Yes
  • An online payment sends no Adhyayan WhatsApp message. The member gets only the booking email (see Known limitations).
  • A waitlist promotion made by the automatic 24-hour check sends a push and an email, but no WhatsApp message.
  • Adhyayans away from the Research Centre get no status-change WhatsApp message.

Email:

  • Booking email. After a booking, and after a successful payment, the booking email lists each Adhyayan booking with its number, the attendee's name, the Adhyayan name, speaker, start and end dates, and status. It adds a note that the Adhyayan committee may cancel the booking within 7 days if the member does not meet the Adhyayan criteria.
  • "Raj Adhyayan Booking Updated". Sent to the attendee, with a copy to the booker, after a staff status change, a member cancellation, and a waitlist promotion. It shows the booking number, the new status, the Adhyayan name and its start and end dates, with a key that explains each status. It is sent only when the attendee has an email address.

Push:

  • "Adhyayan Booking Updated", to the attendee and the booker, after the same events as the status email. The text gives the new status, adds "by an Admin" for staff changes, and asks for payment within 24 hours for payment pending.
  • "Adhyayan Cancelled by Admin", when staff delete an Adhyayan (see Setting up and running an Adhyayan).

Utsav

What it is

An Utsav is sold as one or more dated packages, each with its own start and end dates and its own price. A member picks a package when registering. Check-in and a few per-person logistics (arrival, own-car details, an optional volunteer role, room assignment) are tracked against the booking.

Setting up and running an Utsav

Before an Utsav is visible to any member, staff create it, setting its dates, location, registration deadline, and which meals it covers, then add one or more dated packages, each with its own price and a date window that must fall within the Utsav's own dates. Registering for one package of an Utsav blocks registering for another package of the same Utsav, because a member can hold only one booking per Utsav. The Utsav opens for registration by default.

An Utsav stops being visible for browsing (and can no longer be opened by id) once its registration deadline has passed, including to members who already registered for it.

Details staff set (staff panel and backend):

  • Fields. Name, start and end dates, total seats, comments, location, an optional WhatsApp group link (see WhatsApp group link), registration deadline, and, for the Research Centre only, the meals on the first and last day.
  • Checks on create. The registration deadline must be before the start date. The backend refuses a second Utsav with the same name and start date. The location defaults to the Research Centre.
  • Meals. Staff pick which of breakfast, lunch and dinner are served on the first day and on the last day. Every other day has all three. A member's meals follow their package: the first-day choice applies only when the package starts on the Utsav's first day, and the last-day choice only when it ends on the Utsav's last day (see Food).
  • Rooms. Creating a Research Centre Utsav also blocks its dates for room stays (see Stay: Rooms & Flats).
  • Packages. After creating the Utsav, the staff panel opens the package form. Staff add one or more packages with a name, start and end dates, and a price. The backend refuses a package whose dates fall outside the Utsav, ends before it starts, repeats a name already used in that Utsav, or has a price of 0 or less. Staff can add more packages later from the Utsav list.
  • Package overlap rule. Staff do not set overlapping packages. The backend has one fixed rule for three specific package records, a Samvatsari package and two packages that overlap it: a member with an active booking on one cannot book the other.

Editing (backend and staff panel):

  • Staff edit the Utsav and its packages from "Edit Existing Utsav and Packages". The edit form also shows the WhatsApp short link with a copy button.
  • A seat change works as for an Adhyayan: the seats left move by the same difference, never below 0, or staff type a new seats-left number when the total stays the same.
  • An edit does not check the registration deadline against the start date, does not move the blocked room dates, and does not check that packages still fit the dates. A package edit does not check its dates or price. Existing bookings and charges do not change.
  • Open or close asks for confirmation and changes only the registration status. It sends no message.
  • Older pages that no menu links to still work: a list of packages that start after today, with waitlist counts, and separate Utsav and package edit forms with the same rules (staff panel).

Staff roles for Utsavs

Role What the staff panel offers Backend
Super admin, Utsav admin All of Utsav Management Everything
Utsav admin for the Raj centre The home menu opens the Rajnandgaon Utsav summary report. Booking lists, status changes, registration, check-in report, volunteers, feedback, room occupancy, the 1-year history, and the room-allocation tool. Refuses staff registration and the room-allocation tool
Utsav read-only role The Utsav summary reports, booking lists, check-in report, volunteers and feedback. No status change, open or close, scanners, registration, room tools, room occupancy or 1-year history. Accepts every Utsav action except staff registration and the room-allocation tool (see Known limitations)
Accounts admin (both roles) No Utsav screens Everything except the room-allocation tool
Office admin The summary-report menu, the 1-year history, and room occupancy Refuses all Utsav data
Room admin Room occupancy Refuses it
Housekeeping admin The extra-bedding report The extra-bedding report and the Utsav list only

A coordinator with a temporary access link sees the reduced view in Temporary access links for coordinators, below.

Staff reports and booking lists for an Utsav

  • Summary report, per location (staff panel and backend). Staff pick Research Centre, Rajnandgaon, Bangalore or Hyderabad from "Utsav Summary Report". Each Utsav row shows counts of confirmed (including paid by cash and checked in), checked in, unpaid, waitlisted, member-cancelled and staff-cancelled bookings, and of people who chose a volunteer role. Each count opens its list. The row has open or close, hidden from the read-only role and coordinators. The whole list downloads as a spreadsheet.
  • Quick actions on a row (staff panel): copy the feedback link; copy the WhatsApp short link; "Audit & Send Reminders" (see WhatsApp Groups); view feedback. Roles other than the read-only role and coordinators also get the check-in scanner, the food scanner, "Register Mumukshu", room occupancy and the 1-year history.
  • Booking list (staff panel and backend). One list per status: confirmed (confirmed, paid by cash, and checked in), unpaid (including cash pending), waitlisted, member-cancelled, or staff-cancelled. Columns: booking number, card number, name, age, package, room, booked at, arrival by own car, car number, volunteer role, the member's notes, payment notes, mobile, gender, centre, member type, booking status, payment status and booked by. Staff can filter by package, see totals by gender, open a summary by centre and package with male and female counts, and download all rows or the chosen package. The list has the button to the room-allocation tool and an "Update Booking Status" action, both hidden from the read-only role and coordinators.
  • Volunteers (staff panel and backend). Confirmed, cash-paid and checked-in bookings with name, centre, package, age, volunteer role ("not selected" when none), mobile, gender and member type. People who chose a role come first, then "Unable to Volunteer", then "not selected". The roles are Admin, Logistics, Kitchen, Vitraag Vigyaan Bhavan, Samadhi Sthal and Unable to Volunteer. Package filter, centre summary and spreadsheet download.
  • Check-in report (staff panel and backend). By default, confirmed and checked-in bookings. The confirmed filter adds cash-paid bookings and leaves out checked-in ones. Columns: name, centre, checked in or not, check-in time, package, age, mobile, booking number and booked by. Fasting badges show Upvaas days or the number of Aayambil days from a Tapascharya form (see Custom Forms). It has package and centre summaries.
  • Room occupancy (staff panel and backend). Room stays of people who hold any booking for the Utsav, in any status. "Pre Event" shows stays that check in during the 5 days up to the Utsav start. "Post Event" shows stays that check in from the Utsav end to 5 days after. Staff choose which room-booking statuses to include. It downloads as a spreadsheet.
  • 1-year participant history (staff panel and backend). For each confirmed, cash-paid or checked-in participant, the year before the Utsav start: nights stayed at the Research Centre, single-day visits, Param Gyaan Sabha bookings, other Adhyayans attended, and past Utsavs. Tags: regular stay (30 nights or more), Param Gyaan Sabha regular (5 or more), active Adhyayan (5 or more Adhyayans), and frequent visitor (15 nights or more, 5 or more Adhyayans, or 2 or more Utsavs). Staff can filter by tag, by package, and to leave out Permanent Residents, flat owners and members abroad. It sorts by nights stayed by default and exports to a spreadsheet.
  • Feedback report (staff panel and backend). For one Utsav, or all Utsavs, with search by card number or name. It shows the average of the overall, stay, food and programme ratings, and one row per response with card number, name, mobile, gender, centre, member type, Utsav, time submitted, each rating, what the member loved most and their suggestions. It downloads as a spreadsheet.

Staff status changes and registrations for an Utsav

Status changes (backend and staff panel). Staff change a status from the booking list. When they pick "admin cancelled", the panel asks whether to issue credit, with "No" as the default. The backend refuses the same status again, any change to a staff-cancelled booking, and a change to waitlisted.

New status Allowed from What happens
Confirmed Payment pending, or cancelled by the member An unpaid charge is marked paid, with the staff note. Reinstating a member-cancelled booking reopens its cancelled charge as unpaid and does not take a seat back (see Known limitations).
Payment pending Waitlisted only Takes a seat, and is refused when the Utsav is full ("No seats available for this utsav"). A free package is confirmed straight away. A paid package gets an online charge for the payer, with Utsav credit applied first, and is confirmed if the credit covers it. Research Centre meals are arranged for the package dates.
Admin cancelled Waitlisted, payment pending, confirmed, or cancelled by the member A booking that held a seat loses its package meals. A confirmed or unpaid booking gives its seat back while the Utsav is open. No waitlisted booking is promoted. Credit follows the staff choice (see Seats and the waitlist).
  • Staff cannot cancel a checked-in booking, or one in a cash payment status.
  • After each change, the attendee gets the status email and the WhatsApp messages in Utsav messages. Moving a free-package booking from the waitlist sends the email only.

Staff registration (staff panel and backend). Staff open "Register Mumukshu" for one Utsav and add one row per person: mobile number (looked up to a card), name, package, arrival by own car and car number, volunteer role, and notes.

  • Only super admins, Utsav admins and accounts admins can register (backend).
  • The backend refuses a person who already holds an active booking for that Utsav, and applies the package overlap rule.
  • Every staff booking is created waitlisted, with no booker and no charge. Staff then move it to payment pending or confirm it. Each person gets the "Utsav Booking Updated" email and the waitlisted WhatsApp message.

A member's booking: browsing and registering

Once an Utsav exists and is open, a member's booking is what claims a place in it, not what brings it into being.

  • A member browses upcoming Utsavs (grouped by month, each showing its packages), and opens one to see each package with its dates and price, the lowest price as "Starting from ₹…", the location, and whether the venue has accommodation. The daily schedule and guidelines screens show fixed text that is the same for every Utsav (member app).
  • Registering asks which package, whether the member is arriving by their own car (and, if so, the vehicle number), an optional volunteer role, and free-text notes, then hands off to the normal booking and payment flow. Registering as yourself for an Utsav always continues to an add-on selection step (for things like meals or travel), unlike an Adhyayan, where that step is skipped for off-campus Adhyayans.

What the member app shows (member app and backend):

  • The list shows Utsavs whose registration deadline is today or later, closed ones included.
  • The Utsav screen shows "Waitlist only" when registration is closed. The backend does not send the seats left to this screen, so a full Utsav that is still open shows "Spots available" (see Known limitations).
  • The car number must be 10 characters when the member says they are arriving by own car. The volunteer roles match the staff list above.
  • Members whose account type is guest see only the "Self" option. A guest booking for an Utsav away from the Research Centre goes straight to the booking review.
  • A member can share the Utsav. The shared text has the name, dates, location and a link to the Utsav.
  • "My bookings" lists the member's own Utsav bookings and those they made for others, with package, room, volunteer role, amount and payment status, the most recently created Utsav first.

Seats and the waitlist

The seat and waitlist concept works the same way as an Adhyayan, except that seats are counted for the Utsav as a whole, not per package: once the Utsav is full, new bookings for any package wait. Unlike an Adhyayan, however, cancelling an Utsav booking does not currently free the seat to the next waitlisted person automatically, see Known limitations, below.

  • The backend lets a member cancel only a booking that is theirs or one they made for someone else, the same rule as an Adhyayan.
  • Cancelling gives a seat back to the Utsav's count only if the booking held one, so cancelling a waitlisted booking adds no seat. A seat is also given back only while the Utsav is open for registration (backend).
  • Money on cancellation (backend): a member who cancels a paid booking gets no refund or credit. If Utsav credit was applied to an unpaid booking, cancelling it returns that credit to the payer. When staff cancel a booking, they choose whether to issue credit. With credit, the payer gets the full amount paid, or the credit applied if the booking was unpaid. Without credit, a paid booking stays non-refundable, and credit applied to an unpaid one is still returned. If the member already cancelled the booking while it was unpaid, staff issuing credit returns only credit that was applied and not yet given back. See Payments, Credits & Reconciliation.
  • Cancelling a booking that held a seat at a Research Centre Utsav also cancels the member's meals for the package dates (backend).
  • A booking made while registration is closed is waitlisted, with no charge and no meals (backend).
  • Waitlisted bookings leave the waitlist only when staff move them (see Staff status changes and registrations for an Utsav).

Arrival, volunteering, check-in and rooms

For Utsavs held at the Research Centre, meals are automatically arranged for the dates covered by a member's chosen package. On the day, gate staff can check a member in and issue a physical meal plate using simple on-site tools that don't require signing in as an admin.

  • Check-in at the first meal plate (backend): when a meal plate is issued to a member on a date inside an Utsav's dates, and their booking for that Utsav is confirmed (including paid by cash), the booking is marked checked in. This happens at every plate-issuing point, the food counter as well as the Utsav gate. A booking still awaiting payment is not checked in. The member gets a WhatsApp check-in message with their room number, and the Utsav plate scanner in the staff panel shows that the person was checked in, with their room if one is allotted.
  • Rooms (backend and staff panel): staff assign rooms in one room-allocation tool. They set up the available rooms (Research Centre rooms and outside rooms), run an automatic allocation, review it (they can download it as a spreadsheet, edit it, and upload it back), then apply it. They can also re-allot or swap individual beds. The older room-number edit and room-number upload on the Utsav bookings list are gone. Only super admins and the main Utsav admin role can use the room-allocation tool. The tool and the check-in report flag participants who said on a Tapascharya form that they are fasting (Upvaas or Aayambil). Staff can also pull a report of who is staying around the Utsav dates.

Check-in scanner (staff panel and backend). Staff open it from the summary report and scan the member's card QR code.

  • The backend refuses a card with no active booking for that Utsav ("Booking not found for this user") and an unpaid booking ("User haven't paid yet, cannot checkin"). A booking already checked in gets "Already checked in".
  • Otherwise the booking is checked in and the member gets the check-in WhatsApp message with their room. The backend does not check the date.
  • Offline, the page keeps scans on the device and sends them later with the scan time. The same card is not queued twice within 5 minutes.

Food scanner (staff panel and backend). It issues the meal plate for a scanned card. The member must have that meal booked for that date. The meal is picked by the time: breakfast until 10:00 AM, lunch until 2:00 PM, dinner until 7:00 PM. One plate per meal. When the plate checks the member in, the scanner shows it, with the room. It works offline in the same way as the check-in scanner. Plate rules are in Food.

Room-allocation tool in detail

Super admins and Utsav admins use the tool from the Utsav booking list (backend and staff panel). It works on confirmed, cash-paid and checked-in bookings.

Room inventory.

  • "Initialise" copies the Research Centre rooms into this Utsav's inventory. It skips rooms already set up, so it is safe to run again. The Research Centre rooms are 1–60: rooms 1–36 in the building shown as OAG and 37–60 in NAG. Rooms 1–18 and 37–48 are on the ground floor.
  • On initialise, the backend splits the Research Centre rooms between men and women in the same ratio as the confirmed registrations. Rooms already occupied before the Utsav keep the gender of the people staying in them.
  • For this Utsav only, staff can add floor beds to a room, block it, set its gender, change its order in the allocation, and add notes. A blocked room has no free beds.
  • Staff upload outside rooms, such as hotels, from a sample spreadsheet with the room, property, floor, beds, floor beds, gender and notes. A row with an existing room and property updates that room.

Automatic allocation (a dry run until staff apply it).

  1. Fixed first. Some people keep a fixed place: a flat owner gets their flat, and an owner of a room numbered 1–60 gets that room. A person named on a flat host form for the Utsav gets the host's flat. A person with a room stay that overlaps the Utsav or runs up to or from it keeps that room. A Permanent Resident, a Seva Kutir member, or a member recorded as living in a flat keeps their place. A room staff set by hand is also kept.
  2. Missing data. A person with no age, gender or centre is left out and flagged for review.
  3. Priority. Seniors come first (65 or older by default), then people whose package covers the whole Utsav, then engaged members, then people who did not stay inside the Research Centre at either of their last two Utsavs, then the oldest first. A member counts as engaged after, in the year before the Utsav: 18 or more nights stayed, 10 or more single-day visits, 9 or more Param Gyaan Sabha bookings, or 6 or more other Adhyayans attended.
  4. Who needs a Research Centre room. Members abroad, seniors and full-Utsav packages. Seniors also need the ground floor.
  5. Three passes. First with every rule, then any floor, then any room. Every pass keeps one gender per room.
  6. Beds. Each person gets a bed label in the room. When the room has floor beds, the youngest takes the floor bed. Floor beds go only to people aged 18–40: an older person on a floor bed gives it to an unplaced younger person of the same gender. The tool then tries to avoid putting people from the same centre in one room.
  7. Split packages. When a package ends mid-Utsav, people arriving after that date take the beds the leaving people free.
  8. Not placed. Each unplaced person shows a reason, such as all rooms for their gender being full, or all ground-floor rooms full.

Review and apply. Staff download the dry run as a spreadsheet, with each person and a room-inventory sheet. They can edit and upload it back; the tool reads the card number or booking number and the room. Applying writes each room to its booking. Applying changes no status and sends no message.

Changes after allocation.

  • Re-allot. Staff take the bed of a person who has not checked in and give it to a person with a confirmed booking and no room. The backend refuses a recipient who already has a room, or a bed held by someone else. Both bookings get a dated note. Staff can check the recipient in at the same time; that check-in sends no message.
  • Swap or move. Two people with rooms and the same gender can swap beds, or one person can move to a free bed. Both get a dated note.
  • Reports. Beds of people who have not checked in, with fasting flags and a check-in button; every allotted bed, with the free Research Centre beds; one person's past Utsav stays, counted as Research Centre, flat, outside or no room, with the last Research Centre stay; and the extra-bedding report (see Services).

A super admin can create a temporary access link that gives an outside coordinator a read-only view of Utsav bookings for one location, optionally narrowed to one Utsav (backend and staff panel). The link lasts 1 to 365 days (14 by default) or until a chosen date, and the super admin can switch it off at any time. Utsav staff can also switch it off from the Utsav short link list (see Accounts, Identity & Authentication). Through the link, the coordinator sees only confirmed bookings, with no waitlisted, unpaid or cancelled ones. The staff panel hides room allocation, room occupancy, the 1-year participant history, status changes, the check-in and plate scanners, and registration from the coordinator. Staff with the Utsav read-only role also do not see room allocation, room occupancy or the 1-year history.

Feedback after an Utsav

The backend allows a member to submit a six-question feedback survey once after 1:00 PM IST on the Utsav start date. The member must have a confirmed, cash-completed, or checked-in booking. For an Utsav that lasts 8 or more days, the window lasts 15 days from the start time. For a shorter Utsav, it lasts 8 days. Staff can review submitted responses in a feedback report.

Known limitation: the member app can show a feedback action by a different display window, especially for longer Utsavs, see Known limitations, below.

  • Questions (member app and backend). Ratings from 1 to 5 for the Utsav overall, the stay, the food and the programme, then what the member loved most and what could improve. The backend refuses a submission that misses any of the six.
  • Opening the survey. From the booking in "My bookings", or from the feedback link staff copy from the summary report. The screen asks the backend first and shows the reason when feedback is not allowed.

Utsav messages

These rules cover WhatsApp, email and push messages for Utsav bookings (backend).

New booking, WhatsApp. The member gets a waitlisted, payment-pending or confirmed message with the Utsav and package names. Members abroad get a separate payment-pending wording. A confirmed message has a button to the WhatsApp group, and the version for the member who booked also has the payment reference. For a Research Centre Utsav it gives the package's first and last day with the first and last meal; for another location it names the location. When a member books for someone else, the booker gets a version that names the attendee, and the attendee gets a version that names the booker.

Status changes, WhatsApp:

Status change Who causes it Attendee Booker, when someone else booked
Waitlisted → cancelled Member Yes Yes, naming the attendee
Waitlisted → admin cancelled Staff Yes Yes
Waitlisted → payment pending Staff Only when no one else booked Yes
Waitlisted or payment pending → confirmed Online payment, or staff Yes, with payment reference, meals or location, and the group button Yes, the same, naming the attendee
Payment pending → cancelled Member Yes Yes
Payment pending → admin cancelled The automatic 24-hour check, or staff. Each has its own wording. Yes Yes
Confirmed → cancelled Member Yes Yes
Confirmed → checked in First meal plate, the check-in scanner, or the room tool's check-in button Yes, with the room number ("NA" when none) No
Confirmed → admin cancelled Staff With the credit amount when credit was issued and no one else booked; otherwise without With the credit amount when credit was issued
Member-cancelled → admin cancelled, with credit Staff When no one else booked, with the credit amount Yes, with the credit amount

Email:

  • Booking email. After a booking, and after a successful payment, the booking email lists each Utsav booking with its number, the attendee's name, the Utsav name, start and end dates, package and status.
  • "Utsav Booking Updated". Sent to the attendee, with a copy to the booker, after a staff status change, a staff registration, and a member cancellation. It shows the booking number, the new status, the Utsav name and its start and end dates, with a key that explains each status. It is sent only when the attendee has an email address.

Push. When a member cancels a booking made by or for someone else, the other person gets "Utsav Booking Cancelled".


Staff can store a WhatsApp group invite link on each Adhyayan and Utsav (staff panel and backend). WhatsApp Groups covers what the backend does with it: the group lookup, the member check and the join reminders.

  • Where staff enter it. The optional "WhatsApp Group Link" field on the create and edit forms of an Adhyayan or Utsav.
  • Short link. On save, the backend points a fixed short link at the invite: "a" and the Adhyayan number, or "u" and the Utsav number.
  • Where it shows to staff. The edit form shows the short link with a copy button. The Adhyayan and Utsav summary reports have "Copy WhatsApp Shortlink" and "Audit & Send Reminders".
  • Where it shows to members. Only as a button in WhatsApp messages: the Utsav confirmed messages (new booking and status change), and the Adhyayan message when staff confirm an unpaid booking. The member app does not show the link.

Backend actions that no screen uses

These actions work in the backend for staff, but no staff panel or member app screen calls them today (backend):

  • Listing the waitlist of one Adhyayan, and listing its bookings awaiting payment. The pending list's filter does not work.
  • Checking an Adhyayan's or an Utsav's WhatsApp group members against its bookings. The staff screen uses the member check on the WhatsApp Groups page instead.
  • Adding a single package to an Utsav. The staff panel adds packages in bulk.
  • Listing suggested rooms for an Utsav. The room-allocation tool uses its automatic allocation instead.

Known limitations today

A few of the rules described above don't fully hold in practice yet:

  • Deleting an Adhyayan doesn't clean up its bookings. Staff can delete a whole Adhyayan, and members with waitlisted, confirmed or unpaid bookings get a push saying it was cancelled by admin, but their individual bookings are not cancelled or credited, that has to be handled separately today. Closing an Adhyayan sends no message at all.
  • The feedback button and the backend feedback check use different windows. "My bookings" shows the button by a rule the backend sends with the list: for an Adhyayan, from 1:00 PM on the start date until 15 days after the end date, for confirmed bookings only; for an Utsav, until 8 days after the start, for confirmed or checked-in bookings. Submitting is allowed for 15 days after the start for an Adhyayan, and for 8 or 15 days for an Utsav. A long Adhyayan can show the button after the backend stops accepting, and an Utsav of 8 days or more hides it while feedback is still accepted. The button never shows for a booking made for someone else.
  • Cancelling an Utsav booking doesn't free the seat to the next waitlisted person, the way cancelling an Adhyayan booking does.
  • Paging through the list of upcoming Utsavs can occasionally show overlapping or skipped entries.
  • Utsav check-in and meal-plate issuing at the gate do not require a staff login. Anyone who can reach those tools could check a member in or issue a plate without admin authentication. Because a plate issued during an Utsav also checks a confirmed member in, either tool can check someone in. The check-in tool also does not check the date.
  • The room-allocation tool still opens for the Utsav admin for the Raj centre in the staff panel, but the backend now refuses that role. Those staff see the tool but cannot load or change allocations. The same role can open Utsav registration, but the backend refuses the booking and the card lookup.
  • The coordinator's temporary access link is read-only only in the staff panel. On the backend the link carries the same access as the Utsav read-only staff role, which the backend does not limit to viewing. Only the booking lists and the location summary are limited to the linked Utsav and location.
  • The backend does not check roles per action or per centre. Any role on the Adhyayan list can create, edit, delete, open or close an Adhyayan and change its bookings, including the Adhyayan read-only role, the accounts admins and the Utsav admin. Any role on the Utsav list, including the Utsav read-only role, can do the same for Utsavs. The centre-scoped roles are held to their centre only by the home menu link.
  • Registration screens open for roles that cannot look up cards. Adhyayan admins, including the admin for the Raj centre, can open Adhyayan registration, but the backend lets only super admins, office admins, card admins, Utsav admins, WiFi admins and food admins look up a card by mobile number. Without the lookup, those staff cannot add people.
  • Office admins and room admins see Utsav screens with no data. The panel opens the Utsav summary menu, the 1-year history or room occupancy for them, but the backend refuses those roles.
  • Confirming a waitlisted Adhyayan booking leaves its charge unpaid. When staff confirm a waitlisted booking that has no charge, the backend creates one but does not mark it paid, so the booking is confirmed while the charge stays unpaid. Confirming an unpaid booking marks its charge paid.
  • Credit can fully pay an Adhyayan booking that still shows payment pending. When staff move a waitlisted booking to payment pending and the payer's Adhyayan credit covers the whole fee, the charge is marked paid but the booking stays payment pending.
  • Moving an Adhyayan away from the Research Centre deletes its attendance. Changing the location removes all sessions and every recorded attendance mark.
  • Paying online for an Adhyayan sends no WhatsApp confirmation. The member gets only the booking email, so they never get the WhatsApp group button. Only a staff confirmation of an unpaid booking sends it.
  • The Adhyayan feedback report shows only the 20 most recent responses. The page has no next page, and the download holds only those 20.
  • Booking a closed Utsav still uses up a seat. The booking is waitlisted, but the seats-left count still drops when seats remain.
  • Reinstating a member-cancelled Utsav booking does not take a seat back. Staff can confirm it again, but the seats-left count does not change, so the Utsav can be oversold. When the booking has a payment record, its package meals, removed at cancellation, are not arranged again, so the food scanner refuses that member.
  • The member app cannot show how many Utsav seats remain. It shows "Spots available" for an open Utsav even when it is full; the member learns about the waitlist only after booking.
  • Staff cannot create a free Utsav package in the staff panel. Adding packages refuses a price of 0, although the booking rules confirm free packages straight away. Editing a package to a price of 0 is accepted.
  • The package overlap rule is fixed to three package records. Staff cannot set it for other Utsavs.
  • Editing an Utsav's dates does not move its room block or check its packages.
  • Room occupancy includes people whose Utsav booking was cancelled or waitlisted. It looks at everyone who ever booked the Utsav.
  • A missing WhatsApp message falls back to a confirmation. When WhatsApp reports that a message does not exist, the backend retries with a booking-confirmed message. An Adhyayan member can then get a "confirmed" message for a cancellation or waitlist change, and an Utsav member can get an Adhyayan confirmation.
  • The Utsav status email has Adhyayan wording. Its key says payment pending secures an "adhyayan booking", and that a waitlisted member will be told when a spot opens, which does not happen for Utsavs.

These limitations mainly affect staff tools, except for the feedback-window mismatch, the online-payment WhatsApp gap, the Utsav seat display, and the message fallback.


How this connects to other domains

  • Booking Lifecycle & Engine (03): seat reservation, payment, cancellation, and credit for both Adhyayans and Utsavs all run through the shared booking engine described there.
  • Stay: Rooms & Flats (04): a Research Centre Utsav blocks its dates for room stays, and the stay flow offers Adhyayans as an add-on.
  • Food (05): a Research-Centre Utsav automatically arranges meals for its dates; an Adhyayan instead just carries a simple "food included" flag. Issuing a meal plate during an Utsav checks a confirmed registrant in.
  • Travel (06): registering for an Utsav asks whether a member is arriving by their own car; separately, whether someone is leaving right after an Adhyayan is a self-reported travel-planning answer, not checked when the member books. In the travel team's list (staff panel), a trip also shows as leaving after an Adhyayan when the member has a confirmed booking for an Adhyayan that ends on the travel date, and the panel warns staff who mark a trip that way without such a booking.
  • Payments, Credits & Reconciliation (08): fees for Adhyayans and packages, and credit on cancellation, all follow the rules described there.
  • Notifications, Short Links & App Updates (10): registration, cancellation, and status changes trigger push, email, and WhatsApp notifications to the member and, if registered on their behalf, to whoever registered them. For an Utsav held away from the Research Centre, the WhatsApp confirmation names the Utsav's location instead of listing Research Centre meals.
  • Custom Forms (Form Builder) (11): staff can link a form to one or more Utsavs or an Adhyayan, limit it to booked participants, and use flat host forms that write flats into Utsav bookings.
  • WhatsApp Groups (14): the group link staff store on an Adhyayan or Utsav, the member check, and the join reminders.