Hire to retire
Modules EMP, IAM, ORG, ATT, LVE, PAY, LMS, ENG, EXT · Release R1 (separation and F&F in R2) · Specs Core HR, Identity & Access, Exit
Context
In the reference product the hire flow is: HR adds a new hire, the candidate fills a self-onboarding link, HR completes joining formalities and checklists, then the admin is emailed to create credentials manually with a default password [Observed] (see Spryple analysis §4.3 and §21.2). Spyrl keeps the self-onboarding and checklists, removes the manual credential step, and adds effective-dated job history, probation confirmation and a closed loop to exit.
Diagram
Steps
| # | Actor | Action | System response | Module | Notifications |
|---|---|---|---|---|---|
| 1 | hr_manager | Creates the new hire (name, hired-on, joining date, designation, location, mobile) | Employee in Hired; ID reserved from the location's sequence at Joined | EMP, ORG | — |
| 2 | System | Sends the pre-boarding link | Single-use token, 7-day expiry, OTP to mobile | EMP, NTF | SMS and email to candidate |
| 3 | Candidate | Completes sections, uploads documents, gives consent | Status PendingJoin; documents Submitted; consent recorded | EMP | In-app task to HR |
| 4 | hr_manager | Reviews documents and joining formalities; assigns job (department, designation, manager, grade, employment type) | First emp_job_assignment row from joining date; onboarding checklist tasks created with owners | EMP | Email on document approval or rejection |
| 5 | hr_manager | Marks Joined (on or after joining date) | Employee code assigned; status Joined or OnProbation; emp.employee.joined | EMP | Welcome post (ENG, R2) |
| 6 | System | Creates the user and invites | User Invited; invite link 72 h | IAM | Email or SMS invite |
| 7 | Employee | Activates, sets password or uses SSO, enrols MFA if required, registers device | User Active; device recorded or pending approval | IAM, MOB | Device approval task to manager when required |
| 8 | payroll_manager | Assigns compensation (CTC and structure) and statutory details (UAN, ESIC) | Effective-dated compensation; breakup preview | PAY | — |
| 9 | line_manager or hr_manager | Assigns shift and week-off (or the policy default applies) | Day computation starts from joining date | ATT | — |
| 10 | System | Pro-rata leave accrual; mandatory course enrolment (R4) | Ledger entries PRORATA_ACCRUAL; enrolments | LVE, LMS | Balance visible in app |
| 11 | Task owners | Complete onboarding checklist items | Checklist Completed when all items done; emp.onboarding.completed | EMP | Reminders for overdue items |
| 12 | System | Confirmation due reminder | Confirmation request to manager then HR | EMP, NTF | Push and email to manager |
| 13 | line_manager, hr_manager | Confirm or extend probation | Confirmed with letter, or new due date | EMP | Employee notified; letter in profile |
| 14 | hr_manager | Records transfer, promotion or manager change with effective date | New job assignment row; emp.job.changed; PAY suggests structure review | EMP, ATT, LVE, PAY | Employee and new manager notified |
| 15 | Employee or hr_manager | Separation begins | See separation and F&F | EXT | — |
| 16 | System | Last working day passes | User deactivated at 23:59 local time; status Separated | IAM, EMP | Read-only ESS access notice |
Exception paths
| Situation | Handling |
|---|---|
| Pre-boarding link expires | HR resends; status returns to Hired; the old token is invalid |
| Candidate does not join | HR marks Withdrawn with reason; reserved records are released, no employee code is consumed |
| Document rejected | Candidate or employee re-uploads; loop repeats; required documents block Joined only when the policy says so |
| Joining date moves | HR edits before Joined; after Joined the change is a correction with audit and day recompute |
| Duplicate person (same PAN or mobile) | Creation blocked with a link to the existing record (possible rehire) |
| No compensation at first payroll run | Validation blocks the employee in the run; payroll manager is notified |
| Manager missing or in a reporting cycle | Job change rejected; fallback approver used for requests until fixed |
| Backdated transfer into a locked period | Allowed; ATT and LVE recompute open periods only; PAY creates arrears if pay changes |
| Employee without email or smartphone | Invite by SMS; kiosk punching; payslip via SMS link or printed |
| Bank change after joining | Change request with HR approval; takes effect for the next unlocked run |