Skip to main content
itzseo
All docs

Manage the HR roster + add an HR manager

How HRMS decides who's an employee, and how to give a teammate HR-decision permissions.

HRMS & AttendanceUpdated Try it now

Two things to manage here — and they get confused often, so let's split them up:

  1. Who's on the HR roster — the people who show up in attendance dashboards, leave reports, and overtime queues. These are your employees.
  2. Who has HR-decision permissions — the people who can approve leave, fix missed punches, pull reports. These are your HR team.

They overlap (HR managers are themselves employees on the roster) but they're configured separately.

Part 1 — The HR roster

A workspace member is on the HR roster when BOTH:

  • Their workspace role is NOT CLIENT (external client portal users are always off the roster), AND
  • They have at least one active department membership in this workspace.

That's it. Adding someone to a department puts them on the roster; removing their last department membership takes them off. There's no separate "is employee?" toggle — the department membership IS the toggle.

Adding someone to the roster

  1. Open Settings → Team & departments (path: /settings/team).
  2. Click the member's row. The side panel shows their current department memberships (which may be empty).
  3. Click + Add membership. Pick a department, pick a level (Manager or Executive), confirm.
  4. They now appear on /hr/attendance, get a row in every /hr/reports tab, and can be drilled into from the workspace dashboard.

Removing someone from the roster

Same page, opposite direction. Find the member, find their department membership row in the side panel, click the trash icon. If they had multiple department memberships, repeat for each — they stay on the roster until ALL their memberships are removed.

They keep their workspace access (login, project membership, etc.) — only HRMS visibility changes.

The invite modal — Employee vs External picker

When you invite someone to a project (from any project’s Members page → Invite member), the modal starts with a two-button choice:

  • Employee (default) — they’ll be on your team. The role dropdown below shows operator-tier roles (Editor, Writer, Reviewer, Analyst, etc.) but hides CLIENT so you can’t pick it by accident. When they accept the invite, their workspace role is EDITOR.
  • External client — they’ll get a read-only client portal view of the project. The role is locked to Client and the dropdown disappears. When they accept the invite, their workspace role is CLIENT, which auto-hides them from /settings/team and every HRMS surface.

The Employee / External choice is the single most important thing to get right at invite time — it determines whether the person will ever appear in your HR dashboards. Got it wrong? Use the Mark as client button on the Pending Assignment row in /settings/team to flip them after the fact.

Common roster scenarios

  • New full-time hire — invite as Employee, or have them apply through /settings/team/applications. Once they accept, add their department membership. They land on the HR roster automatically.
  • External client given portal access — invite as External client. They never appear in HRMS regardless of department memberships (CLIENT short-circuits the filter).
  • Vendor or service account — invite as Employee but DON’T add a department membership after they accept. They get workspace access without polluting HR dashboards (workspace member without a dept = off the HR roster).
  • Freelancer for one project — same as vendor. Employee invite, give project access, skip the dept membership.
  • Yourself (workspace owner) — you’re auto-HR even without a department, but you only appear on the workspace attendance dashboard if you have at least one department membership. Add yourself to “Leadership” or whatever fits.

Triaging mistakes — the Pending Assignment section

If something landed in the wrong state — a contact invited as Employee by mistake, a contractor who finished a project, a stale duplicate account — open /settings/team and expand the Pending Assignment collapsible at the bottom. Each row shows three actions:

  • + Assign — pick a department + level. The row moves up into the Team list.
  • Mark as client — flips their workspace role to CLIENT. They keep workspace + project access; they disappear from /settings/team and every HRMS surface.
  • Remove — full removal from the workspace. Project memberships are preserved (historical work keeps its assignee); workspace + department memberships are deleted.

Part 2 — HR-decision permissions

HR-decision pages (/hr/attendance, /hr/leave, /hr/overtime, /hr/reports) are gated to workspace owners and to members of any department flagged "isHrDepartment". Granting access is a two-step process: create (or reuse) an HR department, then add the person to it.

Step 1 — Create or flag an HR department

  1. Open Settings → Departments (path: /settings/departments).
  2. If you already have a department called "HR" or "People Ops" or similar, find it in the list. Otherwise click + Add department at the top, name it "HR" (or whatever fits your org), and confirm.
  3. On the new (or existing) department row, click the small HR pill on the right side. The pill is grey by default and turns pink when active. Pink = this department's members are HR.

You can flag multiple departments as HR. Large orgs might split People Ops, Payroll, and Office Admin into separate departments — flag each one and every member sees /hr/* pages.

Step 2 — Add the person to the department

Two paths depending on whether they're already in the workspace:

  • Existing member. Open Settings → Team & departments. Find the member, click their row, click + Add membership, pick the HR department, pick their level (Manager or Executive), confirm.
  • New hire. Share your workspace's apply link (visible on the same Team & departments page). The applicant fills out the form, picks HR as their team, and submits. You approve from /settings/team/applications and pick their workspace role (Editor, Manager, etc.). After they accept the invitation, return to Team & departments to grant them HR-department membership.

Verifying access

Ask the new HR member to refresh the app. They should seeHR as a section in the sidebar with links to Attendance, Leave, Overtime, and Reports. If those links don't appear, double-check:

  1. The HR pill on the department is pink (active), not grey.
  2. The member's department membership row exists on /settings/team.
  3. They've fully accepted the invitation and signed in (not still on the pending list).

Owner = always HR

The workspace owner has HR access automatically regardless of department membership. This is a god-mode fallback so a one-person workspace can still self-serve HR. If you'd rather the owner not see /hr/* day to day, they just don't have to visit it — the pages don't push notifications.

Removing HR access

Two ways:

  • Remove the person from the HR department. From /settings/team, click their row, find the HR membership, click delete. They keep workspace access but lose HR permissions.
  • Turn off the HR flag on the department. From /settings/departments, click the pink HR pill on the row. The pill turns grey and every member of that department loses HR access at once. Use this when you're restructuring rather than for individual changes.
© 2026 ItzSEO. All docs
All systems normal