BambooHR logoVS

Absence reporting (SIVI)

BambooHR to the absence insurer via SIVI: sickness from time off reported per policy

With an integration between BambooHR and the absence insurer, approved sick leave of Dutch employees in BambooHR goes to the insurer automatically, as a SIVI employer-to-insurer message. Because BambooHR has no payroll tax number, KoppelHet records at the start which employees fall under which policy.

What the integration does

Organisations that use BambooHR for HR and have absence insurance for their Dutch employees now enter sickness and recovery by hand in the insurer's portal. BambooHR is not set up around Dutch employers, so someone also has to track which policy an employee falls under.

  1. At the start we decide which field in BambooHR indicates the Dutch employer and link each value to the payroll tax number of the policy.
  2. Every hour KoppelHet fetches the changed sickness requests, with an overlap so a late change is not missed.
  3. Approved sickness becomes a new report with percentage and cause code.
  4. Per agreed period, new, changed, corrected and cancelled reports go to the insurer in one message.
BambooHR → KoppelHet → Verzuimverzekeraar (SIVI)SOURCEBambooHRTARGETVerzuimverzekeraar (SIVI)Verzuimverzekeraar (SIVI)KoppelHetmapping · logging · monitoringBambooHR → KoppelHet → Verzuimverzekeraar (SIVI)SOURCEBambooHRTARGETVerzuimverzekeraar (SIVI)Verzuimverzekeraar (SIVI)KoppelHetmapping · logging · monitoring
Out: Time off requests of the sick type · Employer with payroll tax number of the policy · Amount per day · Cause code from a separate accident type · Cancelled report on cancellation or deletion

What to watch for with BambooHR and Verzuimverzekeraar (SIVI)

  • BambooHR has no field for a Dutch employer or a payroll tax number. KoppelHet uses a field you already maintain, such as location or division, and translates it with a fixed table into the number of the unit holding the policy.
  • BambooHR has no field of its own for the cause code. If you want to report accidents separately, create a type for sickness caused by an accident at work next to the normal sick type. KoppelHet turns that into cause code 10; everything else becomes 99.
  • When a pending request is edited, BambooHR replaces it with a new one with another number. If the first day moves as a result, KoppelHet sends the insurer a correction with the old first day of absence, under the absence number of the first request.
  • A deleted request disappears from BambooHR's list of changed requests. The daily comparison still finds it, and it then goes to the insurer as a cancelled report.
  • Without rights to an employee or the sick type, BambooHR returns an empty list, not an error. That is why we test at the start with a known sickness request whether the integration user sees it, before the first period goes to the insurer.
  • BambooHR records per date how many hours or days someone is absent. KoppelHet turns that into the absence percentage, so the insurer does not reimburse a full day of pay for half a day of sickness.
  • Employee and manager notes are left out when fetching, so they never reach KoppelHet or the insurer.

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 we need to change anything in BambooHR?

Only if you want to report accidents separately: then an extra sick type is added.

What if we have several Dutch companies?

Each company with its own payroll tax number becomes a separate employer in the message. The table set up at the start records who belongs where.

Do the notes go along?

No. The integration does not even fetch them.

Technical details for IT

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

  • BambooHR through GET /api/v1/time_off/requests with updatedSince (with overlap), type (sick types, including the accident type), status and excludeNote; daily with start and end. Fields id, employeeId, start, end, updated, status.status (approved, denied, superceded, requested, canceled), type.id, amount.unit and dates. Types through GET /api/v1/meta/time_off/types. Employer field through the employee API.
  • Message Verzuimmeldingen from employer to insurer (XML, targetNamespace VerzuimmeldingenWerkgeverVerzekeraar, file name prefixed WV-), processing codes 01 new, 02 changed, 03 cancelled, 04 for information and 05 correction, cause codes 10, 11 and 99. Transport to be agreed per insurer.

Which fields are transferred

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

Field in BambooHRField in Verzuimverzekeraar (SIVI)Notes
Locatie, divisie of eigen veld (via tabel)Werkgever: loonheffingennummer
employeeIdIdentificatie werknemer
id van de eerste aanvraagVerzuimgeval identificatieStays the same when BambooHR replaces the request
startDatum eerste verzuimdag
dates (hoeveelheid per dag) en amount.unitPercentage verzuim
end + 1 dagDatum hersteld en Einde verzuim J/N
type.idOorzaak verzuim (10, 11 of 99)Separate type for an accident

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.