Sympa logoMicrosoft Dynamics 365 logo

HR to ERP

Sympa to Dynamics 365 integration: employees from Sympa in Business Central, with department as a dimension on the right day

With an integration between Sympa and Microsoft Dynamics 365 Business Central, every employee of an employer with a Business Central company automatically becomes an employee there, with job title, email and department as a default dimension. KoppelHet applies an approved transfer or end date in Sympa on the day it takes effect, because Business Central itself has no effective dates for employees.

What the integration does

Organisations with Sympa as HR system and Business Central for accounting often run hours or expenses through Business Central. Employees are created there by hand, and a transfer in Sympa only reaches Business Central when someone remembers it.

  1. Your Sympa administrator creates an API interface with employer, job title, business email, employment and department; we supply the field list.
  2. Every hour KoppelHet fetches new and changed data cards and creates new employees in the Business Central company of their employer.
  3. Every morning KoppelHet requests the approved department rows that apply on that day, and updates the dimension where it differs.
  4. A department without a dimension value in Business Central goes to finance as an alert.
  5. After the end date the employee gets the status terminated and the termination date.
Sympa → KoppelHet → Microsoft Dynamics 365SOURCESympaTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoringSympa → KoppelHet → Microsoft Dynamics 365SOURCESympaTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoring
Out: Employee with number, name, job title and email · Department as default dimension · Business Central company per Sympa employer · Employment date, termination date and status

What to watch for with Sympa and Microsoft Dynamics 365

  • Business Central only keeps an employee's current department, without an effective date. Sympa can give the state on a single day with the at parameter. KoppelHet requests today's state every morning, so a transfer as of the first of the month appears in Business Central on that day and not before.
  • A data card that has never been changed after creation has an empty modified field in Sympa. A filter on modified alone misses such a new employee. KoppelHet therefore filters on created and modified together, so a new colleague reaches Business Central in the first run.
  • Dimension values in Business Central are read-only through the API. KoppelHet therefore cannot create a new department from Sympa as a dimension itself. If the code is missing, KoppelHet still creates the employee but without a department, and asks finance to add the value.
  • On a default dimension Business Central can require a code on every posting. If that is on for the department, KoppelHet sets the dimension right when creating the employee, so the first time entry or expense is not rejected.
  • Each Sympa employer belongs to one company in Business Central, and the API works per company. KoppelHet determines the company per employee from the employer. If someone moves to another employer, KoppelHet terminates the employee in one company and creates them in the other.
  • Sympa answers read queries from a reporting database that can lag up to half an hour, with one hundred requests per hour per interface. KoppelHet lets each run overlap the previous one by half an hour and only writes real differences to Business Central, so the employee card gets no unnecessary changes.
  • A leaver does not disappear from Sympa, because the Integration API has no delete. Besides active and terminated Business Central also has inactive. KoppelHet only sets the status terminated after the end date of the employment, so open expenses of that employee can still be processed.

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 the manager go to Business Central?

Not in the first version. The Business Central employee API has no manager field. Approvers for hours can be added later as an extension.

Does this also work with Dynamics 365 Finance?

This page assumes Business Central. Dynamics 365 Finance works with other entities; we look at that separately.

Technical details for IT

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

  • Sympa Integration API (OData v4 subset, JSON) under https://api.sympahr.net/api with X-ApiKey or basic authentication. New and changed cards with $filter on created and modified plus the employer; department rows with $expand and Approval eq 5 and at for the state on one day (requires effectivity settings). By default 100 requests per hour per interface; reporting database up to 30 minutes behind.
  • Business Central API v2.0 per company with an app registration in Microsoft Entra ID - employees (POST, PATCH; number, givenName, surname, jobTitle, email, employmentDate, terminationDate, status Active, Inactive or Terminated) and defaultDimensions with parentType Employee and postingValidation; dimensionValues GET only.

Which fields are transferred

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

Field in SympaField in Microsoft Dynamics 365Notes
Uniek veld van de datakaartnumber
Voornaam en achternaamgivenName, surname
FunctiejobTitle
Zakelijk e-mailadresemail
WerkgeverBedrijf in Business CentralFixed table per employer
Afdeling (regel geldig op de dag, Approval 5)defaultDimensions (afdeling)Code must already exist as a dimension value
Begindatum dienstverbandemploymentDate
Einddatum dienstverbandterminationDate en status Terminated

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.