BusinessHRM Help Center

Guides for every module API & Developers →

Shift Roster

Shifts tell BusinessHRM when each employee is expected to work — and those expectations drive attendance (late marks, half days, auto clock-out, working days). Working with shifts involves two things: defining shifts (the shift master) and assigning shifts to employees on a calendar (the roster). This article covers both, plus bulk assignment and shift-change requests.

Where to find it

  • Shift Roster (assigning shifts): Sidebar → HR → Shift Roster (/shifts).
  • Shift definitions: Settings → Attendance Settings → Employee Shifts tab.

Permission note: Viewing the roster requires the View Shift Roster permission; assigning/editing requires Manage Employee Shifts.


Defining shifts (the shift master)

Before you can roster anyone, you need at least one shift defined.

How to add a shift

  1. Go to Settings → Attendance Settings → Employee Shifts.
  2. Click Add New Shift.
  3. Choose the Shift Type, fill in the fields (below), and save.

Common fields (all shifts)

Field Required Notes
Shift Type Yes Strict Timings (fixed clock-in/out window) or Flexible Timings (a number of hours).
Shift Name Yes e.g. Night Shift.
Shift Short Code Yes e.g. NS — shown in roster cells.
Colour Yes The badge colour on the roster.
Office opens on Yes The working days for this shift (Mon–Sun checkboxes). This is effectively the "days per week".

Strict-timing fields

Field Required Notes
Shift Start Time Yes When the shift begins.
Shift End Time Yes When it ends.
Half-day Mark Time Yes The cut-off that decides first vs second half.
Early Clock In (minutes) No How many minutes before start an employee may clock in.
Late mark after (minutes) Yes Grace period after start before the employee is marked late.
Auto Clock Out Time (hours) Yes Hours after which the system auto-clocks-out (0–12).
Maximum check-ins in a day Yes How many times the employee may clock in per day (default 1).

Flexible-timing fields

Field Required Notes
Total Shift Hours Yes Hours that make a full day (1–23).
Half-day Shift Hours Yes Hours that count as a half day.
Auto Clock Out Time (hours) Yes Hours after which the system auto-clocks-out.

Setting a default shift

On the Employee Shifts list you can mark one shift as the Default, which is used for employees who don't have a specific shift assigned for a day. A special Day Off shift is recognised throughout the app and shown as a "Day Off" badge rather than a time range.


The shift roster (assigning shifts)

HR → Shift Roster shows a grid: each row is an employee and each column is a day of the chosen period. Cells display the assigned shift's coloured short-code badge, or icons for Leave, Half Day, or Holiday (hover for the occasion). Empty cells show a + button to assign a shift (or a "no entry" icon if you can't manage shifts). A legend at the bottom lists each shift's colour, short code and name.

Controls on the page:

  • Employee and Department filters.
  • A view toggle: Weekly View or Monthly View, with a year/month selector.
  • Assign Bulk Shifts (only if you can manage shifts).
  • Export Excel (where available).
  • Summary (list view) and Shift Change Requests (with a pending-count badge).

How to assign a shift to one day

  1. Click the + in an empty cell (or click an existing cell to edit it).
  2. Choose the Employee Shift — only shifts whose working days include that day are listed; each option shows its colour, name and times/hours.
  3. Optionally add a Remark and attach a File.
  4. Save. (You can Delete an assignment here too. If there's a pending change request on that cell, you'll see Approve / Decline instead.)

How to assign shifts in bulk

  1. On the Shift Roster, click Assign Bulk Shifts. (Note: existing shifts on the selected days will be overridden.)
  2. Pick a Department to load its employees, then select the Employees (multi-select with select-all).
  3. Choose the Employee Shift to assign.
  4. Choose Assign Shift By:
    • Date — a single date.
    • Multiple — a start–end date range.
    • Month — a whole month (pick Year and Month).
  5. Optionally tick Send Email (if email is configured), add a Remark, and attach a File.
  6. Save.

Bulk assignment clears any existing schedules for those employees on those dates first, respects each shift's working days, and skips holidays that apply to the selected employees.

Automated rotation: BusinessHRM can also rotate shifts automatically — see the Shift Rotation tab under Attendance Settings for setting up and running rotations.


Shift-change requests

If shift change is allowed, an employee can ask to swap to a different shift.

How an employee requests a shift change

  1. On the relevant roster cell/day, choose to request a change.
  2. Select the shift to Request For and enter a Reason (required).
  3. Submit. The request enters a waiting state.

How a manager handles requests

Open Shift Change Requests from the Shift Roster page. Managers can Approve or Decline each request; the employee can Delete a pending request they no longer need.


Tips

  • Define a Day Off shift so non-working days are explicit on the roster.
  • Keep Short Codes short and distinct — they're what you'll read at a glance on the grid.
  • Because late-mark and half-day rules come from the shift, double-check a shift's settings if attendance flags look wrong.
  • Use Assign Bulk Shifts → Month to roster a whole team for the month in one go, then tweak individual days as needed.