

HR to ITSM
Unit4 HR to TOPdesk integration: employees with department and cost centre from Unit4 ERPx in TOPdesk, with incidents for joiners and leavers
With an integration between Unit4 HR (Unit4 ERPx) and TOPdesk, every employee from Unit4 is a person in TOPdesk, with the department, job and cost centre of their main employment and their company as branch. On an approved hire, a change with an effective date or the end of the last employment, KoppelHet creates an incident or change for the operator group that handles it.
What the integration does
Organisations that run HR, finance and projects in Unit4 and their service desk in TOPdesk often maintain the persons in TOPdesk with an export someone loads monthly. A cost centre change that takes effect in Unit4 next month then lands in TOPdesk too early or too late, and hardware is booked to the wrong budget holder.
- HR enters a new employee in Unit4; the approval workflow completes it.
- KoppelHet reads the employee with employments and relations, picks the main employment and creates the person in TOPdesk at their company's branch.
- Within the agreed lead time before the start date the onboarding incident follows for the right operator group.
- A new department or cost centre with a later effective date is applied on that date, with a change in TOPdesk.
- When the last employment ends, the offboarding incident comes a week ahead and the person is archived afterwards.
What to watch for with Unit4 HR and TOPdesk
- A new employee can sit in an approval workflow in Unit4 before becoming final. KoppelHet only creates a person and an onboarding incident in TOPdesk once that workflow is completed, so a rejected entry creates no work for the service desk.
- Department and cost centre are relations with a start and end date in Unit4. KoppelHet updates the TOPdesk person card on the day the new relation takes effect, and only then creates the change, so access and budget holder switch on the same day as in the financial administration.
- HR and finance share the same employee in Unit4, and the cost centre decides where project hours land. KoppelHet sets that same cost centre as budget holder in TOPdesk, so charging for a laptop uses the same code as the hours posting.
- A Unit4 tenant can contain several companies. Each company becomes a branch in TOPdesk, and the operator group of the onboarding incident follows the branch, so each company can keep its own IT team.
- An employee can have more than one employment in Unit4, one of which is marked as main position. KoppelHet fills the person card from that main position and only archives the person after the last employment.
- Integrations without a user work in Unit4 with a client per tenant, linked to a user with the SUPER or SYSTEM role, and a tenant has at most ten such clients. KoppelHet requests a dedicated client for this integration and checks beforehand whether one is still free.
- Organisational units in Unit4 can have the same name in different companies, while a department name in TOPdesk must be unique. KoppelHet adds the company to such a duplicate name, and remembers the Unit4 code per department so a rename does not create a new department.
This integration is also part of joiner, mover, leaver.
How we build and run it
- The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
- Every sync and every error is visible in the functional log; on an error your administrator is notified.
- A change that cannot go through is not half-applied but queued for another attempt.
- KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
- After go-live we manage the integration and adjust it when your process changes.
- The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.
Implementation and price
This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.
A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.
Frequently asked questions
Can Unit4 export to TOPdesk itself?
An export is possible, but then someone loads it by hand and no incidents are created. The integration also follows the effective dates of relations, which an export does not.
What needs to be set up in Unit4?
A dedicated client with client id and secret for this integration, linked to a system user. The integration only reads.
Do salary data go to TOPdesk?
No. Only name, email, job, company, department, cost centre, manager and dates.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Unit4 ERPx is read through the ObjectAPI (GET /v1/objects/employees, read-only) with OAuth 2.0 client credentials through Unit4 Identity Services (scope u4erp, token 3600 seconds), incrementally with a filter on lastUpdated. Fields include companyId, personId, nameInformation, status, workflowState, employments (isMainPosition, employmentStartDate, employmentEndDate, positionId) and relatedValues with relationDateFrom and relationDateTo. At most 50,000 records per call.
- TOPdesk is written through the REST API with an application password of an operator with only the necessary rights (Supporting Files for persons, branches, departments and budget holders). Departments and budget holders get an external link with the code from Unit4.
- Tickets through POST /tas/api/incidents (callerLookup, briefDescription, request, category, operatorGroup, targetDate and externalNumber) or POST /tas/api/operatorChanges from a template (template and requester).
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Unit4 HR | Field in TOPdesk | Notes |
|---|---|---|
personId (resourcenummer) | employeeNumber | Fixed key |
nameInformation.firstName | firstName | |
nameInformation.surname | prefixes en surName | |
Zakelijk e-mailadres (contactPoints) | email | |
Positie van het hoofddienstverband | jobTitle | |
companyId | branch (vestiging) | |
Organisatie-eenheid uit de relaties | department | |
Kostenplaats uit de relaties | budgetHolder | |
Leidinggevende uit de relaties | manager | |
employmentEndDate van het laatste dienstverband | Offboardingmelding en archiveren |
Related
Greenhouse → Unit4 HR
Greenhouse to Unit4 HR integration: accepted offer as an employee in the right Unit4 company
Recruitee → Unit4 HR
Recruitee to Unit4 HR integration: hired candidate as employee in Unit4, validated before it is saved
SmartRecruiters → Unit4 HR
SmartRecruiters to Unit4 HR integration: hire on the position from SmartRecruiters, with onboarding status back
Teamtailor → Unit4 HR
Teamtailor to Unit4 HR integration: hired candidates as employees in Unit4 ERPx, with company and position