
by TronicGen
Everything you need to know about using GenixEdu
Navigate to the GenixEdu login page. Enter your username and password provided by your system administrator, then click Sign In. The system uses JWT-based authentication — your session is active for the duration of your browser session.
Click Forgot Password on the login page and enter your username. A 6-digit OTP is sent to your registered contact — via SMS for Sri Lanka institutions or email for institutions in other countries. If you have both a mobile and email registered, both channels are verified (2-factor reset). Enter the OTP(s) to confirm your identity, then set a new password.
For security, new accounts are created with a temporary password. GenixEdu enforces a password change on first login to ensure only you know your credentials. You cannot access any features until the password is updated.
Yes. Go to your Profile (click your avatar in the top-right corner) and select Edit Username. Username changes require OTP verification via your registered mobile number. Your JWT token is refreshed automatically after the change.
Yes. In the Profile panel, tap or click the avatar area and upload a new photo. Profile pictures are stored securely and displayed in the sidebar and header across the system.
GenixEdu will show a session expiry warning when your session is about to expire. Clicking Extend Session keeps you logged in. If you miss the warning, you will be redirected to the login page and must sign in again.
Go to Students → New Student. Fill in the student's full name, index number, school, batch, enrolled subjects, gender, parent phone number, and any other optional fields. Click Save. The student is immediately active and visible in all relevant modules.
Go to Students → Import CSV. Download the CSV template, fill in one student per row following the column format shown, then upload the file. The system will validate each row and show a summary of successful imports, skipped duplicates, and errors before committing any changes.
The index number is the unique identifier for each student within a batch. It is auto-generated based on the batch prefix and a sequential digit count configured per batch (e.g., 2026AL-001). It appears on rank lists, attendance records, and marks reports. You can also enter it manually during student creation.
In the Students list, find the student and click the Edit (pencil) icon. All fields except the index number can be modified. Changes take effect immediately across all modules.
Archiving marks a student as inactive — they no longer appear in new attendance sessions or exam mark entry, and are excluded from active student counts. However, all their historical records (attendance, marks, fees) are preserved. Archived students can be reactivated at any time from the Archived Students page.
Permanent deletion is restricted to SUPER_ADMIN and ADMIN roles. It removes the student and all their records from the system and cannot be undone. Archive first if you only want to deactivate them temporarily.
GenixEdu supports Physical Science, Biological Science, Commerce, and other streams as configured by your SUPER_ADMIN. Streams are used for Z-score pooling in the Aggregate Z-Score analytics and for filtering the marks report.
Go to Attendance and click Start New Session. Select the batch, subject, and session date. The session opens immediately and students can be marked present or absent. You can run multiple sessions for different subjects simultaneously.
Open an active session and you will see all enrolled students listed. Tap a student's card to toggle their status between Present and Absent. Changes are saved instantly. You can also use Mark by Index Number — type the index number and press Enter — for fast sequential entry without a mouse.
This feature allows a teacher to call out or scan index numbers in sequence. Students are automatically marked present as their number is entered. It is accessible at /attendance/mark-by-index and does not require login — ideal for a dedicated classroom tablet. A simpler variant (mark-by-index-simple) is also available for minimal-interface devices.
GenixEdu automatically expires sessions that have been open longer than the configured timeout (typically the end of the school day). The Session Expiration Service runs periodically in the background. You can also manually end or fully close a session from the Attendance page.
Yes. Go to Attendance → Reports. Filter by batch, subject, date range, and student to generate a detailed attendance report. Reports show present/absent status per session and overall attendance percentages. The dashboard also shows the last attendance percentage per subject at a glance.
Go to Marks → Marking. Fill in the exam date, batch, subject, exam type, serial number, and optional total marks. Click Load Students — the system creates the exam and loads all enrolled students. You can then enter marks one by one, pressing Enter to move to the next student.
The serial number distinguishes multiple exams of the same type and subject (e.g., Unit Exam 01, Unit Exam 02). GenixEdu auto-suggests the next available number based on existing exams. You can increment or decrement it with the +/− arrows, or type a custom number. If the number is already taken, the field turns red and loading is blocked.
A split exam has two separately marked parts whose scores are combined into a final mark using a weighted ratio. Enable the Split Exam checkbox in exam setup, then set the Part 1 ratio (e.g., 60 % means Part 1 contributes 60 % of the total mark).
Final mark = Part 1 mark × ratio + Part 2 mark × (1 − ratio). Each part is entered on the full scale (0 to Total Marks); the ratio scales their contribution to the final score.
Student by student — enter Part 1 then Part 2 for each student before moving to the next. Press Enter on Part 1 to switch to Part 2; press Enter on Part 2 to move to the next student.
All Part 1 first, then Part 2 — enter Part 1 for all students sequentially (Phase 1), then the system switches to Phase 2 where you enter Part 2 for all students. Useful when answer sheets are corrected in two separate rounds.
Yes. Click Save Draft at any point during marking. Drafts are saved to the database and can be resumed later by going to Marks → Report and clicking the resume icon on the draft exam. Draft exams are not included in rank lists or analytics until submitted.
Yes. Open the submitted exam from the Marks Report and click Edit Marks. Any save after the first submission creates a Recorrection status, which is preserved in the audit trail. Editing is blocked after marks results have been sent to parents via SMS.
The rank list is an auto-generated list of all students ordered by marks (highest to lowest). Tied students share the same rank. You can toggle columns (Stream, Marks, Z-Score, Rank), reorder them by dragging, and sort by either raw marks or Z-score. Export to PDF, CSV, or Excel.
A Z-score measures how far a student's mark is from the batch average, expressed in units of standard deviation. Z = (student mark − mean) / SD. It allows fair comparison across exams with different difficulty levels. Requires at least 5 non-absent students; if all marks are equal, all Z-scores are 0.
The Aggregate Z-Score tab (in Marks Report) accumulates each student's Z-scores across multiple selected exams and ranks them by total. Two pooling modes are available: All Students (single cohort) and By Stream (Physics, Bio, Commerce computed separately for fairer comparison). Students who missed some exams appear as partial.
After a submitted exam's results are dispatched to parents via SMS, the exam is locked with a Marks Sent flag. Editing marks after this point is disabled to protect the integrity of communicated results. The marks sent count is displayed in the report.
GenixEdu tracks monthly tuition fee payments per student. Each student has a fee record for each billing month. Administrators record payments, mark exemptions, and can view outstanding balances. The dashboard shows a summary of paid, unpaid, and exempt student counts for the current month.
Go to Fees, find the student, and click Record Payment. Select the payment month, enter the amount, and save. The student's status updates to Paid for that month. You can also update the payment date or remove a payment if entered incorrectly.
Fee exemptions mark a student as not required to pay for a specific month — for example, due to a scholarship, financial hardship, or medical absence. The exemption type (full or partial) and reason are recorded. Exempt students are excluded from the outstanding fee count.
Yes. From the Fees page, you can trigger SMS fee reminders to parents of students with outstanding balances. The message includes the student's name, outstanding months, and contact information for the academy. Sent reminders are logged in the Messaging log.
Fee report exports are available to ADMIN and SUPER_ADMIN roles. Reports can be filtered by batch, month, and payment status and exported as CSV for accounting purposes.
Bank / Online Payment is an Enterprise-only feature that lets your institution collect monthly fees digitally. Students receive a personalised payment link via SMS, upload their bank transfer receipt through a secure portal, and your admin approves or rejects each submission. Approved submissions automatically mark the student's fee as paid for that month.
Bank / Online Payment is enabled by TronicGen for your institution (SUPER_ADMIN only). Once enabled, go to Fees → Bank Payment in your dashboard to configure bank details and fee amounts. If the section is not visible, contact TronicGen to have it enabled.
Go to Fees → Bank Payment → Config. Enter your bank name, account holder name, account number, and branch. These details are displayed to students on the payment portal so they know exactly where to transfer the fee.
Go to Fees → Bank Payment → Batch Fees. Use Set Standard Fee for All to apply one fee amount across all batches instantly, or edit each batch row individually to set a custom amount. Batches without a custom amount fall back to the standard fee.
In Fees → Bank Payment, select the month and year, then click Send Payment Links. An SMS with a unique, token-secured link is sent to every active student who has not already paid for that month and does not have a full fee exemption. Students who are already paid or fully exempt are automatically skipped.
The student lands on a secure payment portal. They enter their Student ID to verify identity, complete a one-time OTP verification, then see the bank account details and an upload button to attach their transfer receipt (JPEG, PNG, WebP, or PDF — max 5 MB). After submission the page shows a confirmation.
The portal shows a full-screen Fee Already Paid screen and blocks any submission. This prevents duplicate payments and confusion when a student pays manually at the institute after receiving the link.
Students with a full Free Card exemption cannot use the payment portal — it shows a No Payment Required screen. They are also excluded from the payment link SMS batch so they never receive the message in the first place.
Go to Fees → Bank Payment → Submissions. Each pending submission shows the student name, batch, month, and a View Receipt link to inspect the uploaded document. Click Approve to mark the fee as paid for that month, or Reject with an optional reason. The fee record is updated immediately on approval.
No. It is an Enterprise plan feature only. Institutions on Starter, Growth, or Pro plans do not have access to the Bank Payment section. Contact TronicGen to discuss an upgrade to Enterprise.
After marks are submitted, go to the exam in Marks Report and click Send Marks SMS. Each parent receives a personalised SMS with their child's score, rank, total students, and the highest mark in the batch. Absent students receive an absence notification.
Yes. Go to Messaging → Broadcast. Compose your message, target the recipients (all parents, specific batch, or specific subject), and send. Each parent of an enrolled student in the target group receives the message. Broadcasts are irreversible once sent.
GenixEdu uses SMSLenz (smslenz.lk) for SMS delivery for institutions in Sri Lanka, and Gmail SMTP for email delivery for institutions in other countries. Absence notifications and marks results to parents are always sent by SMS regardless of country. OTP codes and admin credentials follow the country-aware channel (SMS for SL, email for others). Delivery is subject to the provider's availability; TronicGen is not responsible for outages.
No. SMS messages cannot be recalled once sent. Always preview the message content and verify recipient counts before confirming a bulk send. Use the Draft status for marks until you are sure results are finalised.
Go to Messaging → Log. All sent messages are listed with student name, phone number, message type, status (Sent/Failed), and timestamp. ADMIN and SUPER_ADMIN can export the full log as CSV. ROLE_USER can view the log but cannot export it.
GenixEdu shows real-time notifications in the bell icon at the top-right of the dashboard. Events such as logins, logouts, submitted marks, sent SMSs, PDF downloads, and fee reminders generate notifications. They are colour-coded by severity: Success (green), Warning (amber), Info (blue), and Error (red).
Notification visibility follows role hierarchy: SUPER_ADMIN sees all notifications; ADMIN sees events from ADMIN and USER roles; USER sees only their own events. This ensures each role sees relevant activity without access to privileged information.
Click the bell icon to open the notification panel. Use Mark All Read to clear the unread badge, or click the × on individual notifications to dismiss them. The Clear All button removes all notifications from your view.
Yes. GenixEdu uses Server-Sent Events (SSE) to push notifications instantly when you are online. If SSE is unavailable (e.g., due to a proxy), the system falls back to a 15-second polling interval to ensure you always receive updates.
GenixEdu has three roles: SUPER_ADMIN (TronicGen system owner), ADMIN (institution manager), and USER (class teacher or staff member). Each role has a distinct permission set.
SUPER_ADMIN has full access to everything, including institution settings, user management, permanent deletion of records, report cleanup, and all data exports. There is one SUPER_ADMIN account per deployment, managed by TronicGen.
ADMIN can manage students (add, edit, archive, delete), create and manage batches and subjects, enter and submit marks, manage fees, send SMS messages, view all reports, and export data. ADMIN cannot access system-level settings reserved for SUPER_ADMIN.
USER (class teacher) can view all data via GET requests, enter attendance, enter and submit marks, manage fees, and send notifications. USER cannot export raw data (CSV/Excel), permanently delete records, manage batches or subjects, or access institution settings.
No. Download CSV and Download Excel buttons are hidden for ROLE_USER. PDF rank list exports are available to all roles. Raw data exports (CSV, Excel) are restricted to ADMIN and SUPER_ADMIN to protect student data.
When a SUPER_ADMIN creates a new user account, a temporary password is automatically generated. How it is delivered depends on the institution's country:
Credentials are also displayed on screen for the admin to copy. The user must change their password on first login.
GenixEdu supports PDF, CSV, and Excel (XLSX) exports for rank lists, aggregate Z-score tables, attendance reports, fee reports, and messaging logs. PDF exports are available to all authenticated roles; CSV and Excel are restricted to ADMIN and SUPER_ADMIN.
In Marks Report, open an exam's rank list by clicking View Rank List. Configure the columns you want (toggle Stream, Marks, Z-Score, Rank on/off; drag to reorder), choose the sort order (by Marks or Z-Score), then click Download PDF. The PDF mirrors the on-screen table exactly.
Yes. Column visibility and order are fully configurable: click column chips to show/hide them, and drag them to reorder. The Sort By dropdown (Marks or Z-Score) re-ranks students and updates all export outputs accordingly.
Available to SUPER_ADMIN only, Report Cleanup permanently removes selected exam records, message logs, or attendance data from the database. It is designed for periodic database maintenance. A confirmation summary is always shown before any deletion is performed. This action is irreversible.
Passwords are hashed using bcrypt before storage. The plain-text password is never stored anywhere in the system. Even if the database were compromised, passwords could not be recovered directly.
GenixEdu tracks failed login attempts per IP address. After a threshold of failures, a brute-force alert is automatically sent via SMS to the SUPER_ADMIN's registered mobile number. You also receive an SMS alert when your account is signed in or signed out.
One-time passwords (OTPs) are used for password reset, profile update verification, and PIN changes. The delivery channel depends on your institution's country — Sri Lanka institutions receive OTPs via SMS; other countries receive them via email. OTPs expire in 10 minutes, are invalidated after 3 wrong attempts, and are never stored in the database.
When you log out, your JWT token is added to a server-side blacklist, making it immediately invalid even if someone still holds it. Sessions cannot be extended past the token expiry without re-authenticating.
You will receive an SMS alert whenever your account logs in from any device. Login events also appear in the in-app notification panel visible to ADMIN and SUPER_ADMIN. Contact your system administrator if you see any unrecognised activity.
Timetable Management lets you define the full school-day structure and assign subjects to every period slot for each batch. It is available exclusively on the Enterprise plan. Institutions on other plans see a lock screen with an upgrade prompt.
Go to Dashboard → Timetable and click Setup Config. Define:
The live preview shows how many periods fit before you save.
After saving the config, click any batch card in the Select a Batch to Edit section. A grid appears — periods as rows, active days as columns. Use the dropdown in each cell to pick a subject, and optionally type a teacher name. Empty cells mean no class for that slot. Click Save Timetable when done.
Yes. With a batch selected, click Copy from Batch in the page header. Select the source batch — its timetable is pre-loaded into the current batch's grid. Review and edit any cells before saving. This is ideal for batches sharing the same schedule.
Click Export PDF from the page header or from any batch card in the Saved Timetables section. The export modal asks for:
The generated PDF includes your institution logo, name, batch details, a colour-coded period grid (indigo headers, amber break rows), and the signature section.
If any batch already has entries saved, a warning modal appears listing all affected batches and their entry counts. You can either Cancel (keep existing entries unchanged) or Yes, Reset & Save (clear all batch entries and apply the new config). After a reset you will need to re-enter the timetable for each batch.
This usually means the session timed out or there was a temporary network issue. Reload the page and click the batch again. If the error persists, check that your institution is on the Enterprise plan and that the timetable config has been saved. Contact TronicGen support if the problem continues.
Yes. In the Saved Timetables section, each batch card has a red trash icon. Clicking it opens a confirmation dialog showing the batch name and period count. Confirming deletes only the timetable entries — the batch and its students are unaffected.
Use the Regular / Exam toggle at the top of the Timetable page to switch between two schedule types for the same batch:
Both types are saved independently per batch.
Saved timetables open in View mode by default to protect entries from accidental edits. In view mode, cells are non-editable and the Validate button is shown. Click Edit Timetable (top action bar) to switch to edit mode. After saving, the page automatically returns to view mode. A timetable with no saved entries always opens directly in edit mode.
Validate is only available in view mode (after saving). It reads the saved timetable from the database and checks it against your configured constraints. A green badge means all constraints are satisfied; an amber or red badge lists the specific violations (e.g., a subject scheduled fewer times than required). Always save the timetable before validating — unsaved edits are not checked.
Constraints let you define rules the timetable must satisfy. They are available in edit mode for Regular schedules. Click Constraints in the action bar. You can set:
Constraints are used by the Validate button and the Auto-Generate feature.
In edit mode for Regular schedules, click Auto-Generate. The system automatically fills the period grid for the selected batch based on configured constraints and the subjects enrolled by the batch. Review the generated grid, adjust any cells, then click Save Timetable. Auto-Generate only writes to the database when you save — you can discard the result by navigating away without saving.
No. Breaks defined in the Timetable Config are only shown as named rows in the Regular period grid. They have no effect on Exam timetable entries, which are date-based and independent of the period grid layout.
GenixEdu works in all modern browsers — Chrome, Edge, Firefox, and Safari (latest versions). Internet Explorer is not supported. For the best experience, use Google Chrome or Microsoft Edge.
Yes. GenixEdu is fully responsive and works on smartphones and tablets. The mark-by-index attendance feature is specifically designed for use on a classroom tablet without requiring login. The dashboard, reports, and student management pages adapt to all screen sizes.
Yes. GenixEdu is a Progressive Web App (PWA) and can be installed on any device without using an app store:
Once installed, GenixEdu opens in full-screen mode with no browser address bar. It updates automatically in the background — no manual updates required.
Yes. Click the sun / moon icon in the top bar of the dashboard to switch between light and dark themes. Your preference is saved automatically and applies immediately across all pages. Dark mode uses a deep navy palette with colour-accurate status badges for readability.
Marks are stored in the browser's local state while you are entering them. If you lose internet connection before saving, your unsaved entries will be lost. Use Save Draft frequently to preserve progress. Submitted data is safely stored server-side once the save completes successfully.
Contact TronicGen at tronicgen@gmail.com with a description of the issue, the steps to reproduce it, and a screenshot if possible. Feature requests are also welcome — include your use case and how it would help your institution.
For platform-level issues (server, deployment, database), contact TronicGen at tronicgen@gmail.com. For day-to-day user questions, contact your institution's designated SUPER_ADMIN or ADMIN.