AFAS Profit logoShuttel logo

Lease and mobility

AFAS to Shuttel integration: joiners and leavers from AFAS Profit straight into Shuttel

With an integration between AFAS Profit and Shuttel, every new employee from AFAS appears in Shuttel automatically, under the right employer and in the user group of their scheme, and a leaver is deregistered on the end date of employment. Shuttel already connects with AFAS itself to get travel and working-from-home allowances into payroll; KoppelHet handles the other side, who is in Shuttel.

What the integration does

Employers that offer a Shuttel card already get the allowances into AFAS through Shuttel's own connector. Payroll still adds new colleagues to Shuttel by hand, and an extended temporary contract or a move to another employer in the same AFAS environment often goes wrong.

  1. HR enters the new employee in AFAS, under the employer they join.
  2. KoppelHet reads the employee through a dedicated GetConnector and decides the Shuttel group from a free field or from function and organisational unit.
  3. The employee is in Shuttel with employee number, name, work email, employer and group.
  4. On a change of function, unit or employer the employee moves to the right group.
  5. On the end date of employment, with no new contract following on, the employee is deregistered in Shuttel.
AFAS Profit → KoppelHet → ShuttelSOURCEAFAS ProfitTARGETShuttelKoppelHetmapping · logging · monitoringAFAS Profit → KoppelHet → ShuttelSOURCEAFAS ProfitTARGETShuttelKoppelHetmapping · logging · monitoring
Out: Employee with name, employee number and work email · Employer within the AFAS environment · Function and organisational unit · User group in Shuttel · Start and end date of employment

What to watch for with AFAS Profit and Shuttel

  • Shuttel lists AFAS as one of the payroll systems it connects with to process allowances in payroll. Those allowances come back on the employee number in AFAS. KoppelHet uses the same number as the key in Shuttel, so both integrations concern the same person.
  • An AFAS environment can contain several employers, each with its own payroll. If an employee moves to another employer within the group, they move along in Shuttel, so their allowances end up with the new employer in AFAS.
  • A renewed temporary contract is a new contract line in AFAS. KoppelHet only deregisters if no contract follows on after the end date, so a renewal does not cause a gap in using the card.
  • HR can record the mobility scheme per employee in a free field in AFAS. KoppelHet reads that field and puts the employee in the Shuttel group with the same name. Without a free field we derive the group from function and organisational unit.
  • The GetConnector for this integration only contains name, numbers, email, employer, scheme and dates. Salary, citizen service number and home address stay in AFAS, unless the scheme needs the address.
  • AFAS can send a webhook at a workflow step. If HR completes the departure workflow for a summary dismissal, KoppelHet deregisters straight away instead of at the next run.

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

Why not just Shuttel's integration with AFAS?

That one is meant to get allowances into payroll. Whether it also registers and deregisters employees is not in Shuttel's public documentation. If it does that for you, this integration is not needed.

Does the home address go to Shuttel as well?

Only if the scheme needs it. By default the address is not in this integration's GetConnector.

What happens with an employee temporarily on zero hours?

As long as the contract in AFAS runs, the employee stays in Shuttel. If HR wants such a person in a different group, that can be done through the free field.

Technical details for IT

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

  • AFAS Profit is read through the REST API with a dedicated app connector and a GetConnector with only the fields needed, on change date. Authentication with OAuth (client credentials) or classic token; the classic token expires on 31 August 2027. Optionally a webhook on the departure workflow.
  • Shuttel publishes no public API documentation; the connection on the Shuttel side is agreed per customer.

Which fields are transferred

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

Field in AFAS ProfitField in ShuttelNotes
MedewerkernummerPersoneelsnummerThe same key as in Shuttel's allowance integration
Roepnaam of voornaamVoornaam
Voorvoegsel en achternaamAchternaam
E-mail werkE-mailadresFor the invitation to the app and Mijn Shuttel
WerkgeverWerkgeverA separate group or administration in Shuttel per employer
Vrij veld mobiliteitsregelingGebruikersgroepIf HR records the scheme per employee in AFAS
Functie en organisatorische eenheidGebruikersgroepThrough a lookup if there is no free field
Begindatum contractStartdatum
Datum uit dienstAfmelden

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.