HRMS migration
Field-level mapping, validation, and rollback between Omni HR and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.
Omni HR
Source
Bullhorn ATS & CRM
Destination
Compatibility
11 of 12
objects map 1:1 between Omni HR and Bullhorn ATS & CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Omni HR and Bullhorn are different platform categories. Omni HR is an all-in-one HRIS covering the full employee lifecycle from recruitment offer through payroll and performance. Bullhorn is a recruitment ATS and CRM built for staffing agencies, with data structures organized around Candidates, Clients, Jobs, Placements, and Leads. There is no native 1:1 object mapping between these two schemas. We export Omni HR employee records, candidate recruitment data, and company profiles, then transform and load them into Bullhorn's Candidate and ClientCorporation objects. Bullhorn's custom object system requires Bullhorn Support to provision custom fields before migration; we coordinate that provisioning during the configuration phase. Omni HR payroll history, time-off accruals, performance reviews, and expense records do not have Bullhorn equivalents and are flagged as manual-rebuild items. Bullhorn's API has no documented public rate limit for inbound migration, but we implement throttling to 60 requests per minute on the Omni HR side to protect source stability during export.
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 Omni HR object lands in Bullhorn ATS & CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Omni HR
Employees
Bullhorn ATS & CRM
Candidate
1:1Omni HR Employee records map to Bullhorn Candidate. Profile fields (name, email, phone, address, employment status, department, job title, start date, manager) migrate 1:1 into Bullhorn Candidate standard fields. Omni HR custom properties on employees map to Bullhorn custom fields on the Candidate entity. Bullhorn Support must provision customObject1 through customObject10 on Candidate before migration if any Omni HR custom fields exist. We coordinate this provisioning during the configuration phase. Historical employment data (prior companies, previous titles) migrates into Candidate work history custom fields or as separate CandidateWorkHistory records if the destination Bullhorn instance has that entity enabled.
Omni HR
Candidates (Recruitment module)
Bullhorn ATS & CRM
Candidate
1:1Omni HR recruitment candidate records map directly to Bullhorn Candidate. Application stage names from Omni HR (Applied, Screening, Interview, Offer, Hired) map to Bullhorn Candidate status or a custom status field we configure during migration. Resume content migrates into the Candidate's attached resume or the resume field. Source attribution (where the candidate came from) migrates to the Candidate source field.
Omni HR
Companies
Bullhorn ATS & CRM
ClientCorporation
1:1Omni HR Company records (if present as part of the Omni HR recruitment module) map to Bullhorn ClientCorporation. Company name, industry, website, address, and primary contact details migrate into Bullhorn ClientCorporation standard fields. The ClientCorporation record is created first so that subsequent Contact and Candidate-to-Client associations resolve correctly at import time.
Omni HR
Onboarding records
Bullhorn ATS & CRM
Task (manual rebuild)
1:1Omni HR Onboarding records (task checklists, document collection status, e-signature completions) have no Bullhorn equivalent. Bullhorn does not store internal employee onboarding state as a native object. We export the Omni HR onboarding task list and completion status as a written checklist document that the customer's Bullhorn admin uses to manually configure Tasks or a custom onboarding tracking object post-migration. E-signature metadata does not transfer and requires re-execution in Bullhorn's document tools.
Omni HR
Time Off
Bullhorn ATS & CRM
Custom Object or Note (flag for rebuild)
1:1Omni HR leave requests and accrued balances have no Bullhorn equivalent. Bullhorn is a recruitment ATS, not an HRIS, and does not natively track employee time-off balances or approval workflows. We export leave history (request dates, leave type, approval status, accrual balances) as a CSV inventory for the customer's admin to re-enter in their separate HRIS or in Bullhorn custom fields if they configure a leave tracking object. Pending leave requests are flagged as open items requiring manual resolution before migration cutover.
Omni HR
Performance Reviews
Bullhorn ATS & CRM
Custom Object or Note (flag for rebuild)
1:1Omni HR performance review cycles, ratings, and feedback text have no Bullhorn equivalent. Bullhorn does not store internal employee performance data as a standard object. We export performance records as a structured CSV inventory including reviewer assignments, rating values, review cycle dates, and feedback content. The customer's admin rebuilds these in a separate performance management tool or in Bullhorn custom fields if they provision a Performance custom object.
Omni HR
Documents
Bullhorn ATS & CRM
ContentDocument (partial)
1:1Employee documents (contracts, IDs, offer letters) stored in Omni HR migrate as Bullhorn ContentDocument records attached to the corresponding Candidate or ClientCorporation via ContentDocumentLink. We export document content, filenames, and MIME types. Document-to-employee associations migrate as ContentDocumentLink records. Bullhorn's document viewer and e-signature capabilities replace Omni HR's document handling post-migration.
Omni HR
Expenses
Bullhorn ATS & CRM
Custom Object or Note (flag for rebuild)
1:1Omni HR expense submissions and reimbursement records have no Bullhorn equivalent. Bullhorn is a recruitment ATS and does not handle employee expense management. We export expense records (submission dates, amounts, cost centers, approval status) as a CSV for the customer's admin to re-enter in their separate expense management tool. Approved and pending expense statuses are flagged during scoping.
Omni HR
Payroll Runs
Bullhorn ATS & CRM
Custom Object or Note (flag for rebuild)
1:1Omni HR payroll history (pay periods, gross/net amounts, statutory deductions including CPF, MPF, EPF contributions) has no Bullhorn equivalent. Bullhorn does not process payroll. We export payroll year-to-date accumulations, deduction amounts, and bank account details as a structured CSV for the customer's admin to import into their separate payroll system. Country-specific statutory fields are preserved with their original values and field names for compliance reference.
Omni HR
Org Chart
Bullhorn ATS & CRM
Candidate reporting relationships
1:1Omni HR organizational hierarchy derived from manager assignments on employee profiles migrates into Bullhorn as Candidate reporting structure if the Bullhorn instance has a custom field or custom object for internal hierarchy. Bullhorn's primary use case is external recruitment rather than internal org structure, so the hierarchy is preserved as a reference mapping rather than a native Bullhorn object. We deliver the org chart as a written document and CSV for manual configuration.
Omni HR
Custom Fields
Bullhorn ATS & CRM
CustomObject1-10 (per entity)
lossyOmni HR workbook-scoped custom fields require a two-step export: first the field definition metadata (field name, data type, allowed values) from Omni HR's workbook schema, then the stored values from the employee or candidate records. Bullhorn custom fields on Candidate, ClientCorporation, JobOrder, Placement, Opportunity, and Lead must be provisioned by Bullhorn Support before migration. We coordinate the provisioning ticket, define the target customObject schema during scoping, and map Omni HR's custom field values into Bullhorn custom fields during import. If Omni HR has more than 10 custom fields on any entity, we prioritize the most business-critical fields and flag the remainder for post-migration manual entry.
Omni HR
Workflows
Bullhorn ATS & CRM
None
1:1Omni HR approval routing rules, leave approval chains, onboarding automation triggers, and notification workflows are stored in Omni HR's workflow engine and are not accessible via the public API. We do not export or import workflow configurations. During scoping, we document the active workflow rules (approval chains, escalation paths, automation triggers) as a written inventory so the customer's Bullhorn admin can re-implement them in Bullhorn Automation (formerly Herefish) or configure them manually post-migration.
| Omni HR | Bullhorn ATS & CRM | Compatibility | |
|---|---|---|---|
| Employees | Candidate1:1 | Fully supported | |
| Candidates (Recruitment module) | Candidate1:1 | Fully supported | |
| Companies | ClientCorporation1:1 | Fully supported | |
| Onboarding records | Task (manual rebuild)1:1 | Fully supported | |
| Time Off | Custom Object or Note (flag for rebuild)1:1 | Fully supported | |
| Performance Reviews | Custom Object or Note (flag for rebuild)1:1 | Mapping required | |
| Documents | ContentDocument (partial)1:1 | Mapping required | |
| Expenses | Custom Object or Note (flag for rebuild)1:1 | Mapping required | |
| Payroll Runs | Custom Object or Note (flag for rebuild)1:1 | Mapping required | |
| Org Chart | Candidate reporting relationships1:1 | Mapping required | |
| Custom Fields | CustomObject1-10 (per entity)lossy | Mapping required | |
| Workflows | None1:1 | Not 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.
Omni HR gotchas
API rate limit of 60 req/min constrains bulk migration speed
No bulk export API — all records require individual paginated requests
Payroll data requires country-aware field mapping
Custom field definitions are workbook-scoped and not fully documented in the public API reference
Workflow configurations are not exportable via API
Bullhorn ATS & CRM gotchas
ATS Growth edition has no API access
Attachments excluded from CSV bulk exports
Custom Object limits vary sharply by edition
Opportunity pipeline stages are recruitment-specific
Resume parse quality varies by document format
Pair-specific challenges
Migration approach
Discovery and migration scope definition
We audit the Omni HR portal to identify which modules are in active use: employee profiles, recruitment candidates, onboarding records, time-off requests, performance reviews, documents, expenses, and payroll history. We separate recruitment-relevant data (candidate profiles, skills, employment history) from internal HR data (payroll, time-off, performance) and document which records will migrate to Bullhorn versus which will be flagged as manual-rebuild items. We also catalog any Omni HR custom fields and submit the Bullhorn Support ticket for customObject provisioning during this phase.
Schema design and Bullhorn custom field coordination
We design the Bullhorn destination schema: standard fields on Candidate and ClientCorporation, custom field assignments on customObject1-10 per entity, Candidate status values mapped from Omni HR recruitment stages, and any required custom picklist values. We coordinate with Bullhorn Support to confirm customObject provisioning and validate the schema in a Bullhorn sandbox environment before production migration begins.
Omni HR data export with API throttling
We export Omni HR data in dependency order: employee profiles first (for dedupe key resolution), then recruitment candidates, document metadata, org chart hierarchy, and any onboarding task lists. Each export run is throttled to 60 requests per minute. We export workbook schema metadata for any custom fields alongside the record values to capture both field definitions and stored data. Document file downloads run in parallel within the throttle limit and are staged in a secure cloud storage environment.
Data transformation and reconciliation
We transform Omni HR records into Bullhorn-format payloads: Omni HR Employees to Bullhorn Candidate records, Omni HR Companies to Bullhorn ClientCorporation records, recruitment stages to Bullhorn Candidate status values, and custom field values to Bullhorn customObject fields. We run a reconciliation pass comparing Omni HR record counts to generated Bullhorn payload counts, flag any records with missing required fields, and resolve Owner-to-User mappings by email match. Document files are validated for MIME type and size before Bullhorn upload.
Sandbox migration and sign-off
We run a full migration into a Bullhorn sandbox to validate the schema, field mappings, and document attachments before production. The customer's Bullhorn admin reviews 25-50 randomly selected Candidate records, verifies document associations, and confirms that the custom field values have landed correctly. We correct any mapping errors identified during sandbox review and receive written sign-off before production migration begins.
Production migration and cutover
We run production migration in dependency order: ClientCorporations first, then Candidates with resolved document attachments, then custom objects with customObject fields. Each phase emits a reconciliation report (records in, records out, errors). We freeze Omni HR writes during cutover, run a final delta migration of any records modified during the migration window, then enable Bullhorn as the system of record for recruitment operations. We deliver the manual-rebuild inventory (time-off, performance, payroll, onboarding tasks, workflows) as a written document for the customer's admin team.
Post-migration support and rebuild handoff
We support a one-week hypercare window after cutover to resolve any data quality issues discovered in Bullhorn. We do not rebuild Omni HR workflows, onboarding automation, or approval chains in Bullhorn; those are delivered as a written inventory with Bullhorn Automation (Herefish) configuration notes for the customer's admin team. Bullhorn onboarding, payroll, time-off, and performance management remain the customer's separate HRIS responsibility post-migration.
Platform deep dives
Omni HR
Source
Strengths
Weaknesses
Bullhorn ATS & CRM
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 Omni HR and Bullhorn ATS & CRM.
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
Omni HR: 60 requests per minute per API key.
Data volume sensitivity
Omni 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 Omni HR to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.
Walk through your Omni HR to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Omni HR
Other ways to arrive at Bullhorn ATS & CRM
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.