EdHelfy Back to App

User Manual

A living guide that grows as EdHelfy grows. Bookmark this page — new sections are added with every release.

Signing in

EdHelfy has four ways in, and a person only ever sees the ones that apply to them. A founder setting up an institution, a teacher joining with an invite code, and a parent holding a printed slip each get a different door — nobody is asked for a credential they don’t have.

Way inWho it’s forWhat you need
Email & passwordAdmins and staffYour email and the password you set
Email sign-in codeAnyone who forgot their passwordJust your email — a 6-digit code arrives in your inbox
Invite codeStaff, parents and students being added by the institutionThe 8-character code from your invite message
Login PINParents and students at institutions that issue slipsYour mobile number and the 6-digit PIN on your slip
A family you set up with a slip has only that one way in. Creating a login from a phone number gives the account an internal address rather than a real mailbox, so Email me a sign-in code cannot reach them — and because the page never says whether an address is registered, it simply appears not to work. Those families sign in with their number and PIN, and if the slip is lost you re-issue it (below). Families you invited by email are the opposite: they have the code, the password and the invite route, and never need a PIN.

The sign-in page

Each way in is its own page with its own web address, so you can bookmark or share the exact one you need — and the browser’s Back button works normally between them.

  • edhelfy.com/?login — Welcome back. Email and password, with a Forgot password? link and an eye icon to reveal what you typed.
  • edhelfy.com/?signup — Set up your institution. The founder form; you become the Admin.
  • edhelfy.com/?code — Join your institution. The invite-code form.

The sign-in page carries a Email me a sign-in code button underneath the password box, and below that two quiet cards for people who are new: I have an invite code and Set up a new institution. The founder fields never appear on the join page, so an invitee is never promised they’ll be the Admin.

Signing in with an emailed code

Press Email me a sign-in code, enter your email, and a 6-digit code arrives that expires in a few minutes. Type it in and you’re signed in — no password involved.

A code can only sign you in, never create an account. The confirmation message reads the same whether or not that address has an account, so nobody can use this page to discover who is registered with your institution.

Your institution’s sign-in link

Settings → 👥 Team → Manage Team shows Your sign-in page at the top, with Copy link, Share app on WhatsApp and QR & options. It is one link for your whole institution, plus a QR code you can print on a notice board. Send it in a WhatsApp broadcast, put it on the school gate, print it on the diary — whoever opens it sees your institution’s name and logo above the sign-in box.

The link grants nothing by itself. It is a front door, not a key: it can be forwarded and posted publicly without risk, because people still need their own invite code, PIN, or password to actually get in. That is why it is safe to print.

↻ New link issues a fresh one and stops the old one working immediately — useful if a link ends up somewhere you didn’t intend, but remember that any poster or slip already printed with the old link goes stale.

The same card carries a toggle: Let students get access themselves with the email on their student record. It is off by default, because it is only as trustworthy as the email addresses on your roster — turn it on knowingly.

Login PINs — the printed-slip route

This is the route for families who don’t reliably have email. You create the accounts for them from the phone numbers already on your student records, and hand each family a slip with a 6-digit PIN.

Settings → 👥 Team → Manage Team → + Invite member → Login PIN (recommended). One screen with two tabs, Staff and Parents & students; each lists everyone in three parts:

  • Needs a PIN — ticked and ready. Press Issue PINs & print slips. Two cases wait for you instead: a number shared by several students stays unticked until you confirm it is one family, and a child whose family already has a login gets Add to existing login — no new PIN, the slip already at home starts working for them too.
  • Has a PIN — who has signed in, who has not, and who tried and could not get in (shown first). Each row has ↻ New PIN; parents are grouped by class and section, and long classes fold.
  • Can’t get a PIN yet — each with the reason, such as no phone or email on the record, or an admin account.

The search box finds anyone by name, number, email or class. Nothing is sent to anyone until you print or share the slips.

PINs are shown once, and only once. Print the slips while they are on screen. Afterwards you can issue a new PIN, but you can never see the old one again — not even as the Admin. This is deliberate: a PIN you could look up later is a PIN anyone with your screen could look up later.

Each slip gives three steps: open the link, enter the mobile number or email on record, enter the PIN.

  • Every Login PIN is permanent and reusable — for parents, students and staff alike. The slip lives in a diary for months; a PIN that expired would turn every re-login into a trip to the office.
  • Staff sign in with the phone number or email on their staff profile, or the email they already sign in with. A staff member who already has a password keeps it — the PIN works alongside it. Admin accounts never get a PIN; they keep their password.

On the Students tab, an Admin sees a chip reading “N students have no family login” whenever some are missing. Clicking it opens the Login PIN screen on the Parents & students tab.

What a parent sees

Open your institution’s link and the page belongs to your institution, not to EdHelfy: your logo and name sit at the top, with a badge reading Parent & Student Sign-in (or Student Sign-in at a college or institute). EdHelfy shrinks to a small powered by mark at the bottom.

  • The PIN card takes six separate digit boxes — typing moves you forward automatically, Backspace moves you back, and pasting a copied PIN fills all six at once.
  • Remember my number on this phone is ticked by default, so a parent only types their number the first time. It is saved only after a successful sign-in, so a stranger’s failed guesses can never overwrite the family’s saved number.
  • Underneath: Email me a sign-in code, I have an invite code, and — when you’ve enabled it — New here? Get access with your school email.
  • Staff? Sign in with your email and password at the bottom switches to the ordinary sign-in page, so staff are never stuck on the family view.

Repeated wrong PINs lock that contact out for a short, growing cooldown, and the page says how long. Every other refusal gives the same neutral message — the page never reveals whether a number is registered.

Lost a PIN? There is no self-service recovery, by design — the institution vouches for who is standing in front of it. You re-issue instead: see Lost slips below.

Lost slips — re-issuing PINs

PINs are stored scrambled and shown only once, so nothing — and nobody, including you — can look an old one up again. If slips go missing, are mis-printed, or the print window never opened, you issue fresh ones.

Open Invite member → Login PIN → Has a PIN. Every row has a tick box, and they all start empty on purpose: re-issuing replaces a PIN that may be working in someone’s hands right now. Tick the ones you need, press ↻ Re-issue selected, and confirm — the button counts what you selected, and the confirmation names the children affected so you can catch a mis-tick before it happens.

The new PINs print as one batch, the same slips as before. The moment you confirm, those families’ old PINs stop working, including any slip already sent home.

If your browser blocked the pop-up, the PINs are still spent. They were created the instant you confirmed, so don’t re-issue again to “try the print” — that only mints another set. Allow pop-ups for edhelfy.com and press 🖨 Print this batch again, which appears next to the button after a run.

To change a single family, the ↻ New PIN button on its row still does exactly that, showing the new PIN on the row itself.

App Lock (this device only)

Profile menu → 🔒 App Lock sets a short PIN that this browser asks for when the app opens. It is a convenience lock for a shared phone or a front-desk computer — nothing more.

App Lock is not your account password. It protects this device only and doesn’t affect anyone else or any other browser you use. Setting it to empty turns it off. It was previously called “Device PIN”; it is not related to the Login PIN on a family slip, or to the WhatsApp confirmation PIN in Settings.

Signing out

Profile menu → 🔒 Logout. It ends this device’s sign-in on the server too, so a copied session cannot be reused, and removes your school’s data from this device. Other devices you use stay signed in. See Your data on this device.

For parents & students

If your school has given you a login PIN slip, or added your WhatsApp number, this section is the whole of what you need. Everything else on this page is for the staff who run the institution.

Signing in the first time

  • Open the sign-in link your school sent you. It opens on Parent & Student Sign-in, with your school’s name and logo at the top — the PIN boxes are already on that first screen, so there is nothing to choose.
  • Enter the mobile number the school has on file for you, and the 6-digit PIN printed on your slip.
  • The PIN is yours to keep. Anyone holding it can see your child’s record, so treat the slip like a bank card.
Lost the slip, or the PIN does not work? Ask the school office to issue it again — see Re-issuing PINs. It cannot be recovered by email, because a phone-number login has no mailbox attached to it.

Putting it on your home screen

Open the sign-in page in your phone’s browser, then use Install App in the profile menu at the top right, or your browser’s own Add to Home screen. It then opens like any other app, on your school’s own sign-in page, and what you have already looked at stays readable without a signal.

Getting around

Six screens along the bottom. If you have more than one child at the school, their names appear as buttons near the top — tap one and every screen follows it.

  • Home — three rings for attendance, fees due and grade, then Now & Next with the current and following period, and the school’s WhatsApp number. At a school that has switched it on for your child’s class, a fourth ring opens Practice.
  • Fees — the total due, a Pay button, and every fee with its status. Fees you have paid stay listed under Paid, even after the school archives them.
  • Marks — pick an exam for the overall grade and every subject’s score; Marksheets and Report Card download them.
  • Attend — Present, Absent, Leave and Rate for the month, over a calendar with each day coloured.
  • Timetable — the whole week’s periods.
  • Assess — the teacher’s remarks, for each period the school has recorded.

Telling the school about an absence

Open Attend and use Notify Absence. Pick the From date; fill To (optional) only for more than one day, and add a reason if you like. Press Send to school. The school sees it for review, and you are told once they accept or decline it.

Your notices are listed under Your Notices on the same screen, the one you sent last at the top, with the day you sent it.

A notice is not sent when every day in it is already in one of your notices, or when the school is closed on all of those days. If the school already marked your child present on a day, the app asks before sending — only the school can change that mark.

You can also simply message the school on WhatsApp — “Riya is absent tomorrow”, or “kal nahi aayegi”. It reads the date back to you and asks you to reply YES before anything is filed, so a misread date is caught before it reaches the register, not after.

Telling the school you have paid

On the Fees screen tap the Pay button, choose how you paid, then enter the amount and the reference and tap Submit report. On WhatsApp, say what you paid — for example “paid ₹5,000 by UPI”, and add the reference number if you have one. If anything is missing (which child, which fee, how much, or how you paid), the assistant asks for it, one question at a time; just reply to each.

Reporting a payment does not mark the fee paid by itself. The school checks it against their own record first, and you are told when they do.

Suggesting a change to your child’s details

On Home, tap View profile → on your child’s card. Next to Student Information, tap ✏️ Suggest a change.

  • You can suggest a new photo (📷 Choose a new photo), the address, the father’s name and the mother’s name.
  • A parent can also correct the date of birth, saying why (for example, what the birth certificate says). Only the school’s administrator can approve that one.
  • Press Send for approval. The profile shows Waiting for approval until the school decides, and you can Withdraw it meanwhile.
  • Nothing on the profile changes until the school approves. You are told either way, with the school’s reason if it was not approved. If nobody decides within 30 days, it closes and you can suggest it again.
Phone numbers and email addresses cannot be changed this way. They are how you sign in, so the office changes them only after checking who is asking. Please contact the office for those.

Whether a student can suggest changes for themselves depends on the school’s setting; usually only at a college, or from age 18.

The bell

The bell at the top shows the school’s news for your family. Payments come first — a payment the school received is never folded away. Older absence-notice and profile decisions are folded into one line each. The first row lets you turn on notifications for this phone (Turn on). See Phone notifications.

What you can ask on WhatsApp

Message the school’s number from the phone the school has on file. In your own words, and in whichever of English or Hindi you prefer:

  • “What is my child’s attendance?” · “Kitni chutti hui hai?”
  • “How much fee is pending?” · “Fees kitni baaki hai?”
  • “What were the Term 1 marks?” · “When is the next exam?”
  • “Is school open tomorrow?” · “Which days is the school closed?”
  • “Was my absence notice accepted?” · “Did you get my payment?”
It only ever answers about your own children. It cannot tell you about another family’s child, and it cannot change anything at the school — the two things it can file, an absence notice and a payment report, both go to staff for a decision.

If something looks wrong

Contact the school office. Attendance, fees and marks are entered by the school, and only the school can correct them — the app and the WhatsApp assistant both show you what has been recorded, and neither can overrule it.

Dashboard

The Dashboard is your home screen — a one-glance view of everything that needs attention today.

Greeting and your institution

The top bar greets you by time of day (☀️ Good morning, 🌤️ Good afternoon, 🌙 Good evening). Staff, teachers, accountants and families see their first name. An admin account greets “Admin” when its name is empty or contains the word “admin”. On a computer the greeting sits in the top bar with today’s date, on the institution’s own calendar; on a phone it takes the top bar’s two lines.

Below it, the institution card shows your logo, name and session, with the address on one line. Tap Details to open the rest of the profile.

Live Monitor

One white panel headed Live Monitor holds six coloured tiles. A ● Live mark beside the heading says the numbers are current; it reads Offline when the device has no connection, and the tiles then show what this device last loaded.

The top row — Students, Teachers, Fees — shows a live count, a second line, and a status dot (green = healthy, amber = needs attention, red = action required):

  • Students — total enrolled, with “X present today” and a dot reflecting today’s attendance rate.
  • Teachers — teacher count, “X present today”, and a badge if leave or clock-edit requests are waiting.
  • Fees — collected this month, with “₹X pending in November” (the current month by name); the dot scales with the share still pending.

The bottom row shows what is waiting for you. Each tile appears only to someone who can open it. On a computer each tile has a second line; on a phone the names are shortened to fit.

  • WhatsApp inbox (WhatsApp on a phone) — “3 new messages · Oldest 2 hours”, or “No new messages”. An amber badge carries the count. The inbox shows your institution’s WhatsApp number at the top, with a Copy button.
  • Daily briefing (Briefing) — “Today at a glance”; opens today’s summary.
  • Admission Enquiries (Enquiries) — “2 due today · 5 open”, “None due today · 5 open” or “No open enquiries”. A blue badge counts the follow-ups due.

A badge pops briefly only when its count goes up, so a new message or enquiry catches your eye and a count going down stays quiet.

Two buttons sit in the panel: Letterhead (write a letter on your institution’s paper; shown to whoever may write letters) and Admin Settings (admins). On a computer they are in the heading; on a phone, under the tiles, where Admin Settings reads Admin.

Placards (click any tile)

Clicking a tile opens a detail placard with a Record / View action and inline shortcuts:

  • Students placard — class-by-class enrolment grid, today’s Present/Absent/Not-Marked breakdown. Footer shortcuts: View Students profile → and View Students Attendance →.
  • Teachers placard — today’s Present/Not-Marked/Incomplete buckets, pending leave + clock-edit requests with Accept/Reject (5-second undo strip), duration alerts. Footer shortcut: View Teachers Attendance →.
  • Fees placard — this month’s Collected vs Pending with a progress bar and per-class pending chips, plus Report and Remind buttons. Footer shortcut: View this month fees →.

Today snapshots (Live Monitor only)

The placard’s Record button generates a one-row-per-person snapshot for today — distinct from the date-range reports inside Attendance/Teachers tabs:

  • Students Today — per-student status: Present, Absent, Sick Leave (with the leave streak’s start–end span), or Holiday (with the calendar event’s name and date range). Header reads “Today, {weekday, date}”.
  • Teachers Today — same shape: per-teacher Status + Details, where Present rows show clock-in/clock-out, Leave rows show the request span + reason, and Holiday rows show the event.

Content cards

Below the Live Monitor: Noticeboard (see Noticeboard), Upcoming Events (next 30 days, multi-day events stay visible until they end), New Admissions (last 30 days with a delta vs the prior 30), and Low Stock (with one-tap WhatsApp order to category suppliers).

Ask AI

The ✦ Ask AI card is the entry point to the assistant — see AI Assistant for the full workflow. Proactive nudges (overdue fees, low stock, upcoming events) appear as chips next to the input.

AI Assistant

EdHelfy ships with an AI assistant that lives on the Dashboard. Click the “Ask AI” bar or press ⌘/ (Mac) / Ctrl+/ (Windows) to open the chat. It can answer questions about your data and propose changes — you always confirm before anything is saved.

Pro plan note: Answering questions works on every plan. “Action” features (add, update, mark, generate) require the Pro plan. The chat surfaces a friendly upgrade hint when you try an action on the Basic tier.

How confirmation works

When you ask the AI to do something (“add a student”, “mark 5B present”, “print a receipt”), it proposes an action. A card appears with the extracted details and three possible buttons:

  • ✓ Confirm — runs the action and writes to your data.
  • ✗ Cancel — discards the proposal.
  • ✎️ Edit all fields (on some actions) — opens the full entity modal pre-filled with the AI’s values so you can tweak anything.

Each field also has a small pencil icon for inline edits. You can fix a wrong class or amount before confirming without leaving the chat.

Smart follow-ups (“post-flows”)

When an action is likely to need a next step, the AI offers one inline. Examples:

  • After a fee is marked Paid → “Download receipt” · “Archive” · Skip.
  • After marks are recorded → “Print report card” · “View class rank” · “WhatsApp to parent” (shown only when parent contact is on file).
  • After a new admission → “Print admission form” · “Print ID card”.
  • After class attendance is marked → “Print attendance sheet”.
  • After inventory restock/issue/return → “Print inventory report”.

What you can ask

Anything about your institution — counts, rates, who’s pending, what’s overdue. And a growing set of actions:

Every number comes from your data. The AI does not add figures up itself — when a question needs an exact count, rate or total, it fetches the rows and the app computes the answer. So a figure it quotes matches the same figure on the screen it came from. If a student has no attendance marked at all, it says so rather than reporting 0%.

What it will not do: it never deletes anything, never writes without you confirming the card first, and never shows you something your role cannot already see in the app. Payroll is a good example — if you are not permitted to view staff pay, the AI is not merely refused when it asks; it is never told those questions are answerable.

CategoryExamples
Fees add April tuition ₹1000 for Mirza
update Mirza's tuition status to Paid
send fee reminders to class 5B
print receipt for Mirza April tuition
consolidated receipt for Mirza
print all receipts for class 5B
Students add student Priya in class 6A
new admission Aisha in class 7B (sets isAdmission automatically)
update student Mirza to class 7A
Attendance mark Mirza present
mark class 5B present today (bulk)
mark Ms. Sharma absent (teacher attendance)
mark Ravi half day today (staff only — HA/HL)
how was staff attendance this week?
what is Mirza's attendance this month?
Staff leave who has leave pending?
how much casual leave does Ravi have left?
approve Ravi's leave (admin only)
decline Meena's leave — exams that week (a reason is required)
Staff pay what are Ravi's payable days this month?
how many loss-of-pay days does Meena have?
Read-only, and only for people allowed to see payroll. The AI never changes a salary.
Assessments what are Mirza's assessment remarks?
who in class 5B has no assessment yet?
set Mirza's Discipline to Very Good
add a Hygiene comment for Mirza: consistently neat
Academics set Math 85 for Mirza mid-term
print report card for Mirza mid-term
print all report cards for class 5B mid-term
Inventory add inventory item Chalk, Stationery, stock 50
restock Chalk by 20
issue 5 markers
Schedule add Math with Mr. Verma on Monday 10:00 AM for class 5B
add holiday Diwali on 12 Nov
Admin config add class 7A
add section D
add fee type Library
remove exam type Pre-Board (blocked if in use)
Institution profile update institution name to Green Valley Public School
change institution address to 42 Ring Road, Pune

Questions it can now answer (November 2026)

These work the same in Ask AI, the tab bars and the WhatsApp assistant, and each answers only what your role already shows you in the app:

  • Admission Enquiries — which follow-ups are due today?, how many open enquiries for Class 1?, how many seats are left? For anyone who can open Admission Enquiries.
  • What needs my approval — what is waiting for me? counts absence notices, reported payments, profile changes, posts and leave requests — only the ones you can decide. Your own requests are never in your own list.
  • The Noticeboard — any new notices? Families get published notices for everyone; staff also get Internal posts; an admin also hears which posts are waiting for approval.
  • A reported payment (families) — once the school confirms it, which fee did my payment go to? names each fee and what is still due.
  • Your own pay and clock-ins (staff) — what is my pay this month?, when did I clock in this week? Strictly your own, never a colleague’s.

“How do I …?” — answered from this guide

Ask how to do something in EdHelfy — how do I mark attendance?, where is the timetable? — and the answer comes from a written index that matches this manual, with a link to the section. A plain question like these is answered instantly and without using the AI, so it does not count against your AI limit. Anything else goes to the AI as usual, and it still answers how-to questions only from that index — it never invents a screen or a button.

Hindi or Hinglish in English letters works too — attendance kaise lagaye, marks kahan daale, bacche ki fees kaise dekhu. These go to the AI, which answers in the same Hinglish. If your institution has used up its AI for the month, the WhatsApp assistant still replies with the guide’s answer (in English) rather than a refusal.

Per-tab AI bar

Every module tab has its own Ask AI bar. It defaults to that tab’s subject but can answer about anything — ask a fees question from the Attendance tab and it will fetch what it needs.

  • It respects the tab’s filter. Looking at Class 5 Section A? The answer is about Class 5 Section A, and it says so. Name a different class explicitly and it answers about that one instead.
  • The Students tab bar can also narrow the list itself — show students with overdue fees and attendance below 80% filters the rows rather than replying in prose.
  • Charts work from any tab.
  • “How do I …?” questions are answered from this guide here too (see above).

Document intake (📎 upload)

Snap a photo or upload a PDF — the AI reads it and pre-fills confirmation cards, one per record found. Each tab’s paperclip expects that tab’s kind of document:

  • Students → class roster, student list, or a single admission form (which sets isAdmission)
  • Fees → a fee receipt (student, fee type, amount, month)
  • Academics → a marksheet or report card, one card per subject
  • Attendance → a register page, as a single-day class roll-call
  • Teachers → a staff attendance sheet, one card per teacher. Half days on the sheet (“½”, “half day”, “0.5”) extract as HA, or HL where the leave was approved.
  • Schedule → a timetable, one card per period
  • Calendar → an academic calendar or notice, one card per event
  • Inventory → a stock sheet, supplier invoice, or delivery note

A long document may not fit in one pass. When that happens the records it did read are still offered, with a note saying how many — confirm those, then upload the remaining pages.

How to use it:

  1. Open the AI chat (dashboard → Ask AI bar, or ⌘/ / Ctrl+/).
  2. Tap the 📎 paperclip in the chat footer.
  3. On mobile, the rear camera opens — take a clear photo. On desktop, pick a file.
  4. Wait for “Analyzing document…” — usually 3–6 seconds.
  5. The extracted action appears as a confirmation card. Tweak fields inline, tap ✎️ Edit all fields for the full modal, or ✓ Confirm to save.
Tips for a good scan: bright, even light; flat on a surface; fill the frame with the document; avoid shadows and glare. Blurry or cropped photos confuse the classifier.
Max size: 10 MB per file. Privacy: uploads go through the AI provider you’ve configured in Settings; they are not stored on EdHelfy servers.

AI-generated charts (📈 visual answers)

Ask a trend, distribution, or comparison question and the AI renders an inline chart from your live data. The chart lives inside the chat message and always reflects the latest records — the AI never invents numbers, it only picks the query.

Supported queries today:

  • Attendance trend → show attendance trend for class 5B last 30 days (line)
  • Fee collection → fee collection by month this year (bar)
  • Students per class → students per class (bar)
  • Marks by subject → average marks per subject for class 5B mid-term (bar)

Charts are pure-SVG, render offline, print cleanly, and scale to any screen. No external libraries, no CSP hassle, no extra load on the app. Tap the 📈 Attendance trend chip in the Ask-AI bar for a one-tap start.

Proactive nudges

The Ask-AI bar surfaces contextual suggestions based on your current data. You’ll see chips like:

  • “💡 12 overdue fees — send reminders?”
  • “💡 Attendance pending for 3 classes”
  • “💡 No exam marks recorded yet”

Tapping a chip pre-fills a useful prompt so you don’t have to type.

Example sessions

You: “Mark class 5B present today”

AI: proposes Mark Class Attendance — 5B, today, Present (card with confirm/cancel).

You: click ✓ Confirm.

AI: “22 students marked Present for 5B (2026-04-17)” — then a follow-up offers “Print attendance sheet”.

You: “Update Mirza’s tuition to Paid”

AI: proposes Update Fee — Mirza, Tuition, Paid.

You: confirm.

AI: “Fee updated: Mirza — Tuition” + Smart Paid card: 📄 Download receipt · 📦 Archive · Skip.

Tips

Be specific. “Mark Mirza present” works because Mirza is unambiguous. If two students share a first name, add the class or use the full name.
Use “Edit all fields” for rich data. The confirmation card shows the essentials. For DOB, address, photo, parent contact — tap the button to open the full form with the AI’s values pre-filled.
Deletes are blocked. For safety, the AI won’t delete students, fees, or records. Use the relevant tab’s archive flow instead — archived records are recoverable.

Troubleshooting

  • “Student not found” — check spelling; inactive students are excluded. Re-activate from Students → Archive if needed.
  • AI didn’t propose the action I wanted — rephrase with the canonical verb: “add”, “update”, “mark”, “generate”.
  • Card says “Action expired” — the proposal was cancelled. Ask again.
  • Every response looks like upgrade prompt — you’re on the Basic plan and trying action features. Questions still work; upgrade to Pro to unlock actions.

Students

The Students tab is the roster for every learner in your institution. Each student has a full profile (name, class, section, roll, DOB, parents, contact, photo) and a history (admission date, promotions, status changes).

Add a student

  • Quick add — Students tab → + Student. Fill class/section/name and save. You can also use the FAB or ask the AI: add student Priya in class 6A.
  • New admission — toggle Admission on the form (or say new admission… to the AI). Admissions show a badge and can be printed as an admission form from the student profile.
  • Photo — on the student’s profile, tap the photo (“Click to change photo”). It reaches every device that signs in.
  • A whole list at once — see Importing students from a spreadsheet below.

Importing students from a spreadsheet

Attach your Excel or CSV sheet with 📎 in the Students tab’s AI bar (or from the Dashboard). Before anything is added, a Match columns step shows every column of your sheet with two sample values, and what EdHelfy will do with it:

  • Change any guess from the drop-down — Student name, Class, Section, Roll / admission no., Date of birth, Father’s name, Parent mobile, Address and the rest.
  • Other details keeps a column EdHelfy has no field for under your sheet’s own heading — a college’s CET roll number or Category, for example. It shows on the profile, can be edited in the student form, searched, and used as a filter on the Students list.
  • Don’t import leaves a column out. Row numbers and photo columns start here, with the reason shown.
  • Aadhaar no. and PAN are sensitive, so they are never chosen for you. Pick them only if you need them (UDISE+ and board exports); they are then saved masked, and they reach every device.
  • A warning appears when a column does not fit its field — numbers where names should be, or dates that cannot be read.

Press Continue → and the students arrive as cards to confirm. Your choices are remembered for the next upload. Importing the same students again only fills blanks: it never overwrites what is already saved, and never changes a class, section or roll number.

Promote / demote / deactivate

  • Open a student’s profile → ⬆ Promote, ⬇ Demote or Deactivate at the top. Promote a whole class from the Students tab with ⬆ Promote All.
  • Deactivated students leave the roster but stay in Archived/TC on the Students tab. Reactivate any time.
  • Promotions are logged per-student and shown on the profile (Promotion history).
  • Every date these stamp — a promotion, a leaving date, a TC’s date and number — is the school’s date, wherever the person pressing the button is.
  • Deleting a student offers Undo. The photo is not removed straight away, so Undo brings the student back with their photo; it is deleted 30 days after the student was deleted.

The student’s profile

Tap a student’s name anywhere to open the profile. Back returns you to the tab you came from. Staff see five tabs:

  • Overview — Total Fees, Paid and Attendance, then Student Information. Beside that heading, ✏️ Edit (if your role may edit students) opens the student form, and 🖨 Print Form prints the admission form. On a phone these are just the icons.
  • Fees — this student’s fees.
  • Academics — an Overview of every subject against every exam, then one pill per exam with its grade. An exam with no marks yet offers + Add Marks.
  • Attendance — four tiles for the session (Attendance, Present, Absent, Leave (informed)), a month calendar, Month by month, and every absence with the notice behind it. 🖨 Print record prints exactly the same numbers.
  • Assessment — every assessed period, newest first, as the same card the family reads. Each card says whether it was Shared (sent on WhatsApp), Printed, or Recorded · not sent. ✎ Edit opens that period in the Assessment window, where you can send or print it again.

At a school with Practice switched on, a sixth tab, Practice, appears for children in those classes.

The Quick Actions box above the tabs has + Attendance, + Fee, + Marks (each only if your role may write it), Parents on WhatsApp, and the documents: 📋 Report Card, 📄 Marksheets (every exam’s marksheet), 📊 Assessment and 🪪 ID Card. The ID Card prints straight away. If your school renamed its report card or marksheet in Exam Settings, the buttons use your names.

A parent sees much less. A family opening the profile gets the Overview only — no tabs, no ID Card. Their fees, marks, attendance and assessment are on their own screens in the family app.

Changes a family suggests

A parent can suggest a new photo, address, father’s or mother’s name, and also a corrected date of birth with a reason (see Suggesting a change in the family section). Nothing changes on the record until someone at school approves it.

  • The student’s profile shows a banner — Change suggested by the parent — with Review. The bell lists it too.
  • The review window, Profile changes to review, shows what is saved now beside what was suggested. Approve writes it to the record; Decline lets you tell the family why (optional — they will see it).
  • Anyone who may edit that student can decide. A date of birth needs an administrator, because it prints on the TC, report cards and ID cards — check it against the birth certificate first.
  • A suggestion nobody decides closes by itself after 30 days, and the family is told nothing changed.

Phone numbers and email addresses cannot be suggested. They are how a family signs in, so an approved “new number” could hand the account to someone else. The form tells the family to contact the office for those.

Who may suggest is set in Settings → Role Permissions → ✏️ Who can suggest profile changes. Automatic (the default) means the parent, and the student too at a college or institute, or from age 18. You can also choose Parents only, Students only, Parents and students, or Nobody (turned off).

Student Assessment

A one-page picture of a student for a parent: how they attended, what they owe, and how the school rates them. Open it from the student’s profile.

  • Period — pick Last month (the default, since an assessment is issued for a month that has finished), This month, Academic session, Last 30 days, or a custom range. The period is shown in the header, so the numbers are never unlabelled.
  • Attendance — present, informed leave, and uninformed absence shown separately, with the rate. A student with no marks in the period shows “—”.
  • Fees — the pending rows and the balance, using the same figures a fee reminder would quote.
  • Remarks — a rating (Excellent / Very Good / Good / Satisfactory / Needs Improvement) and an optional comment for each assessment category (Hygiene, CW/HW, Communication, Discipline, Co-curricular Activities by default). Filled in the app and saved on the student record; closing with unsaved edits warns first.
  • Send to parent — WhatsApp the assessment, or print it. The app records how many times an assessment has been sent and when the last one went out, so a monthly round across a whole class shows who is already done.

Settings → Assessment configures the categories, which of the three blocks (Attendance / Fees / Remarks) appear, the default period, and the report header. Every surface — the modal, the single print, the bulk print, and the parent WhatsApp — obeys the same settings.

Reports & printing

  • ID cards — one from the profile’s 🪪 ID Card (it prints straight away), or many at once from the Students tab; layout + fields configured in Settings → ID Card.
  • Admission form — 🖨 Print Form on the profile’s Overview; printable letterhead with parent declaration.
  • Transfer certificate (TC) — auto-numbered; fields configurable in Settings.
  • Student list report — A4 landscape class-grouped roster from Dashboard.
  • Assessment — per-student, or a bulk run for a whole class.
Tip: every student list has a search box; use AI filters like students with pending fees for quick multi-filter queries.

Family logins

Giving families access takes one pass: the chip on this tab (“N students have no family login”) opens the Login PIN screen on its Parents & students tab, where you issue a login per family with a printed PIN slip.

  • Siblings share one login, so a parent signs in once and switches between their children.
  • The PIN is shown once. Print or photograph the slip before closing it — see Re-issuing PINs if it is lost.
  • A phone-number login has no mailbox, so “email me a sign-in code” cannot reach it. The PIN is the way in.

Admission Enquiries

A parent walks in, phones, or messages about a seat. Log it in a few seconds, call back on the right day, and turn it into an admission when they join. Enquiries are for staff only — families never see this list.

Opening it

  • Admission Enquiries tile on the Dashboard’s Live Monitor (Enquiries on a phone) — opens the list. Its second line reads “2 due today · 5 open”, “None due today · 5 open” or “No open enquiries”.
  • The + button → 📝 Admission Enquiry — opens a new, empty enquiry straight away. Back at the bottom of the form takes you to the list.
  • The WhatsApp inbox — on a message from an unknown number, Admission enquiry opens the form already filled in from the chat.

The window fills the whole screen on a phone. The × at the top closes it.

The list

The list opens first. At the top: + New enquiry, then 📊 Results and 👥 Capacity, and (for admins) History — who changed what.

Below them, one row of filter chips that scrolls sideways: Follow-up due (today’s and overdue calls, shown only when there are any), one chip per status in use, and All. When something is due the list opens on Follow-up due.

Order: follow-ups that are overdue or due today come first (the oldest due first), then New enquiries nobody has spoken to yet, then everything else, newest first.

Each card leads with the student’s name (the parent’s name, or the number, when there is no student name), its status, and a short line: class, the number, where they heard about you, and “Added 30-10-2026 by …”. A class that is already full shows (full). Tap the card to open the enquiry.

Along the bottom of each card:

  • The Follow-up pill — says where the follow-up stands: + Follow-up Status (no date set yet), 📅 Follow-up today, 📅 Overdue · 28-10, 📅 Follow-up 05-11, or a quiet ✓ Admitted / ✓ Closed. Tap it to record a follow-up (below).
  • Call and WhatsApp icons — one number goes straight through. When an enquiry has both a student’s and a parent’s number, a small menu asks which (“Call the parent · …”).
  • Delete (trash icon) — only for an admin or an accountant.

Adding an enquiry

The form is kept short on purpose:

  • Student name, Age and Class.
  • Parent / guardian name and Relation.
  • 📞 Phone, with Same number on WhatsApp ticked. Untick it only when the family’s WhatsApp is a different number — a separate WhatsApp box then appears.
  • Follow-up — Status, Next follow-up date and Notes.
  • + More details (sex, section, how they heard, date) — folded away until you need it. How they heard is what the Results view counts: Facebook ad, WhatsApp, Walk-in, Parent referral, Banner / poster, Other. Enquiry date starts on today.

Tap 💾 Save. Before anything is sent, the form checks a few things and shows the problem under the box it belongs to:

  • a name — “Enter the student’s or the parent’s name.”
  • at least one number — “Add at least one phone or WhatsApp number.” In India a mobile is 10 digits starting with 6, 7, 8 or 9; a landline with its STD code is fine to call, but not as a WhatsApp number. A number abroad starts with + and the country code.
  • an age, if given, from 1 to 99.
The same number twice. If another enquiry already has this number, you are asked first: “Riya Kumar already enquired on 12-10-2026 with this number.” — Open it to go to that enquiry, or Save anyway.

At a college or institute the student usually enquires for themselves, so the form asks Who is enquiring? (🎓 The student / 👪 A parent / guardian), shows Course instead of Class, puts the Student’s phone first and folds the parent away under + Parent / guardian (optional). The choice is remembered on that device for the next enquiry.

An opened enquiry has Undo / Redo at the bottom, and a ⋯ menu at the top with Delete enquiry (admin or accountant).

Recording a follow-up

Tap the Follow-up pill on a card. A small box opens inside the card:

  1. How did it go? — Called, WhatsApp, Visited or No answer.
  2. Next follow-up — Tomorrow, In 3 days, In a week, or pick any date. It suggests three days after a conversation and tomorrow after No answer.
  3. Save — or No more follow-ups when there is nothing left to chase, or Cancel.

Saving writes a dated line into the enquiry’s notes (“Called on 05-11-2026.”, “Called — no answer on …”), so the enquiry keeps its own history. The first follow-up moves a New enquiry to Contacted; any other status you chose stays. Tapping WhatsApp while the box is open records the follow-up as WhatsApp.

The statuses are: New, Contacted, Just visiting, Interested, Hot — advance paid, Cold — no response, Waitlisted, Admitted, Not interested. Admitted and Not interested need no more calls.

Admitting from an enquiry

Open the enquiry and tap 🎓 Admit. The Add Student form opens already filled in from the enquiry (class and section included, Admission ticked). When you save the student, the enquiry is marked Admitted, linked to the new student, and a line is added to its notes. You need permission to add students for this button to appear.

If you add a student the usual way and an open enquiry has the same number, EdHelfy asks: “Admitted from an enquiry?” — Mark as Admitted or Not now.

Capacity (seats per class)

👥 Capacity shows each class as “18 of 25 filled · 7 left”, “Full — 25 of 25” or “No capacity set”. Filled means active students in the class, all sections together. An admin types each class’s capacity and taps Save capacity; leave a box empty for a class with no limit. Everyone else can read it.

When a class is full, the enquiry form says so under the class box, and a new enquiry for it is saved as Waitlisted. The WhatsApp assistant never tells a family how many places are left.

Results — which advert works

📊 Results lists, for each answer to How they heard, how many enquired and how many were admitted (with a percentage), for the current academic session. Enquiries where nobody asked are counted as Not asked. Tap Results again to return to the list.

Who can see and change enquiries

  • Admin, Accountant, Teacher and Non-teaching staff can see, add and edit enquiries by default — the front office often logs walk-ins. An admin can narrow a role with the Enquiries column in Role Permissions.
  • Deleting is for an admin or an accountant only, whatever that column says. Anyone else is told: “To delete an enquiry, ask an admin or the accountant.”
  • Capacity is changed by an admin only. History is shown to admins.
  • Parents and students never see enquiries.

What the WhatsApp assistant tells a new family

When your institution answers unregistered WhatsApp numbers, an admin sets what a new family is told under Settings → 🤖 AI assistant → Edit knowledge & style → the Admissions tab:

  • Reply to unregistered WhatsApp numbers — the switch itself. Off, only registered parents and staff get answers.
  • Admission phone number — the number replies give. Left empty, replies give your profile number.
  • When to call or visit — e.g. “Mon–Sat, 9 AM–12 PM”, so a family knows when someone will answer.
  • Tell enquirers we will contact them — adds “Someone from … will contact you on this number.” to the first reply of the day. Turn it on only if someone really calls back every enquiry.
  • Open positions (for job enquiries) — what a job seeker is told.
  • The admission facts box below — one fact per line (sessions, classes, fees, documents, how to apply). The assistant answers only from these.

Messages from new families land in the WhatsApp inbox, where Admission enquiry turns one into an enquiry in this list.

Noticeboard

The Noticeboard card on the Dashboard shows your notices as notes pinned to a board, newest first. Each note carries a tag: Public or Internal.

  • Public — announcements, notices and updates that families read. When one goes up, families get a phone alert.
  • Internal — memos for staff. Families never see them, on any device.

Writing a post

Tap + Write post on the Noticeboard card, or the + button → 📝 New Post. The Noticeboard window has two tabs, 📢 Public Posts and 🔒 Internal Posts. Type in the box and tap + Add Public Post (or + Add Internal Post).

Who can write: admins, and by default teachers, accountants and non-teaching staff. An admin can change this with the Posts column in Role Permissions. Parents and students only read.

Posts that wait for an admin

An admin’s own post goes up at once. A post written by anyone else — a teacher, an accountant, front-office staff — waits for an admin to approve it. Until then it is not on the Dashboard board, families never see it and get no alert; staff opening the Noticeboard window see it marked as waiting. The writer sees a line under their post: “Waiting for an admin to approve it — families and staff see it once approved.”

For an admin:

  • The Noticeboard card shows N to approve › while posts are waiting. Tap it to open the window on just those posts.
  • In the window, waiting posts sit at the top with the line “Waiting for your approval”. Two chips, All and ⏳ Waiting for approval, switch between everything and only the waiting ones.
  • ✓ Approve puts the post on the board; a public one then goes to families with the usual alert.
  • ✕ Decline asks you to Tell the writer why. The writer sees “Not approved: …” with your reason under their post; other staff see only “Not approved”.

Either way the writer gets a phone alert — “Your post was approved” or “Your post was not approved”.

Only an admin edits or deletes a post (the ✎ and × on a note) — including a teacher’s own post. To change a declined post, the writer writes a new one with the change.

Attendance

Student attendance is two-state: Present or Absent. There is no “Late” and no student Leave button. Why a student was away is derived, not marked: an absence covered by a confirmed absence notice counts as informed leave, and an uncovered one as uninformed. Staff attendance is different — it has leave and half days. See below.

Mark attendance

  • Attendance tab → pick class + section → tap each cell, or use bulk buttons for a whole class.
  • Tap the active P or A again to clear the cell. An empty cell means “not marked”, which is not the same as absent — unmarked days are excluded from the rate rather than counted as zero.
  • Change a date with the date picker. The grid opens on today at the school — the school’s own date, not your phone’s — so a principal travelling abroad still marks the right day.
  • Ask the AI: mark class 5B present today or mark Mirza absent.

After a promotion or a class change, a student’s earlier days stay where they were marked, under the old class. Their profile, rate, report card and the WhatsApp assistant still count those days. The marking grid for the new class shows those older dates blank.

Absence notices

A parent or student can send an absence notice from the family app (Notify Absence on their Attend screen) or on WhatsApp. Staff review it on the Dashboard and under Attendance:

  • Confirm writes A across the range, skipping holidays and non-working days, and never overwriting a mark that is already there. Those absences then read as informed.
  • Decline leaves the register untouched.
  • Revert removes only the cells the confirmation itself wrote.

Before you decide, the card says which days the school already marked present or on leave, and flags a notice that repeats an earlier one.

What a family cannot send. The form checks before it sends:

  • Days that are all already in one of the family’s own notices, waiting or confirmed, are not sent — the message names that notice. The server refuses the repeat too, so WhatsApp cannot file it either.
  • Days on which the school is closed are not sent: there is nothing to notify.
  • If the school already marked the child present on a day, or only some days are already covered, the family is asked first (Send this notice?). Only the school can change a mark.

The free-text reason is shown only on the staff review card and in the family’s own list — it is never printed on a report or pushed to the notification bell.

Teacher attendance and half days

Teachers tab → Attendance sub-view. Staff have five states, not two:

  • P present · A absent · L approved leave
  • HA — half day, absent. Half the day worked, the missing half unapproved. Counts as 0.5 present and 0.5 loss of pay.
  • HL — half day, leave. Half the day worked, the missing half approved. Counts as 0.5 present and 0.5 paid leave, so nothing is deducted.

To set a half day, mark the cell A or L first — a ½ chip appears on it; tapping the chip switches between the full and half version. Approving a half-day leave request writes HL automatically.

Short clock-out. When your school has set required hours, a teacher who clocks out having worked less than half of them gets HA for the day — but only if the day was empty; a mark already there (approved half-day leave, say) is never overwritten. Every short day also raises a Duration alert in the Teachers card of the Live Monitor. It offers ½ day (under half the hours), ✓ Mark Present and Dismiss, behind a 5-second undo. Mark Present gives a full day to an empty or half-absent day, but never replaces Absent or Leave.

Closed days

Three kinds of closed day, all resolved the same way everywhere in the app:

  • Holiday — a Holiday-typed calendar event. The cell shows red and the day is named.
  • Classes off — a Classes-Off-typed event. Grey, like a weekly off, and named.
  • Weekly off — the timetable says that weekday is not a working day. Grey; the weekday itself is the label.

On a closed day the grid blocks marking behind a “We are open” override, so an unplanned working day is still recordable. A closed date that already has marks counts as a day that ran, per class, and is never blocked. Multi-day holidays (e.g. Diwali 17–21) cover the whole range.

Reports

  • A student’s attendance record — the profile’s Attendance tab, and 🖨 Print record to print the same figures.
  • Print attendance sheet — from Dashboard or after bulk-marking via AI.
  • Attendance rate — shown on every student profile and as a dashboard tile. A student with no marks at all shows “—”, never 0%.
  • Register report — lists informed leave and uninformed absence separately, with the closed days that were excluded.

Marked absent automatically at day end

A teacher with neither a clock-in nor a clock-out for a whole day is marked Absent once the day is over. A clock-in with no clock-out is not absent — it reads as still to clock out — and an existing mark is never overwritten.

  • Only a day the school has finished is judged, on the school’s own clock rather than the device’s, so an admin travelling never stamps a day early.
  • The sweep looks back a week, so a day nobody was online for is picked up at the next opening.

Fees

Fees are per-student line items (Tuition, Transport, Exam, Admission, etc.) with states Pending · Paid · Partial · Waived.

Fee types & amounts

Fees tab → ⚙ Fee Settings → 💰 Fee Type Settings (on a phone, ⚙ Fee Types).

  • Fee types — declare the types you use, and pick one from the drop-down to edit it.
  • Class Amounts — a default amount per fee type, optionally per class (Tuition ₹1000 for class 5, ₹1200 for 10, etc.).
  • Recurring schedule — a type can be flagged monthly, quarterly and so on.
  • Rename and Delete sit beside the drop-down. A rename moves every fee (archived ones too) and every student’s special amount to the new name in one step, on the server, so all devices agree. Delete is refused while an open fee of that type exists — archive or delete those fees first; archived fees keep the old name. Anyone who may edit Fees can do both. Inventory is a system type and cannot be deleted.

Monthly fees, created for you

For a recurring fee type, the month’s fees are created the first time someone opens the Fees tab in a new month — every active student, at the class amount, as Pending. To create them now, use ⚡ Apply to all students now in Fee Type Settings. It is safe to run twice: a student who already has this month’s fee is skipped.

Smart Paid flow

Mark a fee Paid and three follow-ups appear: Download receipt · Archive · Skip. Bulk-mark a whole class’s tuition Paid in one step from the toolbar.

Editing a fee keeps its billed price. In Edit Fee, a uniform or book fee opens with the unit price it was billed at — never today’s price — so changing the quantity works out the new amount correctly.

A paid date, an archive date and a new fee’s month all use the school’s date. A payment marked at 12:30 at night on the 1st belongs to the new month, wherever the person marking it is.

Archive, undo, reminders

  • Archived — paid fees after a clean-up move here (the Archived button on the Fees tab). Restore or permanently delete from one place. A family still sees an archived paid fee under Paid in their app, and its receipt still opens.
  • Undo — any bulk flip can be reverted for 8 s.
  • WhatsApp reminders — from Dashboard (bulk across all outstanding) or per-student.

Receipts

  • Single receipt — from the fee row or AI: print receipt for Mirza April tuition.
  • Consolidated receipt — all fees for a student in one PDF.
  • Class-wide — one PDF per student, all classes in a single batch.
  • Collection report — 🖨 Collection report on the Fees tab (🖨 Report on a phone) prints every class for the month the list is filtered to (this month when none is chosen). Only people who may edit fees see it.

Returns & refunds

A return or a refund is a dated movement recorded on the fee, never an edit to the amount paid. Open the fee and use Return or Refund; the movement and the stock it puts back happen together.

  • The fee stays Paid and the badge is worked out from the movements. Lowering the paid amount to express a refund would re-arm every reminder for a family that was just refunded — which is the behaviour this replaced.
  • Collections subtract a refund in the month it happened, not the month that was billed.
  • Deleting or reducing a fee that had stock attached asks whether to put the units back, and defaults to yes.
  • A return or refund is dated with the school’s date, so a late-night return is never filed under the day before.

Payments families report

A family reporting a payment — in the app or over WhatsApp — creates an entry in Reported payments, reachable from the Fees card on the Dashboard, which also carries a count while any are waiting. Verify one and the fee updates; reject it and nothing changes. Nothing a family sends alters a fee by itself. While a report for a fee is waiting, Mark Paid (and any other way of recording a payment on that fee) is refused — confirm or reject the report first.

The family is told in their bell, where payments always come first — above absence and profile decisions, and never folded away.

Academics

Exams, marks, report cards, and class rankings.

Exam setup

  • Settings → Exam Types — define every exam (Mid-term, Final, Unit 1, etc.).
  • Per-exam subjects — different exams can cover different subjects.
  • Pass percentage + grade ranges — configurable per institution.

Subjects & marks (roles)

Open Academics → Subjects & Marks. Every subject a class is taught gets a role:

  • 📝 Exam — graded with marks and counts toward the %/grade. Set its Max and Pass marks.
  • ✎ Remarks-only (co-scholastic) — appears on the report card with a grade (and an optional note) instead of marks, and never affects the %/grade. Ideal for activities you assess but don’t score, like Drawing or Conversation.
  • — Taught-only — kept on the timetable but left off report cards entirely (e.g. Games).

The grade scale used for remarks-only subjects (e.g. A–E) is editable on the same screen under Co-Scholastic Grades.

Exam papers & exam-only subjects

  • Split into papers — examine one subject as several papers (e.g. English → Oral + Written), each with its own Max. The report card shows a combined English line with the papers listed beneath it.
  • Exam-only subject — add a subject that is examined but not in the taught list (e.g. General Knowledge).

Add a subject to classes

In Taught Subjects, adding a subject to the pool asks which classes should get it (all classes by default). Use the “↪ Apply to classes” control on any pool subject to push it to more classes later.

Enter marks

  • Academics tab → pick class + exam → type marks into the grid. Autosaves per cell.
  • AI: set Math 85 for Mirza mid-term.
  • Skip a subject — leave blank; it won’t count toward the total.
  • Remarks-only subjects appear in their own Co-Scholastic block on the record — pick a grade and add an optional note instead of marks.

Marksheet vs Report Card

Two related but distinct documents, each with a customizable label (Settings → Exam Settings → Report Card):

  • Marksheet (default name) — covers one exam. e.g. “Mid Term Marksheet”. Use after each individual exam closes.
  • Report Card (default name) — covers every exam in the academic session, consolidated into one transcript. Use at the end of the term/year for summary distribution.

Schools can rename these (e.g. to “Progress Report” or “Result Card”), customize signature labels (Class Teacher / Principal), toggle the signature block on or off, and choose whether to include the per-subject matrix.

Report cards & rankings

  • Per-student Marksheet (single exam) or Report Card (all exams) — from the profile or AI.
  • Bulk Marksheets / Report Cards — whole class, one PDF per student.
  • Class rank — auto-computed from totals; remark auto-selected via configurable ranges.
  • Assessment categories (Hygiene, Discipline, etc.) — configurable in Settings, scored per student per exam.
  • Exam papers group under their parent subject with a combined subtotal (e.g. English with Oral + Written beneath it).
  • Co-Scholastic section — remarks-only subjects print in a separate block below the marks, showing each subject’s grade and note, with no effect on the %/grade.
  • Inline mark editing — click any mark in the grid to edit in place. If a sync arrives mid-edit, the table waits for you to blur before refreshing — your typed value never gets wiped.

Archive

Deactivated students’ marks auto-archive into the Academics → Archive tab so report cards can still be regenerated from history.

Practice

Practice is a few minutes of sounds, words and numbers that a parent does at home with a young child, on the parent’s own phone. It follows the NIPUN Bharat foundational goals. There is no AI in it and no ads, and nothing of the child is recorded — only which questions were answered right, so the app knows what has been learnt. Practice is for schools: it appears when your school switches it on, and never at a college or institute.

Children practise in levels, and the Practice screen names your child’s. The school sets the level and moves a child up. Each level has its own packs:

  • Level 1: Letter sounds, Numbers
  • Level 2: Word reading, Counting to 100, Taking away
  • Level 3: Tens and ones, Tables 2–5
  • Level 4: Tables 6–10

A child above Level 1 sees their own level’s cards first on the Practice screen, then Letter sounds and Numbers, kept for review. A level not started yet still shows its cards, as is learning.

For parents: where to find it

On Home, your child’s card gains a fourth ring, Practice, showing how many of this level’s skills your child has learnt. Beside the Pay button sits the Practice button, which says what today wants:

  • Practice today — a session is waiting; it goes straight in. It reads Practice today · New when your child has moved up a level.
  • Resume 4/10 — a session was paused; it carries on where it stopped.
  • Practice done — today’s sessions are used up.

Tap the ring to open the Practice screen. At the top, the today card names your child’s level, says how many sessions are left (“Today: 1 of 2 sessions left”) and has one button: ▶ Start session 1, or Resume for a session paused today. Under it are your child’s stars and this week, the 🏅 This session card, a card per pack, the letter-sound and number progress, and Practice help. The ← at the top goes back to Home.

Not seeing Practice? It shows only on a parent’s sign-in — never on a child’s own student login — and only for a child whose class the school has switched Practice on for. With two children, it shows for the one whose class is on. If it is missing, ask the school office whether Practice is on for your child’s class.

Today’s sessions — and extra practice

There are two ways to practise, and only one of them counts.

  • Today’s sessions count. The school sets how many a day — usually one or two. Start them from Home (Practice today) or from the today card. They take turns between the packs: after a Letter sounds session, the end screen’s Start session 2 opens Numbers. Each finished session earns a star, counts towards this week’s medal, and moves your child’s progress on. Once the today card reads Today: done ✓, the next one is tomorrow.
  • Extra practice is free, and does not count. Every pack card has Practise, and once the pack has been practised also Revise (which goes over the start of the pack again). Use them any time, as often as you like — even after today’s sessions are done. The screen says so: Practise and Revise any time. They don’t count — today’s sessions do. Extra practice earns no star and changes no progress; at the end it shows how many were right first time, with Practise again and Done for now.

Why: a sound counts as learnt only when your child gets it right first time in three separate sessions, on separate days. Extra practice cannot hurry that, so it can never undo it either.

A session

How a question works. Every question is spoken. Tap 🔊 to hear it again, then tap the answer. A wrong tap says Try again; after a second miss the answer is shown, and that question comes back once at the end — the counter reads, for example, 4 of 10 · +1 to try again. Sit with your child and let them do the tapping.

Coco the parrot. On Level 1, Coco the parrot cheers your child on: he cheers at a right answer and tilts his head after a miss, and on a small screen he steps aside rather than cover a question. At every level a right answer bursts into stars, and at the halfway point, after question 5 of 10, a short cheer shows before the session carries on by itself. Letter sounds also asks Find the picture that starts with…: your child sees a letter and taps the picture whose word begins with it.

  • Each session is 5–10 minutes, and it is meant to be done together: the screen says “sit with” your child’s name. Press Start.
  • The questions follow the pack: hear a sound and tap its letter, count the pictures, find the number you hear, read a word, count on to 100, take away, or work out a table. If there is no sound, turn the volume up and check the phone is not on silent.
  • A sound or number counts as learnt once your child gets it right first time in three separate sessions. A later slip never takes the Practice ring backwards.
  • A session you pause is kept for today, and Resume carries on from the same question.

Bonus questions and rhymes (Level 1)

  • Bonus questions. At a Level 1 class whose school has ticked the extra packs, each of today’s sessions ends with 2 bonus questions: Find the small letter (a capital is shown and its name is heard) and, for shapes, Find the picture… with the shape’s name. A bonus question never earns a star and is never needed to move up.
  • The Bonus card. Where the school has ticked a pack, the Practice screen shows a ✨ Bonus card: the letter names (A ↔ a, green once known) and the five shapes. While it shows, Letter sounds and Numbers fold to one line (Show letters, Show numbers).
  • Numbers. The Numbers card is one grid of 1–20. A number turns green when your child can both count it and find it, and gold while either is still being learnt.
  • Rhymes. Every Level 1 child has a 🎵 Rhymes card on the Practice screen, always playable: the Rhyme of the day first, then all the rhymes. Nothing is saved and no session is used. After the day’s last session the end screen offers 🎵 Listen to a rhyme (All done for today!).
  • The end screen. The progress card, and See NAME’s progress under it, open the Practice screen. Both go through the grown-up hold, like ✕.

Stars, stickers and this week’s medal

  • A star for every finished session. The first sticker comes after 5 stars, and then one for every 10. Stars are never taken away. Stickers go in the Sticker book: open the stars card on the Practice screen to see them all, and how many stars are left to the next one.
  • This week. The stars card shows 📅 This week: the sessions done against the most the school allows — its sessions a day × 7, for example 9 of 14. The week runs Monday to Sunday and starts afresh on Monday.
  • A medal for the week. A medal is your child’s own week, never a race against other children:
    • 🥇 Gold — every session of the week. It reads Practice Champion this week.
    • 🥈 Silver — at least 85% of them.
    • 🥉 Bronze — at least 70% of them.
    At 2 sessions a day that is 14, 12 and 10 sessions; at 1 a day, 7, 6 and 5; at 3 a day, 21, 18 and 15. Only today’s counted sessions count — extra practice and Revise never do.
  • The line beside the stars says how the week is going, for example Silver medal this week — 2 more sessions for gold, or, before a medal, 6 of 14 sessions — 4 more for bronze! The screen at the end of each session shows the same line and 9 of 14 sessions this week.
  • When at least 20 children in the school can practise, a gold week also says how rare it was: Practice Champion — one of the top 12% this week. Only your child’s own medal is ever shown — never another child’s name or count. When enough children are in Practice but nobody has practised yet this week, it reads The week has just started — be the first to practise!
  • On Monday morning, if notifications are turned on for EdHelfy on your phone, a note titled Practice last week ⭐ says what each child practised and names any medal (“Riya practised 12 times last week — 🥈 silver medal.”), often with the session so far (“This session: 3 gold weeks.”). The same news is in the bell.

This session — the Annual Day awards

The 🏅 This session card counts your child’s medal weeks across the whole school year (the school’s session, for example Apr 2026 – Mar 2027): how many gold, silver and bronze weeks, one square per week since practice started, and Medal weeks and Sessions in total.

  • ⭐ Star Practiser certificate at 10 medal weeks — the card counts down (“3 more weeks”), then says your child has it already.
  • Class places — the top three of each class and section for the session — are announced on Annual Day. No ranking and no other child appears on your screen.
  • After the school’s closing date, once the school has published the results, the card names your child’s award, if there is one (for example Practice Champion of the Session, Silver Award of the Session, Bronze Award of the Session or Star Practiser of the Session), with Download certificate (PDF).

Leaving practice — a grown-up’s hold

So a child cannot tap their way out by accident, leaving takes a grown-up. Tap the ✕ and the screen says Grown-up: keep holding to pause: hold the ✕ there for 3 seconds while its ring fills. A plain tap does nothing, and the end screen’s Close works the same way. From Level 2 up, the hold is followed by Enter the last 4 digits of your mobile number, checked on the phone against the numbers the school has for you. Back to practice returns to the question.

Pausing one of today’s sessions keeps your place on this phone for the rest of the school day: next time it offers Resume, or Start over. A paused session ends when the day does, and signing out clears it. Extra practice is never kept.

The only lock a child cannot undo is the phone’s own. On Android turn on App pinning; on iPhone use Guided Access. The steps are under Practice help on the Practice screen, and behind How to lock this phone before a session.

Without a signal

Starting a session needs the internet (“Connect to the internet to practise.”). If the connection drops by the end of one of today’s sessions, the result stays on the phone and the end screen offers Save again, so nothing your child did is lost. Home keeps showing the last numbers it knew.

You can also ask the school’s WhatsApp, from a parent’s number, “How is Riya doing in practice?”

For staff: the Practice tab

Open Academics and choose ✏️ Practice beside Exams & Results. An admin always sees it at a school, because Practice is switched on from there; a teacher with Academics read sees it once Practice is on for a class. Practice is for schools, so a college or institute has no Practice tab, and its AI assistant offers no Practice help.

The toolbar is laid out like the Exams page:

  • On a computer, one row: Class, Section and the filter funnel, then 📺 Digital learning, 🏆 Awards & Progress ▾ and, for admins, ⚙ Practice settings. The funnel opens a second row: Search a child…, Level (All levels, Level 1–4), Status (Everyone, Practising, Needs attention, Never started, Stopped) and the reset arrows, which clear the filters only. Under it, This week | This month picks the period.
  • On a phone, row one is Class, Section, the funnel and ☰; row two is This week | This month and 📺 Digital learning. ☰ opens the actions as a grid, with Practice settings last.
  • 🏆 Awards & Progress (or ☰) holds Session awards, Sessions log, Progress report, Progress cards, Change level (for those who may change it) and Remind on WhatsApp (on a phone, Remind).

No class picked shows every Practice class at a glance — All Practice classes, with how many are practising, never started and stopped, and a Medals this week column — and under it 🏆 Medals this week for the school: each class·section’s medal holders, the three children Close to a medal, and the classes with No medals yet. Tap a class to open it.

A class: three cards that are also filters

  • Practising this week (in the month view, Practised in October) — N of M, with a bar. Under it the class’s Tricky sounds — sounds missed in two sessions running by two or more children, to teach in class; tap a sound to see who, and the list narrows to them (“keep missing d ✕”).
  • Medals this week (in the month view, October medals) — how many children hold 🥇, 🥈 and 🥉, the days left, and Session awards ›.
  • Needs attention — children who never started or have stopped.

Tap a card and the list below shows just those children (“● showing these below”); a chip above the list names the card — tap it, or the card again, to show everyone. The card filter and the Status filter work together. A figure not loaded yet reads “—”, never 0.

The list comes in three parts, and has no tick boxes:

  • Practising — highest first, each name with its medal: 5 / 14 this week with a bar, and the next step (“5 more for 🥉”), or not this week when the days left can no longer hold it. In the month view: the month’s weeks, N sessions in K weeks and the weekly average.
  • Needs attention — stopped first (they had the habit), then never started, each saying why (“family app set up” or “no family account yet”), with a Remind button on each row and on the heading.
  • Other children — practice you may not see (“visible to their class teachers”) or that could not be read.

Tap a child to open a short sheet: their medal, this week’s sessions and last practised, “k more for 🥈 this week — can still make it”, the letter-sound and number progress, the sounds they keep missing, and Sessions: today N, yesterday M, which opens their own sessions, newest first. Its buttons: Remind, Progress card, ↗ Change level (for those who may) and Full practice page ›, which opens the child’s profile on its Practice tab.

Medals: the week and the month

  • The weekly medal is the same one families see: 🥇 every session of the week (the school’s sessions a day × 7), 🥈 at least 85%, 🥉 at least 70%. Revise and extra practice never count. Tap Medals this week to open 🏆 Medals this week for the class: the week’s dates and days left, a tile per medal with what it needs, Medals so far with each child’s next step, Close to a medal (nearest first, “N more” or “not this week”), and “N haven’t practised this week” with Remind.
  • The monthly medal is for staff only. Switch to This month and tap October medals: October medals — monthly leaders, one medal per child from the average of the month’s finished weeks (a week belongs to the month it starts in), with the weekly medals won under each week. Until the first week ends it says first week still running. Children with no practice in the month are left out of the table; they are under Needs attention.

Session awards (Annual Day)

Open 🏆 Awards & Progress → Session awards, or Session awards › on the medals card. For each class·section it shows the whole school session’s standing so far — a champion strip, then each child’s 🥇 🥈 🥉 weeks, Medal weeks, Sessions and Award (so far), and a note when a place was decided by a tie-break.

  • The places. Children are placed by gold weeks, then silver weeks, then bronze weeks, then sessions. 1st, 2nd and 3rd need at least one medal week; children level on all four share the place (Joint). Weeks before a Reset still count.
  • ⭐ Star Practiser — a child with no place and at least 10 medal weeks.
  • Closing date (admins). Pick it and press Set; places are final on that day. Until it, every place reads “so far”.
  • Publish to families (admins) opens on the closing date. Families see their own child’s award, and can download its certificate, only once it is published and the closing date has passed. Unpublish hides it again.
  • 🖨 Certificates. Every awarded and Star child is ticked; untick anyone to leave them out, then press 🖨 Print N certificates — one page each. Teachers can print too.

Switching Practice on (admins)

  1. Press ⚙ Practice settings. Under Whole school, turn on Practice for families, choose Sessions a day (1, 2 or 3 — the same for every class), and leave Move up when ready on if children should move to the next level once its core packs are learnt.
  2. Pick a class in the list and turn on Practice for that class. Starts at is suggested from the class name, and any of Levels 1 to 4 can be chosen; a class already on Practice stays where it is until you change it.
  3. Press Save. Nothing changes for families until you do.

Under Practice settings, a Level 1 class also shows Extra packs tick boxes (Letter names, Shapes). Ticked packs add 2 bonus questions after each session. Never a star, never needed to move up.

One picker for Remind, Change level, cards and reports

Remind on WhatsApp, Change level, Progress cards and Progress report all open the same picker window, over the children on screen (the class, section, filters and any card you tapped). Everyone who can take the action starts ticked; untick anyone to leave them out (Select all, Clear). A child who cannot is shown unticked with the reason — “no phone number”, “no family login yet”, or “never started — nothing to print”. The picker itself changes nothing until you press its button.

Reminding families

Press Remind on WhatsApp in the toolbar, the Remind on Needs attention, on one child’s row or sheet, or on “N haven’t practised this week”. From the picker, Send to N. WhatsApp opens with a short message saying Practice is waiting in the app; you send it. For several families a strip walks through them one at a time — Open WhatsApp, Skip, Stop. A family with no WhatsApp number, or with no family login yet, is left out and counted, since they could not open Practice anyway.

Changing a child’s level

Choose Change level (in 🏆 Awards & Progress, under ☰, or ↗ Change level on a child’s sheet), press Change level for N, then pick a level, or Back to automatic to let the child move up on their own again. A confirm names what will happen. All four levels can be chosen. An admin can change any child; a teacher needs Academics write for that child’s class, which the server checks again.

Reset and Restore

Tap the child, then Full practice page ›: on the profile’s Practice tab, the last card, Start again, holds Reset practice…. It asks first, naming the child and what will be archived. Nothing is deleted: the old progress is archived, a banner at the top of the tab says when and by whom, and Restore brings it back, keeping anything practised since. The sessions go into the archive too — the child’s stars, stickers and Sessions log start again from none — and Restore brings every one of them back. The same people who can change a child’s level can reset and restore.

Families have no reset, on purpose: the record is the school’s as much as theirs. For a fresh start at home, a pack card’s Revise goes over a pack again without touching what was learnt. A new school year needs no reset either — a promoted child carries on by the level rules.

Digital learning — on the class TV

📺 Digital learning shows what children practise, big enough for the whole class: cast or connect a phone or laptop to the TV or projector, and turn a phone sideways so the picture fills the screen. Or hand the phone to a child. Nothing is saved — no session, no star, no change to any child, and it never touches a session a family has paused on the same phone. An admin, or a teacher with Academics read, can use it; a parent or a student never sees it. (It used to be called Packs, and its Quiz was Try a pack.)

Pick a level at the top. Each pack has Start from (a group of letters, words, numbers or tables) and:

  • 🃏 Flashcards — one card full screen: the letter, number or word with its picture, or a shape, and 7 of 26. 🔊 Say it plays it again; the buttons either side name the card before and after. A presentation clicker or the arrow keys move on too. For Letter sounds, Letter names, Numbers, Shapes and Word reading.
  • 🙋 Quiz — the pack’s questions, as a child hears them, for the class to answer together. It ends with the score of first tries and Try again.
  • The tiles — each pack’s letters, words or numbers, folded under Show all 26 letters (and so on; the phone remembers which you opened). Tap a tile’s picture to show that card full screen; its ▶ only plays the sound.
  • 🎤 Sing-along (Level 1’s Rhymes) — the rhyme’s words on screen, the line being sung large. Play / Stop, and ⏮ ⏭ for the rhyme before and after.

Every one of these windows has Full screen where the device allows it (not on an iPhone) and a ✕ Back to Digital learning. The tips are behind 📺 Showing it on a TV or projector? at the top.

Reports and cards

  • Progress cards — one card per child, to send home, for This week, the month, or Session so far; 2 cards per A4 or 1 per A4. Or Progress card on one child’s row or sheet.
  • Progress report — one page per class·section, for staff, listing every child in it, with the NIPUN goals table (how many children have learnt each core pack of their level). Pick the class·sections, the period, and what to include: Week-by-week table, Letters learnt across the class, Teacher’s remarks line.
  • Sessions log — who practised on which day: one row per school day, newest first, with each child’s count, for This week, This month or Last month. Tap a name to open the child. With no class picked, every Practice class is its own fold.
  • On Mondays the bell carries Practice last week for your Practice classes.

Schedule

Timetables, calendar events, and routines live under the Schedule tab.

Timetable

  • Schedule → Routines sub-tab. Grid: rows = timing slots, columns = weekdays.
  • Per-class timetable — pick class/section from the picker.
  • Click a cell → assign subject + teacher. Reuses the teacher roster.
  • Timing slots live in Settings → edit once, every class inherits.
  • Mentor / Class Teacher — set per class in Timetable Settings; it shows in the timetable heading. This stays in sync two-way with the teacher’s profile (see Teachers → Profiles): set it in either place and the other updates, and a teacher mentors only one class at a time.
  • Generate — the timetable generator auto-fills a conflict-free routine from your classes, subjects, teachers and constraints (per-teacher daily/weekly caps, homeroom-first for mentors). Lock any cell to keep it, then re-generate the rest; an optional plain-English preferences box steers the result when AI is enabled.

Calendar

  • Schedule → Calendar. Add holiday · exam · event · meeting for single day or a range.
  • Holidays automatically excluded from attendance math (see Attendance).
  • Upcoming events chip appears on the dashboard; multi-day events stay visible until they end.
  • The calendar opens on the school’s month and highlights the school’s today; Upcoming and the Add Event form’s start date follow it too. A family’s Timetable screen picks today’s periods by the school’s clock.

Teachers

Staff roster with profiles, attendance, leave, and reports.

The teacher’s profile page

Tap a teacher’s name on the Teachers tab. The profile is laid out in tabs, like a student’s:

  • Overview — this month in four numbers (rate, Present, Absent, Leave), a Needs a look card, and the leave balance. Needs a look lists what costs something if nobody acts: unexplained absences, days the office marked others but skipped this person, leave waiting for a decision, a salary not set.
  • Attendance — the month, every day by its mark, with approved leave shown on the days it covers.
  • Timetable — the week (one day at a time on a phone), and 📊 Periods by subject.
  • Leave — Requests this session; tap one to open its review window. An admin also gets + Apply leave for that person.
  • Salary — this month’s payable days and pay, 🖨 Payslip, and for an admin, Send on WhatsApp.

Each person sees only the tabs their role can truly show. A colleague sees the Timetable only. An accountant who views staff pay gets no Leave tab. A teacher sees all of their own.

Profiles

Click + Add Teacher on the Teachers tab, or ✏️ Edit on a teacher’s profile page, to open the profile form. As of 2026-05-02 the form is laid out as six sectioned cards mirroring the Add Student modal:

  • Teacher / Staff Info — Full Name, Date of Birth, Sex.
  • Employment — Designation, Department, Employee ID, Joining Date.
  • Family — Father, Mother, Spouse / Partner.
  • Contact — Phone, WhatsApp (both with country-code picker), Email.
  • Address & Photo — Address textarea + profile photo upload.
  • Qualifications & Assignment — Education, Experience, Expert Subjects (multi-select), Mentor Class & Section, CV / Resume upload.

Phone fields go through the same E.164 validation used for student parent contacts, so WhatsApp links work the same way for teachers.

Mentor of Class — setting a teacher’s Mentor Class & Section here automatically makes them the mentor / class teacher on that class’s timetable, and clearing it removes them. It’s two-way: assigning a mentor from Timetable Settings writes back to the profile too. Each class has one mentor and each teacher mentors at most one class — reassigning moves it cleanly.

Manage Teachers (settings)

Settings → Manage Teachers opens the per-teacher attendance settings (default duration, bypass duration, bypass GPS) and the archived staff list. The modal opens fullscreen with a search bar at the top — typing filters the list live without losing focus, useful when staff numbers grow past a screen.

Manage Team (roles & invites)

Settings → Manage Team shows every user (admin + invited staff) in a single list. A search bar at the top filters by name, email, or role — the same DOM-only pattern as Manage Teachers.

Attendance

Attendance sub-view — the daily staff grid. Unlike students, staff have P / A / L plus the two half-day states HA and HL. See Attendance → Teacher attendance and half days for the full semantics, the ½ chip, and the short-clock-out rule.

Leave

A teacher, accountant or non-teaching staff member applies from Teachers → 📝 Apply Leave; an admin can also apply on behalf of someone. The request goes to an admin, who approves or declines it from the dashboard placard or the Teachers tab.

  • Half-day leave — the Duration control offers Full day or Half day. A half-day request must be a single date, and approving one writes HL rather than L.
  • Approving writes leave marks across the working days of the range, skipping closed days, and records exactly which dates it wrote. Before you approve, the review window says what approving will mark, naming any mark it replaces; once approved, it says what the register holds. An optional note goes to the applicant.
  • Declining requires a reason — the applicant is shown it in My Leave.
  • Cancelling an approval clears only the dates that approval wrote, and asks for a reason that replaces the original note.
  • My Leave — each staff member sees their own requests, decisions, and the notes attached to them. A pending request can still be edited by the applicant.
  • Where a decision shows — on the Live Monitor’s Teachers card (Latest decisions, with Cancel approval), in the review window’s timeline (“Requested … Approved … by you”), and on the teacher’s profile: the Leave tab and the days in the Attendance month.
  • Attendance Record (Teachers → Attendance → Attendance Record) prints one page a principal can sign — a register of months × days, absence and leave with what was behind each, clock exceptions — with every clock time in an appendix. An absence under a declined or cancelled request says so.

Leave policy

Teachers → Policy → Leave Policy (admin only). Policies are versioned: editing one creates a new version with an effective-from date, and a request is judged by the version in force on its dates, so changing the policy never rewrites history.

  • Categories — e.g. Casual, Sick — each with an allowance and a period (monthly or yearly).
  • Audiences — a category can apply to everyone or to a named subset of staff.
  • Counting mode — whether a range counts calendar days or working days.
  • Carry-forward — unused days can roll into the next period, up to a cap, and expire on a stated date.
  • Pro-rating — a member who joined mid-session accrues a proportional allowance.

Balances (allowed / taken / remaining) are shown on the apply form, on the approval card, and in Leave Settings — all from one resolver, so the three never disagree.

Salary & pay

Set a monthly salary and joining date on the teacher’s profile. Teachers → ₹ Staff Pay (admin) shows the monthly statement for every staff member:

  • Payable days — working days, present, paid leave, loss of pay, and unmarked. An unmarked working day is payable (benefit of the doubt) but is counted separately so you can see it. Half days count 0.5.
  • Loss-of-pay model — Deduct cuts the amount (per-day rate × LOP days), or Extend pushes the next salary date instead. Set school-wide, overridable per person.
  • Divisor — per-day rate is salary ÷ 30, or salary ÷ that month’s working days.
  • Payslips — printable, and sendable to the staff member over WhatsApp.

₹ My Pay (teacher / accountant / non-teaching staff) is the staff member’s own copy of that statement — their own figures only, never anyone else’s. Payroll visibility for other people is admin-only by default; an admin can delegate it to an accountant at Settings → Role Permissions → accountant → staff_pay. That grant is view-only: it can never be used to edit a salary.

Absence review

Unexplained staff absences are gathered into a review queue, grouped by teacher. From there an absence can be regularized into a leave request in one tap, or acknowledged as genuine loss of pay.

Reports

Per-teacher report with classes taught, attendance rate (half days shown as ½), and leave taken. Printable from the profile.

Leave

Leave requests live on this tab. Approving one marks the leave days on the staff register; declining changes nothing, and the applicant reads the note you leave. A teacher whose WhatsApp number is linked can apply from their phone, and is told on the same thread when you decide.

Pay

A salary is set on the teacher’s own profile. The pay screen works out payable days for a month — working days, present, paid leave, loss of pay with half days counted as a half — and the figure that follows from them.

  • A salary nobody has entered reads as not configured, which is not the same as a salary of zero, and no surface quotes zero for it.
  • Pay is admin-only unless an admin grants the staff pay permission to an accountant or teacher. Each person can always see their own.

Inventory

Track stock, categories, issues, and suppliers.

Add & manage items

  • Categories and sub-categories (Uniform, Books, Stationery, …) are managed on the Inventory tab with ⚙ Manage Categories, which also holds each category’s supplier.
  • Per-item: name, category, stock, issued, price per unit.
  • Variants / sizes — items like uniforms or shoes that ship in multiple sizes are stored as sibling rows under one parent name (e.g. School Shoes with rows for S, M, L). Each variant has its own stock + history.
  • AI: add inventory item Chalk, Stationery, stock 50. For variants: add School Shoes size M, Footwear, stock 10 — the AI passes the variant tag through so it lands on the correct sibling row.
  • Who can — any staff role with the Inventory permission: view to see the stock, edit to add, change or delete. Parents and students never see Inventory.

Issue / restock

  • Issue — deducts stock; logs history. AI: issue 5 markers.
  • Restock (+ Add stock) — adds to stock. AI: restock Chalk by 20. For variant items: restock School Shoes size L by 10 — the AI narrows the match by item + size so the other sizes stay untouched.
  • Every change is logged in the item’s history (Item Logs), with the date and time on the school’s clock. Someone viewing from another time zone sees the zone named, e.g. “01:30 IST”. Clear old history in bulk from the toolbar if needed.

When stock is low — your school’s own number

⚙ Manage Categories → ⚙ WhatsApp Order sets, for every category:

  • Low stock — Low when fewer than N are left, with an optional different number per category. Until you change it, it is 10.
  • How much to order — the same as the last restock of each size (the default), Top up each size to N, or Always order N of each low size.
  • WhatsApp button on items — Always, or Only when low.

That one number is used everywhere: the Inventory list, the Low Stock Alert card, the fee screens, the Dashboard, the daily briefing, the AI assistant and the WhatsApp bot.

Ordering from the supplier on WhatsApp

  • An item’s WhatsApp button (Order via WhatsApp) opens the order box: each size with a tick, a quantity and where that quantity came from, a note to the supplier, and a preview of the message. Press Send on WhatsApp.
  • The WhatsApp button on a category or sub-category orders all of its low stock in one message.
  • No supplier saved yet? The box asks for the name and number and saves them as the category’s.
  • The supplier gets plain text with real line breaks — items, sizes, quantities and a total; no stock levels and no prices.
  • An order is recorded only once WhatsApp has opened. If the same item was ordered recently and is still waiting, the box warns you before you order it twice.

Orders and Mark received

🛒 Orders on the Inventory tab (admins and accountants, once an order exists) lists every order sent in the last 12 months. The number on it counts the orders still open.

  • Each order reads Waiting, Partly (some sizes received) or Received. A size counts as received once any stock is added after the order — 60 of 100 is received.
  • Mark received adds what was ordered to stock, size by size; change any quantity first, and a size left at 0 stays waiting. Restocking the usual way marks an order received too.
  • An order with nothing received after 60 days reads Not received and leaves the Waiting count.
  • ✕ Cancel order closes an order nobody will deliver, and stops the double-order warning. ↩ Reopen undoes it. The supplier is not told.
  • Orders also show in the item’s history.

Don’t reorder

Stopped selling something? Open the item’s Edit form and tick Don’t reorder. It no longer counts as low stock and is left out of WhatsApp orders; its stock and history stay. To undo, press Reorder again under Not reordered at the foot of the Low Stock Alert, or untick it in the Edit form.

Letterhead & letters

Write and print letters on your institution’s own letterhead, signed with the principal’s signature and the school seal. The same signature and seal also print on report cards and receipts.

Writing a letter

On the Dashboard, tap Letterhead (in the Live Monitor panel). The Letterhead window opens with the letter and a true A4 preview beside it (on a phone, tap Preview).

  • Fill in To, Subject and Letter. The preview shows page 1 exactly as it prints, and says how many pages the letter takes.
  • Text size — Small, Normal, Large or Extra large.
  • Sign with signature & seal — tick it to print the principal’s signature and the seal at the end. If none are saved yet you see “No signature or seal yet.”
  • + New letter clears the page for the next one.
  • Tap Print. Each printed letter gets its own reference number and is kept in Letters sent.
Numbers need the academic year. If your academic year is not set in the Institution Profile, letters cannot be numbered. A letter printed while you are offline prints, but is not recorded in Letters sent.

AI write and templates

  • AI write — say what the letter is for (“Annual Day on 15 Nov at 10 AM, parents invited”) and tap ✦ Write. AI drafts To, Subject and the letter. Check it, then tap Use in letter — or Edit & retry / Discard. An Undo brings your own letter back. Each Write uses one request from your school’s AI allowance. The button shows only when AI is set up for your school.
  • Templates ▾ — ready letters: for staff (Experience letter, Joining confirmation, Relieving letter, Termination letter, Salary certificate) and for parents (Holiday notice, Fee reminder, Event invitation). A staff letter asks which staff member it is for and fills in their name, post and joining date; you can still change every word.
  • + Save this letter as a template keeps your own wording under My templates.

Letters sent

Tap 📨 Sent at the top of the Letterhead window. Every letter printed from the Letterhead is listed with its reference number; search with Search letters….

  • Reprint — prints it again with the same number and date.
  • Open — puts it back in the editor as a new letter. Printing it gives it a new reference number.

Who can write letters

Settings → Team → 🔑 Role Permissions has a Letters column with three choices:

  • Write & sign — write and print letters, signed with the signature and seal. Admins always have this.
  • Write letters — write and print letters, unsigned. Accountants have this by default.
  • — None — no Letterhead button. Teachers and staff start here; an admin can give them either level. Parents and students can never write letters.

Changing the letterhead itself, the signature, the seal and the Header & Footer always stays with admins.

Adding your letterhead (Admin only)

Settings → Printed formats & setup → Letterhead, signature & seal. (Also the ⚙ Setup icon in the Letterhead window.)

  1. Under What do you have? choose One full page or Header and footer as separate files.
  2. Upload a photo or a PDF. A PDF from your printer is best; a photo should be of a clean page, taken from straight above. For a PDF with several pages, pick the page and tap Use this page.
  3. Check your letterhead opens with two tabs:
    • Trim — drag the red lines (Header ends, Footer starts) and the blue lines to crop the edges. Tick No footer if there is none, or Keep the whole image (no trim). Straighten fixes a tilted photo.
    • Page preview — an A4 page with a sample letter, in the way you choose under How letters print. Black & white shows how it looks on a black-and-white printer.
  4. Tap Looks right to save.

How letters print — pick one:

  • Your letterhead on plain paper — your header and footer print on every letter. Choose Header: Every page or Page 1 only.
  • The whole page — your full page prints behind every page of the letter. Drag the dashed writing area on the preview to where the letter should go.
  • On your printed letterhead pad — nothing of the letterhead prints; put your pad in the printer. Type the Space at the top and Space at the bottom in mm.
  • EdHelfy design — name, logo and contacts from your Institution Profile. Your upload is kept, so you can switch back.

If your letterhead has its own printed Ref and Date blanks, tick Fill our printed Ref / Date blanks and drag the Ref and Date markers onto them.

Once saved, the letterhead shows with Replace, Adjust trim (back to the check screen) and Remove (letters use the EdHelfy design again).

“This will print blurry” — Rebuild sharp with AI

A small photo or screenshot can look fine on screen and print soft on A4. When that happens a yellow box says This will print blurry. Two ways out:

  • Ask your printer for the PDF of the letterhead and upload that.
  • Tap ✦ Rebuild sharp with AI. AI reads the lines of your letterhead (only the letterhead is sent) and EdHelfy redraws them sharply in the EdHelfy design. Tick each line when it is right, tap ✏️ to correct one, then Use rebuilt — or Keep my upload. Your upload is kept either way; Use my upload instead switches back later, and Edit lines opens the Header & Footer page.

Signature, seal and class-teacher signatures (Admin only)

On the same Letterhead, signature & seal screen:

  • Principal’s signature — sign on white paper and upload a photo or PDF. Prints on letters, report cards and receipts.
  • School seal — stamp on white paper. Prints beside the signature.
  • Class-teacher signatures (optional) — one per class and section. Printed above “Class Teacher” on that class’s report cards and marksheets; a class without one prints the plain line.

Photo tips under each upload: plain white paper, good light with no shadow, phone straight above the paper, and come close so it fills the frame.

Tap ⚙ Header & Footer on the Letterhead, signature & seal screen. It decides what the EdHelfy design prints at the top and bottom of a letter — it has no effect while your own letterhead or pad is in use. Admin only.

  • Move each line (logo, name, motto, registration no., address, phone, email, website) to At the top, At the bottom or Not printed, and set Align.
  • Your own line at the bottom (optional) — e.g. “Affiliated to CBSE · School code 12345”.
  • ↺ Back to default undoes your choices. Tap Save.

Print a test letter

Tap Print a test letter to see your letterhead on paper before sending real letters. It adds a printer check that is not on real letters: a 100 mm ruler, corner marks and edge marks.

  • If the ruler is not 100 mm, set Scale to 100% in the print dialog.
  • Most printers cannot print right to the edge of the paper. If the edge of your letterhead is cut off, the edge marks show where your printer starts — trim the letterhead a little more, or use the printed pad.

History and Restore old (Admin only)

Tap 🕑 History on the Letterhead, signature & seal screen (or the History icon in the Letterhead window) to see who changed the letterhead, signature, seal, Header & Footer or templates, and when. On a change that replaced the letterhead, signature or seal, tap Restore old → Put back to bring the earlier one back.

Your own printed forms

Fee receipts, ID cards, transfer certificates, marksheets and report cards can print on the forms your office already uses. Each one has three choices under How should … print?:

  • EdHelfy … (e.g. EdHelfy receipt) — the design EdHelfy prints today. Nothing changes until you pick another.
  • On our printed … (receipt book, pre-printed cards, TC book, marksheet, report card) — you put your printed form in the printer and EdHelfy fills in only the blanks. Your photo of it is used only to place the details; it is not printed.
  • Upload our … template — no printed stock needed. EdHelfy prints your blank form on plain paper with the details filled in, so use a clean PDF or a sharp photo of an unused form.

Where to find each one

FormWhereWho
Fee receiptSettings → Printed formats & setup → Fee receipt, or Fees → ⚙ Fee Settings → Receipt Settings → Print on your own receipt book or formAdmin, or anyone who can edit Fees
ID cardSettings → Printed formats & setup → ID card, or the 🪪 ID Cards window → Print on your own ID cardsAdmin
Transfer certificateSettings → Printed formats & setup → Transfer certificate, or TC Settings → Print on your own TC formAdmin, or anyone who can edit Students
Marksheet & transcriptSettings → Printed formats & setup → Marksheet & transcriptAdmin
Report cardAcademics → 📋 Report Card → Print on your own report cardAdmin

Each row in Printed formats & setup shows what prints now: EdHelfy design, Your printed form or Your template.

Check your form

Every upload of a form opens Check your form. The grey background and shadow of a photo are removed for you; a border printed on the form is kept. Drag the blue lines to crop the edges if needed, and use Straighten for a tilted photo.

  • Tick This form is blank — no student’s details on it. Next stays off until you do.
  • Only have a filled-in sample? Tap Blank the details on this one and drag a box over each student detail; it is filled with the form’s own background. Undo last takes one back; tap Done blanking when finished. This happens on your device — nothing is sent anywhere.

Placing the details

  1. Under Paper, choose the paper size your form is printed on (or Custom size).
  2. Under Values to print, tick what should print (student name, class & section, date, fee lines…).
  3. Under Place them, tap a box, drag it onto its blank, and drag its corner to size it. Left, Top, Width and Height can also be typed in millimetres.
  4. Tap Save.

✦ Place the boxes with AI does step 3 for you. EdHelfy finds the blank lines and boxes on your form, and AI only says which blank is which detail — only the blank form is sent. Check each proposed box: tick it, drag it, or tap Leave out. A box marked “⚠ Not sure: check it lines up” needs a look. Nothing is kept until you press Save. It needs the “This form is blank” tick first.

Style — a chosen box can have its own Size (or Auto, which fits the box), Bold, a Colour (black or one taken from your form), Align and a Label before it (e.g. “Father :-”). A photo box can be Square or Round. A box with no style prints as before.

Your receipt book or TC book already numbered? Untick Print EdHelfy’s receipt number (or TC number, or Print the EdHelfy student ID for cards).

Check on paper

Tap Print a test page, print it on plain paper and hold it over your form against the light. If every box is off by the same amount, type Move right (mm) and Move down (mm). This shift is for this device’s printer only; other devices keep their own. Always print at 100% scale (turn off “Fit to page”). Preview a real … shows the form with a real student’s details.

A blurry template — Rebuild sharp with AI

With Upload our … template, a soft photo shows This will print blurry. Upload a sharper photo or the PDF of your blank form, or tap ✦ Rebuild sharp with AI: AI reads the form’s lines (only your blank form is sent), you tick each one, and EdHelfy draws a sharp copy in place of the photo. Your boxes do not move. Tap Use rebuilt, then Save. Use my upload instead goes back to the photo.

Marksheet & transcript

One design, front and back. Switch between Front and Back at the top.

  • Use this design for — Marksheet (one exam), or Marksheet and transcript (all exams / semesters).
  • The back — Already printed on my paper, Print this page on the back (e.g. a grading scale; set the printer to print on both sides), Print details on the back too (place boxes on it like the front), or No back.

The report card on your own paper (Academics → 📋 Report Card) works the same way, with a box for the marks table. If a class has more subjects than the box can hold, the screen warns you; make the box taller, or the last subjects print as “+ N more”.

Settings

Settings is one page of sections. Each section is a row — tap it to open; on a phone, opening one closes the others. Changes save as you make them. Everyone sees Appearance & display, Account & security and Data & backup; most other sections are for admins.

Admin Settings

The first row (also the Admin Settings button on the Dashboard). It opens one panel: 📚 Classes, 📋 Sections, 📝 Subjects, 👨‍🏫 Teacher/Staff, 📊 Exams, 💰 Fee Types, 🏫 Institution (name, address, logo, motto, academic year) and ⚙ Leave & Attendance Policy. Admin only.

Printed formats & setup

Admin only. One row per paper, with what prints now on the right:

  • Letterhead, signature & seal — shows how many of the three are added (“1 of 3”). See Letterhead & letters.
  • Fee receipt, ID card, Transfer certificate, Marksheet & transcript — see Your own printed forms.
  • Setup wizard — runs the first-time setup again. It changes nothing until you save a step; your data is not reset. Its Your formats step is the same Letterhead, signature & seal screen.

Finish setting up — until everything is done, admins see this card on the Dashboard with a chip for each step left (Letterhead, signature & seal, Students, Fees, Attendance, Academics, Timetable, Calendar). A chip opens that page and points to 📎 on its Ask AI bar, so you can upload your existing register. Hide removes the card; Show the checklist on the Dashboard in this section brings it back.

Until a letterhead, signature or seal is added, an admin’s print bar asks “Print with your own letterhead, signature and seal?” with Add them and Don’t show again.

Other sections

  • Appearance & display — theme for everyone; date format, time format, timezone and currency for admins.
  • Account & security — login PIN and password; for admins also the role and 🗑 Delete Account.
  • Data & backup, AI assistant, WhatsApp, Team, Payments, At-risk detection, Sync, Cached users on this device — described below and in their own sections.

Editing classes, sections & subjects (safe rename)

Open Manage Classes or Manage Sections (the ⚙ beside any class/section picker, or Settings → Admin Settings → Classes / Sections), then click the ✎ Edit button on a chip to rename it. Renaming is migration-safe — EdHelfy moves every dependent record to the new name:

  • Class rename migrates students, attendance, marks, timetable entries & settings, and per-class fee amounts.
  • Section rename migrates students’ section, the per-section timetables, and mentor assignments.
  • Subject rename migrates marks, exam records, timetable periods, and room assignments.
  • Renaming onto a name that already exists merges the two (no records are lost). Changes sync to every device.
Rename vs Remove: use Edit (✎) to change a name and carry its records along. Remove (×) only drops the label — it does not migrate records, so students/marks under the old name are left orphaned. To change a name, always Edit; don’t Remove-and-re-Add.

Who can change the class and section lists: an admin, and anyone whose role may edit Students (an accountant, by default). Adding, removing and renaming all follow that one rule; a rename moves everything on the server in one go, so it never half-lands. For anyone else Manage Classes opens read-only with the reason, the ⚙ beside the Class and Section boxes is not shown, and a try is refused with “Changing the class list needs permission to edit Students. Ask an admin.”

Team & roles

Open Settings → 👥 Team: Manage Team invites, edits and removes members, and 🔑 Role Permissions sets what each role may see and change. Both are explained in Team & roles below.

AI & subscription

  • Activate the EdHelfy AI proxy (usage included in your plan) or plug your own provider key.
  • Daily + monthly usage limits shown in the Ask-AI bar.

Backups & data

  • Export my data — full JSON snapshot of students/fees/academics/attendance/config.
  • Import — CSV/JSON. Preview + dedupe rules before commit.
  • Auto-backup reminder — nudges every N days from the dashboard.

Data retention

Under Data & Backup. Admin only. Three separate controls, and they do not all delete:

ControlDefaultWhat it actually does
Inactive Student Retention 24 months Archived students older than this are flagged for your review — they are never deleted for you. Bulletin posts, office posts and leave requests older than this are deleted automatically, on every device and in the cloud.
Archived Fees Retention Keep forever Nothing is deleted until you choose a period. Once you do, archived fees older than it are removed on login and after each cloud sync.
Attendance Session Cleanup Off A convenience switch only. It offers you the option to clear the previous session’s attendance when an academic year ends. It deletes nothing on its own.

Choosing “Keep forever” (0) on either period switches that clean-up off entirely. Deletions are permanent and are not undone by a later sync, so pick a period you are comfortable with before setting one. Attendance has its own separate archiving and is not governed by these controls.

Danger zone

  • 🗑 Reset All Data (under Danger Zone at the foot of Settings, admin) — wipes local + cloud. Requires typing a confirm phrase.
  • 🗑 Delete Account (in Account & security, admin) — irreversible. Auto-exports a backup first.

Team & roles

EdHelfy is multi-user from day one. The first signup becomes the institution's Admin; from there the Admin invites teachers, accountants, non-teaching staff, parents, and students. Each member signs in with their own credentials — email and password, an emailed code, or a Login PIN (see Signing in) — and only sees what their role allows.

The six roles

  • Admin — everything. Manages classes, fees, settings, team, billing, AI configuration, the letterhead and Danger Zone actions, and approves other people’s posts.
  • Teacher — marks attendance (any class, so a substitute can cover), enters marks for their own classes, plans the timetable and calendar, writes posts (an admin approves them) and logs admission enquiries. Sees the student list; sees their own staff record.
  • Accountant — full access to Students, Fees and Inventory; receipts, reminders and admission enquiries (including deleting one). Views attendance, the timetable, the calendar, the staff list and payroll; writes letters (unsigned) and posts (an admin approves them). No marks, no Settings.
  • Non-teaching staff — a clerk, peon, driver or any employee who does not teach. Their OWN record: attendance and clock in/out, leave, pay and details. Also the timetable and holidays (view only), admission enquiries and posts — the front office logs walk-ins and writes notices. No students, marks, fees or stock.
  • Parent — read-only view of their own child(ren)’s attendance, marks, fees, timetable and notices. Cannot see other students.
  • Student — for coaching centres, colleges, institutes and higher-ed where learners use the app themselves. Same scope as Parent (their own attendance / marks / fees / timetable / notices).
A user can hold several roles at once. A typical small school has one person who is both Teacher and Accountant — both boxes ticked on the invite — and the app gives them the more generous level of the two.

Inviting a team member

  1. Open Settings → 👥 Team → Manage Team → + Invite member → Invite code. (For most staff, Login PIN is simpler — see above.)
  2. Enter the invitee's email (or leave blank to share the code manually via WhatsApp / verbal).
  3. Tick one or more roles. Ticking a staff role (Teacher, Accountant or Non-teaching staff) reveals a Link Staff Profile picker — see below.
  4. Click Send Invite. The modal shows a green ✓ when the email actually delivered, or an amber ⚠ with a reason if it failed (in which case you can copy the code and share it manually).

How the invitee signs up

Two paths, both work:

  • Email link — invitee clicks the 🚀 Join Now button in the invite email. Lands on the signup form with the code, school name, and email auto-filled.
  • Manual code entry — invitee opens the website, chooses I have an invite code (or goes straight to edhelfy.com/?code), and types the 8-character code into the Invite Code field at the top of the form. After a moment the institution name and the assigned role(s) fill in (e.g. “✓ You will join ABC Public School as Teacher.”).

Invite codes are single-use, expire after 30 days, and can be revoked or regenerated by the inviting Admin from the Pending Invites list. If an invite is lost, the Admin can also Resend email from the same list (⚙ menu next to the code).

Linking

Linking ties an invited user account to an existing record in the institution so the user sees their own data on first login.

  • Staff (admin pre-link) — when inviting a teacher, accountant or non-teaching staff member, pick their record from the Link Staff Profile picker. Leave it blank and the person signs in fine but never appears on the Teachers page, and cannot see their own attendance, leave or pay. No record yet? Add them on the Teachers page first, then send the invite.
  • Parents (admin pre-link) — when inviting a Parent, pick the student from the Link to Student picker (a search box filters by name or class). Siblings whose records share the same parent phone or WhatsApp number link too, automatically.
  • Students (admin pre-link or auto-link) — the same student picker appears. Left blank, EdHelfy matches the student’s signup email or phone to the student record. If two or more records share that contact, nothing is linked and the person is asked to contact the school.
If linking fails the user lands on a friendly screen (“Your account is ready, but we couldn't match it to a student record yet”). To fix it, the Admin opens the student in Students and adds the user's email or phone. The app re-tries the link by itself; the “Try again” button is there as a fallback.

Customising what each role can do

Settings → 👥 Team → 🔑 Role Permissions opens a table: one row per role, one column per part of the app — Dashboard, Students, Attendance & Assessment, Teachers, Academics, Fees, Inventory, Timetable, Calendar, Settings, Posts, Profile, AI, Enquiries, WhatsApp, Family Qs, Letters, Staff pay. On a phone the table scrolls sideways.

  • Pick a level in a cell. Nothing is sent until you tap Save (it shows how many changes are waiting, e.g. Save (3)). A cell the server refused stays marked with the reason, and the toast says “Saved 2 of 3 — 1 refused, see the marked cell”.
  • ↺ beside a cell puts it back to the default. Reset all to defaults does the whole table.
  • Closing with unsaved changes asks first: Save them, Discard or Keep editing.
  • The admin row is locked (🔒) — an admin always has everything.
  • Notes on these columns (folded, under the table) explains columns whose name does not say it all — for example, Timetable is what the sidebar calls Schedule, and Calendar is the events calendar inside it. A ⚠ on a cell means the server will not do everything the level suggests for that role; its note says what does work.

What the levels mean

A level means the same thing in every cell, whether it is the default or an admin picked it:

  • Full access — read, add, edit and delete across the whole institution.
  • Edit own only — the same, but only within what they own: a teacher’s own classes, a person’s own record.
  • View all — read-only, across the whole institution.
  • View own only — read-only, only their own classes or own record. For a parent, their own children; for a student, themselves.
  • — (no access) — hidden.

So a teacher on Edit own only for Academics enters marks for their own classes; raising it to Full access opens every class’s marks. Deleting follows editing: whoever may edit a record may delete it, within the same reach.

Parent and Student rows offer only View own only or —, so one family can never see another’s child. Some cells are locked for them altogether (Staff pay, WhatsApp, Family Qs, Letters, and AI for students).

Three columns have levels of their own:

  • Letters — — None / Write letters (open the Letterhead window, print letters and see Letters sent, without signature) / Write & sign (also adds the principal’s signature and seal). Changing the letterhead, signature and seal themselves stays with admins.
  • WhatsApp (the inbox of unregistered numbers) and Family Qs (what registered families asked the WhatsApp assistant) — — None / View (read) / Reply (also answer, and for the inbox send files, mark handled, block a number, pause or resume the assistant). Admin only by default. Clearing a list is for an admin or an accountant with Reply.

Staff pay is view only — only admins change salaries. Accountants see payroll by default, but a person who is both a teacher and an accountant does not, unless you tick Also for staff who teach under the table. That way colleagues don’t learn each other’s salaries unless you choose it.

Under the table, three switches save the moment you change them: 📍 Student self-attendance (GPS), 💳 Student self-pay and ✏️ Who can suggest profile changes.

The defaults

What each staff role starts with, before an admin changes anything:

ColumnTeacherAccountantNon-teaching staff
StudentsView allFull access—
Attendance & AssessmentFull accessView all—
TeachersView own onlyView allView own only
AcademicsEdit own only——
Fees, Inventory—Full access—
Timetable, CalendarFull accessView allView all
PostsFull accessFull accessFull access
EnquiriesFull accessFull accessFull access
Letters— NoneWrite letters— None
Staff pay—View all—
WhatsApp, Family Qs— None— None— None
Settings———

Dashboard and Profile start at View all for all three; AI at View all for teachers and accountants. Posts on Full access still means every post waits for an admin (see Noticeboard), and only an admin or an accountant can delete an admission enquiry (see Admission Enquiries).

Add buttons need edit permission

An add form opens only for someone who may save it. + Student, + Fee, + Marks, + Items and timetable entries ask for edit access to Students, Fees, Academics, Inventory and Timetable; New Event asks for Calendar edit access; New Post asks for Posts. A button the person cannot use is not shown, and any other way in says why — for example “You do not have permission to add students” — instead of a form that would fail when saved.

The class and section lists follow the same idea: see who can change the class and section lists.

Editing roles after invite

From Manage Team, click Edit next to any member to add or remove roles. You can’t remove the only remaining Admin — promote someone else first.

Admin Settings

The + button → Admin Settings (also in the Dashboard’s Live Monitor) is where an admin sets up the institution: 📚 Classes, 📋 Sections, 📝 Subjects, 👨‍🏫 Teacher/Staff, 📊 Exams, 💰 Fee Types, 🏫 Institution and ⚙ Leave & Attendance Policy.

  • Leave & Attendance Policy opens a short list of its own: 🗓 Leave Policy, ⚙ Manage Teacher and ₹ Pay Policy. An accountant allowed to see payroll gets Pay Policy here too.
  • Every screen opened from Admin Settings has ← Back at the bottom, which returns to Admin Settings (or to the Policy list) instead of closing everything.

Top-right user dropdown

The avatar in the top-right corner shows the signed-in user's name and role(s). Multi-role users see them dot-separated (e.g. Teacher · Accountant); the Admin role is highlighted in accent colour.

WhatsApp assistant

An optional assistant your institution can switch on, so staff and families can ask questions from WhatsApp without opening the app. It only ever replies — it never messages anyone first and sends no reminders of its own. A notice goes out only when an admin writes it and confirms it, and the daily briefing only after an admin asks for it (both below). It answers a number an admin has not registered only if your institution turns on admission replies — and then only from your Admissions facts and school profile, never from any student or school record.

Everything that reaches the school’s number and is not answered by the assistant lands in the WhatsApp inbox, where your staff can read it and reply by hand.

Setting it up, step by step

An admin does this once. Messages go to EdHelfy’s WhatsApp number — you don’t need a Meta account. Until a number is registered, the WhatsApp tile on the Dashboard reads Not set up yet and opens these steps.

  1. Open Settings → WhatsApp → Registered numbers.
  2. Staff numbers: add each staff member’s WhatsApp number, then Link to team member. The link tells the assistant who is asking and what they may see; without it, the number can only send register photos.
  3. Parent and student numbers: add them here or from the student roster. A family number gets answers about its own child only.
  4. Tell people the number to message. It is shown under Settings → WhatsApp → Helpline families see and edited in Institution Profile.
  5. Optional — answer outsiders (enquiries, admissions): Settings → AI assistant → Add / Edit knowledge & style → Admissions → Reply to unregistered WhatsApp numbers. Off, only registered parents and staff get answers; anyone else’s message waits in the WhatsApp inbox for your staff to reply.

Unregistering a number cuts off its access immediately.

Staff and families get different assistants

The assistant looks at who is writing. A number linked to a staff account gets the staff assistant, which answers within that person’s own permissions and can take instructions. A number registered to a parent or student gets the family assistant, which answers only about their own child. A number nobody has registered gets the admission assistant, if you have switched it on, or nothing at all.

What staff can ask

  • Students, fees, attendance, marks, timetable, calendar, and stock — the same questions the in-app AI answers.
  • Staff attendance and leave — an admin sees the whole staff; everyone else sees only their own.
  • Your own pay (teacher / accountant) — your salary, your loss-of-pay days for a month, and your own attendance breakdown. It is strictly your own: there is no way to ask it about a colleague’s pay, whoever you are. For the exact net figure it points you at the My Pay screen.

Answers are scoped to what you can already see in the app — a class teacher gets their own classes, not the school. Contact numbers, addresses and emails are never included in a reply.

What staff can change

Staff can also type an instruction (“mark class 3 present today”). The assistant never acts on it by itself:

  • It becomes a proposal in the in-app review queue. Fee and calendar proposals need an admin to confirm them.
  • Leave — a teacher whose number is linked can apply from WhatsApp (“I need sick leave Monday to Tuesday, fever”). A plain YES sends it to the leave queue, and the teacher is told on the same thread when it is decided.
  • Attendance is a record of a day that has happened, so a dated instruction is accepted only from sixty days back to tomorrow. A date outside that window is refused as you send it, naming the window — not after you have typed your PIN.
  • Attendance, and an admin’s notice, can be confirmed by replying YES with your confirmation PIN. Your role and class scope are re-checked at that moment, so confirming by WhatsApp never lets you do more than you already could in the app.
  • Your confirmation PIN is set in Settings and is separate from both App Lock and a family Login PIN. Remember that anything you type stays in your own WhatsApp history — don’t reuse a PIN from elsewhere.
  • The assistant never deletes anything.

The daily briefing on WhatsApp (admins)

An admin can send brief to the school’s number from their registered phone (“daily update”, “aaj ka update” and “briefing please” work too). The same Daily briefing you see in the app comes straight back, headed “📋 Daily briefing” with the date and time on your institution’s clock. For the next 24 hours it is sent again at your briefing times, if anything needs you — the reply says when (“I’ll send it again today at …”).

  • brief off — stops it: “Done — no more briefings on WhatsApp.” Send brief any time to get one again.
  • It covers the sections ticked in Daily briefing → ⚙ Settings, and it names children, so it is for admins only. From anyone else, “update” is treated as an ordinary message.
  • It needs your institution’s time zone. Without one, the reply says to set it in Settings → Institution Profile.
WhatsApp only lets the school write freely for 24 hours after you last messaged it, which is why the follow-ups stop after a day. A briefing that arrives without asking needs your institution to send from its own WhatsApp Business number with an approved message format; it is off unless that has been set up.

Posting a notice by WhatsApp (admins)

  • notices (or “noticeboard”) — lists the latest notices, newest first.
  • notice: and the text — for example notice: School closed on Monday — posts for everyone, families and staff. Start with staff notice: for staff only. The colon matters: a sentence that merely begins with the word “notice” is not posted, and the reply tells you how.
  • Nothing is posted yet. The assistant shows exactly what will go up, and who will see it. Reply YES and your PIN (for example YES 1234) to post it, or NO to cancel.
  • Once posted, the reply says so — and for a notice to everyone, whether it was sent as an alert to the devices that have notifications on.
  • A notice sent this way can be up to 2,000 characters; for anything longer, post it in the app.

Forwarding a document

A staff member can forward a photo of a register, admission list or fee sheet. It is read into structured records that land in the review queue — nothing is imported until an admin confirms it. Photos from parent or student numbers are not processed at all.

Policy documents the assistant may quote (admins)

Fee policy, uniform list, transport routes, leave rules — things the assistant cannot work out from your records. Open Settings → AI assistant → Add / Edit knowledge & style (or 🧠 Knowledge at the top of the AI Assistant window) and choose the Documents tab.

  • + Add document — give it a Title, then Read a file — PDF, Word or text. The file is read on your device into a text box; only that text is kept, never the file.
  • Check the text and delete anything the assistant must not repeat. The counter under the box shows how much of the limit it uses.
  • Who it may answer — Staff — admin, teachers, accounts, or Staff and families. Non-teaching staff are answered from family documents only.
  • Use until (optional) — the last day it is quoted, for something like this year’s fee circular.
  • Save document. The assistant uses it from the next question, in the app and on WhatsApp.

Each document shows chips for where it can be used — In the app, WhatsApp — staff, WhatsApp — families. WhatsApp answers carry less text than the app, so a long document can read “too long” there: split it into shorter documents, one topic each. Each answer carries the documents most relevant to the question.

Parents and students

Where the institution chooses to enable it, a linked parent can ask about their own child only, and a linked student about themselves:

  • Attendance, fees, exam marks, exam dates and the class timetable.
  • The child’s assessment — the ratings and comments the school has saved, and when an assessment was last sent. If the school has not filled it in yet, the reply says so rather than implying a poor result.
  • Answers from the policy documents the school has shared with families.

Families cannot see another family’s child and cannot send photos — a photo gets “Photos are not supported for this number. You can send your question as a text message.” Each number has a daily question limit. A parent of several children who does not say which one is asked which child they mean, and their answer resumes the sentence they already sent.

Staff can read what families asked, and may reply to a family themselves from the school’s number (see the inbox). A staff reply arrives in the family’s chat alongside the assistant’s answers.

What a family can file

Two things, and both are a request to the school rather than a change:

  • An absence notice. “Riya is absent tomorrow”, “kal nahi aayegi”, “next week Thursday”, “15 se 17 tarikh tak”. The assistant reads the dates back with the weekday spelled out, and files nothing until the parent replies YES.
  • A payment report. The amount and the method — “paid ₹5,000 by UPI” — and the reference if there is one. Anything missing is asked for, and the answers are taken one at a time. It lands in the Reported payments queue for staff to verify; the message does not mark the fee paid.

Both are confirmed by a plain reply, in the words people actually use: yes, haan, theek hai kar do, ok, a thumbs-up — and no, nahi, rehne do to drop it. A date read wrongly can be corrected by sending just the right date; it re-asks rather than filing its first reading.

When staff accept or decline either one, the family is told on the same thread, naming the child and the dates. If the thread has gone quiet past WhatsApp’s 24-hour window, the news is carried on the family’s next message instead, so a decision is never silently lost.

New numbers and the admission assistant

When admission replies are on, a number nobody has registered is answered from your Admissions facts and school profile. Every such reply starts “🤖 Automated reply”, so the sender knows it is not a person. A message that is only a greeting (“Hello”, “Namaste”) gets three buttons — Admission, Jobs / careers, Something else; a typed question is answered directly. A job enquiry is told it has been passed to the admin, given your Open positions word for word, and asked to email a CV. A photo, file or voice note is not opened: the sender is asked to email it, or bring it to the office.

What it says is set on the Admissions tab: the facts (one per line), Admission phone number, When to call or visit, Open positions (for job enquiries), and Tell enquirers we will contact them — turn that on only if someone really calls back every enquiry.

Handing over to staff. The assistant does not keep talking over a person. As soon as someone sends a reply from the inbox to that number, the assistant goes quiet there for 24 hours, so only staff answer; to keep it quiet longer, use Pause assistant. The sender’s messages still arrive in the inbox.

The WhatsApp inbox

Open it from the WhatsApp inbox tile on the Dashboard’s Live Monitor (“WhatsApp” on a phone). It opens as a full chat window. At the top:

  • The school’s number, in green under the title, with Copy beside it — one tap to paste it into a notice or a message. If you have chosen not to publish it, the line says Not shown to families.
  • i — what the inbox is and how long it keeps messages (90 days, then deleted automatically).
  • 🔔 Alerts off — tap to get a notification on this device when a WhatsApp message arrives. It reads Alerts on once it is.
  • 🕑 History (admins) — the last 90 days of who replied, sent files, marked handled, blocked, or paused or resumed the assistant, and when.

Two tabs:

  • Needs review — messages from numbers that are not registered (new enquiries, job seekers, anyone), plus a parent’s photo the assistant refused. One card per number, shown as a chat: their messages, the assistant’s answers and your staff’s replies, in the order they happened. A card says New number, or names the student when the number matches a parent on your roster. Show handled brings back chats already dealt with; Clear handled removes them (admins, or an accountant with Reply).
  • Family questions — what registered families asked the assistant in the last 7 days and what it answered: first a count by topic (“WHAT FAMILIES ASKED THIS WEEK”), then the chats under “RECENT — answered automatically, no action needed”. Staff questions are never shown. Clear this list hides them without deleting; Show cleared questions brings them back; Erase this family’s questions… deletes one family’s questions for good, for a parent who asks. These three are for admins, or an accountant with Reply.

On each Needs review card:

  • Admission enquiry — see below.
  • Register this number (admins) — when the number belongs to a parent on your roster, registers it so they get the family assistant from now on.
  • Mark handled — for anything else. The chat moves out of the queue; Move back to Needs review reopens it, and a new message from them reopens it by itself (“Back in Needs review — they wrote again”).
  • ⋯ — the less-used actions: Pause assistant / Resume assistant and Block.

The chat shows who did what: “You replied” or “<name> replied”, “Marked handled by <name>”, “Assistant paused by <name>”. A message tagged Job enquiry came from someone asking about work.

Replying by hand

Open a chat and type in the box at the bottom (it grows as you type; 😊 adds an emoji), then press Send.

  • Within 24 hours of their last message the reply goes straight out; the box says how long is left (“You can reply for another …”).
  • After that, WhatsApp does not let the school write first, so your reply is saved and delivered the next time they message the school (“Waiting — they will get this when they next message the school”). If your institution uses free WhatsApp links, Message now yourself (under ⋮) opens WhatsApp on your own phone with the message ready.
  • 📎 Send a photo or file — JPG or PNG photos up to 5 MB, PDF or Word files up to 20 MB. Text in the box goes with it as its caption. Only within the 24 hours; EdHelfy keeps only the file’s name.
  • Quick replies — under ⋮, saved answers you use often (visiting hours, the fee structure) appear as buttons; one tap puts the text in the box. An admin types a reply and presses + Save as quick reply to add one, up to 12; remove them on the Admissions tab of the AI knowledge editor.
  • Replying to a new number pauses the admission assistant there for 24 hours — the box says so before you send. Replying to a family does not stop the family assistant answering their questions.

Pause assistant / Resume assistant

For a number that is not registered, open the chat’s ⋯ and choose Pause assistant: the assistant stops answering that number until someone resumes it (“Assistant paused by <name> on <date> — until resumed”). Their messages still arrive in the inbox. Resume assistant lets it answer again, and also ends the 24-hour pause a staff reply starts. Anyone with Reply on the inbox can pause or resume.

Blocking a number, and company messages

Block (in a chat’s ⋯, even on a handled chat) stops a number reaching the school at all: no inbox card, no reply from the assistant, and the sender is told nothing. Any reply of yours still waiting for them stays undelivered. An admin can also block a number before it ever writes — Settings → WhatsApp → Registered numbers → 🚫 Block a number… — and Unblock it there under Blocked numbers.

Messages from companies rather than people — adverts, account messages, another business’s auto-reply — are kept but never answered and send no alert. They sit in a folded Automated messages group under the chats, each tagged Automated with the reason. If one is really from a person, reply yourself; if a company keeps writing, Block it. Nothing is blocked automatically.

From a chat to Admission Enquiries

Press Admission enquiry on a chat from a new number. The enquiry form opens with their WhatsApp number, “How did you hear about us?” set to WhatsApp, the whole chat copied into Notes, and a call-back date of tomorrow. Save adds it to Admission Enquiries and marks the chat handled (“Saved to Admission Enquiries — the chat is marked handled.”); Cancel leaves it in Needs review. The button needs the right to add enquiries as well as Reply on the inbox; a job enquiry does not offer it.

Who can use the inbox

Admins can always use both tabs. Anyone else needs it granted in Settings → Role Permissions, on two rows of their own:

  • WhatsApp — the Needs review tab.
  • Family Qs — the Family questions tab.

Each takes — None, View (read the chats) or Reply (also reply, send files, mark handled, block a number and pause or resume the assistant). Clearing and erasing are for admins, or an accountant with Reply. These rows can only be given to staff roles — never to a parent or student.

Asking how the app works

Both assistants answer “how do I …?” questions about using EdHelfy itself — where to find marks, how to report a payment, how to sign in — from a written index, with a link into this manual. They answer from that index or say they do not know: neither invents a screen. Parents are answered about the family app, staff about the staff app. A plain question such as “how do I mark attendance?” is answered straight from the index, instantly and without using the AI, so it works even when your AI limit for the month is reached.

Which questions a family can ask follows the permissions you have already granted them in Settings → Role Permissions. Revoke a resource there and it disappears from WhatsApp too.

Sync & cloud

EdHelfy keeps a copy of your data on every device that signs in, with the cloud as the source of truth. Most syncing is automatic — this section explains what runs in the background, how to tell what’s happening, and which control to reach for when something looks stale.

What runs automatically

  • Save — every change is uploaded to the cloud right away (no manual save button anywhere). A brief “Saving…” appears in the status bar; submit buttons disable for the second or two it takes so you can’t accidentally double-submit.
  • Realtime push — changes from another device typically arrive within 1–2 seconds; nothing to do on the receiving device.
  • Multi-tab — changes made in one tab show up in other tabs of the same browser instantly.
  • Form-draft autosave — if you start filling a form (Add Student, Add Fee, Add Item, Add Mark, Add Teacher, Institution Profile) and accidentally close the modal without saving, EdHelfy keeps your unfinished input in the tab’s memory. Reopen the same form and it offers to Restore what you typed. Drafts clear once you successfully save, when you click Restore, or when you dismiss the prompt with the × — so you never see the same stale prompt twice. Drafts older than 4 hours are silently dropped; sessionStorage means they don’t survive a browser restart (privacy: drafts on a school computer can’t leak to the next user).
  • Edit-safe auto-refresh — if you’re mid-edit (e.g. typing marks inline on the Academics page) when a sync arrives, EdHelfy holds the screen refresh until you blur the input. Your typed value never gets wiped by an incoming change.
  • Sticky filter rows on mobile — Filter and Action panels you’ve expanded stay open across auto-refresh. No more re-tapping the same filter button every time data syncs.
  • Stale-data hint — if you leave a tab open in the background for more than five minutes and come back to it, EdHelfy may show a quick “Data may be stale — Refresh?” toast so you can pull fresh data before editing.
  • Silent-death watchdog — if the realtime channel goes idle on a phone’s sleep or a flaky network, a background check (every minute) automatically reconnects and shows a quick “Reconnecting sync…” in the status bar.

For most users, the answer to “do I need to sync?” is no — just keep an eye on the dot and the status bar.

How to tell what’s happening

Two passive indicators surface the current state. You don’t click them to make sync happen — they just tell you whether anything needs your attention.

The sync dot (on your profile avatar — both devices)

A small coloured dot at the corner of your profile picture:

  • • Green — synced and live. Nothing to do.
  • • Orange — saving right now, or realtime is reconnecting.
  • • Red — offline, or a sync error. The Offline banner at the top of the app explains what to do.
  • • Grey — not yet synced this session (briefly seen right after login).

The status bar (slim strip below the top bar)

Appears only when there’s something useful to say:

  • “Saving…” (orange) while a write is uploading.
  • “Saved” (green) briefly after a successful save, then auto-hides.
  • “Reconnecting sync…” (orange) when the realtime channel briefly drops and is being re-established.
  • “Sync error — tap for details” (red, persistent) when something goes wrong. Tap it to open the Sync Log for details.

When you’re fully offline, the status bar steps aside and a separate red Offline banner takes over — see “Working offline” below.

Manual sync controls

Four ways to trigger a sync — they all do exactly the same thing (push pending writes, then pull the latest from cloud). Pick whichever is most ergonomic in the moment.

1. Tap the sync dot

The small coloured dot on your profile avatar is itself a button on every device. Tap it to force a sync.

2. The “Sync” pill (desktop only)

On screens 1024px and wider, a labelled pill button (“Synced” / “Syncing…” / “Retry”) sits in the top-right of the top bar. Click to force a sync.

3. The sync icon (mobile only)

On phones, a round refresh icon sits between the search and the notification bell in the top bar. Tap to force a sync.

4. Pull-to-refresh (mobile gesture)

  • Scroll to the top of any list and pull down. A small puck appears and follows your thumb.
  • When the puck arrow flips upward (and your phone vibrates briefly), release to refresh.
  • The puck spins while syncing, then snaps away.
Mobile gesture note (2026-05-02): horizontal swipes between tabs are disabled. Earlier builds switched tabs when you swiped left/right anywhere on the page; users were hitting it accidentally during back-gesture and table-scroll motions. Tab navigation now goes through the sidebar (☰ icon) or the bottom nav only. Pull-to-refresh and the sidebar edge-swipe still work.
Power-user tip: hold Shift while clicking the sync dot or the Sync pill (desktop), or tap the small orange count on the dot, to open the Sync Log directly instead of triggering a sync. There is no long-press for this on a phone — use Settings → Sync.

The Sync Log (diagnostics)

Open via Settings → Sync → 📋 Sync Log, or by tapping a red status bar. It shows the last 50 sync events with timestamps and a health strip at the top (last sync time, realtime channel state). Buttons:

  • Retry sync now — same as tapping the sync dot, but in context. Use this when something didn’t arrive cross-device and you want to force a fresh download.
  • Full resync — re-downloads every record from cloud. Safe (no data loss). Use when changes from another device aren’t appearing even after a couple of regular syncs.
  • Clear log — empties the displayed event history. Cosmetic only; no effect on actual sync state.
Quick rule of thumb: Green dot, no bar → do nothing. Want fresher data right now → tap any sync surface (dot, pill, mobile icon, or pull-to-refresh). Red banner at top → you’re offline; reconnect or hit Retry. Persistent red status bar → tap it to open the Sync Log.

Working offline

EdHelfy needs the internet to save your changes. When your device goes offline (flight mode, dropped Wi-Fi, dead spot in the building), a red banner pulls down from the top of the screen:

“📡 Offline — changes won’t save” [ Retry ]

While the banner is showing:

  • You can still read everything you’ve already loaded — navigate tabs, look up student records, view fees, check attendance — the app works as a read-only view.
  • If you try to save something (add a student, mark attendance, edit a fee), the change won’t stick — you’ll get a small toast: “Offline — your change was not saved. Try again when reconnected.” The form keeps your input so you can save once you’re back online.
  • Any forms you started but didn’t finish stay safe via the form-draft autosave (see above) — reopen the form to restore.
  • The Retry button on the banner re-checks the network and triggers a sync the moment you’re back online (browsers can be slow to notice a Wi-Fi return).

When connectivity is restored, the banner auto-hides, the realtime channel reconnects, and any tabs your colleagues edited meanwhile arrive within a couple of seconds.

Why no offline queue? EdHelfy used to silently queue offline edits and replay them later. We removed that in May 2026 because silently-queued data sometimes vanished or duplicated when the queue collided with cross-device edits. The new behaviour is louder but more honest: if a save isn’t going to land, you find out immediately and can decide what to do.

Opening the app with no signal. If you have signed in on this device before, EdHelfy opens even with no connection and shows what was last loaded, read-only. A first sign-in always needs the internet.

Phone notifications and the bell

The bell at the top lists what needs you. Its first row is this device’s notifications, whatever else is in the list:

  • Get notifications on this device → Turn on, then allow it when the phone asks. EdHelfy only asks when you press this — never on its own.
  • Notifications on for this device → Turn off to stop them here only.
  • Notifications are blocked on this device · How to allow — you said no once, and only your browser can undo that. Tap it for the steps for your phone or computer.

Once on, the device stays registered: if the phone quietly drops its registration, the app registers it again the next time it is open. Notifications are sent as urgent, so a sleeping Android phone shows them straight away rather than in a batch later. Only active members of your school are notified.

Scheduled alerts for admins. An admin can also get up to three phone alerts a day, timed from the school’s own timetable: the morning briefing before the first class, who has not clocked in or been marked after it, and an end-of-day round-up. They carry counts only, never names, because they show on a lock screen. Nothing is sent on a holiday, a classes-off day or a weekly off. They are set up with the daily briefing — see Dashboard.

Your data on this device

  • The copy of student, family and staff records kept on your phone or computer — and their photos — is encrypted, with a key made on that device for your account. It is not your password, and it never leaves the device.
  • What the app needs just to open (your school’s name and logo, class names, fee types, period times, your own name and role) is kept unencrypted.
  • Signing out (profile menu → 🔒 Logout) removes the copy and its key from this device and ends this device’s sign-in on the server. Your other devices stay signed in.
  • If your school removes or suspends your account, the copy on your device can no longer be read the next time the app opens with a connection.
On a shared office computer, always sign out at the end of the day. The next person then starts with nothing of yours on the screen — not even the photos.

Send Feedback

Bug, idea, or just a note — all welcome. Feedback shapes the roadmap, and bug reports usually get a fix within days.

Email us at support@edhelfy.com. Or from the app: Profile menu → Help & FAQ → Send Feedback.

Include when reporting a bug: what you were doing, what happened, what you expected. Screenshots help. Device + browser is useful for rare issues. We don’t need any data from your account — a paragraph is enough.