Skip to main content
Schoolyi
School librarian arranging books and planning cards in a bright library

Browse docs

Operations

HR careers workflow

Job postings, public applications, review, and hire → staff onboard.

Operations guide for day and boarding schools.

Last updated August 29, 2026

Careers is the hiring pipeline for people who do not yet have an account, which makes it the only workflow where an outsider writes into the database. Everything before the final step is safe to undo - a posting can be closed, an application rejected, a note rewritten. Onboarding is the point of no return: it creates or reactivates a login with a real role, and from then on the person is part of the roster and has to be managed there.

Who runs it

Every /hr route and careers API sits behind the same gate as salary management, which admits Platform Admin, Admin, Principal, and Vice Principal. There is no observer tier, so a head of department cannot be given read access to their own vacancy without also being given the ability to onboard. Where that matters, share a shortlist outside the app rather than widening the role.

Setup workflow

  1. HR opens /hr/careers/new - title, description, requirements.
  2. Publish - appears at /careers and /careers/[slug] publicly.

Usage workflow

  1. Review applications at /hr/careers/[id]/applications.
  2. Open application detail; shortlist and interview offline or via notes.
  3. On hire: /hr/careers/applications/[applicationId]/onboard - creates staff user/record.
  4. Complete role, account, and payroll assignment for the new hire.

Application stages

  • RECEIVED is where every public submission lands.
  • UNDER_REVIEW, SHORTLISTED, and INTERVIEW are the working stages; interviews themselves happen offline and are captured as internal notes.
  • OFFER marks a decision, and HIRED is set automatically by onboarding rather than by hand.
  • REJECTED and WITHDRAWN close an application without deleting the record or the CV.

What onboarding writes, step by step

StepWhat it doesIf it fails
UserCreates the login with the chosen role, or updates an existing account with the same emailNothing else runs; fix the input and post the form again
Employment profileRecords the reporting line and the official monthly CTC on the staff employment profileThe response is a 409 asking for recovery, and the failure reason is stored on the application
SalaryMarked done when a CTC was supplied, skipped when it was notNo separate failure - it reflects the profile step
InviteMarked done when a temporary password was generated, skipped for an existing accountNo separate failure

Progress is stored on the application, so a partial hire is resumable rather than lost. Posting the onboard form again skips the user step because the hired user is already recorded, and retries only what has not completed. That also means the safe response to an error mid-hire is to fix the cause and repeat the same action, never to create the user manually at /users and end up with two records.

What is still left to do

  • Teaching assignments at /teachers/assignments, without which a teacher cannot mark attendance, enter grades, or see a timetable.
  • Pay structure and payroll in salary management - onboarding only stores the headline CTC figure.
  • Any fine-grained permissions at /roles if the standard role template is not right for the post.

Common questions

Quick answers in plain language.

Onboarding says the application must be at offer or interview stage. Why?+

Creating a login is deliberately gated on the pipeline. The onboard endpoint accepts only applications already at INTERVIEW, OFFER, or HIRED, so move the candidate through /hr/careers/applications/[applicationId] first and then onboard.

What if the new hire already has an account, for example a former teacher returning?+

Onboarding matches on email. An existing user is updated in place with the new role, staff type, employee ID, and name rather than duplicated, and no temporary password is issued because the old credentials still work.

Where does the temporary password go?+

It is returned once in the onboarding response and shown on screen. It is not emailed and cannot be retrieved later, so copy it before leaving the page or reset the password from /users.

Can I reuse an employee ID from someone who has left?+

Only if no other user still holds it. Onboarding rejects an employee ID that is already assigned to a different account, so deactivated leavers keep their ID unless it is cleared first.

Related searches

School leaders and IT teams often search for: how to hr workflows in school management software, best school transport software for K-12 schools, Schoolyi hr workflows guide, hr workflows step by step, school bus tracking app, library management software, and school inventory management.