Sage HR logoAS

Absence reporting (SIVI)

Sage HR to the occupational health service via SIVI: time off requests of the sickness policy as absence reports

With an integration between Sage HR and the occupational health service, approved time off requests of the sickness policy in Sage HR automatically become sick, change or recovery reports at the health service, in the SIVI format. A sickness report for part of the day becomes a percentage at the health service based on the hours Sage HR records.

What the integration does

Organisations that use Sage HR for employee data and leave, and have a health service for their Dutch employees, record sick days in Sage HR and then report them again to the health service. A sickness report that is withdrawn afterwards often stays open at the health service.

  1. At the start we pick the policy in Sage HR that is used for sickness.
  2. Every hour KoppelHet requests the time off requests of the current month and looks at the status.
  3. An approved request under the sickness policy becomes a sickness report.
  4. A partial day becomes a percentage; when requests follow each other, it stays one absence case.
  5. After the last day of sickness the recovery report follows. A reported request that disappears or is cancelled goes to HR as a task.
Sage HR → KoppelHet → Arbodienst (SIVI)SOURCESage HRTARGETArbodienst (SIVI)Arbodienst (SIVI)KoppelHetmapping · logging · monitoringSage HR → KoppelHet → Arbodienst (SIVI)SOURCESage HRTARGETArbodienst (SIVI)Arbodienst (SIVI)KoppelHetmapping · logging · monitoring
Out: Time off requests of the sickness policy · Part of day or hours for a partial day · Status and approval date · Employee and employment · Return notification from the health service

What to watch for with Sage HR and Arbodienst (SIVI)

  • Leave in Sage HR is attached to a policy, such as Vacation or Sickday. The sickness policy usually keeps no balance. KoppelHet recognises sickness by the policy chosen at the start, so that only requests under that policy go to the health service.
  • Sage HR returns time off requests per period of less than 65 days, and without dates only the current month. There are no webhooks. KoppelHet therefore reads the current month every hour and two months back every night, and compares that with what has been reported.
  • For part of a day Sage HR records whether it concerns the first or second part of the day, or a custom time span, and how many hours that is. KoppelHet sets those hours against a full working day and sends that as the absence percentage for that day.
  • A request in Sage HR has a status and an approval date. Per policy it can be set that requests are approved automatically. KoppelHet only reports sickness with the approved status, and a request that is cancelled after reporting becomes a task for HR.
  • Sickness of several weeks is often a series of adjoining requests in Sage HR, because every request needs an end date. KoppelHet merges adjoining requests into one absence case, so an extension does not become a new sickness report at the health service.
  • A request can have details, extra questions per policy and a replacement. Those do not go to the health service. KoppelHet only stores the dates, hours and status of a request.

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

Does HR need to create a new request each time for long-term sickness?

That is fine. KoppelHet treats adjoining requests as one absence, so the health service gets no new sickness report.

Are the answers to extra questions on a request sent along?

No. Details and extra fields stay in Sage HR.

Is this the same as Sage People?

No. Sage HR is a different product with its own API. Sage People has a separate integration page.

Technical details for IT

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

  • Sage HR through the REST API on its own subdomain ({subdomain}.sage.hr/api) with the API key in the X-Auth-Token header. GET /leave-management/policies (id, name, unit, accrue_type), GET /leave-management/requests with from and to (less than 65 days, default the current month) and page; fields id, status_code, policy_id, employee_id, start_date, end_date, is_part_of_day, first_part_of_day, second_part_of_day, hours and approval_date. Pages of 50 with meta.next_page. No webhooks.
  • The SIVI messages Employments, Employee data and Absence reports go to the health service, with processing code new, changed or correction, Vangnet J/N (mandatory) and a cause code without diagnosis. Transport under the SIVI 2025 interface specification (REST endpoint at the health service, XML in Base64 inside JSON, OAuth 2.0), with a return and processing message back.

Which fields are transferred

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

Field in Sage HRField in Arbodienst (SIVI)Notes
employee_idIdentificatie werknemerNo citizen service number
Huidig dienstverband van de medewerkerIdentificatie dienstverband
id van de eerste aanvraagVerzuimgeval identificatieAdjoining requests keep the same absence case
start_dateDatum eerste verzuimdag
is_part_of_day en hoursPercentage verzuimCalculated with the hours per day
end_date + 1 dagDatum hersteld en Einde verzuim J/N
policy_idFilter op ziekteNot sent itself
Eigen veld in Sage HRVangnet J/N

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.