AFAS Profit logoSysAid logo

HR to ITSM

AFAS SysAid integration: end users, managers and service records for new and departing employees

With an integration between AFAS Profit and SysAid, every employee from AFAS is an end user in SysAid, with company, department, job title and manager, and KoppelHet creates a service record of type request in that employee's name for every hire or end date. After the end date the integration disables the end user, so earlier requests are kept.

What the integration does

Organisations that have AFAS as their HR system and use SysAid for IT tickets often only enter new colleagues in SysAid once they first call. A manager who leaves then stays in SysAid as the manager of their old team.

  1. KoppelHet reads employees, employers and organisational units from AFAS on modification date.
  2. Each employer becomes a company in SysAid, if it does not exist yet.
  3. KoppelHet looks up the end user on user name and creates or updates it, with department, location and manager.
  4. Within the agreed lead time before the start date, a request for laptop and access follows, in the new employee's name.
  5. An end date results in an offboarding request; after that date KoppelHet disables the end user.
AFAS Profit → KoppelHet → SysAidSOURCEAFAS ProfitTARGETSysAidKoppelHetmapping · logging · monitoringAFAS Profit → KoppelHet → SysAidSOURCEAFAS ProfitTARGETSysAidKoppelHetmapping · logging · monitoring
Out: End user with user name and email · Employer as company · Department and location · Manager and job title · Group membership per employer or department · Service record (request) for onboarding and offboarding

What to watch for with AFAS Profit and SysAid

  • SysAid has no field for an employee number on an end user. KoppelHet therefore keeps track of which SysAid ID belongs to which AFAS employee number, so a name change in AFAS does not create a second end user.
  • The SysAid API has endpoints for companies, but not for departments. Departments that AFAS has as organisational units must exist in SysAid; KoppelHet translates the unit to the departmentId and reports when a unit is still missing.
  • Updating an end user in SysAid only works with the current version number of that record. KoppelHet reads the end user first and sends the version along, so a change by a service desk agent in the meantime is not silently overwritten.
  • Deleting an end user in SysAid is permanent. After the end date KoppelHet therefore sets isDisabled to true: the user loses access, but remains with their service records.
  • Employers in AFAS become companies in SysAid. A group with several operating companies can then use different SLAs or support groups per company in SysAid.
  • SysAid counts end users against a quota and refuses new ones with the message End user quota exceeded. KoppelHet catches that refusal and reports it to the administrator, instead of skipping the new employee.
  • SysAid allows 1,000 calls per five minutes per account. During the first delivery of all AFAS employees KoppelHet spreads the calls over those windows, so the service desk itself can keep using the API.

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

Do new employees get a password email from SysAid?

Only if you want that. When creating the user the integration can switch that notification on or off; with single sign-on it is usually not needed.

Can we use our own template for the onboarding request?

Yes. KoppelHet passes the templateId of your template, so category and fixed texts come from SysAid.

Does this work with SysAid on-premise?

This API belongs to SysAid in the cloud on the Spaces platform. For other installations we first check which API is available.

Technical details for IT

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

  • AFAS is read with dedicated GetConnectors (employees, employers, organisational units) under its own app connector, filtered on modification date. No BSN, salary or private data.
  • SysAid through https://{account}.sysaidit.com/connect/v1 with a bearer token: an application key (POST v1/application-keys, clientId and clientSecret) and with it an access token through POST /v1/access-tokens, valid for 24 hours by default. End users with GET /end-users (query, limit up to 500), POST /end-users and PATCH /end-users/{id} with version; groups through POST /end-users/{id}/groups; companies through /companies.
  • Requests through POST /service-records with type request and in data, among others, title, description, requestUser (the employee's user name), assignedGroup, primaryCategory and dueDate, optionally with a templateId. Limit 1,000 calls per five minutes; on 429 KoppelHet waits for X-RateLimit-Reset.

Which fields are transferred

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

Field in AFAS ProfitField in SysAidNotes
E-mail werkuserNameKey, equal to the login
RoepnaamfirstName
Voorvoegsel + AchternaamlastName
E-mail werkuserEmail
FunctiejobTitle
WerkgevercompanyIdThrough /companies
Organisatorische eenheiddepartmentIdLookup table to existing departments
LeidinggevendemanagerId
Datum uit dienstisDisabled = true
Medewerkernummercustom veld of opgeslagen in KoppelHetSysAid has no employee number field
Indiensttreding of vertrekService record type request, met templateId
Begindatum of datum uit dienstdueDate

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.