

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.
- KoppelHet reads employees, employers and organisational units from AFAS on modification date.
- Each employer becomes a company in SysAid, if it does not exist yet.
- KoppelHet looks up the end user on user name and creates or updates it, with department, location and manager.
- Within the agreed lead time before the start date, a request for laptop and access follows, in the new employee's name.
- An end date results in an offboarding request; after that date KoppelHet disables the end user.
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 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.
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 Profit | Field in SysAid | Notes |
|---|---|---|
E-mail werk | userName | Key, equal to the login |
Roepnaam | firstName | |
Voorvoegsel + Achternaam | lastName | |
E-mail werk | userEmail | |
Functie | jobTitle | |
Werkgever | companyId | Through /companies |
Organisatorische eenheid | departmentId | Lookup table to existing departments |
Leidinggevende | managerId | |
Datum uit dienst | isDisabled = true | |
Medewerkernummer | custom veld of opgeslagen in KoppelHet | SysAid has no employee number field |
Indiensttreding of vertrek | Service record type request, met templateId | |
Begindatum of datum uit dienst | dueDate |
Related
ADP Workforce Now → AFAS Profit
ADP Workforce Now to AFAS integration: Dutch employees from the US HR system in AFAS Profit
AFAS Profit → 4PS Construct
AFAS to 4PS Construct integration: payroll journal per employer in the right 4PS company
AFAS Profit → Adobe Creative Cloud
AFAS to Adobe Creative Cloud integration: users and product profiles from AFAS Profit
AFAS Profit → AG5
AFAS to AG5 integration: employees, employments and absence from AFAS Profit in the skills matrix