Skip to main content

Odoo Connector for BambooHR

Help

BambooHR Connector keeps BambooHR and Odoo in step. BambooHR remains your HR system; Odoo receives the people data it needs for time off, attendances, timesheets, projects, planning, recruitment, payroll inputs and documents, and can send back what is born in Odoo when you allow it.

Requirements

Connect

  1. Go to BambooHR > Configuration > Connect BambooHR.
  2. Type your BambooHR subdomain (the yourcompany in yourcompany.bamboohr.com) and continue.
  3. Tick I have informed the employees of this data processing. BambooHR's terms require that employees know their data is shared with Odoo.
  4. Click Go to BambooHR. A pairing code stays on the Odoo screen and BambooHR opens in a new tab; type the code there and let a BambooHR administrator approve the app.
  5. Back in Odoo, Continue setup on the connection: choose the data blocks, the direction of each flow and which employees come over, then Start.
  6. In Initial load, click Preview to see what would be linked, created or skipped, then Import.

The connection uses OAuth through Flexigotech's authorization service at bamboohr.connect.flexigotech.com. No API key is entered anywhere. Tokens can only be read by Odoo administrators.

What to sync

Employee filter

Data blocks

Off unless stated. Turning a block on later re-reads that data for the linked employees.

BlockWhat it brings
Employee # (on)the BambooHR employee number
Personal contacthome email and phone
Demographicsgender, marital status, nationality, place of birth
Private addresshome address
Birth date and national IDdate of birth, national ID, SSN/SIN/NIN
Passportpassport data
Visa and work permitvisa type and expiry
Primary emergency contactthe first emergency contact
Number of childrenthe count only
Spousespouse's name and date of birth
Custom fieldsyour BambooHR custom fields
Custom tablesyour BambooHR custom tables
Mirror employee filescopies the file categories you allow (off: files are listed and downloaded on demand)

Ethnicity, EEO data, veteran status and credit cards are never read. The full field list, with BambooHR and Odoo names, is on the synced fields page.

Flows and directions

Each flow is Off, BambooHR to Odoo, Odoo to BambooHR or Both ways, limited to the directions that make sense for it.

FlowDefaultOptionsNeeds
Employees, Termination, Departments, Job titles, Locations, Manager, Effective-dated history, Personal blocks, Custom field valuesBambooHR to OdooBambooHR to Odoo, Both ways—
TeamsOffBambooHR to Odoo—
PhotoOffBambooHR to Odoo, Both ways—
CompensationOffBambooHR to Odoo, Both waysHR manager rights
Company holidaysBambooHR to OdooOff, BambooHR to Odoo, Odoo to BambooHR—
Time off requestsBambooHR to OdooOff, BambooHR to Odoo, Both waysTime Off
Time off commentsOffBambooHR to Odoo, Both waysTime Off
Clock entriesOffall fourAttendances
Hour entriesOffall fourTask Logs
Hours APIOffOdoo to BambooHRTask Logs
Hourly costOffBambooHR to OdooTask Logs, HR manager rights
ShiftsOffBambooHR to Odoo, Odoo to BambooHRPlanning
Job openingsBambooHR to OdooOff, BambooHR to OdooRecruitment
ApplicantsOffall fourRecruitment
TrainingOffBambooHR to OdooSkills Management
eLearning coursesOffOdoo to BambooHReLearning
Education and certificationsOffBambooHR to Odoo, Both waysSkills Management
AssetsOffall fourMaintenance
GoalsOffBambooHR to Odoo, Both waysAppraisals
Bonus and commissions, Benefit deductionsOffBambooHR to OdooPayroll

Hour entries sent to BambooHR and the Hours API cannot be on together: BambooHR would count the hours twice.

Other options on the connection

Mapping screens

Under BambooHR > Configuration:

Day to day

Changes arrive through signed BambooHR webhooks as they happen, and every 15 minutes the connector checks again in case a webhook was missed. A nightly pass reconciles everything; a weekly one re-reads all employees.

On the employee

Linked employees show an Origin: BambooHR badge and a BambooHR tab (HR officers) with history, balances, custom values and tables, time tracking settings and the new hire packet. Buttons:

A linked employee cannot be deleted in Odoo: archive it, or use Unlink or Forget.

Time off

Requests from BambooHR appear in Time Off with a Managed in BambooHR badge; approving or refusing them in Odoo is blocked unless you chose to approve in Odoo. Approved time off is locked on both sides. Refresh balances and Adjust in BambooHR are on the balances screen; policies and their assignments are read-only.

Timesheets and attendances

A period approved in BambooHR (or validated in Odoo Timesheets) locks its lines. Odoo sends hour entries summed per day, project and task. Approve in BambooHR on a BambooHR timesheet approves it only when everything in the period was sent. Time Tracking > Breaks and shift compliance runs a report on demand (Consult).

Test mode

Turn Test mode on before connecting to try the connector in your live Odoo: it never links to records that already exist, creates its own copies marked as test data, and only sends employees tagged as test to BambooHR. Purge test data removes them afterwards (anything still used by a real record is archived and reported).

Disconnect

Disconnect asks what happens to the records the connector created: keep them unlinked, anonymise the personal fields that came from BambooHR, or delete everything the connector created. You must choose; there is no default. Tokens, webhooks and every BambooHR copy are deleted at once. If the connection ends without this step (the app is uninstalled in BambooHR, the account is closed or access is revoked), administrators get reminders and the copies are purged automatically 25 days later. Reconnecting before then cancels the purge.

Common issues

IssueWhat to do
Value not mappedMap the value in Value maps, then Retry.
ConflictThe same field changed in both systems; the issue shows both values. Fix the right one and resolve.
Not visibleBambooHR stopped showing this employee (often permissions). Nothing is archived until BambooHR confirms.
Missing scopeThe flow needs a permission the app was not granted: reconnect and approve it.
LockedThe record is in an approved or validated period; change it where it was approved.
Circuit breakerA run would have terminated or archived too many employees. Check the list and click Confirm and apply, or fix BambooHR.
Domain changedBambooHR now answers on another subdomain: Update domain checks it is the same company.

What is not included

BambooHR Payroll pay runs, performance reviews and feedback, offer letters and talent pools, and onboarding tasks: BambooHR's API does not offer them. Accrual policies are not rewritten in either system; requests and balances are copied.

Privacy and support

Employee data travels straight between BambooHR and your Odoo, never through Flexigotech. The privacy notice is at flexigotech.com/privacy/bamboohr. Support: comercial@flexigobe.com. Flexigotech only enters your Odoo when you ask, for that case, and never puts your data into AI tools.

Last updated: 7 October 2026.