Employee Management
Add and manage employees, edit profiles, handle status changes, and manage where people work
Employees are the core of everything in Hopshift. Before you can run payroll, schedule shifts, or track leave, each person needs a profile with their basic details, employment information, and, for Thai payroll, their national ID number and gender. This guide covers everything from creating a profile to handling terminations, managing departments and positions, and assigning employees to work at another company in the group.
The Employee Directory
The employee list lives at group level: open Employees under the Workforce section of the sidebar. It shows everyone across all companies in your group. If you are looking at a single company, its Employees page is a hub of cards (Directory, Positions, Movements, Salary History, Compensation, Transfers, Foreign Workers); Directory takes you to the same group list, pre-filtered to that company.
The list shows:
- Name
- Company
- Position
- Status
- Tenure
- Hire Date
Filter by company, status (All Statuses, Active, Inactive, Terminated, On Leave, Inter-company) or department. Use the search bar to find employees by name or email. Click any row to open the full employee profile.
Adding an Employee
Step 1: Open the Add Employee form
Click Add Employee (top-right of the employee list). The form opens as a dialog titled "Add Employee". Anything you skip can be added afterwards in the employee's profile.
Step 2: Personal Information
| Field | Required | Notes |
|---|---|---|
| First name (English) | Yes | Used throughout the app |
| Last name (English) | Yes | |
| First name (Thai) | No | Displayed on Thai payroll documents |
| Last name (Thai) | No | Displayed on Thai payroll documents |
| Nickname | No | Shown informally in schedules |
| Email address | Yes | Used for login and notifications |
| Mobile number | No | Area code required |
| Date of birth | No | Optional at creation |
| Gender | No | Male, Female, Non-binary, Prefer not to say. Needed before payroll can be finalized |
| Nationality | No | |
| National ID number | No | 13-digit Thai national ID. Needed before payroll can be finalized |
Payroll finalization is blocked while any Thai employee in the run is missing National ID number or gender. Do not enter placeholder values; leave the field empty and the payroll screens will show what is missing.
Step 3: Employment Details
| Field | Required | Notes |
|---|---|---|
| Company | Yes | The company that employs and pays this person |
| Hire date | Yes | The official start date of employment |
| Employment type | Yes | Full-time, Part-time, Contract, or Intern |
| Department | Yes | Pick an existing one, or click Add Department to create it without leaving the form |
| Position | Yes | Pick an existing one, or click Add Position to create it in place |
| Location(s) | Yes | At least one clock-in location; Add Location creates a new one |
| Manager | No | Sets the reporting line; managers can approve this employee's leave |
The Employee ID is assigned automatically. You can change it later on the Employment tab.
Step 4: Save
Click Add Employee. The employee profile is created. You can continue editing from any page of the profile.
The Employee Profile
Once an employee record exists, the profile has a left navigation in five groups:
Profile
- Overview: a summary of the person, plus the Access card (login status and Invite button).
- Personal: all personal information fields listed above. Edit any field and click Save changes.
- Employment: position (with effective date: history is preserved), department, employment type, manager, probation end date, and the Intercompany Billing section (see below).
- Assignments: the locations, department and position this employee is assigned to.
- Cross-Company: which other companies in the group can see this employee.
- Permissions: the employee's access level and admin permissions.
Changing a position creates a history entry. Previous positions remain in the record and are visible to payroll and reporting features.
History
- Timeline: the event log for the employee (hire, position changes, status changes, transfers).
- Position History and Transfer History.
Leave & performance
- Leave: the employee's balances for the current leave year and their leave request history. Use Edit Leave Records or Edit allocation here to change what this person is entitled to. To adjust many balances at once, use the company Leave Balances page or Leave Management > Balances.
- Performance: performance review records and notes. Managers and admins can add entries with a date, rating, and free-text notes.
- Notes: scheduling notes about the employee.
Pay & tax
- Compensation: pay type, base salary, bank details, and the recurring pay items attached to this employee. This is where a raise is entered. See Base Salary for the full walkthrough, including what happens when a payroll run has already been created.
- Tax Declaration, Certificate, Severance.
Status
- Termination: terminate, deactivate, reactivate, or schedule a termination. See Terminating an Employee.
Company-wide documents live under the company Documents page in the sidebar; there is no per-employee documents page.
Employment Types
Hopshift supports four employment types which affect payroll and entitlement calculations:
| Type | Description |
|---|---|
| Full-time | Standard contracted employee; eligible for full entitlements |
| Part-time | Works reduced hours; entitlements may be prorated |
| Contract | Fixed-term or project-based engagement |
| Intern | Temporary internship placement |
The employment type is set when creating the profile and can be changed later from the Employment page. Payroll will use the type in effect for the current pay period.
Employee Status
Each employee has a status that controls their visibility and what actions can be taken on their account.
| Status | Meaning |
|---|---|
| Active | Currently employed and working |
| Inactive | Temporarily inactive (e.g. extended unpaid leave) |
| On Leave | On a scheduled leave period |
| Inter-company | Working at another company in the group under an intercompany assignment |
| Terminated | Employment has ended |
Changing Status
Status is changed from the profile's Status > Termination page:
- Open the employee profile and click Termination in the left navigation.
- Click Terminate Employee, Deactivate Employee, or (for an inactive or terminated person) Reactivate Employee.
- For a termination, enter the last working day and, optionally, a reason. Picking a future date schedules the termination instead of applying it now.
- Confirm.
Terminating an employee removes them from future payroll runs and schedule assignments. Their historical data (past payslips, leave records, timesheets) is permanently retained for audit purposes.
To see only terminated employees, set the status filter to Terminated in the employee list.
Departments
Departments group employees by business function (e.g. "Kitchen", "Service", "Finance"). They are set up per company under Company Settings > Departments and then assigned to employees. Positions are also listed under each department there.
Departments are set up per company under Company Settings > Departments; Positions are set up for the whole group under Organization > Positions and each position carries a Leave package.
Creating a Department
- Open the company and go to Settings, then the Departments tab.
- Click Add Department.
- Enter the department name.
- Click Save.
Editing or Deleting
Use Edit department to rename it and Delete department to remove it. A department with assigned employees cannot be deleted until those employees are reassigned.
Positions
Positions represent job titles (e.g. "Barista", "Head Chef", "HR Manager"). They are managed under Organization > Positions in the group sidebar. Each position belongs to one company.
Positions can be named in three languages for multilingual display across the app:
| Language | Field |
|---|---|
| English | Required |
| Thai (ภาษาไทย) | Optional |
| Chinese (中文) | Optional |
Creating a Position
- Go to Organization > Positions.
- Click Add Position.
- Enter the name in English (and optionally in Thai and Chinese).
- Choose the Company. This cannot be changed later.
- Choose a Leave package, which decides the leave rules people in this position follow (the group's lowest package is preselected).
- Click Save.
Activating / Deactivating
Use the toggle next to each position to activate or deactivate it. Inactive positions cannot be assigned to new employees. Positions that have never been assigned can be deleted outright.
Working at Another Company
In a multi-company group, an employee can be paid by one company and work at another. This is common for:
- Employees who float between outlets
- Employees temporarily covering at another location
- Part-time staff with split schedules
How It Works
- An employee has a payroll company: the entity on their employment contract and the one that runs their payroll.
- An intercompany assignment records where they physically work. Their payroll stays with the payroll company, and the cost is billed to the work company each period.
- The work company can include them in its schedules and clock-in records.
Adding an Assignment
- Open the employee profile and go to Employment.
- In the Intercompany Billing section, click Add Assignment.
- Choose the company they work at, the effective-from date, and optionally an end date and notes.
- Click Save.
You can also manage assignments for the whole group from Payroll > Intercompany. See Intercompany Assignments & Billing for the billing side.
Only group admins and users with the intercompany permission can manage these assignments.
Ending an Assignment
Click End assignment in the same section and set the end date. The employee returns to working at their payroll company from the day after; historical records (timesheets, payslips) are preserved.
Employee History and Audit Trail
Hopshift maintains a full history for each employee. Changes to position, department, salary, and status are recorded with the date the change took effect. This history is:
- Visible on the Timeline and Position History pages of the profile
- Included in payroll calculations (e.g. correct salary for a partial period after a mid-cycle change)
- Available to export for HR audit purposes
Nothing is deleted when an employee transfers between companies or changes position. The complete timeline travels with the employee record.
Compliance Requirements for Thai Employees
Thai employees must have two fields set before a payroll run that includes them can be finalized:
- National ID number: 13-digit Thai national ID (บัตรประชาชน)
- Gender: written to the SSO 1-10 social security report
Date of birth is not required to finalize; PND1 and SSO 1-10 do not use it.
If either field is missing, the employee shows a red missing compliance warning in the payroll wizard preview. Update the profile before finalizing the payroll run.
For foreign employees working in Thailand, track work permits and visas on the company's Foreign Workers page (Employees hub > Foreign Workers).