HHLoket logo

Payroll integration

Hailey HR to Loket integration: employments, on-call contracts and approved salary from Hailey in Loket

With an integration between Hailey HR and Loket, every employment of a Dutch employee in Hailey becomes an employment in Loket, including an on-call contract, with notice period, hours and approved salary from the effective date. Salary proposals still awaiting approval in Hailey stay out of Loket until approved.

What the integration does

Organisations that use Hailey HR, often set up from Sweden, and have their Dutch employees paid in Loket enter every contract twice. On-call workers, second employments and salary proposals not yet approved cause wrong or premature changes in Loket.

  1. Hailey reports a changed employee; KoppelHet fetches that employee's employments, on-call contracts and salaries.
  2. An employment at the Dutch entity becomes a concept employee or an additional employment in Loket.
  3. The payroll bureau completes collective agreement, payroll tax credit and pension and converts the concept.
  4. Approved salary entries go to the pay in Loket with their effective date.
  5. An end date on the employment ends the employment in Loket as of the last day of employment.
Hailey HR → KoppelHet → LoketSOURCEHailey HRHailey HRTARGETLoketKoppelHetmapping · logging · monitoringHailey HR → KoppelHet → LoketSOURCEHailey HRHailey HRTARGETLoketKoppelHetmapping · logging · monitoring
Out: Concept employee with address · Employment or on-call contract · Notice period · Pay per hour or per period · End of employment

What to watch for with Hailey HR and Loket

  • Besides regular employments Hailey has separate on-call employments with contracted periods. Loket records per employment whether it is an on-call contract and whether there is an obligation to appear. KoppelHet puts an on-call employment from Hailey into Loket with that marker; KoppelHet leaves the appearance obligation open for payroll, because Hailey does not record it.
  • A salary in Hailey can contain a proposal awaiting approval, for a new amount, an end or a reactivation. KoppelHet only sends the approved amounts from the salary history to Loket. A proposal only reaches the payroll run once it is approved in Hailey.
  • Hailey has salaries per year, per month, per two weeks and per hour. Loket pays per month, per four weeks or per week, or with an hourly wage. KoppelHet converts an annual or monthly amount to the administration's period; a biweekly salary has no counterpart in Loket and becomes an alert for payroll.
  • One employee can have several concurrent employments in Hailey, each with its own priority and terms. In Loket an employee can also have several employments. KoppelHet creates a separate employment for each Hailey employment under the same employee, so hours and pay are not added together.
  • The notice period is stored in Hailey as a number with a unit, such as months. Loket records the notice period of employee and employer with its own time unit. KoppelHet takes number and unit over together, so three months in Hailey is also three months in Loket and not three days.
  • The address is stored in Hailey as a single street line. Loket asks for street, house number and addition separately, with a short addition of at most four characters. KoppelHet splits the line and flags an address that cannot be split unambiguously as a check item on the concept.

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 · Complex

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 the hours worked by on-call staff go along too?

Not in the first version: this integration sets up the employment. Hours worked from Hailey to Loket can be added later as an extension.

Does the BSN from Hailey go along?

Only if the personal identity number in Hailey holds the BSN for Dutch employees and passes the Dutch eleven test. Otherwise payroll completes it.

What happens to a salary proposal that is rejected?

Nothing in Loket. KoppelHet only passes on approved amounts.

Technical details for IT

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

  • Hailey HR through the REST API (api.haileyhr.app, OpenAPI v1) with a token. GET /Employees and /Employees/{employeeId} (streetAddress, postalCode, city, personalIdentityNumber, legalEntityId), GET /Employments (priority, startDate, endDate, lastWorkingDay, terms with noticePeriod, noticePeriodUnit, scopeHours, scopePercentage, employmentType, endOfFixedTerm), GET /CasualEmployments (contractedPeriods, status WillStart, Active or Ended) and GET /Salaries (payPeriod Yearly, Monthly, Biweekly or Hourly; history with date and amount; pendingApproval, pendingAmountApproval, pendingEndApproval).
  • Loket through the REST API with OAuth - POST conceptemployees and a new employment for an existing employee (isOnCallEmployment, hasOnCallAppearanceObligation, cancellationPeriodEmployee, cancellationPeriodTimeUnit), workinghours (deviatingHoursPerWeek), wages (grossWageType hourly or periodic) and PATCH terminate with the last day.

Which fields are transferred

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

Field in Hailey HRField in LoketNotes
employmentIdDienstverbandOne Loket employment per Hailey employment
legalEntityIdWerkgever
firstName, lastName, dateOfBirthVoornaam, voorvoegsel, achternaam en geboortedatum
streetAddress, postalCode, cityStraat, huisnummer, toevoeging, postcode en plaats
CasualEmploymentDienstverband met kenmerk oproepkracht
terms.noticePeriod en noticePeriodUnitOpzegtermijn met tijdseenheid
terms.scopeHoursAfwijkende uren per week
Salary history (date, amount) met payPeriodBruto loon per uur of per periode, met begindatum
endDate (dienstverband)Einde dienstverband

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.