Important: For all new integration setups, it is strongly recommended to perform your initial sync with only a few users in the scope. This helps ensure data accuracy and smooth onboarding before including your whole organization.
All you need to know about the Tripletex standard integration
Overview
With this integration you will connect Simployer One to your Tripletex account via API and can then do the following:
Scheduled or manual sync of employee data such as personal information, employment data, compensation data and more from Simployer One to Tripletex
Sync time off data such as sickness, parental leave and vacations to Tripletex for the period that you choose. You have full control over what absences are exported for what employees and for what period
Available in: Norway
Tripletex requirements
You need to have access to the following valid credentials.
You can generate an API user key in your Tripletex account and instructions can be found here: Tripletex help center article
Set up in Simployer
The integration is activated from Settings → Integrations → Integrate with payroll system → Add Integration
In the API Integrations section, select Tripletex
Click Next to continue with the integration setup
Enter all the details needed for the connection
Optionally: set up a specific scope (which employees to include in the sync) and/or a scheduled sync from Simployer to Tripletex
The first sync is recommended to be with a smaller subset of employees to see that it works correctly
Settings
You can choose how the integration sync for employees is executed. The options available are as follows:
Manual sync
The data is manually synced to Tripletex by the user
This can be valuable if you have the scheduled sync turned off and want to control when data is synced to Tripletex. Either during the implementation phase or during times when an update is not wanted due to process and payroll timing
Manual syncs can be performed even when a scheduled sync is configured. This may be necessary if there have been a significant number of changes in Simployer One after a scheduled sync has been executed
Scheduled sync
The sync runs on a schedule that you can define
Options include the day(s) of the week for the sync to be executed
Currently the sync is queued and it starts shortly after 06:00 CET.Scope
The edit scope settings allow for more granularity on which employees are included during automatic or manual exports to Tripletex. This is useful when not all employees should be exported at once.
The scope selection follows the standard scope configuration in Simployer One
When setting up the integration for the first time, start with a small subset of employees in the scope. This helps ensure your data sync works as intended before applying changes organization-wide.
For example, you might begin by syncing only your HR team or a few test users. Once confirmed, you can expand the scope to include additional staff.
You can update the scope at any time to suit your organization’s needs—whether syncing only new hires, selected departments, or specific locations.
Employee data
Overview
Employments are created in Tripletex for new employees that do not yet exist in tripletex when we run the integration. If the employee already exists in Tripletex prior to the integration being set up, we will add new employment details on current / active employment in Tripletex for said employee.
It is required for the employee to have an employment in Simployer One, in order to send employee and employment data to Tripletex.
Below you find the fields we populate when creating an employment in Tripletex. Also the fields we update when the employee is offboarded in Simployer One:
Work Section
SimployerOne | Tripletex field | Mapping conditions | Additional Info |
|---|---|---|---|
Employee.employeeNumber | Employee.employeeNumber |
| The employee number is used to match employees between Simployer One and Tripletex. It is thus not updated. And it is important that the employee number is assigned correctly in the systems for the integration to work. |
Employee.workEmail || Employee.privateEmail | Employee.email | Uses Simployer One work email if it exists. Otherwise the private email is used. | Not updated |
Employee.workPhone | Employee.phoneNumberMobile |
| Updated if given new value in SimployerOne |
Financial
SimployerOne | Tripletex field | Mapping conditions | Additional Info |
|---|---|---|---|
Employee.bankAccount.number | Employee.bankAccountNumber |
| Updated if given new value in SimployerOne |
Employee.bankAccount.iban | Employee.iban |
| Updated if given new value in SimployerOne. This field is required if the Bank country is other than Norway. |
Employee.bankAccount.bic | Employee.bic |
| Updated if given new value in SimployerOne. This field is required if the Bank country is other than Norway. |
Personal
SimployerOne | Tripletex field | Mapping conditions | Additional Info |
|---|---|---|---|
Employee.firstName | Employee.firstName |
| Updated if changed |
Employee.lastName | Employee.lastName |
| Updated if changed |
Employee.birthDate | Employee.dateOfBirth |
| Field is required. Can be updated, but not after a-melding has been submitted for the employee in Tripletex. |
Employee.ssn | Employee.nationalIdentityNumber | If ssn is NOT of DNumber format | Only updated if it does not have a value in Tripletex. |
Employee.ssn | Employee.dnumber | If ssn IS of DNumber format | Updated if given new value |
| Employee.internationalId.number |
|
|
Employee.homeAddress.street | Employee.address.addressLine1 |
| Not updated |
Employee.homeAddress.postalCode | Employee.address.postalCode |
| Not updated |
Employee.homeAddress.city | Employee.address.city |
| Not updated |
| Employee.userType |
| Set to default STANDARD. Not updated |
Employee.internationalId is not supported currently. Reach out to CS if this is something you need.
SimployerOne | Tripletex field | Mapping conditions | Additional Info |
|---|---|---|---|
Employment.id | Employment.employmentId |
| The id of the first employment for the employee in Simployer One |
Employment.startDate | Employment.startDate |
| We use the first employment of the employee to create an employment in Tripletex. Only if there is no employment registered in tripletex for said employee. |
Employee.endDate | Employment.endDate |
| When employee is offboarded in Simployer One. We set the employment end date in Tripletex to the employee end date from Simployer One. |
| Employment.employmentEndReason | EMPLOYMENT_END_EMPLOYEE | When the employee is offboarded in SimployerOne, and we end the employment in Tripletex. We use the hardcoded value "EMPLOYMENT_END_EMPLOYEE" as the end reason. If the customer wants to change the reason, they have to do it manually in Tripletex. |
Employment details data mapping
Employment details get created on the main/active employment in Tripletex, whenever a new employment is created on the employee in Simployer One, or when a new compensation is added.
If a new employment is created in Simployer One, we combine the employment data with the latest compensation that exists for the employee.
And vice versa, if a new compensation gets added in Simployer One, we combine the compensation data with the latest employment that exists for the employee.
Simployer One field | Tripletex field | Mapping conditions | Additional Info |
|---|---|---|---|
| employmentDetail.employmentType |
| Set to ORDINARY by default |
Employment.relations.type.name | employmentDetail.employmentForm | If Simployer One employment type name contains "permanent" → PERMANENT If Simployer One employment type name contains "temporary" → TEMPORARY |
|
Compensation.payoutPeriod | employmentDetail.remunerationType | ANNUAL → MONTHLY_WAGE MONTHLY → MONTHLY_WAGE HOURLY → HOURLY_WAGE Otherwise → NOT_CHOSEN | Allowed values are: [ MONTHLY_WAGE, HOURLY_WAGE, COMMISION_PERCENTAGE, FEE, NOT_CHOSEN, PIECEWORK_WAGE ] |
Employment.rate | employmentDetail.percentageOfFullTimeEquivalent |
|
|
Compensation.amount | employmentDetail.annualSalary | If Compensation.payoutPeriod is ANNUAL, then this field is set to Compensation.amount. If Compensation.payoutPeriod is MONTHLY, then this field is set to Compensation.amount * 12. Otherwise this field is not set. |
|
Compensation.amount | employmentDetail.hourlyWage | if the Compensation.payoutPeriod is set to HOURLY. Otherwise this field is not set. |
|
Employment.note | employmentDetail.occupationCode.code | If there is a 7 digit code in the notes field of the employment in Simployer One. And if the code matches one of the occupation codes in the Tripletex API, it will be set on the employment detail. |
|
Absence data
Note: Absence data (like sickness or parental leave) must be exported separately via Manage time → Time off Export. This is not included in the scheduled/manual employee sync process.Overview
The absence data are not handled in the scheduled or manual syncs - you can find it in
Manage time ->Time off Export.
Once you have exported your employees to Tripletex. You can also export that time off datat for those.
Click on Export and then run theupdate.
Key information
If the leave type code in Simployer One is set to one of the following:
FURLOUGH
PARENTAL_BENEFITS
MILITARY_SERVICE
OTHER_NOT_STATUTORILY_REQUIRED
OTHER_STATUTORILY_REQUIRED
EDUCATIONAL_NOT_STATUTORILY_REQUIRED
EDUCATIONAL_STATUTORILY_REQUIRED
The leave will be exported to Tripletex as a leave of absence. Otherwise the leave will be exported as a timesheet entry for an activity that needs to be defined in Tripletex. You then need to ensure that the leave type code in Simployer One matches exactly with the Tripletex activity number.
Data fields
SimployerOne field | Tripletex field | Mapping conditions |
leave.id | leaveOfAbsence.importedLeaveOfAbsenceId | |
leave.startDate | leaveOfAbsence.startDate | |
leave.endDate | leaveOfAbsence.endDate | |
leaveOfAbsence.percentage | Default set to 100% - graded leave of absence coming soon! | |
leave.id | leaveOfAbsence.importedLeaveOfAbsenceId | |
leave.relations.type.kind | leaveOfAbsence.type | If leave type code is set to one of the following in Simployer One: FURLOUGH PARENTAL_BENEFITS MILITARY_SERVICE OTHER_NOT_STATUTORILY_REQUIRED OTHER_STATUTORILY_REQUIRED EDUCATIONAL_NOT_STATUTORILY_REQUIRED EDUCATIONAL_STATUTORILY_REQUIRED |
Timesheet entry fields
SimployerOne absence code | Xledger absence code | Comment |
leave.relations.type.kind | entry.activity.number | |
leave.workingDays.days[].date | entry.date | |
hours | Default set to 7.5 |
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article



