Sympa logoDy

Leave, absence and time

Sympa to Dyflexis integration: approved working time rows from Sympa as contracts in Dyflexis

With an integration between Sympa and Dyflexis, Dutch employees from Sympa appear in Dyflexis automatically, and every approved working time row in Sympa becomes a contract in Dyflexis with the same validity period. A row still awaiting approval does not change the schedule; once approved, it reaches scheduling with the right effective date.

What the integration does

Organisations that use Sympa as the HR system for several countries and schedule the Dutch sites in Dyflexis enter changes in working time twice. A change of hours still awaiting approval in Sympa is sometimes already in the schedule, or an approved change is not there yet.

  1. At the start the Sympa administrator sets up an API interface with only the fields and tables Dyflexis needs.
  2. Every hour KoppelHet requests the employees changed since the previous round, with only the approved table rows.
  3. New employees of a Dutch office go to Dyflexis; an administrator links them there once.
  4. Every approved working time row becomes a Dyflexis contract with the row's start and end date.
  5. On leaving KoppelHet closes the employee and contract on the last day from Sympa.
Sympa → KoppelHet → DyflexisSOURCESympaTARGETDyflexisDyflexisKoppelHetmapping · logging · monitoringSympa → KoppelHet → DyflexisSOURCESympaTARGETDyflexisDyflexisKoppelHetmapping · logging · monitoring
Out: Employee with employee number, name and work email · Working time row with hours, days and validity period · Office or cost centre, translated to a Dyflexis office · Hire and termination date

What to watch for with Sympa and Dyflexis

  • An API interface in Sympa has no fixed fields; the administrator chooses what goes in it. Which fields hold hours, days and office therefore differs per Sympa environment. At the start we set up the interface together with the administrator and record which Sympa field belongs to which Dyflexis field.
  • Table rows in Sympa can have a validity period, and Dyflexis contracts have a start and end date. KoppelHet turns every working time row into one contract with exactly that period. A change of hours from the first of next month is thus in Dyflexis in advance, with the right effective date.
  • Sympa gives each table row an approval status, with separate values for waiting, approved and rejected. KoppelHet only requests approved rows. A rejected change of hours thus never reaches the schedule, and a waiting one only after approval.
  • A Sympa interface allows a hundred requests per hour by default. A full round over all employees does not fit in that. KoppelHet therefore only requests employees changed since the previous round, in large pages, and spreads the first load outside office hours.
  • What Sympa returns through the API comes from a reporting database that lags slightly, sometimes up to half an hour. KoppelHet therefore lets each round overlap a little with the previous one, so a change that became visible just after the previous round is not skipped.
  • Sympa environments for several countries also hold employees who do not belong in Dyflexis. KoppelHet filters in the request itself on the Dutch offices or organisational units, so those employees are not even fetched and the request limit is not used up unnecessarily.

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

What if working time in Sympa is not a table with validity?

Then we read the field as it is and a change applies from the day we see it. For changes in advance we recommend a table with validity; that is a setup choice in Sympa.

Do worked hours go back to Sympa?

No. The hours from Dyflexis belong with Dutch payroll; that flow can be added later as an extension.

Technical details for IT

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

  • Sympa through the Sympa Integration API (OData v4, JSON) on an interface the administrator creates in the API panel, with X-ApiKey or basic authentication. $filter on modified for changed employees and on unit for the Dutch units, $expand on the working time table with Approval eq 5, since, until or at for valid rows, $top and $skip for pagination. A hundred requests per hour per interface by default.
  • To Dyflexis through POST /api2/external-employees/{employeeReference} (lastName required; firstName, lastNamePrefix, email, personnelNumber, costCenter, employmentStart, employmentEnd) and POST /api2/external-employees/{employeeReference}/contracts (contractReference, office, type, start, end, hours, days). Scope external_employees.

Which fields are transferred

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

Field in SympaField in DyflexisNotes
Personeelsnummer (unieke sleutel van de interface)employeeReference en personnelNumber
Voornaam, tussenvoegsel, achternaamfirstName, lastNamePrefix, lastName
Werkmailemail
Datum in en uit dienstemploymentStart en employmentEnd
Werktijdregel: uren per weekhours (contract)
Werktijdregel: dagen per weekdays (contract)
Geldigheid van de regel (begin, eind)start en end (contract)
Vestiging of kostenplaatsoffice (contract) en costCenterThrough a lookup table

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.