AFAS Profit logoServiceNow logo

HR to ITSM

AFAS ServiceNow integration: employees, cost centres and onboarding requests from AFAS Profit

With an integration between AFAS Profit and ServiceNow, all employees from AFAS are users in ServiceNow, with department, employer, cost centre and manager, and KoppelHet creates a request in the ServiceNow service catalog for every hire, transfer or departure in AFAS. The request is in the employee's name, with start date, job, manager and employer, and the user becomes inactive after the end date.

What the integration does

Anyone who manages employees in AFAS and uses ServiceNow for IT and facility services has often copied departments and cost centres by hand at some point. They lag behind AFAS, so requests are booked to outdated cost centres and go to managers who have left for approval.

  1. KoppelHet reads AFAS with a dedicated connector that contains only the fields for ServiceNow, on modification date.
  2. Employers, organisational units and cost centres go to ServiceNow first, with their structure.
  3. The employees follow. ServiceNow updates existing users on employee number and creates new ones.
  4. A transfer or new manager takes effect on the start date HR entered in AFAS.
  5. After the end date the user becomes inactive; tickets and history are kept.
  6. When a new employee's start date falls within the agreed lead time, KoppelHet orders the onboarding item from the service catalog, with the new user as the requester.
  7. A transfer results in a change request with the old and new department; an end date in an offboarding request before the last working day.
AFAS Profit → KoppelHet → ServiceNowSOURCEAFAS ProfitTARGETServiceNowKoppelHetmapping · logging · monitoringAFAS Profit → KoppelHet → ServiceNowSOURCEAFAS ProfitTARGETServiceNowKoppelHetmapping · logging · monitoring
Out: User with employee number and email · Departments with their place in the structure · Employer as company · Cost centre · Manager · Onboarding request (REQ/RITM) in the name of the new employee · Change request on a transfer, offboarding request on departure

What to watch for with AFAS Profit and ServiceNow

  • HR often enters a new employee in AFAS as soon as the contract is settled, sometimes months before the start date. KoppelHet only orders the onboarding item within the agreed lead time, four weeks before the start date by default, so the service desk queue only holds current requests.
  • AFAS has free fields on the employee. If HR records there whether someone needs a laptop, phone or access badge, those choices go into the request as variables, and the ServiceNow flow only creates the tasks that are needed.
  • Operating companies with their own IT department can each have their own catalog item or assignment group. KoppelHet chooses the item based on the employer in AFAS.
  • AFAS keeps cost centres per employer, and two employers can use the same code. KoppelHet puts the employer in front of the code, so cost centre 100 of one employer does not merge with 100 of another in ServiceNow.
  • The organisational units in AFAS form a tree. KoppelHet includes the parent unit, so reports and assignment rules in ServiceNow can work per cluster or division.
  • Each employer in AFAS becomes a company in ServiceNow. Service desks with different arrangements per employer, for example on hardware or cost allocation, can base their rules on it.
  • Transfers are recorded in AFAS with a start date and are often entered ahead. KoppelHet only delivers the new department and manager on that date, so requests stay with the current manager until that day.
  • If ServiceNow already takes users from Active Directory, they do not have an employee number yet. On the first delivery KoppelHet links them by email address and fills in the number; after that the employee number is the key.
  • AFAS keeps name prefix and surname separately; ServiceNow has one surname field. KoppelHet combines them, so the name in ServiceNow shows as the employee writes it.
  • KoppelHet reads AFAS with its own connector under its own app connector. BSN, salary and bank details are not in that connector and therefore never reach ServiceNow.

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

Can we also have tickets created for onboarding and offboarding?

Yes. For a new employee KoppelHet orders the onboarding item from your service catalog, four weeks before the start date by default, and for an end date the offboarding item one week ahead. A transfer results in a change request for access and equipment.

Does our LDAP import from Active Directory stay?

Yes. We agree per field which source wins, so AFAS and Active Directory do not overwrite each other.

What can be traced afterwards for an audit?

Every action of the integration is recorded in the audit logging of the KoppelHet platform. KoppelHet works with an ISO 27001 certified management system.

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 with job lines, organisational units, employers, cost centres) under its own app connector, filtered on modification date. The classic token expires on 31 August 2027.
  • ServiceNow is written through the Import Set API (insertMultiple) into staging tables with transform maps; coalesce on employee_number, on the first delivery on email. With run_after, core_company, cmn_department and cmn_cost_center are processed before sys_user. Integration user with only the roles for these tables.
  • Tickets through the Service Catalog API: POST /api/sn_sc/servicecatalog/items/{sys_id}/order_now with the catalog variables in variables and the user in sysparm_requested_for. This creates a request (REQ) with a requested item (RITM); the catalog item's flow creates the catalog tasks (sc_task) per assignment group. A note on an open request goes through the Table API on sc_req_item. KoppelHet stores the RITM number per employee per event.

Which fields are transferred

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

Field in AFAS ProfitField in ServiceNowNotes
Medewerkernummeremployee_numberKey for updating
Roepnaamfirst_name
Voorvoegsel + Achternaamlast_name
E-mail werkemail
Functietitle
Organisatorische eenheiddepartment (cmn_department)With parent unit
Werkgevercompany (core_company)
Kostenplaatscost_center (cmn_cost_center)Code prefixed with employer
Leidinggevendemanager (sys_user)
Datum uit dienstactive = false
Indiensttreding, wijziging of vertrekCatalogusitem voor onboarding, wijziging of offboardingA separate item per event, chosen at the start
Gesynchroniseerde gebruikersysparm_requested_forThe request is in the name of the new employee
Datum in dienst of datum uit dienstVariabele startdatum of laatste werkdag
LeidinggevendeVariabele manager (verwijzing naar sys_user)
Werkgever of vestigingVariabele locatie (cmn_location)
FunctieVariabele functie
Afdeling of teamToewijzingsgroep van de catalog tasksThrough the catalog item flow

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.