HRIS / HCM Data
Worklytics supports importing Human Resource Information System (HRIS) data from CSV files to our platform. This data defines basic information about your personnel: join/leave date, manager, and potentially organizational structure (eg, dept, role, team, etc). We require this data to be provided in columns as specified below.
Each data row in the CSV will be a point-in-time snapshot of the HRIS record for an employee, as the employee appeared in your HRIS on the SNAPSHOT
date. This effective time for the snapshot is provided either as the value of the SNAPSHOT
column (preferred), or as a suffix (YYYYMMDD
) of the filename immediately prior to the file extension (eg, employee_snapshot_YYYYMMDD.csv
).
If a SNAPSHOT
field value is provided, it will take precedence over the value parsed from the filename suffix. You MAY provide snapshots for multiple dates in a single file, but in such case you MUST provide a SNAPSHOT
value for each row.
We recommend snapshots be generated WEEKLY, and that you initially provide one snapshot per week for the period of which you intend to analyze data. Eg, if it's currently June 2024, and you want analysis back to begining of the year, you'd send roughly 24 weeks worth of snapshots. It is simplest to split that into one file per week, even if you're providing the SNAPSHOT
column.
Snapshots should include all active employees and all terminated employees, unless the latter were terminated before the earliest snapshot date you're providing (eg, the start of the period for analysis).
Individual employees can be excluded from processing by providing a WORKLYTICS_SAMPLE
column with a value of false
for employees to be excluded.
Suggested filename: employee_snapshot_YYYYMMDD.csv
SNAPSHOT
Unless in filename.
DATE
Snapshot date, the moment in time this row represents
EMPLOYEE_ID
Yes
STRING
Employee id in org's HR schema
EMPLOYEE_EMAIL
Yes
STRING
Employee's main email address
JOIN_DATE
Yes
DATE
Join date
LEAVE_DATE
Yes
DATE
Leave date or empty if current employee
LEAVE_REASON
No
STRING
VOLUNTARY or INVOLUNTARY
MANAGER_ID
Yes
STRING
Employee id of the manager as of the snapshot date
MANAGER_EMAIL
Only if manager not in the file (1)
STRING
Email of the manager as of the snapshot date
WORKLYTICS_SAMPLE
No
BOOLEAN (2)
Whether the individual should be included in data processing.
OFFICE_TZ
No
STRING
Time zone the employee is based (3)
OFFICE_START_HOURS
No
TIME_OF_DAY
When working day starts HH:MM format (24H format)
OFFICE_END_HOURS
No
TIME_OF_DAY
When working day ends HH:MM format (24H format)
CG_***
No
STRING
Groups the employee belongs to at snapshot. Multiple custom group fields can be included within the file. See details (4)
GITHUB_USERNAME_ALT
No
STRING
An additional GitHub username to associate with employee (useful if using both GitHub Cloud and on-prem)
(1): If you include MANAGER_EMAIL
and are using the pseudonymization proxy, ensure you modify the rules to pseudonymize it.
(2): Boolean types are case-insensitive, and can be provided as true
, false
, 1
, 0
, yes
, no
, y
, n
, t
, f
. Any other value will be considered false
.
If WORKLYTICS_SAMPLE field is not provided in any file, we assume true
, meaning anyone in the file is included in data processing.
If at least one file contains the WORKLYTICS_SAMPLE field, we assume it is in use and most recent value found for each employee prevails. If no value is found for an employee, we assume false
.
(3): We use IANA time zones. See https://github.com/eggert/tz/blob/master/zone1970.tab
(4): Group fields are used to indicate the employee belonging to a certain group at snapshot date. Custom Groups can represent any kind of grouping in your organization that is meaningful for you for analysis purposes. These groupings are used later to filter and aggregate data in Worklytics. Some examples of groups are: teams, office, business unit, region, division, department, role, etc.
The fields must start with CG_
prefix to distinguish them from others. Once imported, the prefix is discarded and the group name is normalized.
cg_location
LOCATION
CG_DIVISION
DIVISION
CG_SQUAD
SQUAD
The name of the field is normalized, so two fields like CG_BUSINESS_UNIT
and CG_BUSINESSUNIT
will be considered the same and will error, make sure to use the same name for the same group consistently over time.
By default, only 10 custom group fields are allowed. If you need more, please contact sales@worklytics.co.
Example snapshots
Given this employee information
Karen joined the company on 2021-06-15 as Senior Sales Rep. She's based in London, UK.
Jaime joined the company on 2022-10-05 as Junior Sales Rep. He's based in London, UK. Karen is his manager. Role
Alice joined the company on 2022-10-05 as Junior Sales Rep. She's based in Madrid, Spain. Karen is her manager.
Alice left the company on 2022-10-20.
All work in Sales TEAM
Here's an example of weekly snapshots during October, generated on Mondays, using ISO date format.
File: employee_snapshot_20221003.csv
Only Karen was in the company that week
File: employee_snapshot_20221010.csv
Notes: Jaime and Alice are new in the system, included in the files
File: employee_snapshot_20221017.csv
Notes: no changes
File: employee_snapshot_20221024.csv
Notes: Alice quits. The system will automatically bind Alice's data to her work stint.
Configuring Connection in Worklytics
Log in to Worklytics (your user needs the Data Connection Admin role).
Select the appropriate connector depending on your needs:
HRIS Data Import connector: processes the data input directly
HRIS Data Import via Psoxy connector: performs pseudonymization of the data input before processing it
Whichever connector you've chosen, follow the instructions to complete the connection:
Select the Parser setting:
EMPLOYEE_SNAPSHOT
Select the Date format setting:
US
orISO
, matching your HRIS export date format.
Last updated