Redmine Products / Redmine HRM Plugin - Feature List

Overview

This feature list provides an overview of the functions of the Redmine HRM Plugin.

Legend:

  • Available - Feature is fully implemented
  • Limited - Feature available, but with limitations
  • Not available - Feature is not implemented

Special Feature: Dynamic Real-time Calculations (on-the-fly)

Advantage: The plugin works with a lean, performant calculation model. All evaluations (performance, availability, resource planning) are created dynamically at runtime - without additional storage requirements for historical snapshots.

How it works: The system uses the current working time calendar for all calculations, even when analyzing past periods. This requires an adjusted workflow compared to systems with historical data storage.

Table of Contents

  1. Attendance Management
  2. Resource Planning
  3. User Management
  4. Permission System
  5. Working Time Calendar
  6. Holidays
  7. Supervisors & Hierarchies
  8. Reports & Dashboards
  9. Integration & API
  10. Advanced Features

Attendance Management

Basic Functions

FeatureStatusDescription
Book attendanceUsers can record presence/absence
Book vacationRecord and manage vacation days
Record sicknessDocument sick days
Record home officeBook home office days
Book overtimeAutomatic calculation from over-booked attendance

Booking Options

FeatureStatusDescription
Full-day bookingFull day, morning or afternoon
Hourly bookingFrom-to time with automatic calculation
Repeated bookingsBook period (e.g., 2 weeks vacation)
Retroactive bookingsEntries for past days possible
Future bookingsAdvance planning possible
Multiple entries per dayOnly with different half-day entries or RANGE type

Attendance Types

FeatureStatusDescription
Unlimited attendance typesAny number of types definable
Event typesAttendance, Absence, Absence (lost time)
Color codingEach type can have its own color
Quota managementDaily limit per type and user (e.g., 30 vacation days / year)
Approval workflowConfigurable approval requirement
IP range restrictionAllow/deny booking from specific networks
Email notificationsNotify supervisors on booking
Configure visibilityShow/hide in calendars and resource view

Approval Workflow

FeatureStatusDescription
Approval requiredAttendance must be approved
Conditional approvalOnly for entries in past / during work time / outside work time
Multi-level approvalOnly one approval level (all supervisors equal)
Partial approvalCan only be fully approved/rejected
Rejection with reasonRejection reason can be specified
Automatic approvalNo time-based auto-approval
EscalationNo automatic escalation on pending approval
Approval statusUndecided / Approved / Not approved
NotificationsEmail to supervisors on new entries

Limits and Validations

FeatureStatusDescription
Quota limitsMaximum days per year/type configurable
Individual limitsPer user overridable
Carry over remaining vacationNo automatic carry-over to following year
Vacation planning across yearsPossible, but no cross-year quota management
Conflict checkPrevents duplicate entries on same day
Holiday checkPrevents absence on holidays
Working day checkPrevents absence on non-working days
Hours limitRANGE type: Max. working hours per day

Calendars and Views

FeatureStatusDescription
Absence calendarMonthly view with all absences
List viewFilterable and sortable table
FiltersBy user, type, date, status, approval
GroupingBy user, type, month
List exportCSV, PDF
iCal exportCalendar integration
Team calendarShow absences of groups/teams (HRM area)
Personal calendarOnly own attendance

Resource Planning

Basic Functions

FeatureStatusDescription
Capacity planningAvailable capacity per user and day/week/month
Visualize ticket assignmentsPlanned hours from assigned tickets
Workload indicatorColor coding: optimal / free capacity / overloaded
ForecastAutomatic planning based on tickets and deadlines
Historical dataTime spent vs. working time (but: calculated on-the-fly!)
Project resourcesResources filtered by project
Global resourcesAll users across projects

Planning Logic

FeatureStatusDescription
Automatic distributionHours are automatically distributed to working days
Deadline-based planningTickets with due date are scheduled with priority
Priority-based planningTickets without deadline scheduled by priority
Velocity considerationMax. hours/day per user configurable
Consider absencesVacation/sickness reduces available capacity
Consider holidaysHolidays are automatically excluded
Consider weekendsBased on working time calendar
Overload warningShows days with overallocation
Delay warningTickets that won’t be finished by deadline

Considered Tickets

FeatureStatusDescription
Tickets with estimated timeOnly tickets with estimated hours
Assigned ticketsOnly tickets assigned to a user
Group ticketsTickets assigned to groups are ignored
Open ticketsClosed tickets are excluded
Status filterExclude specific statuses (e.g., “Postponed”)
Priority filterPriorities with max assignment = 0 excludable
Already booked timeRemaining hours = Estimated - Logged

Views and Reports

FeatureStatusDescription
Table - Planned hoursForecast of future workload
Table - Time spentHistorical time entries (but: calculated on-the-fly!)
Resource problemsOverview of planning issues
Day/Week/Month viewScalable time periods
User filterBy individual users or groups
Time period filterPredefined periods (current week, month, quarter, etc.)
Project filterIn project view
List exportCSV, PDF
Gantt chartNo Gantt visualization

Problems and Warnings

FeatureStatusDescription
Overloaded daysShows days where capacity is exceeded
Delayed ticketsTickets that will miss deadline
Non-scheduled ticketsTickets excluded from planning (with reason)
Group-assigned ticketsWarning on group assignment
Tickets without estimationWarning on missing effort estimation
Invisible ticketsWarning when assignee cannot see ticket
Velocity = 0 warningUser disappears from planning (no explicit warning)

User Management

User Functions

FeatureStatusDescription
Create usersCreate new Redmine users
Edit usersChange user data
Lock usersDeactivate users (without deleting)
Delete usersRedmine doesn’t allow deletion, only locking
Bulk operationsLock/unlock multiple users simultaneously
ImportVia Redmine Core possible (not HRM-specific)
ExportList as CSV/PDF

HRM-specific Fields

FeatureStatusDescription
Assign user typeDefine HRM permissions
Assign working time calendarWARNING: Changes falsify historical reports!
Assign supervisorsMultiple supervisors per user possible
Attendance type limitsOverride individual limits
Upload avatarCustom profile picture (overrides Gravatar)
Custom fieldsRedmine custom fields are supported

User Manager

FeatureStatusDescription
User manager roleNon-admins can manage users
Limited rightsCannot create/edit admins or HRM managers
No same-type usersCannot change users of their own type
Lock usersCan lock users (except admins)
Manage groupsWith separate permission

User Profile

FeatureStatusDescription
Attendance tabHistory and statistics
Performance tabTime entry evaluations (but: calculated on-the-fly!)
Tickets for todayPlanned tasks for current day
Projects tabProject memberships
Resources viewPersonal resource planning
Show groupsWith corresponding permission
Show supervisorsOwn supervisors always visible

Permission System

User Types

FeatureStatusDescription
Unlimited user typesAny number of types definable
Internal vs. ExternalDistinction with different functions
Default user typeOne type can be marked as default
User type sortingPosition definable
Symbol/IconIcon for user type (optional)
User type changePossible, but caution with internal↔non-internal

Permissions

FeatureStatusDescription
View HRMBasic permission for HRM access
View supervisorsSee supervisors of all users
View attendanceSee attendance of all users
View groupsSee groups in user profiles
View admin/user typeUser type symbol next to name
Manage usersCreate, edit, lock users
Manage groupsCreate, edit, delete groups
Manage holidaysManage holidays
Manage working time calendarsWARNING: Changes falsify historical reports!
Fine-grained permissionsConfigurable per user type
Project permissionsview_hrm_resources for project view

Permission Hierarchy

FeatureStatusDescription
AdministratorsAlways have all HRM permissions
Dependenciesview_hrm is prerequisite for all others
Auto-activationview_hrm automatically activates view_superiors/groups/attendance

Special Permissions

FeatureStatusDescription
Supervisor rightsSupervisors can manage attendance of their subordinates
Supervisor bypasses IP rangeCan book for subordinates from anywhere
Own data always visibleUser sees own attendance/resources
Project-specific permissionsResource view controllable per project
FeatureStatusDescription
Custom menu itemsUp to 5 menu items per user type
SubmenusEach main item can have sub-items
Variables in URLsDynamic placeholders for user IDs and login names
IconsFont Awesome icons usable
Help menuShow/hide help menu
My Page menuShow/hide My Page
Watched projectsShow watched projects in top menu

Working Time Calendar

Calendar Functions

FeatureStatusDescription
Unlimited calendarsAny number of working time calendars definable
Default calendarOne calendar can be marked as default
Hours per weekWeekly working time configurable
Define working daysMonday-Sunday individually enable/disable
Core timeWork start and end (e.g., 09:00 - 18:00)
VelocityMaximum assignment per day for resource planning
Flexible working hoursOnly via different calendars, no individual daily planning (only 1 calendar per user possible)

Important: Working Time Calendar Changes

FeatureStatusCritical Notes
Change calendarFALSIFIES ALL historical reports!
Change calendar propertiesAffects ALL users with this calendar!
Historical calendar versionsAre NOT saved
Retroactive correctionsNOT possible

Important considerations:

  • NEVER change existing working time calendars
  • ALWAYS create new calendars and assign users
  • BEFORE changes: Export reports if necessary

Possible Working Time Models

FeatureStatusDescription
Full-timeE.g., 40h/week, Mon-Fri
Part-timeE.g., 18h/week, Mon-Wed
4-day weekE.g., 32h/week, Mon-Thu
6-day weekE.g., 48h/week, Mon-Sat
Overtime accountNo account, only dynamic calculation for selected period

Holiday Integration

FeatureStatusDescription
TAG systemCalendars can have holiday TAGs
Regional holidaysVia TAGs (e.g., “Bavaria”, “NRW”)
Global holidaysHolidays without TAG apply to all
Multiple TAGsOne calendar can have multiple TAGs

Velocity and Resource Planning

FeatureStatusDescription
Configure velocityMax. hours/day for resource planning
Velocity = 0Exclude user from resource planning
Velocity per priorityDifferent max assignment per ticket priority
Dynamic velocityNo time-of-day dependent velocity

Holidays

Holiday Management

FeatureStatusDescription
Unlimited holidaysAny number of holidays definable
Holiday with dateFixed date holiday (e.g., Jan 1)
Recurring holidaysManual creation required each year
Half-day holidayOnly full-day holidays possible
Regional holidaysVia TAG system
URL/LinkOptional link to additional information

TAG System

FeatureStatusDescription
Holiday TAGsTAGs for regional assignment (e.g., “Bavaria”, “Hamburg”)
Multiple TAGs per holidayOne holiday can have multiple TAGs
Global holidaysHolidays without TAG apply to all calendars
Calendar TAGsWorking time calendars can have TAGs
System TAGsTAGs configurable for non-internal users

Import/Export

FeatureStatusDescription
List exportCSV, PDF
API accessREST API for holidays
ImportVia API possible, no CSV import in UI
iCal integrationHolidays in absence calendar, but no separate iCal feed

Supervisors & Hierarchies

Supervisor Management

FeatureStatusDescription
Multiple supervisorsUser can have multiple supervisors
Hierarchy levelsFlat hierarchy (user → supervisors), no tree structure
Assign supervisorsSimple assignment via user editing
Show supervisorsIn user profile and lists

Supervisor Rights

FeatureStatusDescription
View subordinate attendanceAlways, independent of view_attendance permission
Approve attendanceWhen type requires approval
Reject attendanceWith rejection reason
Edit attendanceCan create/change entries for subordinates
Bypass IP rangeCan book for subordinates from anywhere
Email notificationsOn new attendance entries (optional)
Resource viewSee resources of subordinates
View time entriesVia Redmine project permissions, not HRM-specific

Team Functions

FeatureStatusDescription
Team viewFilter by group in attendance/resources
Team calendarShow absences of a team in HRM absence calendar
Team workloadResources by group

Reports & Dashboards

Dashboard Blocks

FeatureStatusDescription
Upcoming holidaysNext holidays (considers working time calendar)
BirthdaysUser birthdays (requires custom field)
AnniversariesWork anniversaries (requires custom field)
Today present/absentCurrent attendance status
My resourcesPersonal planned hours for today
Resource problemsOverview of planning issues
Tickets for todayToday’s planned tickets
Required actionsAttendance entries for approval
Missing attendance bookingsUsers without entries
Custom reportsVia redmine_reporting plugin

Attendance Reports

FeatureStatusDescription
Attendance listFilterable table with all entries
GroupingBy user, type, month
FiltersBy user, type, date, status, approval
TotalsDays, hours
StatisticsAvailable / Used / Remaining days
List exportCSV, PDF
ChartsNo graphical evaluations in HRM (only via redmine_reporting)

Resource Reports

FeatureStatusDescription
Planned hoursForecast table
Time spentHistorical time entries (but: calculated on-the-fly!)
Resource problemsDetailed problem listing
Workload overviewColor-coded table
Capacity overviewAvailable vs. planned hours
List exportCSV, PDF
ChartsNo Gantt/Burndown (only via redmine_reporting)

Performance Reports

FeatureStatusDescription
User performancePer user (but: calculated on-the-fly!)
Working time vs. effortTarget-actual comparison (but: target value based on current working time calendar!)
AvailabilityAttendance rate (but: calculated dynamically!)
Over-/Under-hoursDifference calculation (but: based on current working time calendar!)
Time periodsCurrent/last month, year, custom
VisualizationTables (charts via redmine_reporting)
List exportCSV, PDF

IMPORTANT: All performance calculations are based on the current working time calendar. When the calendar changes, historical reports are falsified!

API Reports

FeatureStatusDescription
REST APIAccess to all data via API
JSON/XMLBoth formats supported
AuthenticationAPI key or session
PaginationFor large datasets
Filter parametersAPI-side filtering

Integration & API

Redmine Integration

FeatureStatusDescription
Redmine usersUses Redmine user management
Redmine groupsUses Redmine groups
Redmine projectsProject-specific resource view
Redmine ticketsResource planning based on issues
Redmine time entriesAutomatic TimeEntry creation possible
Redmine versionsVersion date as deadline
Redmine activitiesFor automatic time bookings
Redmine custom fieldsFor users and attendance
Redmine dashboardsHRM blocks in dashboards
Redmine permissionsIntegration with role system

Plugin Integration

FeatureStatusDescription
Additionals pluginRequired base
Additional TagsTAG system for holidays/calendars
Redmine ReportingExtended reports and charts
Other AlphaNodes pluginsCompatible, optional feature extension possible (e.g., Automation)

REST API

FeatureStatusDescription
User API/hrm/users.json
Attendance API/hrm/attendances.json
Holiday API/hrm/holidays.json
Working calendar API/hrm/working_calendars.json
User types API/hrm/user_types.json
Attendance types API/hrm/attendance_types.json
CRUD operationsCreate, Read, Update, Delete
Filter parametersURL parameters for filtering
AuthenticationAPI key, session cookie

Export Formats

FeatureStatusDescription
CSV exportAll lists exportable
PDF exportAll lists exportable
JSON/XML exportVia API
iCal exportFor attendance calendar
Excel exportOnly CSV (can be opened in Excel)

Import Functions

FeatureStatusDescription
User importVia Redmine Core (not HRM-specific)
Attendance importVia API possible, no CSV import in UI
Holiday importVia API possible, no CSV import in UI
Bulk importNo dedicated import workflow

Advanced Features

Automation

FeatureStatusDescription
Automatic time bookingAutomatically create time entry on attendance booking
Email notificationsOn attendance entries, approvals
Automatic approvalNo time-based auto-approval
EscalationNo automatic escalation
RemindersNo automatic reminders (e.g., “attendance missing”)
CronjobsVia Redmine cronjobs possible, not HRM-specific
User automationVia Redmine Automation Plugin possible, not HRM-specific

Customizability

FeatureStatusDescription
Custom fieldsFor users and attendance
Custom attendance typesUnlimited
Custom user typesUnlimited
Custom menusUp to 5 menu items per user type
Custom dashboardsVia integrated dashboard system
Custom queriesSaved filters for lists
Custom workflowsNo workflow engine

Security & Compliance

FeatureStatusDescription
IP range restrictionFor attendance types
Audit logVia Redmine activity log, not HRM-specific
AnonymizationAnonymize activities (GDPR)
Privacy optionsConfigurable visibility
EncryptionVia Redmine/Rails, not HRM-specific
2FAVia Redmine plugins possible
LDAP/SSOVia Redmine Core
Audit-proofNOT given (on-the-fly calculations!)

Performance

FeatureStatusDescription
Large datasetsOptimized for 100,000+ records
CachingRails cache for expensive operations
PaginationFor large lists
Lazy loadingPartially implemented

Functional Limitations Due to Architecture

FeatureLimitationWorkaround
Historical reportsRecalculated with current calendarRegular snapshots/exports, create new calendars instead of changing
Book overtimeMax. working hours per dayRANGE type for flexible hours or multiple entries
Multiple entries per dayOnly with different half-day bookingsUse RANGE type or combine attendance types
Velocity = 0User disappears from resource planningSet small velocity (e.g., 1h) instead of 0
Group ticketsNot scheduledAssign tickets to specific users
User type change internal↔non-internalAll users lose working time calendarCreate new user types instead of changing
Repeated bookingsHolidays/weekends are silently skippedBook individual days manually or check calendar
IP range for supervisorsSupervisors can bypass ruleConscious design decision, no workaround
Ticket date vs. version dateVersion date is preferredUse only version date OR ticket date, not both
Approval statusOnly “undecided” is not consideredUse dashboard to track open approvals

Technical Limitations

LimitationDescription
Redmine dependencyPlugin requires Redmine Core (no standalone version)
Browser compatibilityModern browsers required (Chrome, Firefox, Safari, Edge)
DatabasePostgreSQL or MySQL (SQLite not recommended for production)
Performance with very large installationsFor >1000 users, appropriately performant infrastructure is required
No historizationWorking time calendar changes falsify historical data

Summary by Use Cases

Perfectly suited for:

  • Attendance management (vacation, sickness, office, home office)
  • Resource planning based on Redmine tickets
  • Capacity planning for development teams
  • Flexible working time models (full-time, part-time, 4-day week)
  • Regional holiday management
  • Approval workflows for absences
  • Supervisor hierarchies (flat)
  • Permission management (fine-grained)
  • Reporting (lists, tables, export)
  • API integration (connect external systems)

BUT: With the important limitation of on-the-fly calculations!

Conditionally suitable for:

  • Historical evaluations (only with regular snapshots/exports)
  • Audit-required environments (external archiving required)
  • Overtime management (only basic, no account)
  • Group-based resource planning (tickets must be assigned to users)
  • Complex hierarchies (only flat supervisor structure)
  • Very large installations (>1000 users require appropriately sized hardware infrastructure for optimal performance)

NOT suitable for:

  • Audit-proof systems (working time calendar changes falsify historical data)
  • Compliance without external archiving (no historical calendar versions)
  • Time tracking with hardware (time clock, terminals)
  • Multi-level approvals (only one level)
  • Automatic vacation carry-over (manual required)
  • Shift planning
  • Team hierarchies (sub-teams, departments)
  • Standalone HRM system (requires Redmine)
  • Native mobile app (responsive web only)

Quick Check: Does the plugin meet your requirements?

You need:

  • Multilingual application
  • Vacation management with approval workflow
  • Resource planning based on tickets
  • Flexible working time models
  • Holiday management (regional)
  • Supervisor hierarchy
  • Capacity planning for teams
  • API integration
  • Reports and dashboards
  • On-the-fly calculations for realistic resource calculation of future projects

If you checked 8+ main points, the plugin is suitable for you!


Redmine Plugin

Buy HRM Plugin v4.2.0

Fast, free delivery of the download URL after receipt of payment
Plugin requirements - Plugin FAQ - Terms of use

Access to documentation, Support, Downloads & Updates

12 Month - DE, EN - E-Mail support via customer area

Right to use the obtained plugin version

Lifetime

€ 549 / Year*
Business-Class Bundle

(Reporting & HRM)

€ 385 / Year*
Single product 1

(as Reporting extension)

€ 1795 / Year*
as part of Enterprise+ Bundle

(Full-Stack contains all Plugins) - Compare all features

* Offer is directed exclusively to entrepreneurs within the meaning of §14 BGB. All prices are in EUR and net prices. Plus the applicable statutory sales tax. Reverse Charge applies for international clients outside Germany with a valid EU VAT ID No. Delivery of the download URL against advance payment. Plugin installation is done by the client himself, according to our installation instructions. Note the minimum system requirements and FAQ before purchase.
1) does not run stand-alone. Requires Redmine Reporting. Affects: Automation, HRM, DevOps, ServiceDesk

What annual support and maintenance license do you need?


Buy Now!