BambooHR export
A custom-report or table export from the BambooHR HRIS, wrongly treated as a canonical, payroll-grade employee roster.
The shape, how the file is really laid out
The export has no fixed schema, the column set is whatever fields the user
picked in the report builder, so two "BambooHR exports" from the same tenant
can share no columns. Rows carry current stored values, not history, unless
a history table (compensation, job info) was the source, in which case one
employee spans many rows. A Status/Employment Status column mixes Active,
Inactive, and Terminated records, and separately an employment-type field
holds Full-Time / Part-Time / Contractor / Intern. Pay Rate is stored
alongside a pay-basis field ("per hour", "per year", "per pay period"), and
dates follow the tenant's locale. SSNs may be masked; custom fields and
self-referential manager fields appear as chosen.
The traps
A pay-rate column blends hourly and annual figures, summing or averaging across it adds $28.00/hr to $92,000/yr unless the pay-basis column is read first.
- Every trap in this export, worked through
- The reconciliation anchor, the total the file asserts about itself
- The refusal cases, when to stop and ask instead of guess
Reference: BambooHR support documentation on custom reports and data exports · BambooHR employee fields reference