BambooHR is an HR platform that helps you manage your employee directory in one place. The BambooHR integration with Perk imports your employee directory into Perk and keeps user accounts in sync.
The BambooHR integration
The BambooHR integration makes it easy for you to import your whole employee directory into the Perk platform and manage user accounts, including:
- Provision users: onboard new joiners and offboard leavers automatically from your BambooHR directory.
- Auto-fill employee profile information on Perk.
- Trigger manual syncs to add new employees and archive those who've left.
- Run a fully automated daily sync between BambooHR and Perk.
- Set up accounts automatically, including cost objects, companies, and approval routes.
- Sync out-of-office periods from BambooHR (BETA).
Important information
- If you have single sign-on (SSO) turned on for Perk, it’s recommended you turn off Allowing user creation and Allowing user updates in your SSO settings, as these can conflict with the integration. For more information, see Customize SSO settings.
- If the person who turned on the integration leaves your company or their account permissions change, the sync will fail. The new person managing the integration needs to reconnect it.
- To turn off the BambooHR integration, follow the instructions on Manage integrations.
- If you have any questions or need assistance setting up the integration, contact your account manager.
1. Enable the BambooHR integration
To integrate BambooHR with Perk, you must have an account with the right level of access to the fields you want to use. For more information, see Prepare BambooHR for the Perk integration.
You must be an account admin on Perk and BambooHR to enable the integration.
- Go to Settings > Integrations.
- Find the BambooHR integration and click Start setup.
- Click Enable.
- Enter your BambooHR company subdomain and click Authenticate.
- If asked, enter the one-time passcode (OTP) sent to you.
- Sign in to your BambooHR admin account on the BambooHR consent screen.
- Once you've signed in, you'll land on the Almost there! screen. Click through to the main configuration page to set up sync options, or skip to use the default settings.
Note: The integration uses OAuth to connect to BambooHR. You sign in with your BambooHR admin account through BambooHR's consent screen, there's no separate token to copy or paste.
2. Configure the BambooHR integration
After you connect the integration, you will be taken to the configuration page for the BambooHR integration on Perk. This page includes nine settings that control which employees sync to Perk, what data is imported, and how BambooHR fields map to Perk entities such as cost objects, companies, and travel policies.
You can update these settings at any time under Settings > Integrations > BambooHR.
1. Sync specific locations and departments
- Locations: Select one or more locations or choose to sync all. Perk only pulls employees from your chosen locations.
- Departments: Narrow your list by selecting specific departments. Choose sync all to also automatically include new departments as your company grows.
2. Select employee information to sync
Perk always syncs email, first name, and last name. You can turn on or off these optional fields:
- Middle name
- Gender
- Phone number (must include an international prefix)
- Date of birth
- Line manager (required for Line manager approvals and it only appears if you have the Line manager approver group turned on. For more information, see Set up line manager approvals)
By default, all optional fields are off.
Note: If you turn on the phone number field, employees without an international prefix won't have a phone number imported.
3. Map cost objects
Choose a BambooHR field to link to Perk cost objects. Perk automatically creates new cost objects if they do not exist. Employees are assigned based on their BambooHR field values.
Choose Do not sync if you want to skip this mapping.
Tip: If a BambooHR field doesn’t appear in the dropdown, it’s usually because the field is a list field without predefined values, a TableField, or a list field associated with a TableField. It may also be because your BambooHR admin account doesn’t have access that field.
4. Map payment profiles
Choose the BambooHR field that holds payment profile values. This assigns profiles to individual users. Payment profiles that aren't assigned to a specific user are shared at account level.
Choose Do not sync if you wish to skip this mapping.
5. Map companies
Select the BambooHR field that contains company names. Ensure company names in BambooHR match Perk exactly. For company mapping to work, the Perk company must already exist with the exact entity name used in BambooHR — Perk won't create companies automatically. If a user can't be matched to a company, they're assigned to the default company on your account.
Choose Do not sync if you wish to skip this mapping.
6. Set travel policies
Select a travel policy for all synced employees. Alternatively, you can leave this unassigned.
If you need different policies for different groups, you must change them manually in Perk after the sync.
7. Map a unique ID for ERP systems
Link a BambooHR unique-identifier field to Perk. The ERP code maps external identifiers from your ERP system to each user, so downstream integrations can match employees across systems. Choose Do not sync if you want to skip this mapping.
8. Sync out-of-office dates
Turn on sync out-of-office periods to bring BambooHR time-off dates into Perk. Make sure your BambooHR admin credentials include time-off access. Without time-off access, the sync can't read employees' time-off periods and the data won't appear in Perk.
Looking for how to route approvals when someone is out? For more information, see Turn on out-of-office approvals and Automate out-of-office approvals.
9. Run the first sync, then turn on auto-sync
Once you're happy with your configuration, click Save and sync to run the first sync. The first sync runs automatically and you'll see the results on the main BambooHR integration page.
- Click Save and sync on the configuration page.
- Wait for the first sync to finish. The main page shows the current sync status.
- Review the results. Synced employees show a sync icon ( on the People page.
- If any rows failed, download the error log as an XLS file from the main page. For more information, see Understanding the integration sync log.
- Once you're happy with the results, turn on Auto Sync. With Auto Sync on, Perk runs a sync once a day automatically.
- To run a sync at any time outside the daily schedule, click Sync now on the main page.
Tip: You can change any of the configuration options at any time. Click Reconfigure on the main page, update your settings, and run a manual sync to apply the changes.
Reconnect your BambooHR API key
If the person who linked Perk to your BambooHR directory leaves your company or their account permission changes, the API key needs to be regenerated.
- Go to Settings > Integrations.
- Find the BambooHR integration and click Manage.
- At the top right of the page, click Reconnect to Regenerate key.
- Enter your BambooHR company subdomain.
- Sign in to your BambooHR admin account on the consent screen.
- Once you're signed in, the sync starts again on its normal schedule. To run a sync straight away, click Sync now on the main page.
- Sign in to your BambooHR account.
Note: Reconnecting uses the same OAuth flow as the initial setup.