Back

Legacy SQL tables mapping

Discover how to effectively map legacy SQL tables for improved data management and integration in modern applications.

Table of Contents

Documentation table additional_compensations Notes ats_applications Notes ats_job_posting Notes company_holidays Notes contracts Notes contracts_cohort_by_day Notes contracts_cohort_by_month Notes contracts_cohort_by_year Notes custom-resources-competencies-v2-nineboxes custom_tables_employees Notes daily_time_configs documents employee_costs employee_presences employees employees_cohor_by_day employees_cohor_by_month employees_cohor_by_year expenses_expensables_group expenses_expensables expenses_transactions family_situations finance_bank_accounts finance_card_payments finance_cardholders finance_cards finance_categories finance_ledger_accounts forfait_jours_by_months forfait_jours_by_months_cohort_by_day forfait_jours_by_months_cohort_by_month forfait_jours_by_months_cohort_by_year forfait_jours_by_years goals_metric_groups goals_metric_values goals_metrics hour-breakdowns leaves leaves_cohort_by_day leaves_cohort_by_month leaves_cohort_by_year locations observations overtime_requests payroll_integrations performance_review_evaluation_answers performance_review_evaluation performance_review_final_employee_scores performance_review_processes performance_review_questions project_management__project_workers project_flexible_time_records project_management__projects project_time_records project_workers projects session_access_memberships sessions shift_incidences shift_management_rest_days shift_management_shifts shifts signatures subprojects supplements surveys surveys_questions_configs survey_question_group_answers survey_question_group tasks teams time_configs time_period time_settings_break_configurations time_tracking_policy tolerance_incidences trainings work_areas work_schedule_schedules workforces

This article provides a mapping of our Legacy SQL Analytics system, giving an overview of the tables available and the data points they contain. Each table name is displayed in bold, and by expanding the corresponding drop-down, clients can explore the available data points, what each field represents, and how the data can be used.

The article also explains how the different tables are connected, including relevant relationships and examples of how they can be combined for reporting and analysis. This mapping is designed to help clients understand the structure of the Legacy SQL Analytics system and identify the right tables and data points for their specific reporting needs.


 

Documentation table

additional_compensations

Contains additional compensations configured in employee contracts. This table stores fixed additional payments or benefits assigned to employees as part of their contract configuration.

Entity

Compensation / Contracts / Employees

Use Cases

  • Total compensation analysis
  • Employee compensation structure analysis
  • Labor cost prediction
  • Identification of compensation patterns

 

Keys

Field Type Usage
id Number (PK) Unique compensation identifier
contract_id Number (FK) Relation to employee contract
employee_id Number (FK) Relation to employee

 

Relationships

  • additional_compensations.contract_idcontracts.id
  • additional_compensations.employee_idemployees.id

 

Key Fields

Field Exposer Type Description
title String Name of the additional compensation
description String Compensation details
recurrence String Payment recurrence/frequency
first_payment Date Date of the first scheduled payment
type String Compensation type/category
amount Number Configured compensation amount

 

Features

  • amount → additional compensation value
  • type → compensation category analysis
  • recurrence → payment frequency patterns
  • contract_id → compensation analysis by contract
  • employee_id → employee compensation history

 

Notes

  • Contains only additional compensations configured directly in employee contracts.
  • Values and amounts are usually stored and displayed using the decimal number system.
  • It should not be used for variable payments, bonuses, or dynamic compensations.
  • For variable compensation data, bonuses, or dynamic payments use the supplements table.
 
 
 

ats_applications

Contains all candidate applications for job postings published through ATS. Stores candidate information, application source, qualification status, and current stage within the recruitment process.

Entity

Recruitment / Candidates / Applications

Use Cases

  • Recruitment source effectiveness analysis
  • Candidate progression prediction
  • Hiring funnel analysis
  • Identification of recruitment patterns

 

Keys

Field Type Usage
id Number (PK) Unique application identifier
ats_job_posting_id Number (FK) Relation to the job posting
employee_id Number (FK) Relation to employee when the candidate is hired

 

Relationships

  • ats_applications.ats_job_posting_idats_job_postings.id
  • ats_applications.employee_idemployees.id

 

Key Fields

Field Exposer Type Description
first_name String Candidate first name
last_name String Candidate last name
email String Candidate email
talent_pool Boolean Indicates if the candidate belongs to a talent pool
source String Origin source of the application
medium String Channel used to acquire the candidate
qualified Boolean Candidate qualification status
phase String Current stage within the ATS process
created_at Date Application creation date

 

Features

  • source → candidate source performance analysis
  • medium → recruitment channel effectiveness
  • qualified → candidate evaluation outcome
  • phase → recruitment funnel progression
  • created_at → application volume and recruitment trends over time
  • ats_job_posting_id → candidate behavior analysis by job posting

 

Notes

  • Each record represents a candidate application for an ATS job posting.
  • The table enables analysis of the recruitment pipeline from initial application to candidate qualification.
  • Job posting details should be obtained through the relationship with ats_job_postings.
  • The relationship with employees allows identifying when an application results in a hire.
 
 
 

ats_job_posting

Contains all job postings created and published through ATS. Stores position information, publication status, remote configuration, creation date, department, and associated office.

Entity

Recruitment / Job Postings / Positions

Use Cases

  • Job posting performance analysis
  • Hiring demand prediction
  • Recruitment channel analysis by position
  • Identification of hiring trends

 

Keys

Field Type Usage
id Number (PK) Unique job posting identifier

 

Relationships

  • ats_job_postings.idats_applications.ats_job_posting_id

 

Key Fields

Field Exposer Type Description
title String Name of the published position
status String Job posting status (published, draft, unlisted)
remote Boolean Indicates if the position is remote
created_at Date Job posting creation date
department String Department or area associated with the position
office String Office/location associated with the job posting

 

Features

  • status → job posting lifecycle analysis
  • title → position classification and analysis
  • remote → impact of remote positions on applications
  • created_at → job opening trends over time
  • department → hiring demand analysis by area
  • office → recruitment patterns by location

 

Notes

  • Contains information about job postings created within ATS.
  • The status field allows differentiation between active, draft, and hidden/unlisted vacancies.
  • The relationship with ats_applications allows analyzing candidate volume per vacancy and candidate progression through the recruitment process.
  • department and office fields allow segmentation of hiring analysis by organizational structure and location.
 
 
 

company_holidays

Contains company holidays and non-working days configured in the platform. Stores holiday information, whether it applies as a half-day, the effective date, and optional employee assignment when the holiday is specific to an employee.

Entity

Time Management / Holidays / Employees / Attendance

Use Cases

  • Attendance and absence pattern analysis
  • Workforce availability adjustment
  • Non-working day impact prediction
  • Productivity analysis considering working calendars
  • Regional/company holiday trend analysis

 

Keys

Field Type Usage
id Number (PK) Unique holiday identifier
employee_id Number (FK) Employee relation when the holiday is employee-specific

 

Relationships

Common relationships:

  • company_holidays.employee_idemployees.idPurpose: Identify holidays assigned to specific employees.
  • employees.idPurpose: Analyze holidays by employee, team, office, country, or organizational structure.
  • daily_time_configs.employee_idemployees.idPurpose: Compare holidays against employee schedules and adjust expected working hours.
  • daily_time_configs.datecompany_holidays.datePurpose: Identify days where employees should not have expected working hours.
  • leaves.employee_idemployees.idPurpose: Differentiate employee-requested absences from company-configured non-working days.
  • Attendance / timesheet-related tablesPurpose: Exclude holidays from attendance metrics, punctuality calculations, worked hours, and absence analysis.
  • contracts.employee_idemployees.idPurpose: Analyze holiday impact based on contracts, employee groups, or workforce segments.

 

Key Fields

Field Exposer Type Description
summary String Holiday name or description
half_day Boolean Indicates if the holiday applies only as a half-day
date Date Holiday effective date
employee_id Number Associated employee when applicable

 

Features

  • date → temporal analysis, seasonality, and productivity impact
  • half_day → workforce availability adjustment
  • summary → holiday type classification
  • employee_id → employee availability patterns
  • Holiday frequency → impact analysis on available working days and planning

 

Notes

  • Represents non-working days configured at company level or assigned to specific employees.
  • employee_id can be empty when the holiday applies globally.
  • half_day = true indicates reduced availability for that date, not necessarily a full non-working day.
  • Commonly used with daily_time_configs to calculate expected working hours correctly.
  • Should be considered in attendance, absence, worked hours, and productivity reports.
  • Unlike leaves, holidays are not employee requests; they are part of the configured working calendar.
 
 
 

contracts

Contains employee contract information. Stores data related to contract type, effective dates, employment conditions, working schedule, salary, professional category, and employment configuration.

It is one of the main tables for analyzing workforce structure, labor costs, employee lifecycle, and workforce management.

Entity

Employees / Contracts / Payroll / Workforce Management

Use Cases

  • Workforce structure analysis
  • Employee cost analysis
  • Headcount management
  • Hiring and termination analysis
  • Workforce planning
  • Contract condition tracking

 

Keys

Field Type Usage
id Number (PK) Unique contract identifier
employee_id Number (FK) Employee relation

 

Relationships

  • contracts.employee_idemployees.idPurpose: Retrieve employee information associated with the contract.
  • contracts.idadditional_compensations.contract_idPurpose: Relate fixed additional compensations configured within the employee contract.
  • contracts.idsupplements.contract_idPurpose: Relate variable payments, bonuses, and additional compensation linked to the contract.
  • contracts.employee_idleaves.employee_idPurpose: Apply contractual conditions in absence-related calculations.
  • contracts.employee_id → attendance / timesheet tablesPurpose: Compare contractual working hours against actual worked hours.
  • contracts.employee_idcompany_holidays.employee_idPurpose: Consider working calendars and employee availability.

 

Key Fields

Field Exposer Type Description
job_title String Employee position/title
job_catalog_level String Job catalog level
contract_date Date Contract creation date
hiring_link String Hiring reference information
starts_on Date Contract start date
ends_on Date Contract end date
effective_on Date Date when contract conditions become effective
has_payroll Boolean Indicates if the contract is included in payroll
current_contract Boolean Indicates if it is the active contract
salary_amount Number Configured salary amount
salary_frequency String Salary payment frequency
working_week_days Number Contractual working days per week
working_hours Number Configured working hours
working_hours_frequency String Working hours frequency
contract_type String Contract type
professional_category String Professional category
antiquity Number Employee seniority
work_schedule_type String Work schedule type
termination_reason String Contract termination reason
contract_code String Contract identifier/code
total_yearly_contract_salary Number Total yearly contract salary
total_monthly_contract_salary Number Total monthly contract salary
yearly_contract_salary Number Yearly salary
monthly_contract_salary Number Monthly salary
variable_yearly_contract_salary Number Yearly variable salary component
hourly_contract_salary Number Hourly salary
weekly_workschedule_hours Number Weekly scheduled hours
monthly_workschedule_hours Number Monthly scheduled hours
daily_workschedule_hours Number Daily scheduled hours
weekly_workschedule_days Number Weekly scheduled days
trial_period_ends_on Date Trial period end date
trial_period Number Trial period duration
max_legal_yearly_hours Number Maximum legal yearly hours
maximum_weekly_hours Number Maximum weekly hours

 

Features / Relevant Data

  • contract_type → employee segmentation by employment model
  • starts_on / ends_on → employee lifecycle analysis
  • salary_amount → labor cost analysis
  • working_hours → workforce capacity analysis
  • job_title → position classification
  • professional_category → organizational structure analysis
  • antiquity → employee tenure analysis
  • termination_reason → turnover analysis
  • current_contract → active contract identification
  • additional_compensations → fixed additional compensation analysis
  • supplements → variable compensation and additional payments analysis

 

Notes

  • Can contain custom fields created by clients, depending on each company’s configuration.
  • Monetary values are usually stored and displayed using the decimal number system.
  • An employee can have multiple historical contracts; current_contract identifies the active contract.
  • Used for headcount reports, identifying active employees and workforce evolution.
  • Used for hiring and termination analysis, using start dates, end dates, and contract status.
  • Used in the leaves solution for calculations related to absences and distribution of days/hours according to contractual conditions.
  • It is a key table for workforce analysis, compensation, planning, and HR reporting.
 

Related cohort tables: contracts_cohort_by_day, contracts_cohort_by_month, and contracts_cohort_by_year provide historical snapshots of the same data at different time granularities, enabling point-in-time analysis without relying on the current contract state.

 
 

contracts_cohort_by_day

Daily snapshot of the contracts table. Stores contract information as it existed on each day, allowing historical analysis of contract changes over time.

Entity

Employees / Contracts / Historical Snapshots

Use Cases

  • Daily headcount evolution
  • Historical contract analysis
  • Workforce changes over time
  • Point-in-time reporting

 

Notes

  • Contains the same fields as contracts.
  • Each record represents the contract state for a specific day.
  • Used when historical daily reporting is required instead of the current contract information.
 
 
 

contracts_cohort_by_month

Monthly snapshot of the contracts table. Stores contract information at a monthly granularity for historical workforce analysis.

Entity

Employees / Contracts / Historical Snapshots

Use Cases

  • Monthly headcount analysis
  • Workforce evolution
  • Historical salary and contract reporting
  • Monthly HR analytics

 

Notes

  • Contains the same fields as contracts.
  • Each record represents the contract state for a specific month.
  • Optimized for monthly trend analysis.
 
 
 

contracts_cohort_by_year

Yearly snapshot of the contracts table. Stores contract information at a yearly granularity for long-term historical analysis.

Entity

Employees / Contracts / Historical Snapshots

Use Cases

  • Year-over-year workforce analysis
  • Long-term contract evolution
  • Annual HR reporting
  • Historical compensation trends

 

Notes

  • Contains the same fields as contracts.
  • Each record represents the contract state for a specific year.
  • Optimized for annual reporting and long-term trend analysis.
 
 
 

custom-resources-competencies-v2-nineboxes

Data related to the 9 box grid.

 
 

custom_tables_employees

Contains information stored in Custom Tables created by each company. The structure of this table is dynamic and depends entirely on the custom fields configured by the client.

Initially, the table only contains employee_id. As new fields are added to a Custom Table, they will automatically appear as additional exposers in this dataset.

Entity

Employees / Custom Tables / Custom Fields

Use Cases

  • Store custom employee information.
  • Extend the data model without modifying standard tables.
  • Build reports using company-specific data.
  • Analyze business-specific attributes.

 

Keys

Field Type Usage
employee_id Number (FK) Relation to the employee

 

Relationships

  • custom_tables_employees.employee_idemployees.idPurpose: Associate custom information with an employee.

 

Key Fields

Field Exposer Type Description
employee_id Number Employee associated with the Custom Table record

Custom fields created by the client will automatically appear as new columns in this table. Their data type depends on the field configuration (String, Number, Date, Boolean, etc.).

 

 

Features / Relevant Data

  • Allows completely custom employee attributes to be incorporated into the data model.
  • The table structure varies from one company to another.
  • Custom fields can be used for segmentation, reporting, or company-specific analysis.

 

Notes

  • This is a dynamic table; its structure is not fixed.
  • Each company may have different columns depending on the Custom Tables and Custom Fields they have configured.
  • At the moment, it only exposes employee_id until custom fields are created by the client.
  • Custom fields are exposed using internal identifiers (IDs) rather than human-readable field names, making it necessary to map each ID to its corresponding field definition. This may complicate data interpretation and AI consumption.
  • It is commonly joined with employees to enrich employee information with company-specific attributes.
 
 
 

daily_time_configs

Contains aggregated daily Time Tracking information. Unlike the shifts table, which stores transactional clock-in and clock-out records, this table provides pre-calculated daily metrics, making it the recommended dataset for reporting and time calculations.

Entity

Time Tracking / Attendance / Employees

Use Cases

  • Time Tracking reports
  • Worked hours calculations
  • Planned vs. worked hours analysis
  • Time balance calculations
  • Productivity reporting
  • Overtime calculations
  • Attendance compliance reporting

 

Keys

Field Type Usage
id Number (PK) Daily record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • daily_time_configs.employee_idemployees.idPurpose: Retrieve employee information.
  • daily_time_configs.datecompany_holidays.datePurpose: Identify company holidays and adjust expected working hours.
  • daily_time_configs.employee_idleaves.employee_idPurpose: Analyze absences together with worked hours.
  • daily_time_configs.employee_idcontracts.employee_idPurpose: Compare contractual hours against worked hours.
  • daily_time_configs.dateshifts.datePurpose: Retrieve transactional clock-in details when needed.

 

Key Fields

Field Exposer Type Description
estimated_hours Number Expected working hours for the day
worked_hours Number Worked hours considered for Time Tracking
worked_hours_in_schedule Number Worked hours within the planned schedule
worked_hours_out_schedule Number Worked hours outside the planned schedule
tracked_hours Number Total tracked hours from clock-ins
balance Number Difference between worked and expected hours
date Date Record date
employee_id Number Associated employee

 

Features / Relevant Data

  • estimated_hours → expected workforce capacity
  • worked_hours → daily productivity analysis
  • balance → deviation from expected working hours
  • worked_hours_in_schedule → schedule compliance
  • worked_hours_out_schedule → work performed outside scheduled hours
  • tracked_hours → total recorded working time
  • date → time-series and trend analysis

 

Notes

  • This is an aggregated dataset and does not store individual clock-in transactions.
  • Unlike shifts, it does not provide clock-in/out timestamps, device information, or clock-in type.
  • It is the recommended table for Time Tracking calculations and reporting, while shifts should be used when transaction-level details are required.
  • Days without scheduled working time are still included in the dataset, with estimated_hours = 0, allowing continuous date-based reporting without generating missing dates.
  • Commonly used for overtime calculations, worked hours analysis, attendance reporting, productivity metrics, and schedule compliance.
  • This table must be enabled through the feature flag dev_time_tracking_daily_time_configs. After enabling it, the Reports tool must be refreshed for the exposers to become available.
  • Time values are generally stored and displayed using the decimal number system (e.g., 7.50 hours).
 
 
 

documents

Contains all documents associated with employees within the platform. Stores information about uploaded files, document type, approval status, signature status, and relationships with other entities such as leaves and custom fields.

In addition to general employee documents, this table also includes documents uploaded as supporting evidence for employee leaves through the leave_id relationship.

Entity

Documents / Employees / Leaves

Use Cases

  • Employee document management
  • Signed and pending document tracking
  • Leave supporting document validation
  • Document auditing
  • Compliance analysis

 

Keys

Field Type Usage
id Number (PK) Unique document identifier
employee_id Number (FK) Relation to the employee
leave_id Number (FK) Relation to the associated leave

 

Relationships

  • documents.employee_idemployees.idPurpose: Retrieve the employee who owns the document.
  • documents.leave_idleaves.idPurpose: Associate supporting documents with employee leave requests.
  • documents.created_byemployees.id *(when applicable)*Purpose: Identify the user who created or uploaded the document.
  • documents.custom_field_* → Custom FieldsPurpose: Store company-specific information configured through custom document fields.

 

Key Fields

Field Exposer Type Description
filename String Document file name
download_url String URL to download the document
type String Document type or category
content_type String MIME type of the uploaded file
created_at Date Document creation/upload date
created_by Number User who created the document
link String Link associated with the document
approval_status String Document approval status
signature_status String Document signature status
custom_field_* Varies Custom fields associated with the document
leave_id Number Associated leave request (when applicable)
employee_id Number Employee who owns the document

 

Features / Relevant Data

  • type → document classification
  • approval_status → approval workflow analysis
  • signature_status → signature compliance analysis
  • created_at → document activity trends
  • leave_id → leave supporting documentation analysis
  • content_type → file format classification

 

Notes

  • Contains both general employee documents and documents associated with specific processes, such as leave requests.
  • Documents related to employee absences can be identified through leave_id.
  • Allows tracking of both document approval and signature status.
  • May contain custom fields created by each company, which will appear as additional exposers (custom_field_<id>).
  • Custom fields are exposed using internal IDs rather than descriptive field names, requiring an additional mapping to correctly interpret their business meaning. This may make AI consumption and interpretation more challenging.
  • download_url and link provide access to the document when the user has the appropriate permissions.
  • This table is commonly used for compliance processes, HR audits, document management, and leave validation.
 
 
 

employee_costs

Contains employee payroll cost center allocations. Stores the cost center assigned to each employee, including the cost center name, code, and the percentage of dedication allocated to each cost center.

This table is commonly used to distribute labor costs across multiple cost centers for payroll and financial reporting.

Entity

Payroll / Cost Centers / Employees

Use Cases

  • Payroll cost allocation
  • Cost center reporting
  • Workforce cost analysis
  • Financial and accounting reporting
  • Employee dedication analysis across cost centers

 

Keys

Field Type Usage
id Number (PK) Unique cost allocation identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • employee_costs.employee_idemployees.idPurpose: Associate cost center allocations with employees.
  • employee_costs.employee_idcontracts.employee_idPurpose: Analyze labor costs together with contractual information.
  • employee_costs.employee_id → Payroll-related tablesPurpose: Allocate payroll expenses across different cost centers.

 

Key Fields

Field Exposer Type Description
cost_center_name String Name of the assigned cost center
dedication Number Percentage of employee dedication assigned to the cost center
cost_center_code String Cost center identifier/code
employee_id Number Associated employee

 

Features / Relevant Data

  • cost_center_name → workforce distribution by cost center
  • dedication → labor cost allocation analysis
  • cost_center_code → financial reporting and accounting integration
  • employee_id → employee cost distribution analysis

 

Notes

  • An employee can be assigned to multiple cost centers, each with a different dedication percentage.
  • The dedication value is typically expressed as a percentage of the employee's allocation to a specific cost center.
  • Commonly used for payroll allocation, financial reporting, budgeting, and labor cost analysis.
  • Frequently combined with contracts to calculate labor costs and with payroll datasets for accounting and reporting purposes.
 
 
 

employee_presences

Contains the current presence status of employees within the platform. It indicates whether an employee is currently at work, on leave, or off work, providing a real-time overview of workforce availability.

Entity

Attendance / Presence / Employees

Use Cases

  • Workforce availability monitoring
  • Attendance dashboards
  • Real-time employee presence reporting
  • Operational workforce management
  • Leave and attendance status analysis

 

Keys

Field Type Usage
id Number (PK) Unique presence record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • employee_presences.employee_idemployees.idPurpose: Retrieve employee information.
  • employee_presences.employee_idleaves.employee_idPurpose: Validate when an employee's status is on leave.
  • employee_presences.employee_idshifts.employee_idPurpose: Compare current presence with clock-in activity.
  • employee_presences.employee_iddaily_time_configs.employee_idPurpose: Analyze employee presence together with worked and expected hours.

 

Key Fields

Field Exposer Type Description
presence_status String Current employee presence status (at_work, on_leave, off_work)
employee_id Number Associated employee

 

Features / Relevant Data

  • presence_status → workforce availability analysis
  • employee_id → employee presence monitoring

 

Notes

  • Represents the current presence status of each employee.
  • Common statuses include at_work, on_leave, and off_work.
  • Frequently used in dashboards displaying workforce availability and operational attendance.
  • Can be combined with shifts, daily_time_configs, and leaves to provide additional context about an employee's current status.
  • This table reflects an employee's presence status rather than detailed attendance or time tracking records.
 
 
 

employees

Contains the master employee information within the platform. Stores personal details, employment status, contact information, organizational structure, legal entity, management hierarchy, identifiers, and other HR-related data.

This is one of the core tables in the data model and is commonly used as the primary dimension for joining most HR, Payroll, Time Tracking, ATS, and document-related datasets.

Entity

Employees / HR / Workforce Management

Use Cases

  • Employee master data reporting
  • Headcount analysis
  • Workforce segmentation
  • Organizational structure reporting
  • Employee lifecycle analysis
  • HR compliance reporting
  • Employee directory
  • Cross-module reporting

 

Keys

Field Type Usage
id Number (PK) Unique employee identifier
manager_id Number (FK) Relation to the employee's manager
timeoff_manager_id Number (FK) Relation to the employee's Time Off approver

 

Relationships

As one of the central tables in the platform, employees is commonly related to almost every HR module, including:

  • contracts.employee_idemployees.idPurpose: Retrieve contractual information.
  • leaves.employee_idemployees.idPurpose: Analyze employee absences.
  • daily_time_configs.employee_idemployees.idPurpose: Analyze worked hours, balances, and attendance.
  • shifts.employee_idemployees.idPurpose: Retrieve transactional clock-in information.
  • employee_presences.employee_idemployees.idPurpose: Determine employee availability.
  • documents.employee_idemployees.idPurpose: Associate documents with employees.
  • employee_costs.employee_idemployees.idPurpose: Analyze payroll cost center allocations.
  • additional_compensations.employee_idemployees.idPurpose: Retrieve fixed employee compensations.
  • ats_applications.employee_idemployees.idPurpose: Identify candidates hired through ATS.
  • company_holidays.employee_idemployees.idPurpose: Associate employee-specific holidays.
  • manager_idemployees.idPurpose: Build organizational hierarchy.
  • timeoff_manager_idemployees.idPurpose: Identify the employee responsible for approving Time Off requests.

 

Key Fields

Field Exposer Type Description
company_identifier String Internal employee identifier
status String Current employee status
contract_version_starts_on Date Contract version start date
contract_version_effective_on Date Contract version effective date
terminated_on Date Employee termination date
termination_reason String Termination reason
termination_reason_type String Termination category
termination_type_description String Termination description
link String Employee profile link
first_name String First name
last_name String Last name
full_name String Full name
preferred_name String Preferred name
personal_email String Personal email
company_email String Company email
gender String Gender
nationality String Nationality
office String Assigned office
default_work_area String Default work area
legal_entity String Legal entity
manager String Manager name
timeoff_manager String Time Off manager
tenure_start_date Date Seniority start date
age Number Employee age
antiquity Number Employee seniority
birthday_on Date Birthday
email String Primary email
phone_number String Phone number
contact_name String Emergency contact
identifier String Employee identifier
identifier_type String Identifier type
social_security_number String Social Security Number
tax_id String Tax identification number
bank_number String Bank account number
swift_bic String SWIFT/BIC code
bank_number_format String Bank account format
address_line_1 String Address line 1
address_line_2 String Address line 2
city String City
postal_code String Postal code
state String State/Province
country String Country
legal_entity_country String Legal entity country
legal_entity_id Number Legal entity identifier
employee_group_name String Employee group
disability_percentage_cents Number Disability percentage
custom_field_* Varies Employee custom fields
manager_id Number Manager identifier
timeoff_manager_id Number Time Off manager identifier

 

Features / Relevant Data

  • status → active/inactive workforce analysis
  • office → workforce distribution by location
  • legal_entity → legal entity segmentation
  • manager_id → organizational hierarchy
  • employee_group_name → workforce segmentation
  • country → geographical analysis
  • tenure_start_date / antiquity → employee tenure analysis
  • terminated_on → employee lifecycle analysis
  • age → workforce demographics
  • custom_field_* → client-specific employee attributes

 

Notes

  • This is one of the core tables in the platform and is commonly used as the starting point for HR reporting.
  • May contain custom fields configured from the Employee Information section. These fields are exposed following the pattern custom_field_<id>.
  • Custom fields are exposed using internal IDs rather than descriptive field names, requiring an additional mapping to correctly interpret their business meaning.
  • Contains personally identifiable information (PII); appropriate data governance should be considered when using this dataset.
  • Frequently used for headcount, organizational charts, workforce segmentation, employee lifecycle analysis, payroll reporting, attendance reporting, and cross-module analytics.
 
 
 

employees_cohor_by_day

Daily snapshot of the employees table. Stores employee information as it existed on each day, enabling historical point-in-time reporting.

Entity

Employees / Historical Snapshots

Use Cases

  • Daily headcount analysis
  • Historical workforce reporting
  • Employee lifecycle tracking

Notes

  • Contains the same fields as employees.
  • Each record represents the employee state for a specific day.
  • Used for historical reporting instead of current employee information.
 
 
 

employees_cohor_by_month

Monthly snapshot of the employees table. Stores employee information at a monthly granularity for historical analysis.

Entity

Employees / Historical Snapshots

Use Cases

  • Monthly workforce evolution
  • Monthly headcount reporting
  • Historical HR analytics

Notes

  • Contains the same fields as employees.
  • Each record represents the employee state for a specific month.
  • Optimized for monthly trend analysis.
 
 
 

employees_cohor_by_year

Yearly snapshot of the employees table. Stores employee information at a yearly granularity for long-term workforce analysis.

Entity

Employees / Historical Snapshots

Use Cases

  • Annual workforce reporting
  • Year-over-year headcount analysis
  • Historical employee trend analysis

Notes

  • Contains the same fields as employees.
  • Each record represents the employee state for a specific year.
  • Optimized for long-term historical reporting.
 
 
 

expenses_expensables_group

Contains information about expense groups created by employees within the Expenses module. An expense group can contain one or multiple individual expense items related to the same business purpose, simplifying the review, approval, and reimbursement process.

This table stores general information about each group, including its name, description, status, total reimbursable amount, and reimbursement currency.

Entity

Expenses / Expense Groups / Employees

Use Cases

  • Employee expense reporting
  • Reimbursement request tracking
  • Corporate expense analysis
  • Approval workflow monitoring
  • Expense auditing

 

Keys

Field Type Usage
id Number (PK) Unique expense group identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • expenses_expensable_groups.employee_idemployees.idPurpose: Retrieve information about the employee who owns the expense group.
  • expenses_expensable_groups.id → individual expense tables *(when applicable)*Purpose: Associate the expense group with the individual expenses it contains.

 

Key Fields

Field Exposer Type Description
name String Expense group name
description String Expense group description
status String Expense group status
reimbursable_currency String Currency of the reimbursable amount
reimbursable_amount Number Total reimbursable amount
review_request_at Date Date when the review was requested
employee_id Number Associated employee

 

Features / Relevant Data

  • status → approval workflow analysis
  • reimbursable_amount → reimbursement and cost analysis
  • reimbursable_currency → currency distribution
  • review_request_at → review timeline analysis
  • employee_id → employee expense analysis

 

Notes

  • An expense group can contain one or multiple individual expense items related to the same business purpose.
  • The reimbursable amount represents the total amount of all expenses included in the group.
  • Commonly used for financial reporting, reimbursement tracking, and expense approval workflow analysis.
  • Frequently combined with employees to analyze expenses by employee, department, or organizational structure.
 
 
 

expenses_expensables

Contains detailed information about individual expense items submitted by employees within the Expenses module. Each record represents a single expense, including merchant information, category, amount, taxes, payment method, attached documents, and relationships with projects or expense groups.

This is the primary table for detailed corporate expense analysis.

Entity

Expenses / Expense Items / Employees

Use Cases

  • Detailed expense reporting
  • Reimbursement analysis
  • Corporate expense tracking
  • Approval workflow monitoring
  • Project cost analysis
  • Financial auditing

 

Keys

Field Type Usage
id Number (PK) Unique expense identifier
employee_id Number (FK) Relation to the employee
group_id Number (FK) Relation to the expense group
project_id Number (FK) Relation to the project
subproject_id Number (FK) Relation to the subproject
ledger_account_id Number (FK) Relation to the ledger account
card_payment_id Number (FK) Relation to the corporate card payment

 

Relationships

  • expenses_expensables.employee_idemployees.idPurpose: Retrieve the employee who submitted the expense.
  • expenses_expensables.group_idexpenses_expensable_groups.idPurpose: Associate the expense with its expense group.
  • expenses_expensables.project_idprojects.id *(when applicable)*Purpose: Allocate expenses to projects.
  • expenses_expensables.subproject_idsubprojects.id *(when applicable)*Purpose: Allocate expenses to subprojects.
  • expenses_expensables.ledger_account_id → Ledger Accounts *(when applicable)*Purpose: Classify expenses for accounting purposes.
  • expenses_expensables.card_payment_id → Card Payments *(when applicable)*Purpose: Identify expenses paid using corporate cards.

 

Key Fields

Field Exposer Type Description
merchant_name String Merchant name
merchant_tin String Merchant tax identification number
category String Expense category
subcategory String Expense subcategory
mileage Number Distance traveled
units Number Number of units
round_trip Boolean Indicates whether the trip was round-trip
rate Number Applied rate
origin String Trip origin
destination String Trip destination
effective_on Date Expense date
currency String Original expense currency
amount Number Expense amount
vat_amount Number VAT amount
description String Expense description
creation_type String Expense creation method
reference String Expense reference
status String Expense status
review_request_at Date Review request date
approved_at Date Approval date
document_number String Fiscal document number
document_type String Document type
payment String Payment type
payment_method String Payment method
exchange_rate Number Applied exchange rate
reimbursable_currency String Reimbursement currency
reimbursable_amount Number Reimbursable amount
start_date Date Start date (when applicable)
end_date Date End date (when applicable)
spending_alert_types String Spending alerts triggered
files String Attached files
employee_id Number Associated employee
group_id Number Expense group
project_id Number Associated project
subproject_id Number Associated subproject
ledger_account_id Number Ledger account
card_payment_id Number Associated corporate card payment

 

Features / Relevant Data

  • category / subcategory → expense classification
  • amount → cost analysis
  • vat_amount → tax analysis
  • currency → currency distribution
  • status → approval workflow analysis
  • approved_at → approval timeline analysis
  • payment_method → payment method analysis
  • merchant_name → vendor analysis
  • project_id / subproject_id → project cost allocation
  • reimbursable_amount → reimbursement analysis

Notes

  • Each record represents a single expense item.
  • Can be linked to an Expense Group through group_id.
  • Supports project and subproject allocation for cost tracking.
  • Includes tax information, exchange rates, original currency, and reimbursement currency.
  • Corporate card transactions can be identified through card_payment_id.
  • Expense records may include supporting documents through the files field.
  • This is the primary table used for expense auditing, financial reporting, reimbursement analysis, and corporate spending control.
 

 

 
 

expenses_transactions

Contains financial transactions generated within the Expenses module. This table stores transactions associated with bank accounts or corporate cards, including the transaction amount, currency, status, transaction type, and reconciliation information.

It is primarily used to monitor payments, perform bank reconciliations, and link financial transactions to recorded expenses.

Entity

Expenses / Financial Transactions / Payments

Use Cases

  • Bank reconciliation
  • Payment tracking
  • Financial transaction analysis
  • Corporate card monitoring
  • Financial auditing

 

Keys

Field Type Usage
id Number (PK) Unique transaction identifier
card_payment_id Number (FK) Relation to the corporate card payment
category_id Number (FK) Relation to the financial category

 

Relationships

  • expenses_transactions.card_payment_id → Card Payments *(when applicable)*Purpose: Associate the transaction with a corporate card payment.
  • expenses_transactions.category_id → Expense Categories *(when applicable)*Purpose: Classify the transaction into a financial category.
  • expenses_transactions.card_payment_idexpenses_expensables.card_payment_idPurpose: Link the financial transaction to the corresponding expense record.

 

Key Fields

Field Exposer Type Description
available_on Date Date when the transaction became available
amount Number Transaction amount
currency String Transaction currency
description String Transaction description
status String Transaction status
transaction_type String Transaction type
bank_account String Associated bank account
fully_reconciled_at Date Date when the transaction was fully reconciled
card_payment_id Number Associated corporate card payment
category_id Number Financial category

 

Features / Relevant Data

  • amount → financial analysis
  • currency → currency distribution
  • status → reconciliation monitoring
  • transaction_type → financial movement classification
  • fully_reconciled_at → reconciliation timeline analysis
  • bank_account → bank account analysis

 

Notes

  • Each record represents a single financial transaction.
  • A transaction can be associated with an expense through card_payment_id.
  • fully_reconciled_at indicates when the transaction has been completely reconciled.
  • Commonly used for bank reconciliation, corporate card management, payment tracking, and financial auditing.
  • Frequently combined with expenses_expensables to provide end-to-end visibility from the financial transaction to the recorded expense.
 
 
 

family_situations

Contains information related to an employee's family situation or marital status. This information is commonly used for payroll, benefits administration, legal compliance, and HR reporting.

Entity

Employees / HR / Family Information

Use Cases

  • Demographic reporting
  • Employee segmentation
  • Payroll configuration
  • Benefits analysis
  • HR reporting

 

Keys

Field Type Usage
employee_id Number (FK) Relation to the employee

 

Relationships

  • family_situations.employee_idemployees.idPurpose: Retrieve the employee associated with the family information.

 

Key Fields

Field Exposer Type Description
civil_status String Employee's marital status
employee_id Number Associated employee

 

Features / Relevant Data

  • civil_status → demographic segmentation
  • employee_id → employee relationship

 

Notes

  • Typically contains a single record per employee.
  • Commonly used for Payroll, benefits administration, and legal compliance, depending on each company's configuration.
  • Frequently combined with employees to enrich demographic and administrative reporting.
 

 

 
 

finance_bank_accounts

Contains information about bank accounts configured within the Finance module. It includes account identification details, currency, bank information, beneficiary, different balance types, and the last synchronization date with the financial institution.

This table is primarily used for bank account monitoring, reconciliation processes, and liquidity analysis.

Entity

Finance / Bank Accounts

Use Cases

  • Bank account monitoring
  • Financial reporting
  • Bank reconciliation
  • Liquidity analysis
  • Balance tracking

 

Keys

Field Type Usage
id Number (PK) Unique bank account identifier

 

Relationships

  • finance_bank_accounts.currency → Financial module currencies.Purpose: Identify the account currency.
  • finance_bank_accounts.idexpenses_transactions.bank_account *(when applicable)*Purpose: Associate financial transactions with the corresponding bank account.

 

Key Fields

Field Exposer Type Description
currency String Bank account currency
country String Country where the account is registered
account_number String Bank account number
account_balance_cents Number Total account balance
available_balance_cents Number Available balance
pending_balance_cents Number Pending balance
beneficiary_name String Account holder or beneficiary name
bank_name String Bank name
alias String Internal account alias
last_synchronised_at Date Last synchronization date

 

Features / Relevant Data

  • account_balance_cents → total account balance
  • available_balance_cents → available liquidity
  • pending_balance_cents → pending transactions
  • currency → currency distribution
  • bank_name → financial institution analysis
  • last_synchronised_at → bank synchronization monitoring

 

Notes

  • Each record represents a bank account configured in the platform.
  • Balance fields are stored in cents to avoid floating-point precision issues. Divide the values by 100 to obtain the monetary amount.
  • Can be combined with expenses_transactions for bank reconciliation and financial transaction tracking.
  • Commonly used for financial reporting, liquidity management, and bank account administration.
 
 
 

finance_card_payments

Contains information about payments made using corporate cards within the Finance module. It stores payment amounts, merchant information, currency, approval status, transaction type, and additional details related to validation and reconciliation processes.

This table allows corporate card transactions to be linked with expense records created in the Expenses module.

Entity

Finance / Corporate Cards / Payments

Use Cases

  • Corporate card payment tracking
  • Expense reconciliation
  • Corporate spending analysis
  • Merchant spending analysis
  • Financial auditing

 

Keys

Field Type Usage
id Number (PK) Unique corporate card payment identifier
card_id Number (FK) Relation to the corporate card

 

Relationships

  • finance_card_payments.idexpenses_expensables.card_payment_idPurpose: Associate the corporate card payment with the recorded expense.
  • finance_card_payments.idexpenses_transactions.card_payment_idPurpose: Associate the payment with the corresponding financial transaction.
  • finance_card_payments.card_id → Corporate Cards *(when applicable)*Purpose: Identify the corporate card used for the payment.

 

Key Fields

Field Exposer Type Description
amount_cents Number Payment amount in the account currency
currency String Payment currency
merchant_name String Merchant name
merchant_amount_cents Number Amount charged by the merchant
merchant_currency String Merchant currency
approved Boolean Indicates whether the payment was approved
status String Payment status
type String Transaction type
exchange_rate Number Applied exchange rate
label String Payment label or description
rejected_reason String Rejection reason (when applicable)
card_id Number Corporate card used

 

Features / Relevant Data

  • amount_cents → spending analysis
  • merchant_name → vendor analysis
  • approved → approval rate
  • status → payment workflow monitoring
  • merchant_currency → international spending analysis
  • exchange_rate → currency conversion analysis
  • type → transaction classification

 

 Notes

  • Each record represents a single corporate card payment.
  • Monetary fields (amount_cents and merchant_amount_cents) are stored in cents to ensure precision. Divide by 100 to obtain the monetary value.
  • Can be linked to expenses_expensables to identify the associated expense and to expenses_transactions to complete the financial reconciliation process.
  • Commonly used for corporate card auditing, automatic expense reconciliation, and corporate spending control.
 
 
 

finance_cardholders

Contains information about corporate cardholders within the Finance module. It stores the cardholder's contact information and links them to both a bank account and the corresponding employee.

This table acts as the bridge between employees and the corporate cards assigned to them.

Entity

Finance / Cardholders / Employees

Use Cases

  • Corporate cardholder management
  • Corporate card assignment
  • Employee-to-card relationship tracking
  • Corporate card auditing
  • Linked bank account management

 

Keys

Field Type Usage
id Number (PK) Unique cardholder identifier
employee_id Number (FK) Relation to the employee
bank_account_id Number (FK) Relation to the bank account

 

Relationships

  • finance_cardholders.employee_idemployees.idPurpose: Retrieve the employee assigned as the cardholder.
  • finance_cardholders.bank_account_idfinance_bank_accounts.idPurpose: Identify the bank account associated with the cardholder.
  • finance_cardholders.idfinance_cards.cardholder_idPurpose: Retrieve the corporate cards assigned to the cardholder.

 

Key Fields

Field Exposer Type Description
email String Cardholder email address
phone_number String Phone number
phone_country_code String International phone country code
bank_account_id Number Associated bank account
employee_id Number Associated employee

 

Features / Relevant Data

  • employee_id → cardholder assignment
  • bank_account_id → bank account relationship
  • email → cardholder identification
  • phone_country_code → geographical distribution
  • phone_number → contact information

 

Notes

  • Each record represents a corporate cardholder.
  • Serves as an intermediary entity between employees, finance_cards, and finance_bank_accounts.
  • A single cardholder may have one or multiple corporate cards assigned.
  • Commonly used for corporate card administration, access control, and financial reconciliation.
 
 
 

finance_cards

Contains information about corporate cards configured within the Finance module. It stores card identification details, cardholder information, status, expiration dates, digital wallet support, and the associated bank account.

This table is used to manage company-issued cards and relate them to payments, financial transactions, and bank accounts.

Entity

Finance / Corporate Cards

Use Cases

  • Corporate card management
  • Active and inactive card monitoring
  • Corporate payment method management
  • Financial auditing
  • Corporate card reconciliation

 

Keys

Field Type Usage
id Number (PK) Unique corporate card identifier
bank_account_id Number (FK) Relation to the bank account
cardholder_id Number (FK) Relation to the cardholder

 

Relationships

  • finance_cards.idfinance_card_payments.card_idPurpose: Retrieve all payments made with a specific corporate card.
  • finance_cards.bank_account_idfinance_bank_accounts.idPurpose: Identify the bank account linked to the card.
  • finance_cards.cardholder_idemployees.id *(when applicable)*Purpose: Identify the employee assigned as the cardholder.

 

Key Fields

Field Exposer Type Description
full_name String Cardholder name
phone_number String Associated phone number
last4 String Last four digits of the card
status String Card status
type String Card type
exp_month Number Expiration month
exp_year Number Expiration year
created_at Date Card creation date
alias String Card alias
description String Card description
creation_source String Card creation source
apple_pay_enabled Boolean Apple Pay enabled
google_pay_enabled Boolean Google Pay enabled
bank_account_id Number Associated bank account
cardhodler_id Number Assigned cardholder

 

Features / Relevant Data

  • status → active/inactive card analysis
  • type → card classification
  • exp_month / exp_year → expiration monitoring
  • apple_pay_enabled → Apple Pay adoption
  • google_pay_enabled → Google Pay adoption
  • creation_source → card issuance source
  • bank_account_id → bank account distribution

 

Notes

  • Each record represents a single corporate card.
  • A card can be linked to a bank account through bank_account_id.
  • A card can be assigned to an employee through cardholder_id.
  • Transactions made with the card can be retrieved from finance_card_payments.
  • The last4 field provides a secure way to identify a card without exposing the full card number.
  • Commonly used for corporate card administration, financial reconciliation, and corporate spending management.
 

 

The exposer appears as cardhodler_id, but it most likely represents cardholder_id (assigned cardholder). If documenting the raw schema, keep the original exposer name and optionally note the apparent typo.

 
 

finance_categories

Contains the financial categories used within the Finance module to classify transactions, expenses, and other financial movements. Categories can be organized hierarchically using parent-child relationships, allowing for a structured financial classification.

This table helps standardize and organize financial information for reporting and accounting purposes.

Entity

Finance / Categories

Use Cases

  • Expense classification
  • Transaction classification
  • Financial reporting
  • Accounting
  • Category-based analysis

 

Keys

Field Type Usage
id Number (PK) Unique category identifier
parent_category_id Number (FK) Relation to the parent category

 

Relationships

  • finance_categories.idexpenses_transactions.category_idPurpose: Classify financial transactions.
  • finance_categories.parent_category_idfinance_categories.idPurpose: Build the category hierarchy (parent/child).

 

Key Fields

Field Exposer Type Description
label String Display name of the category
default_label String Default category name
identifier String Internal category identifier
protected Boolean Indicates whether the category is protected from modification
visible Boolean Indicates whether the category is visible to users
enabled Boolean Indicates whether the category is enabled
parent_category_id Number Parent category identifier

 

Features / Relevant Data

  • label → financial classification
  • protected → system category identification
  • visible → user availability
  • enabled → active/inactive category analysis
  • parent_category_id → category hierarchy

 

Notes

  • Each record represents a financial category.
  • Categories can be organized into a hierarchical structure using parent_category_id.
  • Categories marked as protected are typically system-defined and may have editing restrictions.
  • Primarily used to classify financial transactions and expenses across Finance modules.
  • Frequently related to expenses_transactions for category-based financial reporting and analysis.
 
 
 

finance_ledger_accounts

Contains the Chart of Accounts (Ledger Accounts) used within the Finance module. These accounts are used to classify expenses, financial transactions, and other accounting movements, while also being associated with specific legal entities.

This table is essential for accounting integrations and financial reporting.

Entity

Finance / Ledger Accounts / Accounting

Use Cases

  • Expense accounting classification
  • Accounting integrations
  • Financial reporting
  • Legal entity segmentation
  • Financial auditing

 

Keys

Field Type Usage
id Number (PK) Unique ledger account identifier
legal_entity_id Number (FK) Relation to the legal entity
parent_legal_entity_id Number (FK) Relation to the parent legal entity

 

Relationships

  • finance_ledger_accounts.idexpenses_expensables.ledger_account_idPurpose: Classify expenses for accounting purposes.
  • finance_ledger_accounts.legal_entity_idemployees.legal_entity_id *(when applicable)*Purpose: Associate ledger accounts with a specific legal entity.
  • finance_ledger_accounts.parent_legal_entity_id → Parent Legal Entities *(when applicable)*Purpose: Organize ledger accounts according to the organizational structure.

 

Key Fields

Field Exposer Type Description
name String Ledger account name
number String Account number or accounting code
legal_entity_id Number Associated legal entity
parent_legal_entity_id Number Parent legal entity
type String Ledger account type
currency String Account currency
external_id String External identifier associated with the ledger account, when available

 

Features / Relevant Data

  • type → accounting classification
  • currency → currency analysis
  • legal_entity_id → legal entity segmentation
  • number → accounting identification
  • external_id → external integration reference

 

Notes

  • Each record represents a ledger account within the organization's Chart of Accounts.
  • Primarily used to classify expenses and financial transactions for accounting purposes.
  • Can be linked to expenses_expensables through ledger_account_id.
  • Frequently used to generate accounting and financial reports grouped by legal entity and chart of accounts.
 
 
 

forfait_jours_by_months

Contains the monthly summary for employees subject to the Forfait Jours working scheme. It records, for each day of the month, whether the employee worked, was absent, and the corresponding leave type.

This table is intended for employees whose workload is measured in worked days rather than worked hours, making it particularly useful for labor compliance in countries such as France.

Entity

Time Tracking / Forfait Jours

Use Cases

  • Forfait Jours reporting
  • Worked day tracking
  • Leave monitoring
  • Labor compliance
  • Monthly activity summaries

 

Keys

Field Type Usage
id Number (PK) Unique record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • forfait_jours_by_months.employee_idemployees.idPurpose: Retrieve employee information.
  • forfait_jours_by_months.employee_id + dateleaves.employee_idPurpose: Retrieve leave details recorded for the day.
  • forfait_jours_by_months.employee_id + datedaily_time_configs.employee_id *(when applicable)*Purpose: Compare worked days with recorded activity.
  • forfait_jours_by_months.employee_id + dateshifts.employee_id *(when applicable)*Purpose: Validate attendance records for the day.

 

Key Fields

Field Exposer Type Description
date Date Record date
shift_worked Boolean Indicates whether the employee worked that day
absence_duration Number Leave duration
absence_type String Leave type
employee_id Number Associated employee

 

Features / Relevant Data

  • shift_worked → worked day analysis
  • absence_duration → leave analysis
  • absence_type → leave classification
  • date → monthly activity analysis

 

Notes

  • Each record represents one day within the monthly summary of an employee under the Forfait Jours working scheme.
  • This table is specifically intended for organizations managing employees under Forfait Jours, where working time is measured in days instead of hours.
  • It is commonly combined with employees, leaves, daily_time_configs, and shifts to build comprehensive attendance and activity reports.
  • It can be used to calculate worked days, leave days, and compliance with the Forfait Jours working scheme.
 
 
 

forfait_jours_by_months_cohort_by_day

Contains a daily snapshot of the data stored in forfait_jours_by_months. It allows historical analysis by preserving the state of Forfait Jours records as they existed during a specific period, making it suitable for auditing and retrospective reporting.

Entity

Time Tracking / Forfait Jours Snapshot

Use Cases

  • Historical auditing
  • Historical Forfait Jours reporting
  • Activity comparisons
  • Change tracking
  • Compliance analysis

 

Keys

Field Type Usage
id Number (PK) Unique record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • forfait_jours_by_months_cohort_by_day.employee_idemployees.idPurpose: Retrieve employee information.
  • forfait_jours_by_months_cohort_by_day.employee_id + dateleaves.employee_id *(when applicable)*Purpose: Retrieve the corresponding leave information.
  • forfait_jours_by_months_cohort_by_day.employee_id + datedaily_time_configs.employee_id *(when applicable)*Purpose: Compare historical records with daily tracked activity.
  • forfait_jours_by_months_cohort_by_day.employee_id + dateshifts.employee_id *(when applicable)*Purpose: Validate attendance records for the day.

 

Key Fields

Field Exposer Type Description
date Date Record date
shift_worked Boolean Indicates whether the employee worked that day
absence_duration Number Leave duration
absence_type String Leave type
cohort_start_date Date Snapshot period start date
cohort_end_date Date Snapshot period end date
employee_id Number Associated employee

 

Features / Relevant Data

  • shift_worked → historical worked day analysis
  • absence_duration → historical leave analysis
  • absence_type → historical leave classification
  • cohort_start_date / cohort_end_date → represented snapshot period

 

Notes

  • Maintains the same functional structure as forfait_jours_by_months, adding the snapshot period through cohort_start_date and cohort_end_date.
  • Preserves the historical state of Forfait Jours records instead of only exposing the current data.
  • Particularly useful for audits, historical comparisons, and compliance reporting.
  • Recommended whenever historical evolution needs to be analyzed rather than the current state of the data.
 
 
 

forfait_jours_by_months_cohort_by_month

Contains a monthly snapshot of the data stored in forfait_jours_by_months. It preserves the historical state of Forfait Jours records at the end of each month, making it suitable for retrospective analysis, monthly comparisons, and auditing.

Entity

Time Tracking / Forfait Jours Snapshot

Use Cases

  • Historical monthly reporting
  • Auditing
  • Monthly comparisons
  • Activity tracking
  • Compliance analysis

 

Keys

Field Type Usage
id Number (PK) Unique record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • forfait_jours_by_months_cohort_by_month.employee_idemployees.idPurpose: Retrieve employee information.
  • forfait_jours_by_months_cohort_by_month.employee_id + dateleaves.employee_id *(when applicable)*Purpose: Retrieve the corresponding leave information.
  • forfait_jours_by_months_cohort_by_month.employee_id + datedaily_time_configs.employee_id *(when applicable)*Purpose: Compare historical records with daily tracked activity.
  • forfait_jours_by_months_cohort_by_month.employee_id + dateshifts.employee_id *(when applicable)*Purpose: Validate attendance records for the day.

 

Key Fields

Field Exposer Type Description
date Date Record date
shift_worked Boolean Indicates whether the employee worked that day
absence_duration Number Leave duration
absence_type String Leave type
cohort_start_date Date Snapshot period start date
cohort_end_date Date Snapshot period end date
employee_id Number Associated employee

 

Features / Relevant Data

  • shift_worked → historical worked day analysis
  • absence_duration → historical leave analysis
  • absence_type → historical leave classification
  • cohort_start_date / cohort_end_date → represented snapshot period

 

Notes

  • Maintains the same functional structure as forfait_jours_by_months, adding the snapshot period through cohort_start_date and cohort_end_date.
  • Preserves the historical state of Forfait Jours records at the end of each month.
  • Particularly useful for monthly comparisons, audits, and trend analysis.
  • Recommended whenever monthly historical evolution needs to be analyzed rather than the current state of the data.
 
 
 

forfait_jours_by_months_cohort_by_year

Contains a yearly snapshot of the data stored in forfait_jours_by_months. It preserves the historical state of Forfait Jours records for each year, making it suitable for long-term analysis, auditing, and year-over-year comparisons.

Entity

Time Tracking / Forfait Jours Snapshot

Use Cases

  • Historical yearly reporting
  • Auditing
  • Year-over-year comparisons
  • Activity tracking
  • Compliance analysis

 

Keys

Field Type Usage
id Number (PK) Unique record identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • forfait_jours_by_months_cohort_by_year.employee_idemployees.idPurpose: Retrieve employee information.
  • forfait_jours_by_months_cohort_by_year.employee_id + dateleaves.employee_id *(when applicable)*Purpose: Retrieve the corresponding leave information.
  • forfait_jours_by_months_cohort_by_year.employee_id + datedaily_time_configs.employee_id *(when applicable)*Purpose: Compare historical records with daily tracked activity.
  • forfait_jours_by_months_cohort_by_year.employee_id + dateshifts.employee_id *(when applicable)*Purpose: Validate attendance records for the day.

 

Key Fields

Field Exposer Type Description
date Date Record date
shift_worked Boolean Indicates whether the employee worked that day
absence_duration Number Leave duration
absence_type String Leave type
cohort_start_date Date Snapshot period start date
cohort_end_date Date Snapshot period end date
employee_id Number Associated employee

 

Features / Relevant Data

  • shift_worked → historical worked day analysis
  • absence_duration → historical leave analysis
  • absence_type → historical leave classification
  • cohort_start_date / cohort_end_date → represented snapshot period

 

Notes

  • Maintains the same functional structure as forfait_jours_by_months, adding the snapshot period through cohort_start_date and cohort_end_date.
  • Preserves the historical state of Forfait Jours records for each year.
  • Particularly useful for year-over-year comparisons, audits, and long-term trend analysis.
  • Recommended whenever yearly historical evolution needs to be analyzed rather than the current state of the data.
 
 
 

forfait_jours_by_years

Contains the yearly summary for employees subject to the Forfait Jours working scheme. It records the total number of worked days during the year, the accumulated balance, and the contract used to perform the calculation.

This table is designed to analyze annual compliance with the Forfait Jours scheme, where working time is measured in days rather than hours.

Entity

Time Tracking / Forfait Jours

Use Cases

  • Yearly Forfait Jours reporting
  • Worked day tracking
  • Annual balance monitoring
  • Labor compliance
  • Auditing
  • Year-over-year analysis

 

Keys

Field Type Usage
id Number (PK) Unique record identifier
employee_id Number (FK) Relation to the employee
contract_id Number (FK) Relation to the contract used for the calculation

 

Relationships

  • forfait_jours_by_years.employee_idemployees.idPurpose: Retrieve employee information.
  • forfait_jours_by_years.contract_idcontracts.idPurpose: Retrieve the contractual conditions associated with the yearly calculation.
  • forfait_jours_by_years.employee_idforfait_jours_by_months.employee_idPurpose: Compare the yearly summary with the monthly breakdown.

 

Key Fields

Field Exposer Type Description
worked_days_in_year Number Total worked days during the year
balance Number Annual day balance
year Number Year of the record
employee_id Number Associated employee
contract_id Number Associated contract

 

Features / Relevant Data

  • worked_days_in_year → yearly worked day analysis
  • balance → annual balance monitoring
  • year → historical and year-over-year analysis

 

Notes

  • Each record represents the yearly summary of an employee under the Forfait Jours working scheme.
  • It is intended for organizations managing employees under Forfait Jours, where working time is measured in worked days rather than hours.
  • It is commonly used together with forfait_jours_by_months to obtain monthly details and with contracts to validate the contract used for the calculation.
  • Particularly useful for auditing, labor compliance, and annual reporting.
 
 
 

goals_metric_groups

Contains the Goal Metric Groups used in the Performance module. Each record represents a parent goal that groups one or more individual metrics (goals_metrics), allowing the overall progress of an initiative or objective to be evaluated.

Entity

Performance / Goals

Use Cases

  • Goal tracking
  • Performance reviews
  • Performance dashboards
  • Goal achievement analysis
  • OKR and objective tracking
  • Progress reporting

 

Keys

Field Type Usage
id Number (PK) Goal metric group identifier

 

Relationships

  • goals_metric_groups.idgoals_metrics.metric_group_idPurpose: Retrieve all metrics associated with the same goal.

 

Key Fields

Field Exposer Type Description
title String Goal or metric group name
description String Goal description
progress Number Overall goal progress
needs_attention Boolean Indicates whether the goal requires attention

 

Features / Relevant Data

  • progress → overall progress tracking
  • needs_attention → identify goals at risk
  • title → goal classification

 

Notes

  • Each record represents a parent goal that can contain one or multiple individual metrics.
  • This table serves as the parent entity for goals_metrics, consolidating the progress of all associated metrics.
  • It is commonly used to build Performance dashboards and monitor objectives at the individual, team, or organizational level.
  • The needs_attention field helps identify goals that may require follow-up or corrective actions.
  • To retrieve the full objective details, this table is typically joined with goals_metrics.
 
 
 

goals_metric_values

Contains the historical values recorded for each performance metric (goals_metrics). Each record represents an update to a metric at a specific point in time, allowing its progression to be analyzed over time.

Entity

Performance / Goals / Metric History

Use Cases

  • Historical goal tracking
  • Performance trend analysis
  • Change auditing
  • Progress analysis
  • Performance dashboards
  • Initial vs current vs target value comparison

 

Keys

Field Type Usage
id Number (PK) Record identifier
metric_id Number (FK) Related performance metric

 

Relationships

  • goals_metric_values.metric_idgoals_metrics.idPurpose: Retrieve the metric associated with the recorded value.
  • goals_metrics.metric_group_idgoals_metric_groups.id *(through goals_metrics)*Purpose: Analyze the evolution of metrics belonging to the same goal.

 

Key Fields

Field Exposer Type Description
quantitative_start_value Number Initial metric value
quantitative_target_value Number Target value
quantitative_current_value Number Recorded value at that point in time
qualitative_value String Recorded qualitative value
created_at Date Update timestamp
metric_id Number Associated metric

 

Features / Relevant Data

  • quantitative_current_value → performance evolution
  • quantitative_target_value → target comparison
  • created_at → historical trend analysis
  • qualitative_value → qualitative metric tracking

 

Notes

  • Each record represents a historical update to a performance metric.
  • Unlike goals_metrics, which stores the current state of a metric, this table preserves the history of value updates over time.
  • It is commonly used to analyze progress trends, generate historical reports, and audit performance changes.
  • It should be used together with goals_metrics to retrieve metric details and with goals_metric_groups to analyze the evolution of an entire goal.
 
 
 

goals_metrics

Contains information about Goal Metrics configured in Factorial. Each record represents an individual metric assigned to an employee, including its evaluation period, progress, target values, and current status.

This table is used to monitor performance for both quantitative and qualitative goals.

Entity

Performance / Goals / Metrics

Use Cases

  • Goal tracking
  • Performance reviews
  • Progress dashboards
  • Goal achievement analysis
  • Expected vs actual progress analysis
  • Performance reporting

 

Keys

Field Type Usage
id Number (PK) Metric identifier
assignee_id Number (FK) Assigned employee
metric_group_id Number (FK) Goal metric group

 

Relationships

  • goals_metrics.assignee_idemployees.idPurpose: Retrieve information about the employee responsible for the goal.
  • goals_metrics.metric_group_id → Goal Metric Groups *(when available)*Purpose: Group metrics belonging to the same goal or initiative.

 

Key Fields

Field Exposer Type Description
title String Metric name
starts_on Date Start date
ends_on Date End date
type String Metric type (quantitative or qualitative)
quantitative_start_value Number Initial value
quantitative_target_value Number Target value
quantitative_current_value Number Current value
qualitative_value String Qualitative value
progress Number Current progress
progress_status String Progress status
expected_progress Number Expected progress
assignee_id Number Assigned employee
metric_group_id Number Metric group

 

Features / Relevant Data

  • progress → progress tracking
  • expected_progress → expected vs actual comparison
  • progress_status → completion status
  • quantitative_target_value → target measurement
  • quantitative_current_value → current performance
  • type → goal type classification

 

Notes

  • Each record represents a single metric associated with a goal.
  • The table supports both quantitative and qualitative metrics.
  • Progress can be evaluated by comparing progress against expected_progress.
  • A single employee may have multiple active metrics at the same time.
  • It is primarily used for performance reporting, goal tracking, and individual or team performance analysis.
  • metric_group_id allows multiple metrics to be grouped under the same goal or initiative when applicable.
 
 
 

hour-breakdowns

Contains the calculated results generated by the company's Time Tracking policies for each employee and working day. The table breaks down tracked time according to the rules configured by the company, classifying it into regular time, overtime, public holiday time, and any other special working hour rules defined in the attendance policies.

Each record represents a calculation rule applied to an employee on a specific date, meaning that a single employee may have multiple records for the same day.

Entity

Time Tracking / Attendance Policies / Hour Calculations

Use Cases

  • Overtime reporting
  • Special Working Hours (Majorations) reporting
  • Regular vs overtime analysis
  • Daily balance calculations
  • Attendance policy validation
  • Worked time analysis by calculation rule

 

Keys

Field Type Usage
employee_id Number (FK) Relation to the employee

 

Relationships

  • hour_breakdowns.employee_idemployees.idPurpose: Retrieve employee information.
  • hour_breakdowns.datedaily_time_configs.date + employee_id *(when applicable)*Purpose: Compare the hour breakdown against daily time calculations.
  • hour_breakdowns.dateshifts.reference_date + employee_id *(when applicable)*Purpose: Link the calculated results to the original clock-in records.

 

Key Fields

Field Exposer Type Description
time_tracked Number Tracked time
regular_time_tracked Number Tracked regular time
extra_time_tracked Number Tracked overtime
effective_worked_time Number Effective worked time
effective_regular_time Number Effective regular worked time
effective_extra_time Number Effective overtime
estimated_hours Number Estimated working hours
scheduled_overtime Number Scheduled overtime
requested_overtime Number Requested overtime
time_range_type String Applied rule or time range type
time_range_name String Name of the applied rule
balance Number Daily time balance
default_time_in_range Number Time classified as standard hours
bank_holiday_time_in_range Number Time worked on public holidays
custom_time_in_range Number Time classified under custom rules
date Date Calculation date
employee_id Number Associated employee

 

Features / Relevant Data

  • effective_extra_time → overtime analysis
  • effective_regular_time → regular hours analysis
  • scheduled_overtime → planned vs actual overtime
  • requested_overtime → overtime request tracking
  • balance → daily balance monitoring
  • time_range_type → rule classification
  • time_range_name → attendance policy analysis
  • bank_holiday_time_in_range → public holiday work
  • custom_time_in_range → company-defined special rules

 

Notes

  • Each record represents the result of a calculation rule applied to an employee on a specific date.
  • A single employee may have multiple records for the same day, depending on the number of Time Tracking rules configured by the company.
  • The calculated values are entirely driven by the customer's Time Tracking policy configuration, so results may vary significantly across companies.
  • This is the primary data source for Overtime, Special Working Hours (Majorations), and other custom attendance rule reports.
  • It is commonly used together with employees, daily_time_configs, and shifts to validate calculations and build advanced attendance reports.
 
 
 

leaves

Contains all information related to employee leave requests. It includes the leave type, request status, duration, start and end dates, as well as information about supporting documentation.

This is the primary table used to analyze vacations, sick leave, paid leave, and any other absence managed through the Time Off module.

Entity

Time Off / Leaves / Employees

Use Cases

  • Leave reporting
  • Vacation reporting
  • Absenteeism analysis
  • Leave day and hour calculations
  • Approval tracking
  • Leave auditing

 

Keys

Field Type Usage
id Number (PK) Unique leave request identifier
employee_id Number (FK) Relation to the employee

 

Relationships

  • leaves.employee_idemployees.idPurpose: Retrieve employee information.
  • leaves.iddocuments.leave_idPurpose: Retrieve supporting documents attached to the leave request.
  • leaves.employee_id + start_on / finish_oncontracts.employee_idPurpose: Retrieve the applicable contract to correctly calculate working days and working hours during the leave period.
  • leaves.employee_id + datedaily_time_configs.employee_idPurpose: Compare leave periods against planned hours, worked hours, and daily balances.
  • leaves.employee_id + dateshifts.employee_idPurpose: Validate clock-ins during leave periods and identify attendance issues.
  • leaves.employee_id + dateshift_management_shifts.employee_idPurpose: Retrieve assigned shifts during the leave period.
  • leaves.employee_id + datework_schedule_schedules.employee_idPurpose: Retrieve the employee's planned working schedule.
  • leaves.employee_id + datecompany_holidays.employee_id *(when applicable)*Purpose: Identify public holidays overlapping with the leave period.

 

Key Fields

Field Exposer Type Description
leave_type_name String Leave type name
leave_type_name_slug String Internal leave type identifier
status String Leave request status
duration Number Total leave duration
duration_type String Duration unit (days, hours, half-day, etc.)
document_justified Boolean Indicates whether supporting documentation has been provided
created_at Date Leave request creation date
start_on Date Leave start date
finish_on Date Leave end date
link String Direct link to the leave request in Factorial
description String Leave description or reason
employee_id Number Associated employee

 

Features / Relevant Data

  • leave_type_name → leave type analysis
  • status → approval tracking
  • duration → duration analysis
  • duration_type → duration classification
  • document_justified → documentation compliance
  • start_on / finish_on → time-based analysis
  • created_at → request timeline analysis

Notes

  • Each record represents one leave request.
  • A leave request may span one or multiple days depending on start_on and finish_on.
  • The duration field only stores the total duration of the leave and does not provide a day-by-day or hour-by-hour breakdown.
  • To accurately calculate leave per working day or per working hour, this table should be combined with contracts, using fields such as working_week_days and the applicable contract version to split and distribute the leave across the employee's contractual working days.
  • This table is commonly enriched using:
    • contracts → contractual working days and working hours.
    • daily_time_configs → planned, worked, and balanced daily hours.
    • shifts → employee clock-in/out records.
    • shift_management_shifts → assigned shifts.
    • work_schedule_schedules → theoretical work schedules.
  • These relationships enable the creation of advanced Time Tracking reports, including:
    • Absenteeism reports.
    • Vacation and leave reports.
    • Attendance vs leave analysis.
    • Missing clock-in reports.
    • Late arrival reports.
    • Planned vs actual working time.
    • Employee attendance and Time Tracking dashboards.
  • Supporting documents can be retrieved through the relationship with documents.
  • This is one of the most frequently used tables for building Time Off reports.
 
 
 

leaves_cohort_by_day

Contains a daily snapshot of the leaves dataset. It allows historical analysis by preserving the state of leave records as they existed on a specific day.

Entity

Time Off / Leaves Snapshot

Notes

  • Same structure and fields as leaves.
  • Each record represents the state of a leave request on a specific day.
  • Recommended for daily historical reporting and auditing.
 
 
 

leaves_cohort_by_month

Contains a monthly snapshot of the leaves dataset. It enables historical reporting by preserving the state of leave records at the end of each month.

Entity

Time Off / Leaves Snapshot

Notes:

  • Same structure and fields as leaves.
  • Each record represents the state of a leave request for a specific month.
  • Recommended for monthly reporting, absenteeism trends, and historical analysis.
 
 
 

leaves_cohort_by_year

Contains a yearly snapshot of the leaves dataset. It allows long-term historical analysis without relying solely on the current state of leave records.

Entity

Time Off / Leaves Snapshot

Notes:

  • Same structure and fields as leaves.
  • Each record represents the state of a leave request for a specific year.
  • Recommended for year-over-year comparisons, auditing, and long-term historical reporting.
 
 
 

locations

Contains the Workplaces (Locations) configured within Factorial. Each record represents a physical workplace where employees can be assigned, including address information, time zone, and geographic coordinates.

This table centralises information about the company's offices, branches, and work locations.

Entity

Organisation / Workplaces / Locations

Use cases

  • Workplace reporting
  • Employee geographic distribution
  • Office and branch analysis
  • Country, state, and city segmentation
  • Workplace management

 

Keys

Field Type Usage
id Number (PK) Unique workplace identifier

 

Relationships

  • locations.nameemployees.office *(when applicable)*Purpose: Retrieve the workplace assigned to an employee.
  • locations.countryemployees.country *(when applicable)*Purpose: Geographic reporting and country-based segmentation.
  • locations.timezone → Time Tracking *(when applicable)*Purpose: Consider the workplace time zone in attendance and clock-in processes.

 

Key fields

Field Exposer Type Description
name String Workplace name
country String Country
state String State or province
city String City
address String Address
full_address String Full address
postal_code String Postal code
phone_number String Contact phone number
main Boolean Indicates whether this is the primary workplace
latitude Number Latitude
longitude Number Longitude
timezone String Time zone

 

Features / Relevant data

  • country → country analysis
  • state → regional segmentation
  • city → geographic distribution
  • main → primary workplace identification
  • timezone → time zone analysis
  • latitude / longitude → geolocation

 

Notes

  • Each record represents a workplace configured in Factorial.
  • Frequently used together with employees to segment reports by office, branch, or workplace.
  • Can be used to build geographic reports and analyze employee distribution across locations.
  • The timezone field is particularly useful for Time Tracking implementations and organizations operating across multiple time zones.
  • latitude and longitude enable integration with mapping services and geospatial analysis tools.
 
 

observations

Contains employee observations or notes recorded within Factorial. Each record represents a comment associated with an employee on a specific date, providing a historical log of internal notes.

These observations can be used to document follow-ups, incidents, recognition, or any other relevant information related to an employee.

Entity

Employees / Observations

Use cases

  • Employee follow-up
  • Incident tracking
  • Observation history
  • Audit reporting
  • Employee monitoring
  • Internal performance reviews

 

Keys

Field Type Usage
id Number (PK) Observation identifier
employee_id Number (FK) Related employee

 

Relationships

  • observations.employee_idemployees.idPurpose: Retrieve information about the associated employee.

 

Key fields

Field Exposer Type Description
observation String Observation content
date Date Observation date
employee_id Number Associated employee

 

Features / Relevant data

  • observation → note analysis
  • date → chronological tracking
  • employee_id → employee history

 

Notes

  • Each record represents a single observation associated with an employee.
  • An employee may have multiple observations recorded over time.
  • The observation field contains free-text information, so its content depends entirely on how each organization uses the feature.
  • It can be used to document incidents, recognition, follow-up notes, or any other relevant employee-related information.
  • This table is commonly used together with employees to build employee history and follow-up reports.
 
 

overtime_requests

Contains employee overtime requests. Each record represents an overtime request submitted for a specific date, including the requested hours, request status, and the justification provided by the employee.

This table stores overtime requests regardless of whether they are approved, rejected, or still pending.

Entity

Time Tracking / Overtime

Use cases

  • Overtime request reporting
  • Approval tracking
  • Request auditing
  • Requested overtime analysis
  • Productivity reporting

 

Keys

Field Type Usage
id Number (PK) Overtime request identifier
employee_id Number (FK) Related employee

 

Relationships

  • overtime_requests.employee_idemployees.idPurpose: Retrieve employee information.
  • overtime_requests.employee_id + dateshifts.employee_id *(when applicable)*Purpose: Validate the worked shift that generated the overtime request.
  • overtime_requests.employee_id + datedaily_time_configs.employee_id *(when applicable)*Purpose: Compare requested overtime against tracked hours and daily balances.
  • overtime_requests.employee_id + datehour_breakdowns.employee_id *(when applicable)*Purpose: Compare requested overtime against the overtime calculated by the Time Tracking policies.

 

Key fields

Field Exposer Type Description
date Date Request date
status String Request status
description String Employee description
reason String Reason for the request
hours Number Requested overtime hours
employee_id Number Associated employee

 

Features / Relevant data

  • hours → requested overtime analysis
  • status → approval tracking
  • reason → request categorisation
  • date → time trend analysis

 

Notes

  • Each record represents one overtime request.
  • This table stores requested overtime only and does not represent the overtime actually worked or calculated.
  • It is commonly combined with hour_breakdowns, daily_time_configs, and shifts to compare requested overtime with tracked hours and overtime calculated by the company's Time Tracking policies.
  • Depending on the company's workflow, requests may have statuses such as pending, approved, or rejected.
  • This table is particularly useful for auditing the overtime approval process and analyzing the difference between requested overtime and recognized overtime.
 
 

payroll_integrations

Contains the employee identifiers used by the different Payroll integration providers supported by Factorial. Each field stores the employee code assigned by a specific payroll provider, allowing employee records to be synchronised between Factorial and external payroll systems.

This table does not contain salary information or payroll calculations; it only stores the identifiers required by each integration.

Entity

Payroll / Integrations

Use cases

  • Payroll integration auditing
  • Synchronisation validation
  • Employee matching between Factorial and external payroll systems
  • Integration configuration reporting
  • Synchronisation troubleshooting

 

Keys

Field Type Usage
employee_id Number (FK) Related employee

 

Relationships

  • payroll_integrations.employee_idemployees.idPurpose: Retrieve information about the employee associated with each payroll integration.

 

Key fields

Field Exposer Type Description
a3innuva_employee_code String Employee code in A3innuva
a3nom_employee_code String Employee code in A3Nom
agenda_employee_code String Employee code in Agenda
datev_lauds_employee_code String Employee code in DATEV LAUDS
job_sistemi_employee_code String Employee code in Job Sistemi
sage100_employee_code String Employee code in Sage 100
silae_employee_code String Employee code in Silae
zucchetti_employee_code String Employee code in Zucchetti
employee_id Number Associated employee

 

Features / Relevant data

  • Stores the employee identifier used by different payroll providers.
  • An employee will typically have a value only for the payroll system configured by the company.
  • Facilitates data reconciliation between Factorial and external payroll platforms.

 

Notes

  • This table is intended exclusively for Payroll integrations.
  • It does not contain salary data, payroll items, payments, or financial information.
  • Depending on the company's configured integrations, many of these fields may remain empty.
  • It is primarily used to validate integration setups, troubleshoot synchronization issues, and map employees between Factorial and external payroll systems.
  • It is commonly used together with employees to identify the corresponding employee.
 
 

performance_review_evaluation_answers

Contains the responses submitted during Performance Reviews. Each record represents the answer provided to a specific question within an evaluation, including the main answer and an optional comment.

This table stores the actual responses submitted by reviewers and reviewees, allowing a completed evaluation to be fully reconstructed.

Entity

Performance / Performance Reviews

Use cases

  • Performance review result reporting
  • Response auditing
  • Performance analysis
  • Evaluation tracking
  • Result exports
  • Performance dashboards

 

Keys

Field Type Usage
evaluation_id Number (FK) Associated evaluation
question_uuid UUID (FK) Associated question

 

Relationships

  • performance_review_evaluation_answers.evaluation_idperformance_review_evaluations.idPurpose: Retrieve the evaluation associated with the response.
  • performance_review_evaluation_answers.question_uuidperformance_review_questions.uuidPurpose: Retrieve the corresponding question.
  • performance_review_evaluations.review_process_idperformance_review_processes.id *(through performance_review_evaluations)*Purpose: Identify the Performance Review process associated with the response.

 

Key fields

Field Exposer Type Description
question_uuid UUID Answered question
answer String Submitted answer
answer_comment String Additional comment associated with the answer
evaluation_id Number Associated evaluation

 

Features / Relevant data

  • answer → submitted response
  • answer_comment → additional feedback
  • question_uuid → link to the original question
  • evaluation_id → link to the corresponding evaluation

 

Notes

  • Each record represents the answer to a single question within a Performance Review evaluation.
  • The content of answer depends on the question type defined in performance_review_questions; it may contain free text, a rating, a selected option, or another supported response format.
  • answer_comment stores optional comments when the review form allows additional feedback.
  • To reconstruct a complete evaluation, this table is commonly joined with performance_review_questions and performance_review_evaluations.
  • It can also be related to performance_review_processes to provide the context of the overall review cycle.
  • This is the primary table used to analyze Performance Review results and generate detailed reports based on employee responses.
 
 

performance_review_evaluation

Contains information about individual performance evaluations performed within Performance Review processes in Factorial. Each record represents a single evaluation between a reviewer and a reviewee, including the evaluation type, its current status, and the review process it belongs to.

This table allows you to analyse who evaluates whom, the status of each evaluation, and its relationship to a specific performance review process.

Entity

Performance / Performance Reviews

Use cases

  • Performance review tracking
  • Review process auditing
  • Pending and completed evaluation reporting
  • Reviewer and reviewee analysis
  • Participation metrics
  • Performance dashboards

 

Keys

Field Type Usage
id Number (PK) Evaluation identifier
review_process_id Number (FK) Associated review process
reviewer_employee_id Number (FK) Employee acting as reviewer
target_employee_id Number (FK) Employee being reviewed

 

Relationships

  • performance_review_evaluations.reviewer_employee_idemployees.idPurpose: Retrieve reviewer information.
  • performance_review_evaluations.target_employee_idemployees.idPurpose: Retrieve reviewee information.
  • performance_review_evaluations.review_process_idperformance_review_processes.id *(when available)*Purpose: Retrieve information about the associated performance review process.

 

Key fields

Field Exposer Type Description
evaluation_type String Evaluation type (self review, manager review, peer review, etc.)
status String Evaluation status
reviewer_full_name String Reviewer's full name
target_full_name String Reviewee's full name
review_process_id Number Associated review process
reviewer_employee_id Number Reviewer identifier
target_employee_id Number Reviewee identifier

 

Features / Relevant data

  • evaluation_type → evaluation type classification
  • status → evaluation progress tracking
  • reviewer_employee_id → reviewer analysis
  • target_employee_id → reviewee analysis

 

Notes

  • Each record represents a single evaluation within a Performance Review process.
  • The same employee may participate as a reviewer, a reviewee, or both, depending on the review workflow.
  • evaluation_type distinguishes different review models, such as self-reviews, manager reviews, and peer reviews.
  • This table is commonly joined with employees to retrieve additional information about both reviewers and reviewees.
  • It is also frequently related to performance_review_processes to obtain details about the review cycle, including dates, configuration, and overall process status.
  • It is particularly useful for building Performance dashboards, measuring participation rates, and auditing performance review processes.
 
 

performance_review_final_employee_scores

Contains the final performance score assigned to each employee after completing a Performance Review process. Each record represents the consolidated result for an employee within a review cycle, including the final score, the scoring scale used, the normalized score, and the calculation timestamp.

This table stores the final outcome of the review process once all evaluations have been completed and processed.

Entity

Performance / Performance Reviews

Use cases

  • Performance reporting
  • Employee rankings
  • Final score analysis
  • Performance dashboards
  • Performance review auditing
  • Review cycle comparisons

 

Keys

Field Type Usage
id Number (PK) Final score identifier
review_process_id Number (FK) Associated review process
target_employee_id Number (FK) Reviewed employee

 

Relationships

  • performance_review_final_employee_scores.target_employee_idemployees.idPurpose: Retrieve information about the reviewed employee.
  • performance_review_final_employee_scores.review_process_idperformance_review_processes.idPurpose: Retrieve information about the associated Performance Review process.
  • performance_review_final_employee_scores.target_employee_id + review_process_idperformance_review_evaluations.target_employee_id *(when applicable)*Purpose: Relate the final score to the individual evaluations that contributed to it.

 

Key fields

Field Exposer Type Description
score Number Final performance score
scale_max Number Maximum value of the scoring scale
scale_min Number Minimum value of the scoring scale
normalized_score Number Normalized performance score
calculated_at Date Date when the final score was calculated
review_process_id Number Associated review process
target_employee_id Number Reviewed employee

 

Features / Relevant data

  • score → employee's final performance result
  • normalized_score → comparison across different scoring scales
  • calculated_at → calculation audit trail
  • scale_min / scale_max → score interpretation

 

Notes

  • Each record represents the final consolidated performance score for an employee within a Performance Review process.
  • Unlike performance_review_evaluations, which stores individual reviews, this table contains the final calculated score for the employee.
  • normalized_score enables comparisons between review processes that use different scoring scales.
  • This table is commonly joined with performance_review_processes to identify the review cycle and with employees to retrieve employee information.
  • It can also be combined with performance_review_evaluations and performance_review_evaluation_answers to analyze how individual evaluations contributed to the final score.
  • It is particularly useful for generating employee rankings, Performance dashboards, historical comparisons, and overall performance analytics.
 
 

performance_review_processes

Contains information about Performance Review processes (review cycles) configured in Factorial. Each record represents a review cycle, including its name, description, execution period, current status, and whether it has been archived.

This table represents the top level of the Performance Review hierarchy and groups all individual evaluations performed within the same review cycle.

Entity

Performance / Performance Reviews

Use cases

  • Performance review cycle management
  • Performance process reporting
  • Review campaign tracking
  • Performance auditing
  • Performance dashboards
  • Participation analysis by review cycle

 

Keys

Field Type Usage
id Number (PK) Performance review process identifier

 

Relationships

  • performance_review_processes.idperformance_review_evaluations.review_process_idPurpose: Retrieve all evaluations belonging to the same review process.

 

Key fields

Field Exposer Type Description
name String Review process name
description String Process description
starts_at Date Start date
ends_at Date End date
archived Boolean Indicates whether the process has been archived
status String Current process status

 

Features / Relevant data

  • status → process status tracking
  • starts_at / ends_at → review period analysis
  • archived → historical process identification
  • name → review campaign classification

 

Notes

  • Each record represents an entire Performance Review cycle.
  • A single process can contain multiple individual evaluations, which are stored in performance_review_evaluations.
  • The status field identifies the current stage of the review process, such as draft, active, completed, or other platform-defined statuses.
  • The archived field distinguishes active review cycles from historical ones that have already been closed.
  • This table is commonly used together with performance_review_evaluations to retrieve all evaluations associated with a specific review cycle.
  • It is particularly useful for participation reporting, monitoring review campaign progress, and auditing historical Performance Review processes.
 
 

performance_review_questions

Contains the questions configured for Performance Review processes in Factorial. Each record represents a question that belongs to a review process, including its type, whether it is mandatory, the evaluation type it applies to, and the configuration of its possible answers.

This table defines the structure of the questionnaires used during Performance Reviews.

Entity

Performance / Performance Reviews

Use cases

  • Review questionnaire auditing
  • Performance review reporting
  • Question type analysis
  • Performance process documentation
  • Evaluation configuration validation

 

Keys

Field Type Usage
uuid UUID (PK) Unique question identifier
review_process_id Number (FK) Associated review process

 

Relationships

  • performance_review_questions.review_process_idperformance_review_processes.idPurpose: Retrieve the Performance Review process associated with the question.

 

Key fields

Field Exposer Type Description
question_label String Question text
mandatory Boolean Indicates whether answering the question is required
evaluation_type String Evaluation type the question applies to (self review, manager review, peer review, etc.)
question_type String Question type (text, rating scale, multiple choice, etc.)
max_choices Number Maximum number of selectable choices
scale String Rating scale configuration
choice_options String / JSON Available options for selection questions
review_process_id Number Associated review process

 

Features / Relevant data

  • question_type → question classification
  • mandatory → required question identification
  • evaluation_type → evaluation type segmentation
  • choice_options → configured answer options
  • scale → rating scale configuration

 

Notes

  • Each record represents a single question within a Performance Review process.
  • A review process can contain multiple questions.
  • The question behavior depends on its question_type, supporting free-text answers, rating scales, multiple-choice questions, and other configurable formats.
  • choice_options typically stores the available answer choices for selection-based questions and may be represented as structured text or JSON.
  • evaluation_type allows questions to be displayed only for specific review types, such as self-reviews, manager reviews, or peer reviews.
  • This table is commonly used together with performance_review_processes to reconstruct the complete structure of a Performance Review questionnaire.
 
 

project_management__project_workers

Contains consolidated information about employees assigned to projects within the Project Management module. Each record represents an employee's participation in a project, including tracked time, labor costs, and recorded spending.

Unlike project_workers, this table includes financial metrics that allow organisations to analyse the actual cost of the resources assigned to each project.

Entity

Project Management / Project Workers

Use cases

  • Project cost reporting
  • Profitability analysis
  • Resource allocation analysis
  • Employee productivity reporting
  • Labor cost analysis
  • Financial dashboards
  • Project allocation reporting

 

Keys

Field Type Usage
id Number (PK) Record identifier
employee_id Number (FK) Assigned employee
project_id Number (FK) Associated project

 

Relationships

  • project_management__project_workers.employee_idemployees.idPurpose: Retrieve employee information.
  • project_management__project_workers.project_idprojects.idPurpose: Retrieve project information.
  • project_management__project_workers.employee_idshifts.employee_id *(report correlation)*Purpose: Correlate employee shifts to build productivity, utilization, and project time reports.
  • project_management__project_workers.project_idproject_time_records *(through project_worker_id when applicable)*Purpose: Analyze the detailed project time allocations recorded by the employee.

 

Key fields

Field Exposer Type Description
assigned Boolean Indicates whether the employee is currently assigned to the project
inputed_minutes Number Total time allocated by the employee (minutes)
labor_cost_cents Number Employee labor cost allocated to the project
company_labor_cost_cents Number Total labor cost incurred by the company
spending_cost_cents Number Recorded employee spending associated with the project
full_name String Employee full name
employee_id Number Associated employee
project_id Number Associated project

 

Features / Relevant data

  • inputed_minutes → total allocated time
  • labor_cost_cents → allocated labor cost
  • company_labor_cost_cents → total company labor cost
  • spending_cost_cents → recorded project expenses
  • assigned → assignment status

 

Notes

  • Each record represents an employee assigned to a project.
  • In addition to assignment information, this table provides financial metrics for analyzing project resource costs.
  • Fields ending in _cents are stored in the smallest currency unit (for example, cents) and typically need to be divided by 100 to obtain the monetary amount.
  • This table is commonly joined with projects to retrieve project information and with employees to enrich employee details.
  • It can be combined with project_time_records to analyze both summarized and detailed project time allocations.
  • It is one of the primary tables used to build project cost reports, profitability analyses, and financial project dashboards.
 
 

project_flexible_time_records

Contains the detailed flexible time allocations recorded by employees against projects and subprojects. Unlike project_time_records, these records are not linked to an attendance shift, representing manually entered or independently recorded project time.

This table allows employees to allocate time to projects even when no attendance record exists.

Entity

Projects / Flexible Time Tracking

Use cases

  • Flexible project time reporting
  • Subproject time reporting
  • Employee productivity analysis
  • Workload distribution
  • Resource utilisation analysis
  • Operational dashboards
  • Manual time allocation auditing

 

Keys

Field Type Usage
id Number (PK) Time allocation identifier
project_worker_id Number (FK) Assigned project worker
subproject_id Number (FK) Associated subproject (when applicable)

 

Relationships

  • project_flexible_time_records.project_worker_idproject_workers.idPurpose: Retrieve the employee and project associated with the time allocation.
  • project_flexible_time_records.subproject_idsubprojects.idPurpose: Retrieve the associated subproject.
  • project_workers.project_idprojects.id *(through project_workers)*Purpose: Retrieve the parent project associated with the recorded time.

 

Key fields

Field Exposer Type Description
date Date Allocation date
imputed_minutes Number Minutes allocated
project_worker_id Number Assigned project worker
subproject_id Number Associated subproject

 

Features / Relevant data

  • imputed_minutes → allocated project time
  • date → time-based analysis
  • project_worker_id → associated employee and project
  • subproject_id → subproject segmentation

 

Notes

  • Each record represents a single flexible time allocation made against a project.
  • Unlike project_time_records, this table is not linked to attendance records (shifts), making these allocations independent from employee clock-ins.
  • It is commonly joined with project_workers to identify the employee responsible for the allocation and the corresponding project.
  • When subproject_id is available, allocations can be analyzed at the subproject level.
  • This table is particularly useful for organizations that allow manual project time entries or do not require all project work to originate from attendance tracking.
  • It is commonly used to build productivity reports, workload analyses, resource utilization dashboards, and manual project time allocation reports.
 
 

project_management__projects

Contains consolidated information about projects managed within Factorial's Project Management module. Unlike the projects table, this dataset includes financial and operational indicators that allow organisations to analyse project performance, costs, and profitability.

In addition to general project information, it provides tracked time, labor costs, spending, fixed costs, and billing configuration.

Entity

Project Management / Projects

Use cases

  • Project financial reporting
  • Profitability analysis
  • Cost control
  • Project monitoring
  • Executive dashboards
  • Productivity reporting
  • Billing analysis

 

Keys

Field Type Usage
id Number (PK) Project identifier
legal_entity_id Number (FK) Associated legal entity
client_id Number (FK) Associated client

 

Relationships

  • project_management__projects.idproject_management__project_workers.project_idPurpose: Retrieve employees assigned to the project.
  • project_management__projects.idprojects.id *(when both datasets are available)*Purpose: Complement the project's operational information.
  • project_management__projects.legal_entity_idemployees.legal_entity_idPurpose: Relate the project to its corresponding legal entity.

 

Key fields

Field Exposer Type Description
name String Project name
code String Project code
description String Project description
start_date Date Project start date
due_date Date Expected completion date
status String Current project status
employees_assignment Number Number of assigned employees
inputed_minutes Number Total tracked time allocated to the project
is_billable Boolean Indicates whether the project is billable
fixed_cost_cents Number Fixed project costs
labor_cost_cents Number Labor costs
spending_cost_cents Number Recorded expenses
total_cost_cents Number Total project cost
billable_rate_type String Billing rate configuration
legal_entity_id Number Legal entity
client_id Number Associated client

 

Features / Relevant data

  • inputed_minutes → total tracked time
  • employees_assignment → number of assigned employees
  • is_billable → identifies billable projects
  • fixed_cost_cents → fixed costs
  • labor_cost_cents → labor costs
  • spending_cost_cents → recorded expenses
  • total_cost_cents → consolidated project cost
  • billable_rate_type → billing configuration

 

Notes

  • Each record represents a project within the Project Management module.
  • Unlike the projects table, this dataset includes financial indicators and business metrics for analyzing project profitability and performance.
  • Fields ending in _cents store values in the smallest currency unit (for example, cents) and typically need to be divided by 100 to obtain the monetary amount.
  • This table is commonly joined with project_management__project_workers to analyze employee allocation, tracked time, and labor costs.
  • When available, it can be combined with projects to enrich operational project information.
  • It is one of the primary datasets used for financial dashboards, profitability analysis, cost control, executive reporting, and project performance monitoring.
 
 

project_time_records

Contains the detailed time entries recorded against projects and subprojects. Each record represents a time allocation made by an employee on a specific date, typically linked to an attendance shift.

This is the most granular table within the Projects module for tracking project-related work, allowing users to identify exactly how many minutes were allocated, on which date, to which project, and, when applicable, to which subproject.

Entity

Projects / Time Tracking

Use cases

  • Project time reporting
  • Subproject time reporting
  • Employee productivity analysis
  • Resource utilisation reporting
  • Workload distribution
  • Operational dashboards
  • Time allocation auditing

 

Keys

Field Type Usage
id Number (PK) Time entry identifier
project_worker_id Number (FK) Assigned project worker
attendance_shift_id Number (FK) Associated attendance shift
subproject_id Number (FK) Associated subproject (when applicable)

 

Relationships

  • project_time_records.project_worker_idproject_workers.idPurpose: Retrieve the employee and project associated with the time entry.
  • project_time_records.attendance_shift_idshifts.id *(attendance shift)*Purpose: Retrieve the attendance shift that originated the time allocation.
  • project_time_records.subproject_idsubprojects.idPurpose: Retrieve the associated subproject.
  • project_workers.project_idprojects.id *(through project_workers)*Purpose: Retrieve the parent project for the recorded time.

 

Key fields

Field Exposer Type Description
date Date Time entry date
imputed_minutes Number Minutes allocated
project_worker_id Number Assigned project worker
attendance_shift_id Number Associated attendance shift
subproject_id Number Associated subproject

 

Features / Relevant data

  • imputed_minutes → recorded working time
  • date → time-based analysis
  • attendance_shift_id → link to the original attendance record
  • project_worker_id → associated employee and project
  • subproject_id → subproject segmentation

 

Notes

  • Each record represents a single time allocation made against a project.
  • This is the most detailed table available for analyzing project time tracking.
  • It is commonly joined with project_workers to identify the employee responsible for the recorded time and the project to which it belongs.
  • It is also frequently combined with shifts through attendance_shift_id to retrieve additional attendance information such as clock-in/out times, worked hours, and other Time Tracking metrics.
  • When subproject_id is populated, time allocations can be analyzed at the subproject level for more granular reporting.
  • This table is one of the primary sources for building productivity reports, workload analyses, resource utilization dashboards, and project time allocation reporting.
 
 

project_workers

Contains information about employees assigned to projects in Factorial. Each record represents the relationship between an employee and a project, indicating whether the assignment is active and the total amount of time logged by that employee for the project.

This table allows you to identify which employees participate in each project and analyse their level of allocation.

Entity

Projects / Employee Assignment

Use cases

  • Project assignment reporting
  • Employee allocation analysis
  • Project participation tracking
  • Workload distribution
  • Productivity dashboards
  • Resource utilisation analysis

 

Keys

Field Type Usage
id Number (PK) Assignment identifier
project_id Number (FK) Associated project
employee_id Number (FK) Assigned employee

 

Relationships

  • project_workers.project_idprojects.idPurpose: Retrieve project information.
  • project_workers.employee_idemployees.idPurpose: Retrieve employee information.
  • project_workers.employee_idshifts.employee_id *(report correlation)*Purpose: Correlate employee shifts to build productivity, utilization, workload, and project time reports.

 

Key fields

Field Exposer Type Description
assigned Boolean Indicates whether the employee is currently assigned to the project
inputed_minutes Number Total time logged by the employee for the project (minutes)
project_id Number Associated project
employee_id Number Assigned employee

 

Features / Relevant data

  • assigned → assignment status
  • inputed_minutes → total employee allocation
  • project_id → associated project
  • employee_id → participating employee

 

Notes

  • Each record represents the assignment of an employee to a project.
  • assigned indicates whether the assignment is currently active.
  • inputed_minutes stores the total amount of time logged by the employee for the project.
  • This table is commonly used together with projects to identify the employees assigned to each project.
  • It is also frequently correlated with shifts through employee_id to build productivity, workload allocation, resource utilization, and project time reports.
  • It is one of the primary tables used to analyze employee participation in projects and to build resource allocation dashboards.
 
 

projects

Contains information about the projects configured in Factorial. Each record represents a project that can be used to organise employee work, analyse time allocation, associate expenses, and monitor project activities, depending on the modules enabled by the company.

This table allows users to identify projects, monitor their status, define execution dates, and analyse the total amount of tracked time associated with each project.

Entity

Projects

Use cases

  • Project reporting
  • Project time analysis
  • Project cost analysis
  • Employee allocation
  • Productivity dashboards
  • Operational reporting
  • Expense reporting by project

 

Keys

Field Type Usage
id Number (PK) Project identifier

 

Relationships

  • projects.idexpenses_expensables.project_idPurpose: Retrieve expenses associated with the project.
  • projects + shifts.employee_id *(report correlation)*Purpose: Correlate employee shifts with projects to build productivity, utilisation, workload, and project time reports.
  • projects.idsubprojects.project_id *(when applicable)*Purpose: Retrieve the subprojects belonging to the project.

 

Key fields

Field Exposer Type Description
name String Project name
status String Current project status
inputed_minutes Number Total tracked time recorded for the project (minutes)
code String Project code
start_date Date Project start date
due_date Date Expected completion date

 

Features / Relevant data

  • inputed_minutes → total tracked time
  • status → project lifecycle monitoring
  • code → project identification
  • start_date / due_date → planning and execution analysis

 

Notes

  • Each record represents a single project configured in Factorial.
  • inputed_minutes stores the total amount of tracked time recorded for the project.
  • This table is commonly used together with shifts by correlating records through employee_id to build productivity, workload allocation, resource utilisation, and project time reports.
  • It is also frequently combined with expenses_expensables to calculate project costs, reimbursements, and expense allocations.
  • Depending on the modules enabled by the company, Projects can be used alongside the Time Tracking and Expenses features.
  • It is one of the primary tables used to build operational dashboards, productivity analyses, project utilisation reports, and project cost reporting.
 
 

session_access_memberships

Contains information about the employees associated with training sessions in Factorial's Training module. Each record represents an employee membership or access record for a specific training session, including participation status and the relationship between employees and training activities.

This table works as a bridge between sessions and employees, allowing organisations to analyse employee assignments, participation status, training access, and learning activity.

Training program information should be retrieved through the related sessions and trainings tables.

Entity

Training Session Participants

Use cases

  • Employee training tracking
  • Training participation reporting
  • Training compliance analysis
  • Employee learning dashboards
  • Training assignment monitoring
  • Learning & Development reporting
  • Training completion analysis

 

Keys

Field Type Usage
id Number (PK) Session access membership identifier
session_id Number (FK) Associated training session
employee_id Number (FK) Associated employee
training_id Number (FK) Associated training program

 

Relationships

  • session_access_memberships.session_idsessions.idPurpose: Retrieve the training session assigned to the employee, including schedule, modality, and session details.
  • session_access_memberships.employee_idemployees.idPurpose: Retrieve employee information associated with the training participation.
  • sessions.training_idtrainings.id *(through sessions)*Purpose: Retrieve the training program associated with the employee session participation.

 

Key fields

Field Exposer Type Description
access_id Number Training access identifier
first_name String Employee first name
last_name String Employee last name
status String Employee training access or participation status
session_id Number Associated training session
employee_id Number Associated employee
training_id Number Associated training program

 

Features / Relevant data

  • employee_id → connects training activity with employee information.
  • session_id → identifies the specific training session assigned to the employee.
  • status → tracks employee access or participation status.
  • training_id → allows grouping participation by training program when available.
  • access_id → identifies the employee training access record.
  • session_id + employee_id → enables employee-level training participation analysis.

 

Notes

  • Each record represents one employee relationship with a training session.
  • This table acts as the bridge between sessions and employees.
  • Multiple employees can be associated with the same training session.
  • One employee can have multiple training session memberships.
  • Training program details should preferably be retrieved through sessions.training_idtrainings.id.
  • Employee information should be enriched by joining employee_id with the employees table.
  • status should be used to analyze employee participation, access state, or training progress depending on the configured workflow.
  • This dataset is commonly used together with sessions and trainings to build complete Learning & Development reports.
  • It is one of the primary tables for employee training assignment analysis, compliance dashboards, and participation tracking.
 
 

sessions

Contains information about the training sessions configured in Factorial's Training module. Each record represents an individual session belonging to a training program, including scheduling information, duration, modality, location, and subsidy information.

This table represents the execution and scheduling layer of a training program. General training information such as costs, provider details, classification, and status should be retrieved from the related trainings table.

Employee participation and access information should be retrieved through session_access_memberships.

Entity

Training Sessions

Use Cases

  • Training calendar reporting
  • Training planning analysis
  • Learning & Development dashboards
  • Training hours analysis
  • Training modality reporting
  • Training compliance monitoring
  • Training activity tracking

 

Keys

Field Type Usage
id Number (PK) Training session identifier
training_id Number (FK) Associated training program identifier

 

Relationships

  • sessions.training_idtrainings.idPurpose: Retrieve the training program associated with the session. Allows combining session scheduling information with training details such as costs, provider, type, and status.
  • sessions.idsession_access_memberships.session_idPurpose: Retrieve employees assigned, enrolled, or granted access to a specific training session.
  • session_access_memberships.employee_idemployees.idPurpose: Retrieve employee information associated with the training session participation.

 

Key fields

Field Exposer Type Description
name String Training session name
starts_at Timestamp Training session start date and time
ends_at Timestamp Training session end date and time
due_date Date Training completion deadline
duration Number Planned training duration
modality String Training delivery format
link String Training access link or external resource
location String Physical training location
subsidized Boolean Indicates whether the training session is subsidized
training_id Number Associated training program identifier

 

Features / Relevant data

  • starts_at / ends_at → training scheduling and calendar analysis.
  • duration → planned learning hours for the session.
  • modality → training format analysis (online, onsite, hybrid).
  • subsidized → identifies subsidized training sessions.
  • location → training venue analysis.
  • training_id → groups multiple sessions belonging to the same training program.
  • session_access_memberships → provides employee assignment and participation information.

 

Notes

  • Each record represents a single training session configured in Factorial.
  • A training program can contain multiple sessions with different dates, locations, and modalities.
  • General training information such as costs, provider information, and training classification should be retrieved from trainings.
  • Employee participation, access status, and assigned employees are not stored directly in this table and should be retrieved through session_access_memberships.
  • duration should be validated according to the configured unit before calculating total training hours.
  • This table is commonly used together with trainings and session_access_memberships to build complete training lifecycle reports, including programs, schedules, and employee participation.
  • It is one of the primary datasets for training scheduling, execution tracking, and Learning & Development analytics.
 
 

shift_incidences

Contains information about incidents generated during attendance shifts in Factorial. Each record represents an incidence associated with an attendance shift, including the action performed, time differences, distance information, and the employee and shift affected.

This table allows organisations to analyse attendance exceptions, shift adjustments, modifications, and events related to employee attendance records. It is mainly used for attendance auditing and monitoring changes applied to shift records.

Entity

Attendance / Shift Incidences

Use cases

  • Attendance incident reporting
  • Shift modification tracking
  • Attendance audit analysis
  • Clock-in correction monitoring
  • Employee attendance exception analysis
  • Time difference analysis
  • Attendance compliance reporting

 

Keys

Field Type Usage
id Number (PK) Shift incidence identifier
attendance_shift_id Number (FK) Associated attendance shift
employee_id Number (FK) Associated employee

 

Relationships

  • shift_incidences.attendance_shift_idshifts.idPurpose: Retrieve the attendance shift affected by the incidence and analyse the related attendance record.
  • shift_incidences.employee_idemployees.idPurpose: Retrieve employee information associated with the attendance incidence.

 

Key fields

Field Exposer Type Description
id Number Shift incidence identifier
shift_action String Action or incidence type applied to the shift
date Date Incidence date
action_time Timestamp Date and time when the action occurred
distance Number Distance information related to the incidence
time_difference Number Time difference generated by the incidence
attendance_shift_id Number Associated attendance shift identifier
employee_id Number Associated employee identifier

 

Features / Relevant data

  • shift_action → identifies the type of attendance event or action performed.
  • attendance_shift_id → links the incidence with the original attendance shift.
  • time_difference → identifies changes or differences caused by the incidence.
  • distance → provides location-related distance information when applicable.
  • action_time → supports auditing of attendance changes.
  • employee_id → enables employee-level attendance incident analysis.

 

Notes

  • Each record represents an attendance incidence linked to an employee shift.
  • This table should be combined with shifts to obtain the complete attendance context.
  • attendance_shift_id is the primary relationship used to identify the affected shift.
  • This dataset is intended for auditing and exception tracking, not official worked time calculations.
  • time_difference represents the difference generated by an attendance event and should not be used as official worked time.
  • Incidences may represent attendance corrections, modifications, validations, or other shift-related actions depending on company configuration.
  • This table is commonly used to investigate attendance discrepancies, monitor corrections, and build attendance audit reports.
 
 

shift_management_rest_days

Contains information about employee rest days configured within Factorial's Shift Management module. Each record represents a scheduled rest day for an employee, including the date, status, and the method used to create the record.

This table allows organisations to identify the days on which an employee is not expected to work because they have a planned rest day.

Entity

Shift Management / Rest Days

Use cases

  • Reporting on scheduled rest days managed through Shift Management
  • Workforce planning analysis
  • Staffing coverage
  • Planned shift validation
  • Employee availability reporting
  • Shift scheduling dashboards

 

Keys

Field Type Usage
id Number (PK) Rest day identifier
employee_id Number (FK) Associated employee

 

Relationships

  • shift_management_rest_days.employee_idemployees.idPurpose: Retrieve employee information.
  • shift_management_rest_days.employee_idshift_management_shifts.employee_id *(report correlation)*Purpose: Compare scheduled rest days with planned shifts.
  • shift_management_rest_days.employee_idshifts.employee_id *(report correlation)*Purpose: Identify attendance records created during scheduled rest days.
  • shift_management_rest_days.employee_iddaily_time_configs.employee_id *(report correlation)*Purpose: Compare rest days with worked hours and daily balances.

 

Key fields

Field Exposer Type Description
date Date Rest day date
state String Rest day status
creation_mode String Record creation method
employee_id Number Associated employee

 

Features / Relevant data

  • date → rest day date
  • state → record status
  • creation_mode → record creation source
  • employee_id → associated employee

 

Notes

  • Each record represents a scheduled rest day for an employee.
  • This table belongs to the Shift Management module and complements planned shift scheduling.
  • It is commonly used together with shift_management_shifts to build a complete employee work and rest calendar.
  • It is also frequently correlated with shifts to identify attendance records created during scheduled rest days and detect unplanned work.
  • It can be combined with daily_time_configs to compare scheduled rest days with actual worked hours and daily balances.
  • This table is commonly used to build workforce planning, availability, staffing coverage, and schedule compliance reports.
 
 

shift_management_shifts

Contains information about planned shifts created through Factorial's Shift Management module. Each record represents a shift assigned to an employee for a specific date, including scheduled times, duration, location, work area, and shift status.

Unlike the shifts table, which stores actual attendance records and worked time, this table represents the planned schedule before the shift is worked.

Entity

Shift Management / Planned Shifts

Use cases

  • Shift scheduling reports
  • Planned vs. actual worked time analysis
  • Coverage reporting
  • Schedule reporting
  • Workforce planning
  • Planned hours analysis
  • Operational dashboards

 

Keys

Field Type Usage
id Number (PK) Shift identifier
employee_id Number (FK) Assigned employee
location_id Number (FK) Assigned location
work_area_id Number (FK) Assigned work area

 

Relationships

  • shift_management_shifts.employee_idemployees.idPurpose: Retrieve employee information.
  • shift_management_shifts.location_idlocations.idPurpose: Retrieve the assigned work location.
  • shift_management_shifts.work_area_idwork_areas.id *(when available)*Purpose: Retrieve the assigned work area.
  • shift_management_shifts.employee_idshifts.employee_id *(report correlation)*Purpose: Compare planned shifts with actual employee attendance records.
  • shift_management_shifts.employee_iddaily_time_configs.employee_id *(report correlation)*Purpose: Compare planned time against worked time, balances, and tracked hours.
  • shift_management_shifts.employee_idleaves.employee_id *(report correlation)*Purpose: Identify planned shifts affected by employee leave records.

 

Key fields

Field Exposer Type Description
date_of_shift Date Shift date
name String Shift name
start_at DateTime Scheduled start time
end_at DateTime Scheduled end time
shift_status String Shift status
creation_mode String Shift creation method
shift_duration Number Planned shift duration
duration_total_shifts_day Number Total planned duration for the day
extra_hours Number Planned extra hours
saved_shift_title String Saved shift template
timezone String Shift timezone
comments String Shift comments
employee_id Number Assigned employee
location_id Number Assigned location
work_area_id Number Assigned work area

 

Features / Relevant data

  • shift_status → planning status
  • creation_mode → shift creation source
  • shift_duration → planned duration
  • duration_total_shifts_day → total planned daily hours
  • extra_hours → planned overtime
  • location_id → assigned location
  • work_area_id → assigned work area
  • timezone → applied timezone

 

Notes

  • Each record represents a planned shift assigned to an employee.
  • This table stores planned schedules, not actual attendance records.
  • To analyze actual worked time, it is commonly combined with shifts.
  • It is one of the primary tables used to compare scheduled hours versus worked hours, calculate punctuality, identify absences, detect schedule deviations, and analyze differences between planning and execution.
  • It is also frequently combined with daily_time_configs to build complete Time Tracking and daily balance reports.
  • It can be joined with leaves to identify planned shifts impacted by vacations, sick leave, or other absences.
  • When used together with locations and work_areas, it enables workforce coverage and operational scheduling reports.
  • This is one of the core tables for building scheduling, workforce planning, attendance compliance, and operational shift management reports.
 
 

shifts

Contains information about employee attendance records and clock-in/clock-out entries configured in Factorial. Each record represents an individual attendance shift, including clock-in time, clock-out time, recorded duration, estimated time, attendance status, location information, and registration source.

This table allows organisations to analyse employee attendance activity, punctuality, clock-in behavior, attendance sources, and operational shift information.

Important: This table should not be used as the primary source for time calculations, aggregations, or official worked time reporting. For official worked hours calculations, balances, planned time, or working time reports, use daily_time_configs.

 

Entity

Attendance / Shifts

Use cases

  • Attendance reporting
  • Clock-in and clock-out analysis
  • Attendance auditing
  • Punctuality analysis
  • Attendance source tracking
  • Operational shift reporting
  • Attendance location analysis
  • Project time allocation analysis

 

Keys

Field Type Usage
id Number (PK) Attendance shift identifier
employee_id Number (FK) Associated employee
workplace_id Number (FK) Associated workplace

 

Relationships

  • shifts.employee_idemployees.idPurpose: Retrieve employee information associated with the attendance record.
  • shifts.workplace_idworkplaces.id *(when available)*Purpose: Retrieve workplace information associated with the attendance record.
  • shifts.time_settings_break_configuration_idtime_settings_break_configurations.id *(when available)*Purpose: Retrieve the break configuration applied to the shift.
  • shifts.idproject_time_records.attendance_shift_id *(when Project Tracking is enabled)*Purpose: Retrieve project time records associated with the attendance shift. This relationship allows analyzing employee time allocation by project when project hours are recorded through shifts.

 

Key fields

Field Exposer Type Description
date Date Attendance record date
reference_date Date Reference date used for attendance management
clock_in Timestamp Employee clock-in date and time
clock_out Timestamp Employee clock-out date and time
duration Number Attendance record duration
worked Number Worked time recorded in the shift
estimated Number Estimated time associated with the shift
balance Number Difference between worked and estimated time
attendance_shift_state String Current attendance record state
attendance_shift_type String Attendance record type
attendance_shift_location_type String Attendance location type
attendance_shift_clock_in_source String Source used for clock-in registration
attendance_shift_clock_out_source String Source used for clock-out registration
observations String Shift observations
created_at Timestamp Record creation date
in_location_latitude Number Clock-in latitude
in_location_longitude Number Clock-in longitude
in_location_accuracy Number Clock-in location accuracy
out_location_latitude Number Clock-out latitude
out_location_longitude Number Clock-out longitude
out_location_accuracy Number Clock-out location accuracy
custom_field String Custom field associated with the shift

 

Features / Relevant data

  • clock_in / clock_out → employee attendance timestamps.
  • worked → recorded worked time from the attendance entry.
  • estimated → planned or expected time associated with the shift.
  • balance → difference between worked and estimated time.
  • attendance_shift_clock_in_source / attendance_shift_clock_out_source → identify the platform or device used for attendance registration.
  • attendance_shift_state → attendance record status monitoring.
  • attendance_shift_type → attendance classification.
  • in_location_* / out_location_* → geographic information captured during attendance registration.
  • workplace_id → enables attendance analysis by workplace.
  • project_time_records → enables project-based time analysis when project tracking is recorded through attendance shifts.

 

Notes

  • Each record represents an individual employee attendance shift.
  • This table does not include clock-ins performed on days where no estimated working time exists.
  • This table should not be used to perform official time calculations, totals, or aggregations.
  • For worked hours calculations, planned time, overtime, balances, or official working time reports, use daily_time_configs.
  • worked, estimated, and balance represent shift-level values and may not match officially calculated working time.
  • An employee may have multiple records on the same day due to split shifts, breaks, or attendance configurations.
  • Location fields are only available when attendance tracking captures geographic information.
  • When Project Tracking is enabled, shifts can be combined with project_time_records through attendance_shift_id to analyze how employee attendance time is distributed across projects.
  • This table is mainly used for attendance auditing, clock-in analysis, attendance source tracking, and operational reports.
  • For payroll, compliance, and official working time calculations, daily_time_configs should be considered the source of truth.
 
 

signatures

Contains information related to electronic document signatures within Factorial. Each record represents a signature request or completed signature for a document, indicating whether it has been signed, who signed it, and the associated document.

This table allows users to track electronic signature status and relate signatures to both documents and employees.

Entity

Documents / Electronic Signatures

Use cases

  • Signed document reporting
  • Pending signature tracking
  • Electronic signature auditing
  • Document compliance reporting
  • Documentation dashboards
  • Onboarding and HR documentation reporting

 

Keys

Field Type Usage
id Number (PK) Signature identifier
document_id Number (FK) Associated document
employee_id Number (FK) Associated employee

 

Relationships

  • signatures.document_iddocuments.idPurpose: Retrieve information about the signed document.
  • signatures.employee_idemployees.idPurpose: Retrieve information about the associated employee.

 

Key fields

Field Exposer Type Description
signed Boolean Indicates whether the document has been signed
signer String Person who signed the document
document_id Number Associated document
employee_id Number Associated employee

 

Features / Relevant data

  • signed → signature status
  • signer → document signer
  • document_id → related document
  • employee_id → related employee

 

Notes

  • Each record represents an electronic signature associated with a document.
  • This table is commonly used together with documents to retrieve additional document information such as filename, document type, approval status, and signature status.
  • It allows organizations to identify which documents have been signed and which are still pending.
 
 

subprojects

Contains information about the subprojects configured within a project in Factorial. Each record represents a subdivision of a parent project, allowing work to be organised in greater detail and enabling independent tracking of the time allocated to specific activities or project phases.

Subprojects provide a more granular level of reporting for productivity, costs, and resource utilisation.

Entity

Projects / Subprojects

Use cases

  • Subproject reporting
  • Productivity analysis by phase
  • Time tracking by activity
  • Cost analysis
  • Operational dashboards
  • Workload distribution

 

Keys

Field Type Usage
id Number (PK) Subproject identifier
project_id Number (FK) Parent project

 

Relationships

  • subprojects.project_idprojects.idPurpose: Retrieve information about the parent project.
  • subprojects + shifts.employee_id *(report correlation)*Purpose: Correlate employee shifts with subprojects to build productivity and time allocation reports.
  • subprojects.idexpenses_expensables.subproject_idPurpose: Retrieve expenses associated with the subproject.

 

Key fields

Field Exposer Type Description
name String Subproject name
inputed_minutes Number Total tracked time recorded for the subproject (minutes)
project_id Number Associated parent project

 

Features / Relevant data

  • inputed_minutes → total tracked time
  • project_id → relationship with the parent project
  • name → subproject identification

 

Notes

  • Each record represents a subproject belonging to a parent project.
  • inputed_minutes stores the total amount of tracked time recorded for the subproject.
  • Subprojects allow projects to be divided into phases, activities, or workstreams for more detailed reporting.
  • This table is commonly used together with projects to provide the full project hierarchy.
  • It is also frequently used with shifts by correlating records through employee_id to build productivity, workload allocation, resource utilisation, and subproject time reports.
  • It can be combined with expenses_expensables to analyse expenses registered at the subproject level.
  • It is commonly used to build operational dashboards, productivity analyses, and project cost allocation reports.
 
 

supplements

Contains information about variable payroll supplements assigned to employees. Unlike additional_compensations, this table stores dynamic payments such as bonuses, commissions, incentives, awards, and other variable compensation items that may change from one payroll period to another.

Each record represents a variable supplement applied to an employee for a specific payroll period.

Entity

Payroll / Variable Supplements

Use cases

  • Bonus and incentive reporting
  • Commission reporting
  • Variable compensation analysis
  • Payroll component reporting
  • Variable payment auditing
  • Compensation dashboards
  • Complete payroll reporting

 

Keys

Field Type Usage
id Number (PK) Supplement identifier
employee_id Number (FK) Associated employee
payroll_policy_period_id Number (FK) Associated payroll period

 

Relationships

  • supplements.employee_idemployees.idPurpose: Retrieve employee information.
  • supplements.payroll_policy_period_idpayroll__result_concept_item_summaries.policy_period_idPurpose: Relate variable supplements to the payroll calculation results for the same payroll period.
  • supplements.employee_idadditional_compensations.employee_id *(employee correlation)*Purpose: Combine fixed and variable compensation to calculate an employee's total remuneration.
  • supplements.employee_idcontracts.employee_id *(correlated using the contract effective period)*Purpose: Retrieve contract information such as salary, working schedule, legal entity, and employment conditions applicable during the payroll period.

 

Key fields

Field Exposer Type Description
name String Supplement name
unit String Unit used for calculation
amount Number Supplement amount
effective_on Date Effective date
employee_observations String Employee observations
supplement_observations String Supplement observations
period_starts_on Date Payroll period start
period_ends_on Date Payroll period end
policy_name String Applied payroll policy
employee_id Number Associated employee

 

Features / Relevant data

  • amount → variable payment amount
  • unit → calculation unit
  • effective_on → effective date
  • policy_name → payroll policy
  • period_starts_on / period_ends_on → payroll period
  • employee_observations and supplement_observations → related comments

 

Notes

  • Each record represents a variable payroll component assigned to an employee.
  • This table is commonly used to store bonuses, commissions, incentives, awards, and other non-recurring payroll payments.
  • Unlike additional_compensations, records in supplements are typically dynamic and may vary from one payroll period to another rather than representing permanent compensation.
  • It is commonly combined with payroll__result_concept_item_summaries to reconcile variable supplements with payroll calculation results for a given payroll period.
  • It can also be joined with additional_compensations to build a complete view of fixed and variable employee compensation.
  • When combined with contracts, the relationship should consider the contract effective period, not only the employee_id, to ensure the supplement is associated with the correct active contract.
  • Together with employees, contracts, additional_compensations, and payroll result tables, this dataset enables the creation of comprehensive payroll reports, compensation analysis, payroll audits, and total remuneration dashboards.
 
 

surveys

Contains information about surveys created within Factorial's Engagement module. Each record represents a survey, including its name, current status, anonymity settings, availability period, and scheduling configuration.

This table stores only the survey metadata and does not contain employee responses or survey results.

Entity

Engagement / Surveys

Use cases

  • Survey reporting
  • Employee engagement campaign tracking
  • Active, scheduled, and completed survey reporting
  • Participation dashboards
  • Feedback campaign auditing
  • Engagement analytics

 

Keys

Field Type Usage
id Number (PK) Survey identifier

 

Relationships

  • surveys.id → survey response tables *(when available)*Purpose: Retrieve employee responses, participation, and survey results.
  • surveysemployees *(when a relationship is available)*Purpose: Segment survey results by employee, team, manager, office, legal entity, or any other organizational attribute.

 

Key fields

Field Exposer Type Description
name String Survey name
status String Current survey status
anonymous Boolean Indicates whether the survey is anonymous
start_on Date Survey start date
end_on Date Survey end date
schedule String Survey scheduling configuration
created_at DateTime Survey creation date

 

Features / Relevant data

  • status → survey status
  • anonymous → anonymity setting
  • start_on / end_on → survey availability period
  • schedule → survey scheduling configuration
  • created_at → survey creation timestamp

 

Notes

  • Each record represents a survey created within the Engagement module.
  • This table stores only the survey configuration and metadata; it does not contain employee responses or survey results.
  • The anonymous field indicates whether the survey was configured as anonymous.
  • It is commonly used to build reports showing active, scheduled, completed, or archived surveys.
  • When survey response datasets are available, this table can be joined to calculate participation rates, completion rates, and engagement metrics.
  • It is particularly useful for building dashboards that monitor employee surveys, engagement initiatives, and internal feedback campaigns.
 
 

surveys_questions_configs

Contains the configuration of the questions included in surveys within Factorial's Engagement module. Each record represents a survey question, including its label, question type, and the survey to which it belongs.

This table defines the survey structure and is commonly used together with survey answer tables to identify the questions associated with each response.

Entity

Engagement / Survey Questions

Use cases

  • Survey structure reporting
  • Employee feedback analysis
  • Survey configuration auditing
  • Engagement reporting
  • Question catalog reporting
  • Survey analytics

 

Keys

Field Type Usage
id Number (PK) Survey question identifier
survey_id Number (FK) Associated survey

 

Relationships

  • surveys_question_configs.survey_idsurveys.idPurpose: Retrieve the survey that contains the question.
  • surveys_question_configs.idsurveys_question_group_answers.surveys_question_config_idPurpose: Retrieve employee responses associated with each survey question.
  • surveys_question_configs.idsurveys_question_groups.id *(when available)*Purpose: Associate questions with their corresponding question groups.

 

Key fields

Field Exposer Type Description
label String Survey question text or label
type String Question type (e.g., rating, text, multiple choice)
survey_id Number Associated survey

 

Features / Relevant data

  • label → survey question
  • type → question type
  • survey_id → associated survey

 

Notes

  • Each record represents a question configured within a survey.
  • This table defines the survey structure but does not contain employee responses.
  • It is commonly joined with surveys to retrieve survey information and with surveys_question_group_answers to analyze employee responses by question.
  • The type field determines how responses should be interpreted, such as free text, rating scales, or selectable options.
  • This table is commonly used to build engagement reports, satisfaction analyses, response breakdowns, and dashboards organized by survey question.
 
 

survey_question_group_answers

Contains the answers submitted by employees to survey question groups within Factorial's Engagement module. Each record represents an individual response provided by an employee for a specific survey question or question group.

This table stores the survey response values and links them to the corresponding survey, question configuration, question group, and employee.

Entity

Engagement / Survey Answers

Use cases

  • Survey response reporting
  • Employee engagement analysis
  • Survey participation tracking
  • Feedback analysis
  • Response distribution reporting
  • Engagement dashboards

 

Keys

Field Type Usage
id Number (PK) Survey answer identifier
survey_id Number (FK) Associated survey
employee_id Number (FK) Employee who submitted the response
surveys_question_config_id Number (FK) Associated survey question
surveys_question_group_id Number (FK) Associated question group

 

Relationships

  • surveys_question_group_answers.survey_idsurveys.idPurpose: Retrieve the survey associated with the response.
  • surveys_question_group_answers.employee_idemployees.idPurpose: Retrieve information about the employee who submitted the response.
  • surveys_question_group_answers.surveys_question_config_idsurveys_question_configs.id *(when available)*Purpose: Retrieve the survey question configuration.
  • surveys_question_group_answers.surveys_question_group_idsurveys_question_groups.id *(when available)*Purpose: Retrieve the question group to which the response belongs.

 

Key fields

Field Exposer Type Description
value String / Number Response value submitted by the employee
survey_id Number Associated survey
employee_id Number Employee who submitted the response
surveys_question_config_id Number Associated survey question
surveys_question_group_id Number Associated question group

 

Features / Relevant data

  • value → employee response value
  • survey_id → survey associated with the response
  • employee_id → respondent
  • surveys_question_config_id → survey question
  • surveys_question_group_id → question group

 

Notes

  • Each record represents an individual answer submitted by an employee for a survey question.
  • This table contains the actual survey responses and complements the surveys table, which stores only survey metadata.
  • It can be joined with surveys to identify the survey, with employees to segment responses by organizational attributes, and with the question configuration tables to retrieve question definitions and groupings.
  • Depending on the survey configuration, the value field may contain different data types, such as text, numeric ratings, or selected options.
  • This table is commonly used to build engagement reports, participation metrics, response analysis, satisfaction dashboards, and employee feedback analytics.
 
 

survey_question_group

Contains the question groups defined for surveys within Factorial's Engagement module. Each record represents a survey questionnaire associated with a respondent and contains the survey questions as dynamically generated custom_field_* columns.

Unlike surveys_question_configs, which stores the definition of each question individually, this table presents the survey questions in a denormalized format, where every dynamically generated custom_field_* column corresponds to one question configured by the customer.

Entity

Engagement / Survey Question Groups

Use cases

  • Survey structure reporting
  • Survey configuration analysis
  • Question catalog exports
  • Survey template reporting
  • Engagement analytics

 

Keys

Field Type Usage
id Number (PK) Question group identifier
survey_id Number (FK) Associated survey
employee_id Number (FK) Associated employee
respondent_id Number (FK) Associated respondent

 

Relationships

  • surveys_question_groups.survey_idsurveys.idPurpose: Retrieve the survey associated with the question group.
  • surveys_question_groups.employee_idemployees.idPurpose: Retrieve the employee associated with the survey.
  • surveys_question_groups.respondent_idemployees.idPurpose: Retrieve the respondent associated with the survey.
  • surveys_question_groups.survey_idsurveys_question_configs.survey_idPurpose: Retrieve the question definitions configured for the survey.

 

Key fields

Field Exposer Type Description
respondent_id Number Respondent identifier
respondent_first_name String Respondent's first name
respondent_last_name String Respondent's last name
custom_field_* Dynamic Dynamically generated survey questions
survey_id Number Associated survey
employee_id Number Associated employee

 

Features / Relevant data

  • respondent_id → respondent identifier
  • respondent_first_name / respondent_last_name → respondent information
  • custom_field_* → dynamically generated survey questions
  • survey_id → associated survey
  • employee_id → associated employee

 

Notes

  • Each record represents a survey questionnaire associated with a respondent.
  • The custom_field_* columns are generated dynamically according to the number of questions configured by the customer.
  • These dynamic columns do not expose meaningful field names, making them difficult to interpret without referencing the survey configuration.
  • This table is commonly used together with surveys_question_configs, which provides the definition and metadata of each survey question.
  • It is useful for exporting complete survey structures and building dynamic survey reports.
 
 

tasks

Contains information about tasks created within Factorial. Each record represents a task assigned to an employee or user, including its title, description, assignee, author, due date, completion details, and timestamps.

This table is commonly used to track onboarding activities, HR processes, administrative tasks, and other employee-related workflows.

Entity

Tasks / Task Management

Use cases

  • Task reporting
  • Onboarding checklist tracking
  • HR workflow monitoring
  • Pending and completed task reporting
  • Employee task dashboards
  • Process compliance reporting

 

Keys

Field Type Usage
id Number (PK) Task identifier
assignee_id Number (FK) Assigned employee

 

Relationships

  • tasks.assignee_idemployees.idPurpose: Retrieve information about the employee assigned to the task.
  • tasks can be combined with onboarding, documents, and employee datasets *(when available)*Purpose: Build complete onboarding workflows, compliance reports, and HR process tracking.

 

Key fields

Field Exposer Type Description
task_name String Task title
task_content String Task description or content
assignee String Assigned user name
author String Task creator
imported_for Number Employee associated with the imported task
due_on Date Task due date
completed_by String User who completed the task
completed_at DateTime Completion date and time
created_at DateTime Creation date
updated_at DateTime Last update date
assignee_id Number Assigned employee

 

Features / Relevant data

  • task_name → task title
  • task_content → task details
  • assignee → assigned user
  • author → task creator
  • due_on → due date
  • completed_by → completed by
  • completed_at → completion timestamp
  • created_at / updated_at → audit timestamps

 

Notes

  • Each record represents a task assigned to an employee or user.
  • Tasks may be part of onboarding processes, HR workflows, administrative procedures, or manually created action items.
  • The table includes both assignment information and completion tracking, making it useful for monitoring task progress and compliance.
  • It is commonly joined with employees to identify assignees and segment tasks by organizational attributes such as team, manager, office, or legal entity.
  • This table is frequently used to build dashboards showing pending, overdue, completed, and upcoming tasks, as well as onboarding and HR process tracking.
 
 

teams

Data related with team names

 
 

time_configs

Contains monthly aggregated Time Tracking balances for employees. Each record summarizes an employee's estimated working hours, worked hours, accumulated balance, previous balance, and projected balance for a specific monthly period.

Unlike daily_time_configs, which provides one record per employee per day, this table returns one summary record per employee and month, making it suitable for monthly balance reporting rather than daily time tracking analysis.

Current limitation:

Based on the current implementation, this dataset appears to expose only the previous month's summary. Historical monthly records beyond that period are currently not available through this exposer.

Entity

Time Tracking / Monthly time balances

Use cases

  • Monthly employee time balance reporting
  • Overtime and deficit hour analysis
  • Monthly Time Tracking dashboards
  • Worked vs. estimated hours reporting
  • Time balance auditing
  • Workforce productivity reporting

 

Keys

Field Type Usage
id Number (PK) Time configuration identifier
employee_id Number (FK) Associated employee

 

Relationships

  • time_configs.employee_idemployees.idPurpose: Retrieve employee information.
  • time_configs.employee_iddaily_time_configs.employee_id *(report correlation)*Purpose: Drill down from monthly balances into daily Time Tracking records.
  • time_configs.employee_idshifts.employee_id *(report correlation)*Purpose: Compare monthly balances with attendance records and worked shifts.
  • time_configs.employee_idhour_breakdowns.employee_id *(report correlation)*Purpose: Analyze how regular hours, overtime, and special schedules contribute to the employee's monthly balance.
  • time_configs.employee_idcontracts.employee_id *(correlated using the contract effective period)*Purpose: Retrieve contractual working hours and compare them with the employee's monthly worked hours and accumulated balance.

 

Key fields

Field Exposer Type Description
total_estimated_hours Number Total estimated working hours for the month
total_worked_hours Number Total worked hours for the month
balance Number Monthly accumulated balance
previous_balance Number Balance carried over from the previous month
projected_balance Number Projected balance after the current period
start Date Beginning of the reporting period
end Date End of the reporting period
employee_id Number Associated employee

 

Features / Relevant data

  • total_estimated_hours → planned working hours for the month
  • total_worked_hours → accumulated worked hours for the month
  • balance → monthly balance
  • previous_balance → balance carried over from the previous month
  • projected_balance → projected balance
  • start / end → reporting period
  • employee_id → associated employee

 

Notes

  • Each record represents a monthly Time Tracking summary for an employee.
  • The start and end fields define the reporting period, which typically corresponds to the first and last day of a month.
  • Unlike daily_time_configs, this table stores aggregated monthly values rather than daily records.
  • Based on the current implementation, this exposer only appears to return the previous month's summary, making it unsuitable for long-term historical reporting.
  • For historical or day-by-day Time Tracking analysis, daily_time_configs should be used instead.
  • This table is commonly combined with daily_time_configs, shifts, hour_breakdowns, and contracts to build comprehensive monthly Time Tracking, overtime, and balance reports.
  • When joining with contracts, the relationship should consider the contract's effective period to ensure the correct contractual conditions are applied for the reporting month.
 
 

time_period

 

 
 

time_settings_break_configurations

Contains information about the break configurations used in Factorial Time Tracking. Each record represents a break or rest configuration applied to attendance records, including its name, whether the break is paid, and whether the configuration is currently active.

This table allows organisations to identify the break rules applied to attendance records and analyze how breaks are configured within working time management.

Entity

Time Tracking / Break configurations

Use cases

  • Break configuration reporting
  • Attendance configuration analysis
  • Paid break analysis
  • Time tracking setup auditing
  • Shift configuration reporting
  • Working time rule analysis

 

Keys

Field Type Usage
id Number (PK) Break configuration identifier

 

Relationships

  • time_settings_break_configurations.idshifts.time_settings_break_configuration_idPurpose: Retrieve the break configuration applied to an attendance shift.

 

Key fields

Field Exposer Type Description
id Number Break configuration identifier
name String Break configuration name
paid Boolean Indicates whether the break is paid
archived Boolean Indicates whether the configuration is archived

 

Features / Relevant data

  • name → identifies the break rule or configuration applied to attendance records.
  • paid → determines whether break periods are considered paid time.
  • archived → identifies inactive or historical configurations.
  • id → enables linking configurations with attendance shifts.

 

Notes

  • Each record represents a break configuration defined in Factorial Time Tracking.
  • This table contains configuration data and does not store employee break occurrences.
  • To analyze breaks applied to attendance records, join with shifts using time_settings_break_configuration_id.
  • paid is relevant when analyzing working time calculations and break policies.
  • Archived configurations may continue to be referenced by historical attendance records.
  • This table should not be used to calculate worked hours, break durations, or employee time balances.
  • Official working time calculations should be performed using daily_time_configs.
  • This dataset is mainly used for understanding time tracking setup, break rules, and attendance configuration.
 
 

time_tracking_policy

Contains information about the time-tracking policy currently assigned to each employee in Factorial. The policy is exposed as a reporting field alongside employee information, allowing organisations to identify which policy applies to each employee when analysing time-tracking data.

This field enables organisations to use the employee's current time-tracking policy as a reporting dimension and ensures that overtime calculations and other time-based analyses can take the applicable employee schedule into account.

Entity

Employee / Time Tracking Policy

Use cases

  • Overtime calculation
  • Time-tracking reporting
  • Policy-based reporting
  • Attendance and schedule analysis
  • Employee policy compliance
  • Identifying employees assigned to the wrong policy
  • Grouping and filtering time-tracking data by policy
  • AI-powered reporting

 

Keys

Field Type Usage
employee_id Number (FK) Associated employee
time_tracking_policy String Current time-tracking policy assigned to the employee

 

Relationships

  • time_tracking_policy.employee_idemployees.id
    Purpose: Retrieve employee information associated with the time-tracking policy.
  • time_tracking_policy → time-tracking records (report correlation)
    Purpose: Identify the policy applicable to an employee when analysing time-tracking and overtime data.

 

Key fields

Field Exposer Type Description
employee_id Number Associated employee identifier
time_tracking_policy String Current time-tracking policy assigned to the employee

Features / Relevant data

  • time_tracking_policy → identifies the employee's current time-tracking policy.
  • The policy is available in Analytics reports under Employees > Basic information.
  • The field can be selected from the field list in the report builder.
  • The field can also be queried directly in SQL.
  • time_tracking_policy can be used to select, filter or group time-tracking data by employee policy.
  • The policy is provided alongside the employee's hours, allowing overtime calculations to determine which schedule or policy applies to each employee.
  • The field can be used to identify cases where an employee may have been assigned the wrong policy.
  • The field is also available in AI Reports.

 

Notes

  • time_tracking_policy represents the employee's current time-tracking policy.
  • The field does not provide the employee's historical policy assignments.
  • The policy is available as a reporting dimension alongside employee information and time-tracking data.
  • The field can be used to support overtime calculations by identifying the policy applicable to each employee.
  • The field can be used to identify potential policy assignment issues.
  • For policy history or historical policy changes, this field should not be interpreted as a historical record.
  • The field is available in Analytics reports and AI Reports.
 
 

tolerance_incidences

Contains information about tolerance incidences generated from customer-configured punctuality rules in Factorial. Each record represents an incidence related to an employee clock-in, comparing the scheduled start time with the actual clock-in time and applying the configured tolerance rules.

This table allows organisations to analyse late arrivals, early clock-ins, punctuality compliance, and the impact of attendance tolerance configurations.

Entity

Attendance / Tolerance Incidences

Use cases

  • Punctuality reporting
  • Attendance compliance analysis
  • Late arrival tracking
  • Early clock-in analysis
  • Employee punctuality dashboards
  • Attendance rule monitoring
  • Tolerance rule impact analysis

 

Keys

Field Type Usage
id Number (PK) Tolerance incidence identifier
employee_id Number (FK) Associated employee

 

Relationships

  • tolerance_incidences.employee_idemployees.idPurpose: Retrieve employee information associated with the tolerance incidence.
  • tolerance_incidences.dateshifts.date *(report correlation)*Purpose: Correlate tolerance incidences with attendance records for punctuality and clock-in analysis.
  • tolerance_incidences.real_clock_in_timeshifts.clock_in *(report correlation)*Purpose: Compare actual clock-in records with tolerance results generated from attendance rules.

 

Key fields

Field Exposer Type Description
id Number Tolerance incidence identifier
date Date Date when the tolerance incidence occurred
clock_action String Clock action evaluated by the tolerance rule
scheduled_clock_in_time Timestamp Scheduled clock-in time based on employee schedule
real_clock_in_time Timestamp Actual employee clock-in time
minutes_off Number Difference in minutes between scheduled and actual clock-in
punctuality String Punctuality result after applying tolerance rules
start_date Date Start date of the tolerance rule period
end_date Date End date of the tolerance rule period
employee_id Number Associated employee identifier

 

Features / Relevant data

  • scheduled_clock_in_time → expected employee start time according to the configured schedule.
  • real_clock_in_time → actual clock-in time recorded by the employee.
  • minutes_off → deviation between scheduled and actual clock-in time.
  • punctuality → result of the tolerance evaluation.
  • clock_action → identifies the attendance action evaluated.
  • start_date / end_date → define the validity period of the applied tolerance configuration.
  • employee_id → enables employee-level punctuality analysis.

 

Notes

  • Each record represents a tolerance incidence generated from customer-configured attendance tolerance rules.
  • The information available depends on the tolerance rules configured by each customer.
  • This table is intended for punctuality and attendance rule analysis, not for official worked time calculations.
  • minutes_off represents the deviation between scheduled and actual clock-in based on tolerance logic.
  • The interpretation of delays or early arrivals depends on the configured tolerance settings.
  • This table can be combined with shifts to provide additional attendance context.
  • For official worked hours, overtime, balances, and working time reports, use daily_time_configs.
  • This dataset is primarily used for punctuality monitoring, attendance compliance reporting, and analyzing tolerance rule behaviour.
 
 

trainings

Contains information about training programs configured in Factorial. Each record represents a training course or learning activity created within the Training module, including general information, associated costs, provider details, classification, and tracking information.

This table allows organisations to analyse training investment, available courses, external providers, and the relationship between training programs and their sessions through sessions.

Entity

Training / Courses

Use cases

  • Training reporting
  • Learning & Development dashboards
  • Training cost analysis
  • Training investment analysis
  • Employee development reporting
  • External training monitoring
  • Training catalog management

 

Keys

Field Type Usage
id Number (PK) Training identifier
author_id Number (FK) Employee/user who created the training

 

Relationships

  • trainings.idsessions.training_idPurpose: Retrieve sessions associated with a training program. Allows analysis of training schedules, dates, modalities, and participants.
  • sessions.idsession_access_memberships.session_id *(through sessions)*Purpose: Retrieve employees associated with sessions belonging to the training program.
  • trainings.author_idemployees.id *(when applicable)*Purpose: Retrieve the employee or user who created the training.

 

Key fields

Field Exposer Type Description
id Number Training identifier
name String Training name
cost Number Base training cost
subsidized_cost Number Subsidised training cost
total_cost Number Total training cost
indirect_cost Number Additional indirect costs
salary_cost Number Salary cost associated with training time
type String Training type or category
created_at Timestamp Training creation date
author_id Number Training creator identifier
external_provider String External training provider
external Boolean Indicates whether the training is external
status String Current training status
year Number Training year
code String Training code
tags Array / String Training classification tags

 

Features / Relevant data

  • name → identifies the training program.
  • type → enables training categorisation.
  • cost / total_cost → support training investment analysis.
  • subsidized_cost → identifies subsidised amounts.
  • indirect_cost → captures additional training expenses.
  • salary_cost → represents employee salary costs related to training.
  • external → differentiates internal and external trainings.
  • external_provider → identifies third-party providers.
  • status → tracks training lifecycle.
  • year → enables yearly training reporting.
  • tags → supports training classification and filtering.

 

Notes

  • Each record represents a training program or course configured in Factorial.
  • A training can have multiple sessions through sessions.training_id.
  • Employee participation should be retrieved through sessions and session_access_memberships.
  • Cost-related fields allow analysis of training investment and financial impact.
  • subsidized_cost is listed twice in the available exposers and should be validated against the source schema.
  • external and external_provider identify trainings managed by external providers.
  • This table should be combined with sessions to obtain the complete training lifecycle, including scheduling and employee participation.
  • It is one of the primary datasets for Learning & Development analytics, training cost reporting, and training catalog management.
 
 

work_areas

Contains information about the work areas configured in Factorial. Each record represents a work area used to organise employees, workplaces, and operational structures within the company, including its name, archive status, and associated location.

This table allows organisations to classify operational areas, associate them with locations, and use them as an organisational dimension for workforce reporting and shift planning.

Work areas can also be used in Shift Management to define the operational area associated with planned employee shifts.

Entity

Work Areas

Use cases

  • Employee organisation reporting
  • Workplace structure analysis
  • Location-based reporting
  • Workforce segmentation
  • Shift planning analysis
  • Operational dashboards
  • Workforce distribution analysis
  • Organisational structure reporting

 

Keys

Field Type Usage
id Number (PK) Work area identifier
location_id Number (FK) Associated location identifier

 

Relationships

  • work_areas.location_idlocations.id *(when available)*Purpose: Retrieve the location associated with the work area.
  • work_areas.idshift_management_shifts.work_area_id *(when Shift Management is enabled)*Purpose: Retrieve the work area assigned to a planned shift. This relationship allows analyzing scheduled shifts, workforce planning, and employee schedules by operational area.
  • work_areas.id → Employee/workplace related datasets *(when available)*Purpose: Associate employees or operational records with their configured work area.

 

Key fields

Field Exposer Type Description
id Number Work area identifier
name String Work area name
archived Boolean Indicates whether the work area is archived
location_id Number Associated location identifier

 

Features / Relevant data

  • name → identifies the operational or organisational area.
  • archived → identifies inactive or historical work areas.
  • location_id → connects work areas with physical or organisational locations.
  • shift_management_shifts.work_area_id → identifies the operational area assigned to planned shifts.
  • id → enables linking work areas with workforce planning and workplace-related datasets.

 

Notes

  • Each record represents a work area configured in Factorial.
  • Work areas are used as an organisational dimension to classify employees, workplaces, and operational structures.
  • Work areas can also be used within Shift Management to assign planned shifts to a specific operational area.
  • When Shift Management is enabled, this table can be combined with shift_management_shifts through work_area_id to analyse planned schedules, employee assignments, and workforce distribution by area.
  • Archived work areas may still exist for historical reporting purposes.
  • This table does not store employee assignments directly; employee relationships should be retrieved through related datasets.
  • location_id can be used to enrich work area reporting with location information.
  • It is commonly used for workforce segmentation, shift planning analysis, workplace structure reporting, and operational dashboards.
 
 

work_schedule_schedules

Contains information about the employee work schedules configured in Factorial. Each record represents a planned working schedule assigned to an employee, including scheduled dates, planned start and end times, expected duration, schedule type, and employee assignment.

This table is used to analyse planned working time, employee schedules, and workforce organization. It represents expected schedules rather than actual attendance records.

Entity

Work Schedule / Employee Schedules

Use cases

  • Work schedule reporting
  • Planned hours analysis
  • Employee availability analysis
  • Schedule compliance reporting
  • Workforce planning
  • Fixed vs flexible schedule analysis
  • Capacity planning dashboards
  • Working time planning analysis

 

Keys

Field Type Usage
id Number (PK) Work schedule record identifier
employee_id Number (FK) Associated employee

 

Relationships

  • work_schedule_schedules.employee_idemployees.idPurpose: Retrieve employee information associated with the planned schedule.
  • work_schedule_schedules.dateshifts.date *(report correlation)*Purpose: Compare planned schedules with actual attendance records.

 

Key fields

Field Exposer Type Description
id Number Work schedule record identifier
date Date Scheduled working date
start_at Timestamp Planned work start time
end_at Timestamp Planned work end time
duration_in_hours Number Planned schedule duration
total_hours_per_day Number Total planned hours for the day
schedule_name String Schedule name
schedule_type String Schedule type (fixed or flexible)
employee_id Number Associated employee

 

Features / Relevant data

  • start_at / end_at → define planned working periods.
  • duration_in_hours → represents scheduled duration.
  • total_hours_per_day → represents planned daily workload.
  • schedule_type → identifies schedule flexibility:
    • fixed → predefined working hours with expected start and end times.
    • flexible → flexible working arrangement without strict clock times.
  • schedule_name → identifies the schedule assigned to the employee.
  • date → enables daily planning analysis.

 

Notes

  • Each record represents a planned schedule assigned to an employee for a specific date.
  • This table should be considered a planning dataset, not an attendance dataset.
  • schedule_type differentiates between fixed schedules and flexible schedules.
  • It can also be compared with shifts to analyze differences between expected and actual working time.
  • It is mainly used for workforce planning, schedule analysis, availability reporting, and working time organization.
 
 

workforces

Contains information about the daily workforce availability and capacity of employees in Factorial. Each record represents an employee workforce calculation for a specific date, including the employee's full-time equivalent (FTE) value and leave-related information affecting workforce availability.

This table allows organisations to analyse employee capacity, workforce availability, and the impact of absences or permissions on daily workforce metrics.

The dataset is focused on workforce availability calculations rather than employee master data or attendance records.

Entity

Workforce Availability

Use cases

  • Workforce capacity reporting
  • FTE availability analysis
  • Workforce planning
  • Leave impact analysis
  • Daily workforce dashboards
  • Employee availability tracking
  • Capacity trend analysis
  • Organisational planning
  • Attendance vs capacity analysis

 

Keys

Field Type Usage
id Number (PK) Workforce record identifier
employee_id Number (FK) Associated employee

 

Relationships

  • workforces.employee_idemployees.idPurpose: Retrieve employee information associated with the workforce calculation.
  • workforces.employee_id + workforces.dateshifts.employee_id + shifts.date *(report correlation)*Purpose: Compare workforce availability with actual attendance records for the same employee and date. Allows analyzing workforce capacity versus attendance activity.
  • workforces.employee_idleaves.employee_id *(report correlation)*Purpose: Relate workforce availability with employee leave records affecting capacity.
  • workforces.dateleaves.start_on / leaves.finish_on *(report correlation)*Purpose: Identify leave events affecting workforce availability on a specific date.

 

Key fields

Field Exposer Type Description
id Number Workforce record identifier
full_time_equivalent Number Employee workforce availability expressed as FTE value
date Date Workforce calculation date
leaves String Leave or permission affecting employee availability
employee_id Number Associated employee identifier

 

Features / Relevant data

  • full_time_equivalent → represents the employee's available workforce capacity for a specific date.
  • date → identifies the day for which workforce availability is calculated.
  • leaves → indicates leave or permission events affecting workforce availability.
    • Example values may include permissions such as Retributed permission.
    • Empty values indicate no leave information associated with the workforce record.
  • employee_id → connects workforce metrics with employee information.
  • employee_id + date → allows comparison between workforce availability and attendance activity from shifts.
  • Historical records allow analysing workforce evolution and capacity changes over time.

 

Notes

  • Each record represents an employee workforce availability calculation for a specific date.
  • full_time_equivalent represents the employee's available capacity for that day and can contain partial values depending on employee availability.
  • The leaves field represents leave-related information affecting workforce availability and may contain leave type descriptions rather than numeric values.
  • Multiple records may exist for the same employee and date depending on workforce events or leave scenarios.
  • This table can be combined with shifts using employee_id and date to compare workforce availability with actual attendance activity.
  • The relationship with shifts is intended for analytical comparison and should not be used as a replacement for official worked time calculations.
  • This table should not be used for attendance calculations, worked hours, overtime, or payroll reporting.
  • For official working time calculations, balances, and overtime logic, use daily_time_configs.
  • For actual clock-in and clock-out activity, use shifts.
  • For employment conditions and contractual information, use contracts.
  • It is mainly used for workforce planning, FTE reporting, employee availability analysis, and understanding the impact of absences on workforce capacity.
 
 

 

Was this article helpful?

Give feedback about this article

Can’t find what you’re looking for?

Our customer care team is here for you.

Contact us

Knowledge Base Software powered by Helpjuice