Unit4 HR logoJira Service Management logo

HR to ITSM

Unit4 HR to Jira Service Management integration: customers per organisational unit and requests for joiners and leavers

With an integration between Unit4 HR (ERPx) and Jira Service Management, every employee from Unit4 is a customer in the service desk, in the organisation of their main position, and a new employee, a transfer or an end date automatically creates a request of the right request type. After the last working day KoppelHet revokes portal access.

What the integration does

Organisations that use Unit4 for HR and finance and handle IT requests in Jira Service Management often add new colleagues to the customer portal by hand. Leavers stay there, and IT only notices a move to another unit when the employee raises a ticket themselves.

  1. Every hour KoppelHet fetches the employees that changed in Unit4 since the previous run.
  2. A new organisational unit first becomes an organisation in Jira Service Management, then the customer follows with their work email.
  3. Within the agreed lead time before the start date, KoppelHet raises the onboarding request on behalf of the manager.
  4. A relation with a later effective date produces a change request on that date, and the customer moves to the new organisation.
  5. An end date gives an offboarding request; the day after the last working day portal access is revoked.
Unit4 HR → KoppelHet → Jira Service ManagementSOURCEUnit4 HRTARGETJira Service ManagementKoppelHetmapping · logging · monitoringUnit4 HR → KoppelHet → Jira Service ManagementSOURCEUnit4 HRTARGETJira Service ManagementKoppelHetmapping · logging · monitoring
Out: Customer with name and work email · Organisation per Unit4 organisational unit · Onboarding request with start date and manager · Change request on a new relation or position · Offboarding request and revoked portal access

What to watch for with Unit4 HR and Jira Service Management

  • In Unit4, personId is only unique within one company; a second company in the same environment can use the same number. Jira Service Management recognises customers by email address and accountId. KoppelHet therefore records itself which accountId belongs to which combination of companyId and personId, so a request never lands with the wrong colleague.
  • An employee can hold several positions in Unit4, but an organisation in Jira Service Management works best with one unit per customer. KoppelHet places the customer only in the organisation of the position marked as main position, so approvals and visibility are not spread across two teams.
  • Relations in Unit4, such as unit and manager, have a dateFrom and dateTo. HR often records a transfer weeks ahead. KoppelHet creates the change request on the dateFrom and only moves the customer then, so IT does not grant rights of the new department too early.
  • Unit4 recommends reading incrementally with ge on lastUpdated/updatedAt, and warns that the same record can then come back twice. KoppelHet stores per employee which request has already been raised per event, so a record delivered twice does not put a second onboarding request in the queue.
  • If an employee is deleted in Unit4, Unit4 sets the status to Terminate instead of removing the record. KoppelHet treats that status as a departure, with an offboarding request and revoked portal access, and not as a missing record that is silently ignored.
  • The machine-to-machine user of a Unit4 integration needs the SUPER or SYSTEM role, and according to Unit4 the token only establishes who is calling, not what they may do. KoppelHet therefore only requests the employee object and only sends name, work email, unit, manager and dates to Jira; pay and bank details stay in Unit4.
  • Unit4 allows ten machine-to-machine clients per tenant and shares a limit of 500 calls per minute across all of them. KoppelHet only reads changed employees, so the service desk integration does not take capacity from finance and project integrations on the same tenant.

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, architecture and compliance

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.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Does this work with several companies in one Unit4 environment?

Yes. KoppelHet distinguishes employees by company and number, and per company you can choose your own request type or service desk.

Do existing employees get a request at go-live?

No. The first run only creates customers and organisations. Requests follow from new employees, transfers and end dates.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Unit4 ERPx through the ObjectAPI (GET /v1/objects/employees, read-only) with OAuth 2.0 client credentials through Unit4 Identity Services (scope u4erp, token 3600 seconds, user with SUPER or SYSTEM role), incremental on lastUpdated/updatedAt with ge. Fields include companyId, personId, nameInformation, contactPoints, status, employments and relatedValues with dateFrom and dateTo. Limits: 50,000 records per call, 500 calls per minute per tenant, ten M2M clients.
  • Jira Service Management through /rest/servicedeskapi/: POST customer (email, displayName; Jira Administrator), POST organization and POST organization/{id}/user, PUT organization/{id}/property/{key} (visible through the API only, up to 32,768 bytes of JSON) and PUT customer/user/{accountId}/revoke-portal-only-access (site admin).
  • Requests through POST /rest/servicedeskapi/request with serviceDeskId, requestTypeId, requestFieldValues and raiseOnBehalfOf. KoppelHet stores the issue key per event for each employee and adds a later date change as a comment on the open request.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in Unit4 HRField in Jira Service ManagementNotes
companyId + personIdSleutel in KoppelHet bij het accountId van de klantpersonId is only unique within a company
nameInformation.firstName + surnamecustomer displayName
Zakelijk e-mailadres (contactPoints)customer email
Organisatie-eenheid van de hoofdpositieorganizationUnit4 code as organisation property
Relatie leidinggevenderaiseOnBehalfOf
employmentStartDateRequest type onboarding (requestFieldValues: startdatum)
Relatie met nieuwe dateFromRequest type wijziging
employmentEndDateRequest type offboarding, daarna revoke-portal-only-access

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.