BambooHR logoSh

Leave, absence and time

BambooHR to Shiftbase integration: employees and contracts from BambooHR in the Shiftbase schedule

With an integration between BambooHR and Shiftbase, new employees from BambooHR appear in Shiftbase automatically, with department, contract hours, hourly wage and start date. When the location, hours or status changes in BambooHR, the employee gets a new contract in Shiftbase from that date and the old one ends, so plus and minus hours over the past stay correct.

What the integration does

Organisations that use BambooHR as the personnel file and schedule in Shiftbase type every new worker in twice. When HR changes the hours in BambooHR, Shiftbase keeps calculating with the old contract for weeks, and the plus and minus hours no longer add up.

  1. HR creates an employee in BambooHR at a location that is scheduled in Shiftbase, with hours per week and employment status.
  2. After the BambooHR notification KoppelHet looks up the department and team in Shiftbase through the location table.
  3. The employee is created in Shiftbase with a contract from the start date, with hours per day and the hourly wage.
  4. On a new job info, compensation or status row KoppelHet closes the running contract and opens a new one from the effective date.
  5. On departure the last contract gets the end date from the BambooHR employment status table.
BambooHR → KoppelHet → ShiftbaseSOURCEBambooHRTARGETShiftbaseShiftbaseKoppelHetmapping · logging · monitoringBambooHR → KoppelHet → ShiftbaseSOURCEBambooHRTARGETShiftbaseShiftbaseKoppelHetmapping · logging · monitoring
Out: Employee with preferred name, employee number and work email · Contract with department, contract type and function · Contract hours per day, derived from hours per week · Hourly wage for the wage cost estimate · Start and end date of every contract

What to watch for with BambooHR and Shiftbase

  • A Shiftbase contract has no field for hours per week, only contract hours per day. BambooHR supplies hours per week. KoppelHet divides the weekly hours by the number of working days, which sits in a table per contract type or comes from a custom BambooHR field.
  • Editing a contract in Shiftbase rewrites all results within that contract's period, including past ones. KoppelHet therefore never edits a running contract, but closes it on the day before the BambooHR effective date and starts a new contract.
  • Job info and compensation are tables in BambooHR with an effective date per row. That fits Shiftbase, where a different location or a pay rise requires a new contract. Every new table row becomes a contract boundary in Shiftbase on the same date.
  • In BambooHR the hours field is a whole number, while Shiftbase accepts hours per day with decimals. A 30-hour contract over four days thus neatly becomes 7.5 hours per day. Anyone who needs half weekly hours in BambooHR records them in a custom field, which the integration then reads.
  • BambooHR has the status Furloughed next to Full-Time and Part-Time. Anyone on that status does not belong in the schedule. KoppelHet closes the Shiftbase contract on the effective date of that status and opens a new contract when the employee returns.
  • Shiftbase uses the hourly wage in the schedule and reports to estimate wage costs. KoppelHet only takes the rate from BambooHR when payType is hourly; for a monthly salary we leave the hourly wage empty, or convert it if you have a fixed rule for that.
  • Departments in Shiftbase cannot be deleted, only deactivated, and all employees must be moved out first. When a location closes in BambooHR, KoppelHet moves the employees to their new department through new contracts; the planner does the deactivation.

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 time off from BambooHR also reach Shiftbase?

Not in this first step. Time off can be added later as an extension, once we have checked at the start how Shiftbase accepts absence through the API.

Technical details for IT

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

  • BambooHR through the REST API with an API key of a separate user. Event-based webhooks for changed fields and the endpoint for changed table data (job info, compensation, employment status) as a safety net. Fields include preferredName, employeeNumber, workEmail, location, jobTitle, standardHoursPerWeek (integer), payRate, payType, employmentStatus and terminationDate (read-only, through the employmentStatus table).
  • To Shiftbase through the Shiftbase API with an API token from the App center (Settings, App center, Public API). Contracts with department, contract type, function, from and to date, hourly wage and contract hours per day.

Which fields are transferred

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

Field in BambooHRField in ShiftbaseNotes
id (BambooHR)Personeelsnummer of externe referentie in ShiftbaseFixed key, even with a new employeeNumber
preferredName of firstName, lastNameVoornaam en achternaam
workEmailE-mailadres (uitnodiging app)
location (job info)Contractafdeling en teamThrough a table from BambooHR locations to Shiftbase departments
employmentStatusContracttype
jobTitleFunctie
standardHoursPerWeek of eigen veld, gedeeld door werkdagenContracturen per dag
payRate met payType hourlyUurloon
Ingangsdatum van de tabelregelContract vanaf (from)
terminationDateContract tot (up to)

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.