Skip to main content

BambooHR

Synchronize employee master data, time entries, and absences between BambooHR and ZEP.

Written by Christian Schad

With the BambooHR integration, you synchronize employee master data and absences between BambooHR and ZEP. BambooHR is a human resources system for mid-sized and internationally based companies, focused on personnel records, onboarding, and absence management. BambooHR remains the leading system for employee data and absences.

Data direction:
• Employee master data: BambooHR → ZEP
• Absences: BambooHR ↔ ZEP

Product line availability

Note: The BambooHR integration is available in ZEP Compact and ZEP Professional. It is not included in ZEP Clock. The integration can be booked via the Self-Service Tool.

Absence synchronization additionally requires the Absences & Overtime module. Assigning a default price group requires the Revenue & Costs module (in ZEP Compact) or ZEP Professional.

Setup and configuration are reserved for administrators.

Prerequisites

To set up the integration, you need:

  • Access to the Interface Marketplace in ZEP

  • A BambooHR account with active API access

  • Your BambooHR subdomain (for example yourcompany from yourcompany.bamboohr.com)

  • A BambooHR API key from the BambooHR user settings

Setting up the integration

In ZEP, go to Administration > Interfaces > Interface Marketplace. Select BambooHR and click Add. You will be guided through the booking process in the Self-Service Tool.

After booking, configure the following on the integration detail page:

  • Subdomain: Enter the part of your BambooHR URL before .bamboohr.com. This defines which BambooHR instance is addressed.

  • API key: Provide the API key generated in BambooHR. It authenticates ZEP against your BambooHR instance.

  • Username mode: Defines how ZEP generates usernames for newly imported employees. The available options are offered in the configuration dialog of the integration.

  • Default price group: Applied to all employees newly imported from BambooHR into ZEP.

  • Show in cost accounting: Controls whether imported employees are considered in the ZEP cost accounting.

Tip: Generate the API key in BambooHR under Account Menu > API Keys > Add a New Key. The key is shown only once and should be entered in ZEP immediately.

Data transfer

The integration transfers the following data between BambooHR and ZEP:

Employees

Data direction: BambooHR > ZEP. ZEP imports the following employee data from BambooHR:

  • BambooHR employee ID

  • Email address

  • First and last name

  • Mobile number

  • Personnel number (BambooHR employee number)

  • Full address (street, postal code, city, country)

  • Start date and end date, if available

  • Department and position

Start and end dates are stored as employment periods in ZEP. ZEP primarily uses the BambooHR employee ID for matching; the email address serves as a fallback. Existing employees are automatically recognized and updated.

Absences

Data direction: BambooHR <> ZEP. Absence synchronization works in both directions:

  • BambooHR > ZEP: Absences approved in BambooHR are transferred to ZEP and assigned to the respective employee as an absence entry.

  • ZEP > BambooHR: Absences recorded and approved in ZEP are mirrored to BambooHR so the absence calendar there is always up to date.

The following is transferred per absence:

  • Assignment to the employee

  • Absence type or reason

  • Start and end date

  • Indication of whether the absence is full-day, half-day, or hourly

  • Note or comment

Only approved absences are transferred. ZEP covers a three-year period (previous, current, and next year) and automatically recognizes which entries are new, changed, or deleted.

Mapping absence reasons

For the synchronization to translate absences unambiguously between BambooHR and ZEP, the names of absence categories must match in both systems. Only absences whose BambooHR time-off type name exactly matches a ZEP absence reason are synchronized — uppercase, lowercase, and special characters are significant.

Example: The BambooHR time-off type Vacation corresponds in ZEP to the short label Vacation, not vacation or Urlaub. Categories without a match are ignored by the synchronization. Maintain the mapping centrally in BambooHR and in the ZEP absence reasons.

Synchronization and log

The integration synchronizes the data automatically in the background. On the integration detail page in the Interface Marketplace, you can see the current status as well as a detailed log of recent sync runs — including error messages if individual records could not be transferred.

From the integration detail page, the synchronization can also be triggered manually without waiting for the next automatic run.

For employee data and absences, BambooHR remains the leading system. Make changes to master data and approved absences in BambooHR — ZEP picks them up automatically in the next sync.

Newly imported employees are created in ZEP with the configured default values (price group, cost accounting). These settings can be adjusted in ZEP per employee afterwards.

Did this answer your question?