HRMS migration
Field-level mapping, validation, and rollback between eBoss and BambooHR. We move data and schema; workflows are rebuilt natively in BambooHR.
eBoss
Source
BambooHR
Destination
Compatibility
6 of 10
objects map 1:1 between eBoss and BambooHR.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from eBoss to BambooHR is a consolidation and modernization step for small-to-mid-sized HR teams. eBoss organizes around an employee-centric model with embedded recruitment workflows; BambooHR separates core HR records (Employee, Job Info, Time Off) from the optional BambooHR Hiring add-on ($99-$199/month) and uses a distinct field-naming convention (camelCase in the API) that requires careful property-to-field mapping. We extract every employee record with its employment status, hire date, compensation effective-dated rows, and hierarchical supervisor relationship from eBoss, then load them into BambooHR through the API with parent-record lookups resolved before insert. Documents migrate as BambooHR file attachments; custom fields from eBoss become custom fields in BambooHR. Workflows, approval rules, and recruitment pipeline configurations do not migrate; we deliver a written inventory of every active automation and pipeline stage for the customer's HR admin to rebuild inside BambooHR.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a eBoss object lands in BambooHR, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
eBoss
Employee
BambooHR
Employee
1:1eBoss employee records map to BambooHR Employee objects via the BambooHR API. Standard fields (firstName, lastName, dateOfBirth, employmentStatus, employeeNumber, workEmail, workPhone, homeAddress fields) transfer directly. The eBoss employee status property maps to BambooHR employmentStatus (values: Contractor, Full-Time, Part-Time, Terminated, Furloughed, or custom). Employee number maps to employeeNumber in BambooHR. Any eBoss custom fields on the employee record become custom fields in BambooHR, stored as name-value pairs using BambooHR's custom field API format. The email address is used as the primary dedupe key.
eBoss
Employment History / Job Info
BambooHR
Job Information table
1:manyeBoss stores employment history and job changes (title, department, division, location, supervisor) with effective dates. BambooHR Job Information stores these as dated rows (date, employmentStatus, payRate, payType, payPeriod, jobTitle, department, division, location, supervisorId). We extract each eBoss job change as a separate Job Info row in BambooHR ordered by effective date. The most recent row drives the current state shown on the Employee summary view.
eBoss
Supervisor / Manager Relationship
BambooHR
supervisorId on Employee
1:1eBoss hierarchical reporting relationships map to BambooHR's supervisorId field on Employee. We resolve each supervisor reference at migration time by matching the supervisor's employee ID or email against the destination Employee table. Circular references are flagged in the discovery phase and escalated before import. The supervisor field drives the BambooHR org chart.
eBoss
Compensation Rows
BambooHR
Compensation table in Job Info
1:1eBoss effective-dated compensation rows (base salary, bonus, commission, equity grant) map to the BambooHR Compensation table linked to the Job Information row. We preserve the compensation effective date (start and end), payRate, payType (salary, hourly, contractor), payPeriod (weekly, bi-weekly, semi-monthly, monthly), and any bonus or commission amounts as separate Compensation rows in BambooHR. Currency fields migrate as-is; any eBoss custom compensation fields become custom fields on the Job Info row.
eBoss
PTO / Time Off Balances
BambooHR
Time Off
lossyeBoss PTO balances and accrual policies map to BambooHR Time Off balances. We extract each employee's current balance per policy (vacation, sick, personal) and create corresponding Time Off entries in BambooHR. Accrual methods are not importable as code; BambooHR calculates future accruals based on its configured policies. We flag any historical time-off requests and approvals as notes on the Employee record for the HR admin to re-enter or manually reconcile.
eBoss
Documents / Files
BambooHR
Employee Files
1:1eBoss employee documents (offer letters, contracts, certifications, government IDs) migrate as BambooHR Employee Files. We export each file with its metadata (document type, upload date, category), then upload to BambooHR via the Files API and associate with the corresponding Employee record. Folder structure maps to BambooHR file categories (e.g., Personal, Offer Letters, Tax Documents, Certifications). Binary file integrity is verified by checksum before upload.
eBoss
Custom Employee Properties
BambooHR
Custom Fields on Employee
lossyeBoss custom fields stored as name-value pairs on employee records become custom fields in BambooHR. We determine the appropriate BambooHR field type (text, number, date, dropdown, checkbox, or multiple-select) based on the source value format during discovery. Custom fields are created in BambooHR before any employee data loads, and the mapping is locked before the import phase begins to avoid schema drift mid-migration.
eBoss
Applicant / Job Application
BambooHR
BambooHR Hiring (optional add-on)
1:1eBoss applicant and job posting records do not migrate into BambooHR Core or Pro because BambooHR Hiring is a separate add-on ($99-$199/month) with its own data model. If the customer has BambooHR Hiring enabled, we map applicants to Candidates and job postings to Jobs within the Hiring module. If BambooHR Hiring is not in the destination scope, we export the applicant data as a structured CSV and deliver it alongside the migration package for manual re-entry or a separate ATS migration. This is explicitly called out in discovery and confirmed before the migration plan is signed.
eBoss
Benefits Enrollment
BambooHR
Benefits (BambooHR Benefits Administration)
lossyeBoss benefit plan enrollments and employee benefit elections map to BambooHR Benefits Administration (included on Pro and Elite plans). We extract enrollment records per employee per benefit type (health, dental, vision, 401k, HSA, FSA) and load them as Benefit Enrollment records in BambooHR. Plan configuration (carrier, plan type, employee cost, employer contribution) does not transfer; the customer's HR admin configures the benefit plan options in BambooHR before the enrollment records are associated.
eBoss
Org Chart / Department Hierarchy
BambooHR
Department and Division tables
1:1eBoss department hierarchy and division structure map to BambooHR's Department and Division lists. Each eBoss department becomes a BambooHR Department entry with its supervisor. Division assignments migrate as a separate field on the Employee record. We verify that department codes or names are unique before import to avoid duplicate Department entries in BambooHR.
| eBoss | BambooHR | Compatibility | |
|---|---|---|---|
| Employee | Employee1:1 | Fully supported | |
| Employment History / Job Info | Job Information table1:many | Fully supported | |
| Supervisor / Manager Relationship | supervisorId on Employee1:1 | Fully supported | |
| Compensation Rows | Compensation table in Job Info1:1 | Fully supported | |
| PTO / Time Off Balances | Time Offlossy | Fully supported | |
| Documents / Files | Employee Files1:1 | Fully supported | |
| Custom Employee Properties | Custom Fields on Employeelossy | Fully supported | |
| Applicant / Job Application | BambooHR Hiring (optional add-on)1:1 | Fully supported | |
| Benefits Enrollment | Benefits (BambooHR Benefits Administration)lossy | Fully supported | |
| Org Chart / Department Hierarchy | Department and Division tables1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
eBoss gotchas
No public API blocks programmatic extraction
GDPR consent records must be preserved with original timestamps
Reply-chain continuity for VOIP and SMS may not survive
BambooHR gotchas
Undocumented API rate limits can trigger 503 errors
Per-employee pricing model requires active record count verification
API credentials must be sent on every request to avoid extra round trips
Custom field schema varies per account and requires manual inventory
Document and attachment exports are not covered by standard report exports
Pair-specific challenges
Migration approach
Discovery and scope freeze
We audit the eBoss tenant for employee record count, employment history row volume, custom field inventory (name, type, coverage), PTO policy structure and balance data, document attachment count and file sizes, compensation rows per employee, department hierarchy, and any active benefit enrollment records. We confirm whether BambooHR Hiring is in scope. The discovery output is a written scope document listing every object to migrate, the field mapping table, and the exception list (documents over size limit, custom fields needing type decisions, and any circular supervisor references). Both customer sign-off and a named BambooHR admin contact are required before work begins.
BambooHR schema setup
We create custom fields in BambooHR matching every eBoss custom property. We configure Department and Division lists using the eBoss org structure. We set up Time Off policies in BambooHR matching the customer's accrual method types (the HR admin configures accrual rules; we document the current balances as the starting point). If BambooHR Hiring is in scope, we configure job posting structure and candidate fields. Schema is built in the customer's production BambooHR environment or a dedicated Sandbox if the customer requests a validation pass before production.
Sandbox validation migration
We run a full migration into a BambooHR sandbox environment using a representative data sample (at minimum 10% of employee records, including employees with compensation history, custom fields, and document attachments). The customer's HR lead spot-checks 25-50 records against the source eBoss data, verifies the supervisor hierarchy renders correctly in the BambooHR org chart, confirms time-off balances match, and reviews document accessibility. We correct any field mapping or type coercion errors identified during validation before the production migration begins.
Owner reconciliation and supervisor resolution
We extract every distinct supervisor reference from eBoss employment history and resolve against the BambooHR Employee table by employee ID or work email. Any supervisor not yet in the destination system goes to a reconciliation queue for the customer's HR admin to provision. This step gates all downstream imports because BambooHR's supervisorId field requires a valid Employee record as the target.
Production migration in dependency order
We migrate in dependency order: Department and Division lists first, then Employee records with all standard and custom fields, then Job Information rows in chronological order, then Compensation rows, then Time Off balances, then Employee Files (documents via API upload with checksum verification), then Benefit Enrollment records. Each phase produces a reconciliation report (record count in, record count out, error count, error log). The customer receives the reconciliation report for each phase before the next phase begins.
Cutover, validation, and automation inventory handoff
We freeze writes to eBoss during the final delta migration window. Any records modified between the last bulk export and cutover are delta-loaded into BambooHR. The HR admin confirms BambooHR is the system of record. We deliver a written inventory of every eBoss Workflow, approval rule, and automation with its trigger conditions and actions documented for rebuild in BambooHR. We deliver the applicant data as a structured CSV if BambooHR Hiring was not in scope. We provide a one-week post-cutover support window for reconciliation questions.
Platform deep dives
eBoss
Source
Strengths
Weaknesses
BambooHR
Destination
Strengths
Weaknesses
Complexity grading
Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across eBoss and BambooHR.
Object compatibility
1 of 7 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
eBoss: Not applicable.
Data volume sensitivity
eBoss doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during eBoss to BambooHR migration scoping. Not seeing yours? Book a call.
Walk through your eBoss to BambooHR migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave eBoss
Other ways to arrive at BambooHR
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.