France Vacation Calculation
The France Vacation Calculation integration automates vacation calculations for customer in France while ensuring compliance with local regulations.
This integration handles functionalities, such as:
-
Monthly grant calculation, in days
-
Division between principle and additional vacation days
-
Grant distribution across multiple accruals
-
Recognition of legal work weeks, such as Jours Ouvrés and Jours Ouvrables
-
Prorates grants for
-
new hires and terminated employees based on working days during the hire or termination month
-
Accrual Policy changes based on working days during the month in which changes occur
-
-
Recalculation and adjustment of vacation grants to accommodate sick leave, when necessary
-
Rounds acquired vacation days at year-end
The integration relies on basic accrual configuration that is configured in the application to manage grant calculations. We provide an SDM zip file with this basic setup, including accrual codes, accrual balance cascade, accrual balance cascade groups, accrual policies, and accrual profiles, as part of the iPack delivery.
Vacation entitlement
All employees in France are entitled to the same number of vacation days, based on a 5-week period. The entitlement, known as Congés Payés (CP), uniformly grants vacation to employees, regardless of full or part-time employment status, working hours, or the number of days the employee works each week.
Organizations choose between two models that define the work week; this is often identified in the collective bargaining agreement.
-
Model 1 — Jours Ouvrés
-
Jours Ouvrés refers to the days when the company conducts business.
-
This model assumes a 5-day work week that ranges from Monday to Friday.
-
Employees receive five 5-day weeks of vacation, which result in an annual total of 25 vacation days
-
-
Model 2 — Jours Ouvrables
-
Jours Ouvrables refers to the days when the company could conduct business.
-
This model assumes a 6-day work week that ranges from Monday to Saturday, even though the company conducts business only from Monday to Friday.
-
Employees receive five 6-day weeks of vacation, which result in an annual total of 30 vacation days.
-
How is vacation managed?
In France, the vacation year runs from June 1 to May 31; however, some exceptions allow use of the calendar year to accommodate collective agreements.
Employees must first earn their vacation through three distinct accrual balances. A cascading policy governs the order in which accruals are used.
-
Accrual 1 – Accruing Vacation Balance (CP en Cours d'Acquisition)
-
Accrual 1 represents the vacation days that the employee is currently earning.
-
In the past, these days were not available until the following year. However, due to recent legislative change, earned days can now be used within the same vacation year.
-
At the end of the year, the balance rolls over into the vested accrual.
-
-
Accrual 2 – Vested Vacation Balance (CP Acquis)
-
Accrual 2 represents vested vacation days earned in the previous year.
-
These days are available for use.
-
Any remaining balance at the end of the vacation year rolls over into the carryover accrual.
-
-
Accrual 3 – Carried Over Vacation Balance (CP Reliquat)
-
Accrual 3 represents unused vested vacation days.
-
The carryover is not limited.
-
Principal and additional vacation
All employees, regardless of the model they follow, are entitled to five weeks of vacation. The fifth week's treatment differs in that it is the only entitlement that can legally be adjusted when the employee takes sick leave.
Three main accruals make up the total vacation (CP).
-
Accrual main, otherwise known as CP Principaux:
-
Represents four weeks of paid principal vacation (20 or 24 days)
-
Split between two accruals — Accruing and Vested
-
Cannot be adjusted when the employee is sick
-
-
Accrual fifth week, otherwise known as CP 5e Semaine:
-
Represents the additional fifth week of paid vacation (5 or 6 days)
-
Split between two accruals — Accruing and Vested
-
Can be adjusted when the employee is sick
-
-
Carried over, otherwise known as CP Reliquat:
-
Represents unused vacation that carries over from the previous year.
-
Monthly grant calculation
Monthly grant calculations for each model are described as follows:
-
Model 1 – Jours Ouvrés
-
The vacation entitlement, which provides 25 total days each year, is granted at the end of each month. The average monthly grant equates to 2.08 days.
-
The grant designates 80% to CP Principaux (4 weeks of principal vacation) and 20% to CP 5e Semaine (fifth week of additional vacation).
-
Each month, CP Principaux receives 1.67 days and CP 5e Semaine receives 0.41 days.
-
-
Model 2 – Jours Ouvrables
-
The extension grants exact amounts; no rounding applies during the accruing period.
-
The vacation entitlement, which provides 30 total days each year, is granted at the end of each month. The average monthly grant equates to 2.5 days.
-
The grant designates 80% to CP Principaux (4 weeks of principal vacation) and 20% to CP 5e Semaine (fifth week of additional vacation).
-
Each month, CP Principaux receives 2.0 days and CP 5e Semaine receives 0.5 days.
-
Prorated grant calculation for new hires
Employees who are hired mid-year do not receive the full 2.08- or 2.5-day entitlement during their first month of employment. Their grant must be prorated based on potential working days and must align with the model to which the hiring organization adheres. This extension calculates the prorated grant without rounding and then inserts the result during the accrual period.
Examples of each model for employees who begin employment on March 14, 2024 are described below:
-
Model 1 – Jours Ouvrés (5-day work week, Monday to Friday)
-
March 2024 consists of 21 potential working days.
-
A start date of March 14, 2024 leaves 12 potential working days in the month.
-
Prorated grant: (12 / 21) * 2.08 = 1.19 days
-
The 80/20 split results in 0.96 days of CP Principaux and 0.23 days of CP 5e Semaine.
-
-
Model 2 – Jours Ouvrables (6-day work week, Monday to Saturday)
-
March 2024 consists of 26 potential working days.
-
A start date of March 14, 2024 leaves 15 potential working days in the month.
-
Prorated grant: (15 / 26) * 2.5 = 1.44 days
-
The 80/20 split results in 1.15 days of CP Principaux and 0.29 days of CP 5e Semaine.
-
Vacation grant adjustment to accommodate sick leave
Adjustments to accrued vacation days may apply when an employee takes sick leave. These adjustments apply only to the fifth week of vacation and do not affect the four principal weeks.
-
The four principal weeks of vacation are a fundamental employee right under French law. They are protected and cannot be adjusted.
-
The fifth week of vacation is an additional entitlement. Because it is less strictly protected, it may be adjusted during periods of sick leave.
Whether an adjustment applies depends on several factors, including the type of sickness, the employee's seniority, job group, and the applicable collective bargaining agreement.
This extension supports the following methods for evaluating vacation entitlements:
-
Fixed – Begins the vacation deduction after a specified number of sick days.
-
Comparison – Calculates vacation entitlements under multiple frameworks and applies the result that provides the greater benefit to the employee.
-
None – Vacation grants continue without adjustments for sick days.
Vacation entitlement evaluation – Comparison frameworks
Frameworks referenced by the comparison method include:
-
French labor law (Article L3141)
-
National Collective Bargaining Agreement for Metallurgy (Convention collective nationale de la métallurgie)
-
Employees on sick leave continue to accrue vacation.
-
Vacation accrual depends only on the type of sickness:
-
Non-professional accident or illness
-
2 days per month (principal vacation only)
-
Maximum of 24 days per year
-
-
Professional accident or illness
-
2.5 days per month (principal vacation + fifth week)
-
Maximum of 30 days per year, regardless of sick leave duration
-
-
-
Job group, seniority, and vacation calculation method (Jours Ouvrés / Jours Ouvrables) are not considered.
-
Employees on sick leave continue to accrue vacation.
-
Vacation accrual depends on job group and seniority, not on the type of sickness.
-
Job groups A, B, C, D, and E
-
2.5 days per month (principal vacation + fifth week)
-
Maximum of 30 days per year
-
Guaranteed accrual period based on seniority
-
No accrual beyond the guaranteed period
-
-
Job groups F, G, H, and I
-
2.5 days per month (principal vacation + fifth week)
-
Maximum of 30 days per year
-
Guaranteed accrual period of 1 year by default
-
No accrual beyond the guaranteed period
-
-
Additional rules under the National CBA for Metallurgy
-
The type of sickness and vacation calculation method (Jours Ouvrés / Jours Ouvrables) are not considered.
-
Seniority determines the length of the guaranteed accrual period.
Guaranteed accrual period (based on seniority) under the National CBA for Metallurgy
The guaranteed accrual period begins on the first day of sick leave and ends on the same calendar date of the following month.
Example: If sick leave begins on March 10, the first guaranteed calendar month runs from March 10 through April 9, inclusive.
-
The guaranteed period applies only to the current vacation year.
-
The number of guaranteed months resets at the start of each new vacation year.
| Seniority (years) | Guaranteed duration (months) |
|---|---|
| < 1 | 0 |
| ≥1 | 2 |
| ≥5 | 4 |
| ≥10 | 6 |
| ≥20 | 8 |
Additional calculation rules under the National CBA for Metallurgy
-
For partial months of sick leave, vacation adjustments are calculated on a pro-rata basis, using working days in the month.
-
Vacation grants may be rounded up or down, depending on configuration.
-
Any gains or losses resulting from rounding are stored and carried forward for adjustment in future months.
Rounding logic
Although not applied during the accruing period, rounding must occur on year-end principal and additional vacation balances before transfer to the vested balance.
After the extension makes the necessary rounding adjustments, balance cascade or accrual carryover core functionality handles the move from vested (CP en Cours d'Acquisition) to acquired (CP Acquis).
The rounding logic that the extension applies is outlined below. Refer to the table for a detailed example.
-
The ending balances associated with CP Principaux (1) and CP 5e Semaine (2) are summarized to obtain a total (3).
-
The total amount is rounded up to the next full decimal to obtain the rounded total (4).
-
The extension calculates the ratios of CP Principaux (1) and CP 5e Semaine (2) against the Total (3) to obtain CP Principaux Ratio (5) and CP 5e Semaine Ratio (6).
-
The CP Principaux Ratio (5) and CP 5e Semaine Ratio (6) are applied to the Rounded Total (4), resulting in CP Principaux Ratio Result (7) and CP 5e Semaine Ratio Result (8).
-
CP Principaux Ratio Result (7) and CP 5e Semaine Ratio Result (8) are then rounded to the nearest half decimal place, producing Rounded CP Principaux Acquis (9) and Rounded CP 5e Semaine Acquis (10).
-
The extension calculates CP Principaux Rounding adjustment (11) by subtracting CP Principaux (1) from Rounded CP Principaux Acquis (9); and CP 5e Semaine Rounding adjustment (12) by subtracting CP 5e Semaine (2) from Rounded CP 5e Semaine Acquis (10). It then applies these amounts on the first day of the next vacation year.
| Employee 1 | Employee 2 | Employee 3 | ||
|---|---|---|---|---|
| 1 | CP Principaux | 19.79 | 15.01 | 12.01 |
| 2 | CP 5e Semaine | 4.92 | 0.87 | 1.02 |
| 3 | Total | 24.71 | 15.89 | 13.03 |
| 4 | Rounded Total | 25 | 16 | 14 |
| 5 | CP Principaux Ratio | 0.801 | 0.945 | 0.921 |
| 6 | CP 5e Semaine Ratio | 0.199 | 0.055 | 0.079 |
| 7 | CP Principaux Ratio Result | 20.00 | 15.117 | 12.899 |
| 8 | CP 5e Semaine Ratio Result | 4.975 | 0.883 | 1.101 |
| 9 | Rounded CP Principaux Acquis | 20 | 15 | 13 |
| 10 | Rounded CP 5e Semaine Acquis | 5 | 1 | 1 |
| 11 | CP Principaux Rounding adjustment | 0.21 | -0.01 | 0.99 |
| 12 | CP 5e Semaine Rounding adjustment | 0.08 | 0.13 | -0.02 |
Timecard visualization
We recommend that you configure the placeholder paycodes as visible in the Timecard because it helps users track when a grant is issued or when a balance is adjusted, such as for sickness corrections.
Considerations and limitations — France Vacation Calculation
The France Vacation Calculation extension:
-
serves as a framework that offers prorating options for new hires, terminated employees, and accrual profile changes.
-
manages all grants, sickness adjustments, and rounding.
-
ignores core grant configuration elements.
-
allows a maximum 24-month calculation period that consists of up to 6 months in the past and 18 months in the future.
-
provides future grants, up to 18 months, to cover vacation requests submitted up to 1.5 years in advance.
-
works only with day-based accrual codes.
-
ignores the Length of Service and Probation Period settings defined in the Accrual Policy.
-
gives precedence to Accrual Profile assignments in the Employment Term. When the Employment Term is configured in this manner, you must set the Process Type option as Enforce End Date.
-
references the Employment Status and then checks either the Hire or Termination Date to determine the calculation start date. When an employee is rehired, the extension utilizes the most recent active date as the calculation start date; it then prevents corrections or updates in previous employment date spans.
-
ignores employees with an inactive employment status.
-
skips employees who are hired and terminated within the same month. These employees are not entitled to receive grants or prorated accrual amounts.
-
grants vacation accruals only at the end of each month.
-
performs accrual proration of the total monthly grant based on the number of days that the employee works during the month. The integration does not perform rounding during the vacation year and instead truncates the monthly calculated prorated amount beyond two digits to the right of the decimal.
-
performs rounding on the year-end balance to adjust grant amount differences.
-
relies on paycodes and comments that it places in the Timecard during processing; do NOT edit or delete any of these accrual paycodes or associated comments and notes.
-
references the locale cross reference-table to generate accrual detail notes that it attaches to adjustment comments in the Timecard. Do not create duplicate values across multiple records in this cross-reference table.
-
does not create negative accrual adjustments for situations in which an employee charges sick leave after depleting their accrual balances. If your organization permits accrual overdrafts, you must ensure that they are appropriately configured. If overdrafts are not permitted, the extension posts errors in the Additional Information section of the Run Summary and then requires that you perform manual adjustments.
-
supports recalculations and adjustments in signed-off periods.
-
does not support multiple assignments.
Configure integration parameters EnableHired/RehiredEmloyee, EnableTerminatedEmp, and EnableAccrualProfileChange to not prompt the user to make a parameter selection during the integration run. These parameters must remain consistent; they cannot change from one integration run to another.
Use cases — France Vacation Calculation
New hire
Company A adheres to the Jours Ouvrables model which grants 30 days each year. This model provides a 2.5-day monthly grant to each employee which is divided between CP Principaux (2.0 days) and CP 5e Semaine (0.5 days). The Company prorates the grant during the month in which a new employee begins.
A new employee begins employment on November 15, 2024, and then works 14 days out of the 26 working days during the month.
The extension calculates the prorated grants as:
-
CP Principaux: (14/26) × 2.0 = 1.08 days
-
CP 5e Semaine: (14/26) × 0.5 = 0.26 days
The extension then inserts a placeholder paycode with a zero amount in the Timecard at the end of the month. It attaches a comment with notes that describe the accrual grant details.
Accrual policy change
Company C consists of two legal entities. Entity 1 adheres to the Jours Ouvrables model and Entity 2 adheres to the Jours Ouvrés model. Each entity prorates the monthly grant during the month in which an accrual policy change occurs.
An employee who works for Entity 1 transfers to Entity 2 on November 18, 2024. The employee works on all potential working days under each model – 14 out of 26 days with Entity 1 and 10 out of 21 days with Entity 2. The extension calculates the prorated grants for Entity 1 as:
-
CP Principaux: (14/26) x 2.0 = 1.08
-
CP 5e Semaine: (14/26) x 0.5 = 0.26
The extension calculates the prorated grants for Entity 2 as:
-
CP Principaux: (10/21) x 1.67 = 0.80
-
CP 5e Semaine: (10/21) x 0.41 = 0.19
The extension then inserts two placeholder paycodes with zero amounts in the Timecard at the end of the month. It attaches a comment with notes to each paycode that describe the accrual grant details applicable to each model.
Termination
Company B adheres to the Jours Ouvrés model which grants 25 days each year. This model provides a 2.08-day monthly grant to each employee which is which is divided between CP Principaux (1.67 days) and CP 5e Semaine (0.41 days). The Company prorates the monthly grant during the month in which termination occurs.
An employee works 16 of the 21 potential working days during the month and then retires on November 22, 2024.
The extension calculates the November grants as:
-
CP Principaux: (16/21) x 1.67 = 1.27 days
-
CP 5e Semaine: (16/21) x 0.41 = 0.31 days
The extension then inserts a placeholder paycode with a zero amount in the Timecard on the last day of employment. It attaches a comment with notes that describe the accrual grant details.
Sickness adjustment – Fixed
Company B adheres to the Jours Ouvrés model which grants 25 days each year. This model provides a 2.08-day monthly grant to each employee which is which is divided between CP Principaux (1.67 days) and CP 5e Semaine (0.41 days). The administrator previously configured the FixedAdjustmentThreshold as 0; which means the Company applies an immediate adjustment to CP 5e Semaine to account for nonworking sick days; CP Principaux remains untouched.
An employee takes 5 sick days out of 21 potential working days during the month of November 2024.
The extension calculates the November grants as:
-
CP Principaux: 1.67 days
-
CP 5e Semaine: (16/21) × 0.41 = 0.31 days
The extension then inserts a placeholder paycode with a zero amount in the Timecard at the end of the month. It attaches a comment with notes that describe the accrual grant details.
Sickness adjustment – Comparison – Single sick leave period
An employee joins Company D during the year and works in Job Group A. Because the employee has less than one year of seniority, they are not yet eligible for a guaranteed vacation period when taking sick leave. The employee takes sick leave due to a non-professional illness from June 16 through June 30 (inclusive) during the 2025 calendar year. Company D follows the Jours Ouvrables model, which grants 2.5 vacation days per month. To determine whether the employee's vacation entitlement should be adjusted, the June entitlement is calculated using both applicable models (L3141 and CBA Metallurgy), and the most favorable result is applied.
The information used for the comparison includes the following:
-
Under the Jours Ouvrables model (Monday–Saturday), there are 25 potential working days.
-
There are 12 working days between June 1 and June 15.
-
The employee took 13 sick leave days between June 16 and June 30.
-
None of the sick leave days are guaranteed under the CBA.
-
A round-down rule of 0.25 is applied to any fractional vacation entitlement.
Comparison calculations:
-
L3141 pro-rata calculation: (12/25 × 2.5) + (13/25 × 2.0) = 2.24 days
-
CBA pro-rata calculation: (12/25 × 2.5) + (0/25 × 2.5) = 1.20 days
The L3141 calculation is more favorable to the employee. After applying the rounding rule, the employee receives 2.00 vacation days for the month of June.
Sickness adjustment – Comparison – Multiple sick leave periods
An employee who has been employed at Company D for five years works in Job Group A. Due to the employee's seniority, they are entitled to four months of guaranteed vacation accrual under the CBA.
In France, the vacation year runs from June through May, which provides the employee with four months of guaranteed vacation accrual during this period.
Company D follows the Jours Ouvrables model, which grants 2.5 vacation days per month.
The information used for the comparison includes the following:
The employee was absent for two separate periods of non-professional sick leave:
-
Two months spanning June through July 2025
-
Three months spanning March through May 2026
The guaranteed period ends in May 2026. At that point, the accumulated vacation entitlement under both L3141 and the CBA totals 27.5 days. As a result, no additional vacation grant is applied for May.
Sickness adjustment – Comparison – Long term sick leave spanning multiple years
A senior manager employed at Company D works in Job Group F. Due to the employee's job group, they are entitled to twelve months of guaranteed vacation accrual under the CBA.
The employee was involved in a work-related accident and was on leave from June through the following September, spanning two vacation years.
After one year, the guaranteed vacation accrual under the CBA expires. However, under L3141, vacation continues to accrue at a rate of 2.5 days per month.
In this case, the employee accrues vacation under the CBA for the first twelve months and then continues to accrue vacation under L3141 for the remainder of the leave period.
Boomi extension setup
- Get the URL, User, and Password for the APIGatewayServer.
- Install and attach the iPack.Note: For more information, see the Deploy Integration Packs to your Atom topic.
- Configure the France Vacation Calculation Extension integration settings:
- Configure connection settingsCaution: If you select Use Default for the connection settings and process properties, ensure that Value is blank. If Value is not blank, that value overrides the default value whether or not Use Default is selected or cleared. Example: If the default value is abc, but Value shows xyz, the integration uses xyz regardless of the setting of Use Default.
- Configure process properties:
Configure the France Vacation Calculation integration
After the integration is deployed, complete the following configurations before you utilize this integration.
Application setup
- Configure Access to Integrations.
- Configure the following:
- System Settings: Establish values for global system settings global.WtkTotalizer.MaxDaysInFutureForAccrualProjections and global.WtkTotalizer.MinDaysInFutureForAccrualProjections to identify the number of days into the future that accruals will be totaled. See the Timekeeping System Settings topic.
-
Comments: Configure two comments for exclusive use by the extension. Select the Pay Codes category during creation. When the extension adds these comments to the Timecard, it also attaches notes to the comments that contain accrual adjustment details. See the Comments topic.
- Paycodes: Create day-based paycodes for exclusive use by the extension. Associate one of the paycodes with accrual policies for taking amounts. One Paycode tracks the monthly adjustment and the other tracks the yearly rounding adjustment. See the Paycodes topic.
- Combined paycodes: Create combined paycodes, two day-based and the other two hour-based, that identify qualifying professional and non-professional sickness related paycodes. See the Combined Paycodes topic.
- Accrual codes: Create multiple day-based accrual codes — Accrual main (CP Principaux), Accrual fifth week (CP 5e Semaine), Vested main accrual (CP Principaux Acquis), Vested fifth week (CP 5e Semaine Acquis), and Carried over (CP Reliquat). Select the Allow Manual Edits option during creation of each code. See the Accrual codes topic.
-
Accrual dates: Create an accrual date that identifies the last day of the vacation year. For example, if your vacation year spans from the first day of June until the last day of May, set the accrual date to the last day of May. See the Accrual dates topic.
-
Date patterns: Create a date pattern that governs when the accrual balances are incremented. See the Date patterns topic.
-
Accrual balance cascade: Create an accrual balance cascade that identifies automatic accrual balance transfers which occur based on the previously created date pattern. For example, on the last day of the vacation year, remaining accrual balances in
Vested mainandVested fifth weekmove toCarried over;Accrual mainmoves toVested main; andAccrual fifth weekmoves toVested fifth week. See the Accrual balance cascade topic. -
Accrual balance cascade group: Create an accrual balance cascade group that identifies the balance cascade order. See the Accrual balance cascade groups topic. For example, the CP taking sequence deducts accruals in the following order:
-
Carried over (CP Reliquat)
-
Vested main (CP Principaux Acquis)
-
Vested fifth week (CP 5e Semaine Acquis)
-
Accrual main (CP Principaux en Cours d'Acquisition)
-
Accrual fifth week (CP 5e Semaine en Cours d'Acquisition)
-
-
Accruals policy: Create an accrual policy that contains each of the accrual codes that you created to support vacation calculation. See the Accrual policies topic.
-
Accrual profile: Create an accrual profile that enables you to group the appropriate accrual policies and then assign to one or more employees. See the Accrual profiles topic.
-
Employment terms: Create employment terms to group employees who share the same accrual profile. See the Employment terms topic.
-
Translation setup data: Select configured data to be translated. Entity types that allow translation include: accruals codes, comments, and paycodes. See the Translation - User Interface topic.
Cross-reference tables
Cross-reference tables (CRT) are the look-up tables that the integrations use to translate parameter values. One or more data values from the source system can be used to assign one or more parameters in the destination system.
To make a cross-reference table available for integration processes, populate the table with data.
- If more than one row matches a reference value, the first match is the output value.
- If no match is found, the output value can be null, or the integration can produce errors.
FranceVacationCalculation_iPack_v1_Configuration_CRT: Stores accrual configuration details required by the integration.
| Column name | Description |
|---|---|
| AccrualProfile | The accrual profile, assigned in either the people record or the employment terms, to which the calculation applies. Note: You can use an asterisk (*) as a wildcard, but put the less-restrictive accrual profile names at the bottom of the table because the integration scans cross-reference tables from the top. Caution: The value must adhere to the same locale as the user who initiates the integration. |
| AccrualCode-AccruedPrimary | The accrual code that represents Accrued Primary (CP Principaux). Caution: The value must adhere to the same locale as the user who initiates the integration. |
| AccrualCode-Accrued5thWeek | The accrual code that represents Accrued Secondary (CP 5e Semaine). Caution: The value must adhere to the same locale as the user who initiates the integration. |
| AccrualCode-VestedPrimary | The accrual code that represents Vested Primary (CP Principaux). Caution: The value must adhere to the same locale as the user who initiates the integration. |
| AccrualCode-Vested5thWeek | The accrual code that represents Vested Secondary (CP 5e Semaine). Caution: The value must adhere to the same locale as the user who initiates the integration. |
| AccrualCode-CarriedOver | The accrual code that represents Carried Over vacation. Caution: The value must adhere to the same locale as the user who initiates the integration. |
| ModelName | Defines the work week model to which the Accrual Profile belongs. Supported values include:
|
| WeekendDays | Semicolon-separated list of weekend days, entered as abbreviated names, on which the employee does not work. Supported values include:
|
| VacationYearStartDate(dd/mm) | The vacation year start date, represented in dd/mm format. |
| GrantAmount | The vacation amount that the employee accrues each month. |
| Sick Adjustment Type | Vacation entitlement evaluation method. Supported values include:
|
| Sick Adjustment Threshold | Specifies the minimum number of sick days in a vacation year required to initiate sickness correction when using the Fixed vacation entitlement evaluation method. Important: The FixedAdjustmentThreshold must be configured when the AdjustmentType = Fixed; it should remain blank when AdjustmentType is defined as Comparison or None. |
| Sick Adjustment Grant Round | Specifies the rounding value used to calculate the sick adjustment. |
| Sick Adjustment Grant Grace | Specifies the grace value used to calculate the sick adjustment. |
| AccrualProfile | AccrualCode-AccruedPrimary | AccrualCode-Accrued5thWeek | AccrualCode-VestedPrimary | AccrualCode-Vested5thWeek | AccrualCode-CarriedOver | ModelName | WeekendDays | VacationYearStartDate(dd/mm) | GrantAmount | Sick Adjustment Type | Sick Adjustment Threshold | Sick Adjustment Grant Round | Sick Adjustment Grant Grace |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Vacation A | Accrued Main A | Accrued 5th week A | Vested Main A | Vested 5th week A | Carried Over A | Jours Ouvrés | Sat;Sun | 06/01 | 2.08 | Fixed | 0.5 | 0.249 | |
| Vacation B | Accrued Main B | Accrued Fifth week B | Vested Main B | Vested Fifth week B | Carried Over B | Jours Ouvrables | Sun | 06/01 | 2.5 | Comparison | 90 |
FranceVactionCalculation_iPack_v1_L3141_SickAdjustVacationGrantCRT: Defines the sickness adjustment values associated with French Labor Code article L3141.
| Column name | Description |
|---|---|
| Accrual Profile | Accrual profile that is assigned to employees in either the Person Record or the employment term. Note: You can use an asterisk (*) as a wildcard, but put the less-restrictive accrual profile names at the bottom of the table. |
| Combined Paycodes | Combined paycode that contains the paycodes associated with either the professional or non-professional sickness. |
| Vacation Grant | Monthly grant value in days, associated with the professional and non-professional sickness. Note:
|
| AccrualProfile | Combined Paycodes | Vacation Grant |
|---|---|---|
| Vacation A | Professional Sickness | 2.5 |
| Vacation A | Non-Professional Sickness | 2.0 |
FranceVactionCalculation_iPack_v1_MetallurgyCBA_SickAdjustVacationGrantCRT: Defines the sickness adjustment values associated with the Metallurgy CBA.
| Column name | Description |
|---|---|
| Serial Number | Incremental serial number. |
| Employee Job Group | Semicolon-separated list of jobs. |
| Seniority | Seniority level of the employee, entered as years. 0 = less than 1 1 = Greater than or equal to 1, and less than 5 5 = Greater than or equal to 5, and less than 10 10 = Greater than or equal to 10, and less than 20 20= Greater than or equal to 20 |
| Vacation Grant | Vacation grant value. |
| Guaranteed Duration | Number of guaranteed durations, entered as months. |
| Serial Number | Employee Job Group | Seniority | Vacation Grant | Guaranteed Duration |
|---|---|---|---|---|
| 1 | A;B;C;D;E | 0 | 2.5 | 0 |
| 2 | A;B;C;D;E | 1 | 2.5 | 2 |
| 3 | A;B;C;D;E | 5 | 2.5 | 4 |
| 4 | F;G;H;I | 0 | 2.5 | 12 |
| 5 | F;G;H;I | 5 | 2.5 | 12 |
| 6 | F;G;H;I | 20 | 2.5 | 12 |
FranceVactionCalculation_iPack_v1_Locale_CRT: Allows customization and translation of integration labels, messages, and errors into different languages.
| Parameter Name | Key for which localization is defined. Warning: Internal parameter; do not change. |
| Locale Policy | Locale Policy. Note: You can use an asterisk (*) as a wildcard, but put the less-restrictive locale policy names at the bottom of the table because the integration scans cross-reference tables from the top. |
| Value | Message shown in Additional Details, or value of the label defined in the Run Summary section. Example: |
| Description | The description that is shown in Additional Details. Example: |
- Localization of integration extensions remains optional, but is supported.
- The cross-reference table (CRT) holds all messages represented with standard English labels; these apply to all locales when the Locale is set to a wildcard (*).
- Some or all messages can be translated by adding lines to the table in their preferred translation for specific locales. Messages for the most commonly used Locale Policy should be defined at the top of the CRT.
- Names of the parameters in the CRT column "Parameter Name" must be used as is. If any parameter value needs to be localized for a different Locale Policy, copy the "Parameter Name" with the * Locale Policy, add a new row to the CRT with the appropriate Locale Policy, and then add the localized values in the Message (or Value) and Description CRT columns.
- Do not enter values in the CRT column "Description" if it is blank.
- Do not modify placeholders (<>) or the configurable values that are included in the CRT column "Message" (or "Value").
| Parameter Name | Locale Policy | Value |
|---|---|---|
| Error_DisabledSignOffPeriod | * | Enable Edits option is not enabled for this employee. |
| Error_DisableHiredRehiredPerson | * | Hired/Rehired option is not enabled for this employee. |
| Error_MessageCombinedAbsenceNonProfessionalPaycodeDays | * | CombinedAbsenceNonProfessionalPaycodeDays is not found in control parameter. |
| Error_MessageCombinedAbsenceNonProfessionalPaycodeHourly | * | CombinedAbsenceNonProfessionalPaycodeHourly is not found in control parameter. |
| Error_MessageCombinedAbsenceProfessionalPaycodeDays | CombinedAbsenceProfessionalPaycodeDays is not found in control parameter. | |
| Error_MessageCombinedAbsenceProfessionalPaycodeHourly | CombinedAbsenceProfessionalPaycodeHourly is not found in control parameter. | |
| Error_MessageDayFullDayThreshold | * | Parameter HourFullDayAbsenceThreshold (HH:mm) is invalid. |
| Error_MessageDefaultError | * | Error encountered during integration run. Refer to Process Reporting for more details. |
| Error_MessageEmployeeIDs | * | Employee IDs are missing or invalid. |
| Error_MessageEmploymentStatusInvalid | * | Employee employment status is invalid. |
| Error_MessageEnableEdits | * | The parameter to enable edits is either missing or invalid. |
| Error_MessageEnableHiredOrRehiredemployee | * | The parameter to enable hired or rehired employees is either missing or invalid. |
| Error_MessageEnableSicknessCorrectionThresholdInVacationYear | * | The parameter to enable sickness correction threshold in the vacation year is missing or invalid. |
| Error_MessageEnableTerminatedemp | * | The flag to enable terminated employees is either missing or invalid. |
| Error_MessageForAPIError | * | API error caused integration failure. See error message below: |
| Error_MessageHourlyFullDayThreshold | * | HourFullDayAbsenceThreshold (HH:mm) is invalid. |
| Error_MessageHyperfindID | * | Hyperfind ID is missing or invalid. |
| Error_MessageHyperfindNotFound | * | Hyperfind is not found in control parameter. |
| Error_MessageIndicativeComment | * | The indicative comment is either missing or invalid in the control parameters. |
| Error_MessageIndicativePaycode | * | The indicative paycode is either missing or invalid in the control parameters. |
| Error_MessageIndicativeRoundingComment | * | The indicative rounding comment is either missing or invalid in the control parameters. |
| Error_MessageIndicativeRoundingPaycode | * | The indicative rounding paycode is missing or invalid. |
| Error_MessageInfoCombinedAbsenceNonProfessionalPaycodeDaysInvalid | * | CombinedAbsenceNonProfessionalPaycodeDays is invalid. |
| Error_MessageInfoCombinedAbsenceNonProfessionalPaycodeHourlyInvalid | * | CombinedAbsenceNonProfessionalPaycodeHourly is invalid. |
| Error_MessageInfoCombinedAbsenceProfessionalPaycodeDaysInvalid | * | CombinedAbsenceProfessionalPaycodeDays is invalid. |
| Error_MessageInfoCombinedAbsenceProfessionalPaycodeHourlyInvalid | * | CombinedAbsenceProfessionalPaycodeHourly is invalid |
| Error_MessageInfoCommentInvalid | * | The "InformationalComment" is either not found or has an invalid name in the control parameter. |
| Error_MessageInfoDayFullDayThresholdInvalid | * | The configured day full day threshold is invalid or cannot be located. |
| Error_MessageInfoEmployeeIDsInvalid | * | Employee IDs are invalid. |
| Error_MessageInfoEnableEditsInvalid | * | The configured flag to enable edits is invalid. |
| Error_MessageInfoEnableHiredOrRehiredemployeeInvalid | * | The configured flag to enable hired or rehired employees is invalid. |
| Error_MessageInfoEnableSicknessCorrectionThresholdInVacationYearInvalid | * | The configured flag for sickness correction threshold in the vacation year is invalid. |
| Error_MessageInfoEnableTerminatedempInvalid | * | The configured flag to enable terminated employees is invalid. |
| Error_MessageInfoHourlyFullDayThresholdInvalid | * | The configured HoursFulldayAbsenceThreshold parameter is invalid. |
| Error_MessageInfoHyperfindIDInvalid | * | The configured Hyperfind ID is invalid or cannot be found. |
| Error_MessageInfoIndicativeCommentInvalid | * | The configured indicative comment is invalid or not found in the control parameters. |
| Error_MessageInfoIndicativePaycodeInvalid | * | The configured indicative paycode is invalid or not found in the control parameters. |
| Error_MessageInfoIndicativeRoundingCommentInvalid | * | The configured indicative rounding comment is invalid or not found in the control parameters. |
| Error_MessageInfoIndicativeRoundingPaycodeInvalid | * | The configured indicative rounding paycode is invalid or not found in the control parameters. |
| Error_MessageInfoMaxDaysInFutureForAccrualCalculationInvalid | * | The configured value for the maximum days in the future for accrual calculation is invalid. |
| Error_MessageInfoMaxDaysInPastForAccrualCalculationInvalid | * | The configured value for the maximum days in the past for accrual calculation is invalid. |
| Error_MessageInfoPayCodeInvalid | * | The "InformationalPayCode" is either not found or has an invalid name in the control parameter. |
| Error_MessageInfoProcessSignedOffPeriodInvalid | * | The configured process provided signed-off period value is invalid. |
| Error_MessageInfoRawTotalGraceInvalid | * | The raw total grace value is invalid or not found. |
| Error_MessageInfoRawTotalRoundInvalid | * | The raw total round value is invalid or not found. |
| Error_MessageInfoResultRatioGraceInvalid | * | The ratio grace value result is invalid or not found. |
| Error_MessageInfoResultRatioRoundInvalid | * | The ratio round value result is invalid or not found. |
| Error_MessageInfoSicknessCorrectionThresholdInVacationYearInvalid | * | The configured sickness correction threshold for the vacation year is invalid. |
| Error_MessageInfoTotalizerWaitTimeInvalid | * | The configured totalizer wait time value is invalid. |
| Error_MessageInvalidPersonAccrualProfile | * | Accrual Profile(s) not found. |
| Error_MessageInvalidPersonNumber | * | Invalid Person number |
| Error_MessageInvalidVacationSatrtYearDateInCRT | * | The vacation start year date in the CRT is invalid or missing. |
| Error_MessageMaxDaysInFutureForAccrualCalculation | * | The maximum number of days in the future for accrual calculation is not set or is invalid. |
| Error_MessageMaxDaysInPastForAccrualCalculation | * | The maximum number of days in the past for accrual calculation is not set or is invalid. |
| Error_MessagePersonAccrualProfileConfigError | * | Accrual Profile is not configured or is invalid. |
| Error_MessagePersonNoAccrualProfile | * | Employee does not have an Accrual Profile assignment. |
| Error_MessagePersonRehireTerminatedSameMonth | * | Unable to calculate prorated grant for an employee who is hired and terminated in the same month. |
| Error_MessageProcessSignedOffPeriod | * | The signed-off period is either missing or invalid. |
| Error_MessageRawTotalGrace | * | The raw total grace value is either missing or invalid. |
| Error_MessageRawTotalRound | * | The raw total round value is either missing or invalid. |
| Error_MessageRerunNotRequired | * | Rerun not required |
| Error_MessageResultRatioGrace | * | The ratio grace value is either missing or invalid. |
| Error_MessageResultRatioRound | * | The ratio round value is either missing or invalid. |
| Error_MessageSicknessCorrectionThresholdInVacationYear | * | The sickness correction threshold for the vacation year is missing or invalid. |
| Error_MessageTotalizerWaitTime | * | The totalizer wait time is either missing or invalid. |
| Error_MessageValidationHeader | * | Erreurs: <parameterList> |
| Label_AdditionalDetailPersonNumber | * | ID Employé |
| Label_CommentNotesAccrualProfile | * | Profil de Cumul: <AccrualProfile> |
| Label_CommentNotesAccruedFifthWeekAccrualCode | * | Cumul: <AccruedFifthWeekAccrualCode> |
| Label_CommentNotesAccruedMainAccrualCode | * | Cumul: <AccruedMainAccrualCode> |
| Label_CommentNotesAccruedMainGrantAmount | * | Acquisition: <AccruedMainGrantAmount> |
| Label_CommentNotesAdjustmentType | * | Action: <AdjustmentType> |
| Label_CommentNotesAdjustmentTypeFifthWeek | * | Action: <AdjustmentTypeFifthWeek> |
| Label_CommentNotesGrantAmountFifthWeek | * | Acquisition: <GrantAmountFifthWeek> |
| Label_CommentNotesGrantDate | * | Date d'Acquisition: <GrantDate> |
| Label_CommentNotesPaycodeEditId | * | ID Interne: <PaycodeEditId> |
| Label_CommentNotesPersonNumber | * | ID Employé: <PersonNumber> |
| Label_CommentNotesVestedFifthWeekAccrualCode | * | Code CP 5e Semaine Acquis : <VestedFifthWeekAccrualCode> |
| Label_CommentNotesVestedMainAccrualCode | * | Code CP Principaux Acquis : <VestedMainAccrualCode> |
| Label_GrantAdjusted | * | Number of sick days <GrantAdjusted> |
| Label_Message_OverdraftLimitExceed | * | Cette modification ne peut pas être effectuée car le solde de CP 5e Semaine Acquis est insuffisant. <GrantDate> |
| Label_MessageIntegrationFailed | * | Process completed with record level errors. |
| Label_MessageIntegrationSuccess | * | Integration completed without errors. |
| Label_MessageIntegrationSuccessWithDisqualify | * | Integration completed without errors. Additional details, such as disqualifications, are accessible using the button below. |
| Label_PersonRerunValid | * | Process record |
| Label_RoundingCommentNotesLastYearAccruedFifthWeekBalance | * | Solde CP 5e Semaine en Cours d'Acquisition: <LastYearAccruedFifthWeekBalance> |
| Label_RoundingCommentNotesLastYearAccruedMainBalance | * | Solde CP Principaux en Cours d'Acquisition: <LastyearAccruedMainBalance> |
| Label_RoundingCommentNotesLastYearCarriedOverBalance | * | Solde CP Reliquat: <LastyearCarriedOverBalance> |
| Label_RoundingCommentNotesLastYearRoundFifthWeekAdjustmentBalance | * | Arrondi CP 5e Semaine Acquis: <LastyearRoundFifthWeekAdjustmentBalance> |
| Label_RoundingCommentNotesLastYearRoundMainAdjustmentbalance | * | Arrondi CP Principaux Acquis: <LastyearRoundMainAdjustmentBalance> |
| Label_RoundingCommentNotesLastYearVestedFifthWeekBalance | * | Solde CP 5e Semaine Acquis: <LastyearVestedFifthWeekBalance> |
| Label_RoundingCommentNotesLastYearVestedMainBalance | * | Solde CP Principaux Acquis: <LastYearVestedMainBalance> |
| Label_RoundingCommentNotesNextYearFirstDay | * | Début de l'Année de Vacances: <FirstDayOfNextYear> |
| Label_RunSummaryDisqualifyEmployees | * | Disqualify Employees |
| Label_RunSummaryIntegrationExecutionId | * | Integration Execution Id |
| Label_RunSummaryIntegrationTypeKey | * | Integration Type |
| Label_RunSummaryIntegrationTypeValue | * | Integration Value |
| Label_RunSummaryProcessEmployees | * | Process Employees |
| Label_RunSummarySuccessfulAccrualUpdates | * | Successful Accrual Updates |
| LabelMessage_FifthWeek_Fixed | * | Acquisition 5e Semaine |
| LabelMessage_FifthWeek_Grant | * | Acquisition 5e Semaine |
| LabelMessage_FifthWeek_New Hire | * | Nouvelle Embauche - 5e Semaine |
| LabelMessage_FifthWeek_Terminated | * | Clôturé 5e Semaine |
| LabelMessage_FifthWeekProfileChange | * | Changement de Profil de Cumul - 5e Semaine |
| LabelMessage_Grant | * | Acquisition Principaux |
| LabelMessage_New_Hire | * | Nouvelle Embauche - Principaux |
| LabelMessage_ProfileChange | * | Changement de Profil de Cumul - Principaux |
| LabelMessage_Sickness_Adjustment | * | Ajustement Maladie |
| LabelMessage_Terminated | * | Clôturé Principaux |
| Tag name |
|---|
| <AccrualProfile> |
| <AccruedFifthWeekAccrualCode> |
| <AccruedMainAccrualCode> |
| <AccruedMainGrantAmount> |
| <AdjustmentType> |
| <AdjustmentTypeFifthWeek> |
| <FirstDayOfNextYear> |
| <GrantAmountFifthWeek> |
| <GrantDate> |
| <LastYearAccruedFifthWeekBalance> |
| <LastyearAccruedMainBalance> |
| <LastyearCarriedOverBalance> |
| <LastyearRoundFifthWeekAdjustmentBalance> |
| <LastyearRoundMainAdjustmentBalance> |
| <LastyearVestedFifthWeekBalance> |
| <LastYearVestedMainBalance> |
| <parameterList> |
| <PaycodeEditId> |
| <PersonNumber> |
| <VestedFifthWeekAccrualCode> |
| <VestedMainAccrualCode> |
Install the France Vacation Calculation integration
After the integrations are deployed and the connection settings and process properties are configured, install the integrations to make them available for running or scheduling.
- An integration template is the configured integration that you deploy to an Atom and then install to make available for running or scheduling.
- An installed integration is a single instance of an integration that is based on an integration template. When you install an integration, you can define parameters or set parameters to be defined when the integration is run.
- Select Main Menu
. - Click Tap Create
. - In Integration Name enter a unique name, such as
France Vacation Calculation v1. - (Optional) Enter a Description.
Note: Do not select API Integration.
- In File Access, select None to not select a connection.
- (Optional) If the person who runs the integration does not have full access to integrations, select Execute Integration with System Account. This allows the integration access to all APIs in the FAP, and the relevant permissions and data, regardless of the FAP and GDAP of the person who runs the integration.
- (Optional) Select Re-Run to allow repeated runs of the integration with the same parameter values as the previous run.
- Email Notifications
(Optional)
- Select Yes to send email and control center notifications for integration runs.
- Enter the email addresses of the recipients for the following types of run status. For multiple recipients, separate the addresses by a comma, but no spaces:
In Progress — The integration run started and has not finished.
Completed — The integration ran successfully without errors.
Failed — The integration ran successfully, but one or more records have errors. The integration run is treated as failed. If Abort on Failure is configured in an integration set, the integration set stops.
Completed with Errors — The integration run has errors or could not run.
- In Skip Configuration, select None (default) to allow multiple integrations to run at the same time or with the same data without restrictions.
Note: Do not select Allow Minute Interval.
- Configure Integration template and parameters:
- Make sure that the generic data access profiles (GDAP) allow access by the people who need to run the installed integrations.
Run and test the France Vacation Calculation integration
Run integrations to test that the configuration is set up correctly.
- Run the integration
- Select the integration:
- Select Main Menu
. - Click Tap Run an Integration
. - Select the FranceVacationCalculation_iPack_v1 integration from the list. Click Tap Select.
- (Optional) Enter a unique Integration Run Name to make it easier to identify the run of the integration. Otherwise, the system assigns a default name, which ends with a date and time stamp.
- Select Main Menu
- Set parameters as follows:
- Employee IDs: To process data for only a limited group of employees, enter the person numbers, as defined in the source system, each separated by a comma, but no spaces.
For 3 employees:
13997,15556,20012 - Hyperfind&LocationSelector: Select a Hyperfind query of employees.
- Employee IDs: To process data for only a limited group of employees, enter the person numbers, as defined in the source system, each separated by a comma, but no spaces.
- Select the following:
- Run Integration: If this is the first time this integration is being run.
- Re-Run: If this integration has been run before, and the status is not In-Progress, you can run the integration again without entering the parameter values again. Click Tap Yes to continue, or No to not run the integration and to return to the parameter settings.
- Wait for the confirmation that the integration completed or failed. Close the panel.
- Click Tap Refresh
. - To see details, select the integration run. Select Run Summary.
- Select the integration:
- Check the results
Status indicators
In-Progress: The run of this integration has not yet completed. Completed: The integration ran successfully without errors. Scheduled: This integration is scheduled to run later or repeatedly. - (Grayed out) Scheduled but Deleted: This integration is scheduled to run, but the integration template has been deleted. When it runs, it will generate an error. To prevent this error, delete the scheduled integration run.
Completed with Errors: The integration ran successfully, but one or more records have errors. The integration run is treated as failed. If Abort on Failure is configured in an integration set, the integration set stops. Failed: The integration run has errors or could not run. - To troubleshoot and resolve errors, do the following:
Check the Run Summary for details.
- To troubleshoot all types of errors, or if the Run Summary shows a large number of errors, click tap Go to Additional Details (if available), or click tap the Source File to open and examine the input source file.
- (Only for import integrations) To troubleshoot and resubmit integrations that have transactional or data errors, click tap Go to Transaction Assistant.
To check the results in more detail:
- Click Tap the tile for the integration run.
- Click Tap Run Summary to see the results of the integration run.
Example Run Summary details
Note: The available details vary by integration and configuration.- Integration Run Name: Name of this run of the integration.
- Process Name: Name of any integration set that includes this integration.
- Integration Name: Name of the installed integration.
- Integration Reference ID: Unique identifier for this integration run (to help in troubleshooting errors).
- User: The person or user account that ran the integration.
- Integration Type: Import, Export, or None
- Start Date: Date and time when the integration run started.
- End Date: Date and time when the integration run finished.
- Status: In-Progress, Completed, Completed with Errors, or Failed.
- Records Processed: Number of records that were processed.
- Records Created: Number of records that were created.
- Errors: Number of records that failed.
- Source Files, Output File, and Error Files: For file-based import integrations, use Manage SFTP to access the source and output files on the inbound (source) and outbound (destination) SFTP folders. See the Manage SFTP topic.
- Log in to the destination system and ensure that the data has been correctly updated.Note: You can schedule integrations and integration sets to run once later or at a recurring frequency. See the Schedule Integrations topic.
APIs — France Vacation Calculation
| API name | Type | Resource path | Description |
|---|---|---|---|
| Retrieve Comments-Manager | GET | /v1/commons/comments | Retrieves information about Comments as a manager. |
| Retrieve Persons | POST | /v1/commons/persons/extensions/multi_read | Returns multiple person records based on personid, personnumber. |
| Execute Hyperfind Query | POST | /v1/commons/hyperfind/execute | Executes a Hyperfind query by ID or qualifier and returns the result. |
| Retrieve User Preferences for Current User | GET | /v1/commons/user_preferences/locale_ policy?tenantDefault=true | Returns user preferences for the tenant default. |
| Retrieve Employment Terms | GET | /v1/timekeeping/setup/employment_terms | Returns all the employment terms available on the tenant. |
| Retrieve Timecards as Manager | POST | v1/timekeeping/timecard/multi_read?partial_success=true | Returns the timecard details of the employees. |
| Update Timecard as Manager | POST | /v1/timekeeping/timecard | Updates a timecard for an employee as a manager. |
| Retrieve Timecard Data (Retrieving Accrual Balance) | POST | v1/timekeeping/timecard_metrics/multi_read | Returns timecard data for a set of employees. |
| Retrieve Paycodes as Manager | GET | v2/timekeeping/setup/pay_codes?qualifier=Regular | Returns a list of full paycodes available to a manager. |
| Apply Updates to Accrual Balances | POST | v1/timekeeping/accruals/updates | Updates accrual balances in bulk. |
| Retrieve Comment | GET | /v1/commons/comments | Retrieves information about Comments as an employee or manager. |
| Retrieve All Accrual Profiles | GET | /v2/timekeeping/setup/accrual_profiles | Returns a list of all available accrual profiles according to the user's access rights. |
| Bulk Enable Edits | POST | v1/timekeeping/enable_edits/import | Returns enable edits for an employee. |
| Retrieve Schedule(Public Holidays) | POST | /v1/scheduling/schedule/multi_read | Returns an employee's schedule. |
Version history
| Version | Description |
|---|---|
| iPack_v1 | Initial release. |
| iPack_v1 (enhancement) | When the France Vacation Calculation integration was run at month-end, a timing situation prevented the addition of the placeholder paycode ID in the attached notes. During a subsequent integration run within the same month, because the integration did not find the paycode ID in the notes, it applied a second placeholder paycode to the employee's timecard. This second placeholder paycode forced the integration to fail with a script error. |
Issues were addressed in the France Vacation Calculation integration where:
| |
|
The France Vacation Calculation integration generated a script error when a termination date was entered into an employee's record at the time of contract signing. | |
|
The France Vacation Calculation has been enhanced to include Sick Leave Adjustment functionality. This feature automates vacation-grant adjustments for employees in France when they are on sick leave. The system compares entitlements defined by French labor law and the Metallurgy Collective Bargaining Agreement, applying the result that is most favorable to the employee. The enhancement supports pro-rata calculations for partial months, honors guaranteed accrual periods based on seniority and job group, and optionally applies rounding rules. Only the 5th week of vacation (CP 5e Semaine) is adjusted, ensuring that monthly vacation grants remain accurate and compliant with regulatory and contractual requirements. | |
| The Timecard API payload was segmented into smaller batches to comply with API size limits and prevent errors during the France Vacation Calculation integration run. A validation check was also implemented to prevent duplicate paycode edit ID entries prior to processing. |
