

Payroll integration
HiBob to AFAS integration: HR in Bob, Dutch payroll in AFAS Profit
With an integration between HiBob and AFAS Profit, new Dutch employees, pay changes and leavers from HiBob reach AFAS automatically, with the effective date HR entered in Bob. Payroll no longer retypes anything, and a backdated pay rise lands in the right period by itself.
What the integration does
Organisations that use HiBob for all HR processes and run Dutch payroll in AFAS Profit enter contract and salary first in Bob and then again in AFAS. Raises entered in Bob with a past date are only corrected in AFAS a month later.
- HR enters a new employee, new salary, new job or a departure in HiBob.
- KoppelHet picks up the change straight away and keeps only the employees of the Dutch entity.
- A new employee then appears in AFAS with contract, job, schedule, salary and bank account.
- A change arrives in AFAS with the same effective date as in HiBob, even when that date is in the past.
- A departure in HiBob ends the contract in AFAS. Differences between both systems show up in the KoppelHet platform.
What to watch for with HiBob and AFAS Profit
- HiBob only reports that something changed, not the new value. KoppelHet fetches the data afterwards with a short wait, because HiBob may need up to twenty seconds after a change before the new value is visible.
- HiBob keeps work, contract, salary and joining and leaving as history, with an effective date per entry. That date goes to AFAS, so a retroactive pay rise lands in the right period.
- HiBob only reports a departure on the day it takes effect. For AFAS KoppelHet does not wait for that; the scheduled check reads leaving dates from HiBob in advance.
- The integration must also be allowed to see salary history in HiBob. Otherwise it only sees the current salary and AFAS misses earlier changes.
- For a new hire AFAS asks for tax data HiBob does not hold. Payroll fills it in AFAS, or HR records it in a custom table in HiBob.
- For the scheduled check KoppelHet requests only the data AFAS needs, because HiBob returns all employees at once.
- A bank account in HiBob has no effective date. KoppelHet sets a new IBAN in AFAS from the next pay period.
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
Does this work if AFAS runs at an accounting firm?
Yes. The firm grants the integration access to your AFAS environment, and KoppelHet writes only to that environment.
What if HR makes a mistake in HiBob and corrects it?
The correction goes to AFAS with the same effective date. If the payroll run has already happened, AFAS settles the difference.
Does HR still need to do anything in AFAS?
Only what HiBob does not hold, such as payroll tax credit and pension, unless we record those in HiBob. With the hiring workflow HR can still review the new employee.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- HiBob is read through employee data webhooks (only employeeId and changed fields or table entry) and the HiBob API. After an update a read may show the old value for up to twenty seconds.
- Historical tables work, employment, salary and lifecycle with effectiveDate. The lifecycle webhook for a leaver fires at midnight after the effective date.
- The service user has permissions per category; the salary table also needs the view-history permission. People search returns all employees without pagination, with at most four hundred fields. Bank accounts are entries with their own id, without effectiveDate.
- AFAS is written through the KnPerson and KnEmployee UpdateConnectors (AfasContract, AfasOrguniFunction, AfasTimeTable, AfasSalary, AfasAgencyFiscus).
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in HiBob | Field in AFAS Profit | Notes |
|---|---|---|
root.id | Vrij veld bij de AFAS-medewerker | The Bob ID stays the key for later changes |
root.firstName en achternaam | Voornaam, voorvoegsel, achternaam (KnPerson) | |
BSN (custom field) | BSN | Bob has no Dutch BSN field; it goes in a custom field |
work.startDate | Begindatum contract (AfasContract) | |
work.department | Organisatorische eenheid (AfasOrguniFunction) | Through a lookup table |
Functie (work-tabel) | Functie (AfasOrguniFunction) | Through a lookup table |
Uren (employment-tabel) | Rooster (AfasTimeTable) | |
Salaris (salary-tabel) | Salaris (AfasSalary) | With the effectiveDate of the table entry |
Bankrekening (bank accounts) | Bankrekening | |
Vertrekdatum (lifecycle) | Einddatum contract |
Related
Ashby → HiBob
Ashby to HiBob integration: a hire from Ashby straight in as an employee in Bob
Bullhorn → HiBob
Bullhorn to HiBob integration: an approved placement as a new employee in Bob
Carerix → HiBob
Carerix to HiBob integration: successful match becomes a new employee in Bob
Greenhouse → HiBob
Greenhouse to HiBob integration: from a hire in Greenhouse to a new employee in Bob