
K-12 School
Primary and secondary on a national curriculum. Annual terms, cohort classes, percentage marks and an annual fee structure — with end-of-year promotion and class ranking where you want it.

School management system for Cambodia — K-12, university, TVET and language centres
Running on the pre-production environment — not yet in production.
A school management system for Cambodia and ASEAN — admissions through to fee collection, with a portal and an app for families. Built on the understanding that a university, a TVET institute and a language centre are not a K-12 school wearing different labels, so the software matches your institution instead of asking your institution to pretend.
Most schools do not lose time to the teaching. They lose it to the week around it: the register that gets typed up on Friday, the marks copied by hand into report cards, the fees chased through a parents’ chat group, and the one spreadsheet everybody depends on and nobody wants to be blamed for breaking. This is built to take that week back — and to stop the office fielding the same three questions, by giving parents and students the answers themselves.
The part worth explaining is why it is not only for schools. Education software usually starts K-12, and when a university asks for it, semesters and credit-hour tuition do not fit — so it forks, or it grows a settings screen nobody can follow. Here the things institutions genuinely disagree about — how a term is shaped, how a student enrols, how work is graded, how tuition is billed — are chosen to match the institution rather than assumed. A university gets semesters and a credit-weighted GPA; a TVET institute grades Competent or Not Yet Competent; a language centre has no academic year at all. Even the vocabulary follows: Grade, Year or Level, because the record underneath is the same record.
The other thing worth saying plainly is about your data. One school must never see another’s records. The usual approach is to check that in the application and trust the code. Here the check runs on every request, and the tables carry row-level security policies of their own so the rule can be enforced underneath as well. The list of them is derived from the database’s own catalogue rather than written out by hand, because the realistic way this fails is not a bad policy but a forgotten table. Either lock should hold on its own. “Should” is not a standard you can offer a parent, which is why there are two.
Built and running on our pre-production environment, with a test suite whose only job is to try to break that separation — and which blocks the release if it ever manages it.

Chasing unpaid fees is the job nobody wants and everybody ends up doing. Invoices go out per student, reminders go out on their own before and after a due date, and a parent either scans a KHQR from their phone or pays the office in cash — either way it lands on the same invoice. The money goes to the school's own bank account, not through us. So the office spends its week on the exceptions rather than on the list.

A student is admitted once. After that the same record carries their class, their attendance, their marks, their fees and their documents — so a report card is generated from marks that were entered once, and at a university or institute a transcript is assembled rather than retyped.

Parents ask the office the same three questions because that is the only place the answers live. So there is an app for them and for their children — the timetable, today's attendance, results and report cards, homework to hand in, the library, messages from the school, and the fee invoice with a KHQR to settle it. A parent with more than one child switches between them without signing out and back in.
What it replaces
Why it's built this way
A university runs on semesters and bills by credit hour. A language centre has no academic year at all — a student starts in week three and pays for a package. Most school software makes you pretend to be a K-12 school anyway. Here the term structure, enrolment, grading, billing, attendance and library rules are chosen to match your institution, and can be changed later if you picked wrong.
The same record is a Grade at a school, a Year at a university and a Level at an institute; a Subject is a Course or a Unit. The system takes on your vocabulary rather than making your staff learn ours — which is most of the difference between software people adopt and software they work around.
No school can ever see another's data. Every request is scoped to your school before it reaches the database, across eighty-one kinds of record, and all ninety tables carrying a school's identity hold a row-level security policy of their own — so the rule can be enforced underneath rather than resting on the application alone. We keep a test suite whose only job is to try to break that separation, and it runs before every release.
Enrolment respects class capacity instead of letting you overfill a section by accident. Exams get scheduling, marks that lock the moment results are published, appeals that change a grade without losing the original, term averages and printable report cards — so the marks are entered once and everything downstream follows. Universities and institutes get transcripts on top.
Money your parents pay the school is the school's money. When a parent settles by KHQR it lands in your school's own Bakong merchant account — we never hold it. What you pay SuiteWright is a separate account, on separate credentials, in a separate ledger. That is a design decision, not an accounting habit.
Two-factor login and Google sign-in, and whenever support staff need to open an account to help you, it is recorded — you can see who looked at what. If a family asks for their data to be removed, their personal details are erased and their files destroyed; what is left behind is an anonymous shell, so last year's invoices and results do not quietly change underneath you.
Who it is for

Primary and secondary on a national curriculum. Annual terms, cohort classes, percentage marks and an annual fee structure — with end-of-year promotion and class ranking where you want it.

Higher education on semesters. Students register themselves for credit-bearing courses, results are a credit-weighted GPA, tuition is billed per credit hour, and transcripts come as standard.

Technical and vocational training on cohort intakes. Assessment is competency based — Competent or Not Yet Competent, with no percentage to argue about — with per-programme billing and daily attendance.

Rolling intake and no fixed academic year. A student joins a course any week, is graded by level, and pays per course or package rather than per term.
What's inside
Start as a school, university, TVET institute or language centre, and the right term, enrolment, grading, billing, attendance and library rules are set up together — changeable later if you picked wrong.
Track an enquiry through to an enrolled student, with seat capacity and a waitlist so nobody quietly overfills a class.
At a university, students pick their own credit-bearing courses, join a waitlist when one is full, and are promoted into the place automatically when somebody drops.
Promote a whole cohort in one action — recorded, and reversible for 72 hours if it was the wrong button, putting everything back exactly as it was.
Courses, classes, terms and the timetable in one place, with clashes caught before you save and a substitute assigned when a teacher is out.
Taken per class or per day, and still quick to search when you need three years of a student's history for a meeting.
Schedule exams, enter marks once, handle appeals without losing the original mark, and generate term averages and report cards — plus transcripts at a university or institute.
Invoices, scholarships and discounts, late fees, and automatic reminders for what is overdue or falling due — settled by a Bakong KHQR the parent scans, or recorded when it arrives as cash or a transfer. Refunds become credit notes, and credit sits on the student's account until it is used.
Export the journal lines behind every invoice, payment and credit note as a spreadsheet, so whoever keeps your books is not retyping a month of receipts.
Staff records and departments, leave requests and approvals, leave balances, the holiday calendar and staff attendance — beside the students rather than in a second system.
Book lending with holds, renewals and fines, bus routes and stops, hostel room assignment — the everyday jobs most school software leaves you to do on paper.
Announcements and direct conversations that reach parents in their app and by email — queued and retried rather than sent once and hoped for.
Timetable, attendance, results, report cards, homework, library, messages and fees on a phone, with a switcher for parents who have more than one child at the school.
Student files kept private to your school, and reports you can pull and export without waiting on anyone.
Student ID cards and report cards laid out to your own template and your own colours, kept as versions so last year's design still prints the way it did — and generated for a whole class in one go.
Invite staff by email, give each role only the screens it needs, and give parents and students their own login.
Import students and guardians from the Excel sheets you already keep — with a preview that shows exactly which rows would be added, changed or rejected, and a day afterwards to undo the whole import if it was wrong.
Ask for a complete copy of your school's data whenever you want it, over a private link that expires in minutes. And a record of who changed what and what it looked like before — append-only, because the database rejects any attempt to edit or delete it.
Send events as they happen — a payment received, an invoice overdue — straight to another system of yours, retried until they land.
Questions
No. It runs as a K-12 school, a university or college, a vocational institute (TVET), or a language centre, and each is genuinely different underneath. A university gets semesters, self-service course registration, a credit-weighted GPA and per-credit-hour tuition; a language centre gets rolling intake with no fixed academic year. You choose when you sign up and can change it later.
Yes — by Bakong KHQR, from the portal or the app, and the payment lands against the right invoice on its own. The money settles into your school's own Bakong merchant account, on credentials you enter yourself in a settings screen with a test button; it does not pass through us. A KHQR is scannable from every Cambodian banking app, ABA's included. Cash and bank transfers are recorded against that same invoice by the office, so one place always shows what a family owes, and invoices, scholarships, discounts and late fees are handled for you with reminders going out before and after a due date. Card payment is available where Bakong is not.
Yes, and it is built rather than planned — timetable, attendance, results and report cards, homework a pupil hands in from their camera or files, the library, messages from the school, and the fee invoice with a KHQR to settle it. A parent with two children at the school switches between them without signing out. Being straight with you about where it is: it runs against our pre-production system today and is not yet published to the App Store or Google Play, and it is English only for the moment. Parents who would rather not wait can use the portal in a phone browser, which covers the same ground and is fully translated.
Yes. Every invoice, payment, credit note and scholarship writes to a financial ledger, and the journal lines behind them export as a spreadsheet — so the person keeping your books works from what the system recorded rather than retyping receipts. Fees your parents pay and what you pay SuiteWright are kept in separate ledgers, so the export is only ever the school's own money.
Yes. Students and guardians import straight from the Excel sheets most schools already keep. The import shows you a preview first — every row marked as one that would be added, changed or rejected — so nothing is saved until you have seen exactly what will happen, and a committed import can still be undone for a day afterwards. You can also download a complete copy of your data at any time.
On the web, yes — and we would rather be precise than let you find out later. Every screen a staff member, a parent or a student opens in a browser is translated, including the whole parent and student portal, which was the part that mattered most and the part we had not finished last time we wrote this page. What is left is four staff-only forms for creating and editing a student or a staff record. The phone app is a different answer: it is English only for now, so a Khmer-speaking parent should use the portal in a browser, which also adds to a phone's home screen and opens like an app.
No school can ever see another's records. Every request is scoped to your school before it reaches the database, across eighty-one kinds of record, and all ninety tables that carry a school's identity hold a row-level security policy of their own, so the same rule can be enforced by the database underneath rather than resting on the application alone. That list is derived from the database's own catalogue rather than maintained by hand, so a newly added table cannot quietly miss out. A dedicated test suite exists purely to try to break that separation: it connects as a restricted database user, attempts the reads a leak would need, and blocks the release if any of them succeed.
No, and that is deliberate. Fees your parents pay are the school's money and sit in the school's own accounts. What you pay SuiteWright for the software is billed separately. The two never share a ledger.
Plans are priced by size — how many students and staff you have — rather than by what kind of institution you are. There is no price list on this site, because what a 300-student language centre needs and what a 4,000-student university needs are not the same conversation. Tell us roughly how many students you have and what you need, and you will get a straight number rather than a quote process. Paying six, twelve or twenty-four months up front costs less.
It is pre-live: built, deployed and running on our pre-production environment, but not yet in production and not yet serving a real school. That is a deliberate distinction rather than a soft launch. The web system and the parent app are both at that same stage, and the app additionally has not been published to either app store yet. Get in touch to see it running or to talk about being an early pilot — pilots still shape what ships.
How it is licensed
SuiteWright School is multi-tenant software you subscribe to, not a one-off build. Every new workspace starts on a free 30-day trial of the Pro plan. There is no permanently free tier — when the trial ends you move to a paid plan or the workspace is suspended, with your data kept intact for a grace period so subscribing brings it back.
Not open for signup yet. SuiteWright School is Pre-live — running on the pre-production environment, not in production for any customer, so there is no trial to start today. Ask for a demo and we will tell you when signup opens.
A demo runs through your actual workflow rather than a scripted tour — bring the awkward parts.