> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hitaji360.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Job applicants

> An applicant is a candidate for a role — anyone who applies to a job opening, or whom you add by hand, or who comes in through the public careers site or…

An applicant is a candidate for a role — anyone who applies to a [job opening](/hr/user/recruitment/job-openings), or whom you add by hand, or who comes in through the public [careers site](/hr/user/recruitment/careers-site) or a [referral](/hr/user/recruitment/employee-referrals). The applicants area is your candidate pipeline: you move each person through stages, rate them, attach their CV, schedule [interviews](/hr/user/recruitment/interviews), and ultimately put them forward for a [job offer](/hr/user/recruitment/job-offers). When a candidate accepts their offer they become an employee.

This page covers adding applicants, the pipeline stages, ratings, assignment, the kanban and table views, and the applicant detail page.

**You'll find this at:** `/hr/recruitment/applicants` (list), `/hr/recruitment/applicants/:id` (detail)

> 📷 *Screenshot: Applicants kanban pipeline with the stat cards and view toggle — to be added.*

***

## Before you start

* **Which business am I in?** Applicants belong to the business selected in the switcher. One business cannot see another's applicants (their personal details stay isolated).
* **Each applicant gets a reference number** automatically (a tenant-wide series, e.g. `APP-2026-0001`).

***

## The applicant pipeline (statuses)

Applicants move through five stages. The kanban board shows them as friendly column names:

| Status (data) | Column label  | Meaning                                         |
| ------------- | ------------- | ----------------------------------------------- |
| **Open**      | **Applied**   | Just applied / added. The starting point.       |
| **Replied**   | **In Review** | Being looked at / actively considered.          |
| **Hold**      | **On Hold**   | Parked for now.                                 |
| **Rejected**  | **Rejected**  | Not proceeding. A terminal stage.               |
| **Accepted**  | **Accepted**  | Hired — accepted their offer. A terminal stage. |

You can move a candidate freely between **Applied, In Review, On Hold,** and **Rejected** — there's no forced order. But **Accepted is special**: you cannot set it by hand. An applicant only becomes **Accepted** when they accept their [job offer](/hr/user/recruitment/job-offers). If you try to drag a card into the Accepted column you'll see *"Applicants can only be accepted through a job offer,"* and the server enforces the same rule (*"Applicants become Accepted only via accepting their JobOffer"*). Cards already in Accepted or Rejected can't be dragged out.

***

## Adding an applicant

Choose **New Applicant** (needs `hr-recruitment:write`) from the applicants list or from an opening's **Applicants** tab.

> 📷 *Screenshot: New Job Applicant dialog — to be added.*

| Field                    | Required | Notes                                                                                                                                                             |
| ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Applicant name**       | Yes      | The candidate's name (up to 255 characters).                                                                                                                      |
| **Email**                | No       | Must be a valid email if given. Used to spot duplicates.                                                                                                          |
| **Phone**                | No       | Contact number.                                                                                                                                                   |
| **Gender**               | No       | Male, Female, or Other.                                                                                                                                           |
| **National ID**          | No       | Identity number.                                                                                                                                                  |
| **Applying to opening**  | No       | Pick the [opening](/hr/user/recruitment/job-openings). Pre-filled when you add from an opening's tab.                                                             |
| **Source**               | No       | Where they came from — picked from your [applicant sources](/hr/user/recruitment/applicant-sources). This powers the source-effectiveness chart on the dashboard. |
| **Cover letter / Notes** | No       | Free text (up to 50,000 characters).                                                                                                                              |

New applicants start as **Open** (Applied).

> **Duplicate guard:** If you give an email address, Hitaji 360 stops you adding the same email twice for the same opening (*"An applicant with this email already exists for this job opening"*). This keeps a candidate from being logged twice for one vacancy.

> **Closed openings:** You cannot attach an applicant to a **Closed** opening (*"Cannot apply to a closed opening."*).

***

## Two ways to view the pipeline

A toggle at the top switches between:

* **Pipeline** (kanban) — cards in columns by stage. Drag a card to a new column to change its status. Each card shows the candidate's initials, name, the role they're applying for, their source, a rating, contact icons, and how long ago they applied. This is the default view.
* **Table** — a sortable, paginated grid with columns for Applicant, Position, Status, Source, Rating, Applied, and an Offer action. You can multi-select rows and use the bulk bar to **Move to Review**, **Hold**, or **Reject** several candidates at once (these bulk actions are disabled if any selected candidate is already Accepted or Rejected).

### Filtering

Above the board sit clickable **stat cards** (Applied, In Review, On Hold, Rejected, Accepted) that filter by stage, plus:

* **Search** — by applicant name.
* **All Openings** — filter to one opening.
* **All Sources** — filter by source.
* **Clear filters** — appears when any filter is active.

***

## The applicant detail page

Open an applicant to see everything about them, with action buttons across the top (when you have `hr-recruitment:write`):

* **Move to Review**, **Put on Hold**, **Reject** — move the candidate through the pipeline.
* **Prepare Offer** — start a [job offer](/hr/user/recruitment/job-offers) for this candidate (carries the applicant and opening through).

Tabs:

* **Profile** — name, email, phone, gender, date of birth, marital status, national ID, source, salary expectation, and the cover letter.
* **Interviews** — every [interview](/hr/user/recruitment/interviews) for this candidate with its status, date, time, and average rating. A **Schedule** button starts a new one.
* **Offers** — every [job offer](/hr/user/recruitment/job-offers) for this candidate with status, date, and salary.
* **Resume** — if a CV was attached, a **Download** button; otherwise "No resume attached".

A side panel shows the candidate's contact card, a **rating** control, and a small activity timeline (application created, status changes).

### Rating a candidate

The rating is a 5-star control on the detail page (it needs `hr-recruitment:write`). It's stored on a 0–10 scale behind the scenes (each star is worth two points), and the candidate's rating is shown on their kanban card and table row so strong candidates stand out at a glance.

### Assigning a candidate

A candidate can be assigned to a specific recruiter/user (the "owner" of that applicant). This is purely for tracking who's looking after whom — it doesn't change the candidate's stage or trigger anything else.

***

## Where applicants come from

Applicants reach this pipeline several ways, and all land here the same:

* Added by hand with **New Applicant**.
* Submitted through the public [careers site](/hr/user/recruitment/careers-site) against a published opening.
* Created from an [employee referral](/hr/user/recruitment/employee-referrals).

Whichever route, recording a **source** is what lets the dashboard's [source-effectiveness](/hr/user/recruitment/overview) chart tell you which channels actually produce hires.

> ⚠️ **Current state:** The pipeline does not enforce a step order — a candidate can jump straight from *Applied* to *Rejected* without passing through *In Review*. This is by design (flexibility), but it means the stages are not a strict workflow. (Noted for awareness.)

***

## Permissions

| Action                                                                              | Permission             |
| ----------------------------------------------------------------------------------- | ---------------------- |
| View applicants                                                                     | `hr-recruitment:read`  |
| Add, edit, move (status), rate, assign, delete; schedule interviews; prepare offers | `hr-recruitment:write` |

***

## Related

* [Job openings](/hr/user/recruitment/job-openings) — the roles applicants apply to
* [Applicant sources](/hr/user/recruitment/applicant-sources) — where candidates come from
* [Interviews](/hr/user/recruitment/interviews) — scheduling and scorecards
* [Job offers](/hr/user/recruitment/job-offers) — putting an offer to a candidate
* [Employee referrals](/hr/user/recruitment/employee-referrals) — referred candidates
* [The public careers site](/hr/user/recruitment/careers-site) — public applications
* [Recruitment overview & dashboard](/hr/user/recruitment/overview)
