Exact HR logoMicrosoft Entra ID logo

Identity and access management

Exact HR to Entra ID integration: Microsoft accounts from payroll in Exact Online

With an integration between Exact HR and Microsoft Entra ID, every new employee from payroll in Exact Online automatically gets a Microsoft account, with department, job, manager and licence. After the end date of the employment in Exact, sign-in is blocked.

What the integration does

Organisations that run payroll in Exact Online and work with Microsoft 365 only get a new colleague to IT when someone sends an email. A leaver is in Exact with an end date, but their Microsoft account stays active until someone remembers.

  1. A user with access to payroll approves KoppelHet's app in Exact Online once.
  2. KoppelHet reads the changed employees per administration with their employment, department and job.
  3. For a new employee a Microsoft account is ready before the start date, with manager and groups.
  4. Through a group the employee gets the licence that matches their contract type.
  5. After the end date of the employment KoppelHet blocks sign-in; deletion follows after the agreed period.
Exact HR → KoppelHet → Microsoft Entra IDSOURCEExact HRTARGETMicrosoft Entra IDKoppelHetmapping · logging · monitoringExact HR → KoppelHet → Microsoft Entra IDSOURCEExact HRTARGETMicrosoft Entra IDKoppelHetmapping · logging · monitoring
Out: Employee with employee number and administration · Department and job from the employment's organisation · Manager · Contract type (fixed-term, permanent or external) · Microsoft 365 licence

What to watch for with Exact HR and Microsoft Entra ID

  • Payroll data in Exact Online can only be read through the API, not changed. That is enough for this integration, but a work email created in Microsoft cannot be written back to Exact by KoppelHet. Payroll then enters it themselves, or it stays in Entra ID only.
  • Exact records the manager as a reference to another employee, who must be in the same administration. If a manager works for a different administration, Exact holds nothing. KoppelHet reports that, so IT sets the manager in Entra ID by hand.
  • An employee in Exact has a business email, a private address and sometimes the address of their Exact user. KoppelHet only uses the business address, or the naming rule if it is empty, so a private address never ends up as a Microsoft sign-in name.
  • Exact knows three contract types on the employment, including external. KoppelHet passes that on as the employee type in Entra ID, so an external worker gets a different licence and less access through a group than a permanent employee.
  • Exact offers an overview of employee changes since a given moment, plus a list of deleted records. KoppelHet uses both, so an employee entered by mistake and deleted again also disappears from Entra ID before a licence is attached.
  • After the retention period Exact can anonymise an employee. The name then changes in the API, but the person has not been renamed. KoppelHet recognises an anonymised employee and then leaves the account in Entra ID untouched.
  • Exact Online stores payroll data per administration, and each administration has its own employee numbers. KoppelHet puts the administration code in front of the number and uses the administration as the company name in Entra ID, so email domain and licences can differ per administration.

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 also work with Exact Globe or Synergy?

This page is about payroll in Exact Online. For Exact Globe and Synergy, which often run in your own network, we look at the available route case by case.

Does the integration see salary and BSN?

KoppelHet only requests the fields Entra ID needs. We do not request salary, BSN or address.

What if the manager is in a different administration?

Exact then has no manager for that employee. The platform reports it, and IT sets the manager in Entra ID by hand.

Technical details for IT

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

  • Exact Online is read through the REST API with OAuth 2.0 (an app in the Exact App Center), per administration (division) and only with GET. Endpoints /api/v1/{division}/sync/Payroll/Employees (Timestamp), /payroll/Employments, /payroll/EmploymentOrganizations (Department, JobTitle, StartDate, EndDate), /payroll/ActiveEmployments (ContractType) and /sync/Deleted. Fields include EmployeeHID, FirstName, LastName, MiddleName, BusinessEmail, Manager and IsAnonymised; private fields are only returned for certain user roles. API limits per minute and per day per administration.
  • Entra ID is written through Microsoft Graph (user) with employeeId (at most 16 characters), givenName, surname, displayName, userPrincipalName, mail, jobTitle, department, companyName, employeeType, manager, usageLocation, employeeHireDate, employeeLeaveDateTime (requires User-LifeCycleInfo) and accountEnabled.

Which fields are transferred

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

Field in Exact HRField in Microsoft Entra IDNotes
EmployeeHID (personeelsnummer)employeeIdWith administration code when there are several administrations
FirstName of NickNamegivenName
LastName met MiddleNamesurname en displayName
BusinessEmail of naamgevingsregeluserPrincipalName en mail
JobTitleDescriptionjobTitle
DepartmentDescriptiondepartment
ManagermanagerThrough the manager's ID in the same administration
ContractTypeemployeeType1 fixed-term, 2 permanent, 3 external
StartDate van het dienstverbandemployeeHireDate
EndDate van het dienstverbandemployeeLeaveDateTime en accountEnabled

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.