HRMS migration
Field-level mapping, validation, and rollback between Sesame HR and BambooHR. We move data and schema; workflows are rebuilt natively in BambooHR.
Sesame HR
Source
BambooHR
Destination
Compatibility
9 of 11
objects map 1:1 between Sesame HR and BambooHR.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Sesame HR to BambooHR is a record-level migration with a few structural transitions to plan around. Sesame HR stores time-off balances and shift assignments as independent objects with their own API endpoints; BambooHR handles PTO as an accrued balance system and consolidates attendance into a unified time-off workflow. We extract employment history and contract terms as dated records, map Sesame HR leave types to BambooHR leave policy categories, and rebuild the org chart hierarchy by flattening Sesame HR's hierarchical export into a manager-subordinate relationship set and re-anchoring it in BambooHR's structure. The shared Sesame HR API rate limit of 1,000 requests per minute applies to all company tokens concurrently, so we coordinate extraction windows outside of existing integration activity. We do not migrate workflows, automations, or payroll processing as code; Sesame HR's payroll preparation data exports as a structured CSV for downstream ingestion.
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 Sesame HR 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.
Sesame HR
Employee
BambooHR
Employee
1:1Sesame HR Employee records map directly to BambooHR Employee. The primary fields (name, email, hire date, department, job title, manager, employment status) migrate 1:1. We resolve the manager reference to the destination Employee record using a name/email lookup. Any Employee referencing an inactive department is flagged in a pre-import reconciliation report so the customer can map to the correct BambooHR department before insert. Custom properties on Employee (picklist and multi-select types) are read during discovery and mapped using a customer-approved value table before migration.
Sesame HR
Contract
BambooHR
Employee (Employment History)
1:1Sesame HR Contract records (employment type, salary band, start/end dates, contract type) are exported as dated employment history entries and written as custom fields or note attachments on the corresponding BambooHR Employee. BambooHR does not have a standalone Contract object, so we use the Employment Info section and a structured note to preserve contract terms. We handle open-ended, fixed-term, and part-time contract types with separate mapping logic per the customer's approved schema.
Sesame HR
Time Entry
BambooHR
Time Tracking (via custom import)
1:1Sesame HR clock-in/clock-out records, overtime flags, and break deductions are exported in bulk and written to BambooHR via the time tracking import endpoint. We chunk time entry exports by pay period (typically monthly) to stay under the 1,000 req/min shared rate limit and to align with BambooHR's time tracking period structure. Overtime flags migrate as a custom Time Tracking field or as note text attached to the relevant period.
Sesame HR
Absence Record
BambooHR
Time Off
1:1Sesame HR absence requests and balance records map to BambooHR Time Off entries. We build a leave type mapping table during scoping that converts each Sesame HR leave type (sick, vacation, parental, unpaid) to the corresponding BambooHR Time Off policy. Historical approved absences with dates, approvers, and status migrate as completed Time Off records. Pending or rejected requests are migrated as history but with status preserved for the customer's HR team to reconcile in BambooHR.
Sesame HR
Shift
BambooHR
Employee Schedule (via custom fields or notes)
1:1Sesame HR Shifts (start/end time, assigned employee, role, location) have no direct BambooHR equivalent. We export the full shift schedule as a structured dataset and attach it as a time period note on each relevant Employee record, or create a custom Employee field group for shift information depending on the customer's BambooHR plan and configuration. Shift conflict rules from Sesame HR are documented in the migration package as a configuration note for BambooHR admin to implement in the Time Tracking module.
Sesame HR
Candidate / Vacancy
BambooHR
Applicant (ATS)
1:1Sesame HR candidate and vacancy records map to BambooHR Applicant Tracking System records. We map vacancy status, candidate pipeline stage, source, and notes. If Sesame HR is on Starter (capped at 5 open vacancies), we flag any candidates associated with hidden positions and include them in a manual-handling list. Custom candidate fields are mapped using the same value-table approach as Employee custom properties. BambooHR's job board posting data does not migrate as it is destination-side configuration.
Sesame HR
Organizational Chart
BambooHR
Manager relationships on Employee
lossySesame HR exposes the org chart as a hierarchical tree. We extract it as a flat list of manager-subordinate relationships (employee ID, manager ID, effective date). We detect circular references (where Employee A reports to B who reports to A) during extraction and flag them in a pre-import report. The flat list is then written to BambooHR by setting the Manager field on each Employee record. The BambooHR org chart view is derived from these manager assignments and requires no separate object migration.
Sesame HR
PTO Balance
BambooHR
Time Off Balance
1:1Current accrued and available PTO balances per employee are exported from Sesame HR and written to BambooHR as the opening balance for each Time Off policy at migration cutover. We set the effective date to the migration date so that future accruals in BambooHR start from the correct baseline. Balances are validated against Sesame HR's reported totals before insert.
Sesame HR
Tag / Label
BambooHR
Employee Tags
1:1Sesame HR employee tags (custom labels assigned to employees) are exported and mapped to BambooHR Employee Tags. Duplicate tags are merged during transform. Tags used for organizational grouping are evaluated for mapping to BambooHR's department or location fields as a cleaner alternative to tags in the destination.
Sesame HR
Custom Property
BambooHR
Custom Field
lossySesame HR custom fields on any object (Employee, Contract, Candidate) are read during discovery discovery to capture the full custom field schema including picklist and multi-select options. We pre-create matching custom fields in BambooHR using the custom field builder, matching field type (text, number, date, picklist, multi-select) to the closest BambooHR equivalent. Any picklist values in Sesame HR that do not exist in BambooHR are mapped using a customer-approved value table or appended as text in a separate custom field.
Sesame HR
Document
BambooHR
Employee Files
1:1Employee documents (contracts, ID copies, certificates) are exported as binary files from Sesame HR and attached to the corresponding BambooHR Employee record via the BambooHR Files API. We preserve the original filename and document type where possible. Documents exceeding 10 MB are flagged for manual handling due to BambooHR file size limits.
| Sesame HR | BambooHR | Compatibility | |
|---|---|---|---|
| Employee | Employee1:1 | Fully supported | |
| Contract | Employee (Employment History)1:1 | Fully supported | |
| Time Entry | Time Tracking (via custom import)1:1 | Fully supported | |
| Absence Record | Time Off1:1 | Fully supported | |
| Shift | Employee Schedule (via custom fields or notes)1:1 | Fully supported | |
| Candidate / Vacancy | Applicant (ATS)1:1 | Fully supported | |
| Organizational Chart | Manager relationships on Employeelossy | Mapping required | |
| PTO Balance | Time Off Balance1:1 | Fully supported | |
| Tag / Label | Employee Tags1:1 | Fully supported | |
| Custom Property | Custom Fieldlossy | Fully supported | |
| Document | Employee Files1: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.
Sesame HR gotchas
Rate limit shared across all company tokens
Starter tier caps recruitment at 5 positions
Payroll data requires downstream reconciliation
Enterprise tier minimum user count gates key features
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 plan-tier audit
We audit the source Sesame HR account across plan tier, visible API objects, custom field schema, open vacancy count, employee record volume, org chart depth, and existing integration call patterns. We also identify the current rate-limit consumption from active integrations by reviewing API logs or working with the customer's technical team. The discovery output is a written scope document specifying which objects migrate, which are excluded (payroll processing, workflows, automations), and any plan-tier constraints that require a workaround or manual handling. We confirm the destination BambooHR plan tier (Core, Pro, or Elite) against the customer's feature requirements during this phase.
Leave type mapping and value table agreement
We extract the full list of Sesame HR leave types, accrual methods, carryover rules, and any custom leave categories the customer has configured. We compare against BambooHR Time Off policy structure and build a customer-approved leave type mapping table. This table is signed off before any absence or PTO balance records are written. We also agree on the PTO opening balance approach and effective date during this step.
Schema pre-creation in BambooHR
We create all required custom fields in BambooHR before any data import. This includes picklist value sets for all Sesame HR custom picklists, custom text and number fields, and any date fields that map from Sesame HR. We also configure the org chart by setting up departments, locations, and manager relationships as the structure that Employee records will reference. All custom fields are deployed to the destination BambooHR environment for validation before production migration begins.
Rate-limit-safe extraction and org chart loop detection
We extract data from Sesame HR using rate-limited API calls, distributing large datasets (time entries, absence history) across multiple pay-period batches. During extraction we run circular reference detection on the org chart hierarchy and flag any loops in a pre-import report. The customer resolves org chart loops by confirming the correct reporting structure before we begin the BambooHR insert. We extract documents as binary files in parallel, mapping them to the corresponding employee records by employee ID.
Sandbox migration and reconciliation
We run a full migration into the customer's BambooHR sandbox environment using production-like data volume. The customer's HR lead reviews a reconciliation report comparing Sesame HR source record counts (Employees, Absences, Time Entries, Candidates, PTO balances) against BambooHR destination counts. We spot-check 25-50 random employee records for field-level accuracy and confirm the leave type mapping is producing correct Time Off entries. All mapping corrections are applied before production migration begins.
Production migration and cutover
We migrate production data in dependency order: departments and locations first, then Employees with manager references resolved, then PTO balances (with effective date set to cutover), then Absence history, then Time Entries by pay period, then Candidate records, then Employee files and documents. We freeze Sesame HR write access during the final cutover window, extract any delta records modified during migration, and write the final delta to BambooHR. We deliver the migration package including org chart validation report, leave type mapping documentation, payroll preparation CSV, and manual-handling appendix for any records that could not be automated.
Platform deep dives
Sesame HR
Source
Strengths
Weaknesses
BambooHR
Destination
Strengths
Weaknesses
Complexity grading
Standard HRMS migration. All 7 core objects map 1:1 between Sesame HR and BambooHR.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Sesame HR and BambooHR.
Object compatibility
All 7 core objects map 1:1 between Sesame HR and BambooHR.
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
Sesame HR: Not publicly documented as a single numeric ceiling on the official API docs..
Data volume sensitivity
Sesame HR 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 Sesame HR to BambooHR migration scoping. Not seeing yours? Book a call.
Walk through your Sesame HR 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 Sesame HR
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.