HRMS migration
Field-level mapping, validation, and rollback between EPAY HCM and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.
EPAY HCM
Source
Bullhorn ATS & CRM
Destination
Compatibility
9 of 12
objects map 1:1 between EPAY HCM and Bullhorn ATS & CRM.
Complexity
BStandard
Timeline
6-10 weeks
Overview
Migrating from EPAY HCM to Bullhorn is an HCM-to-ATS translation, not a like-for-like replacement, because the two platforms serve fundamentally different functions. EPAY HCM bundles recruiting, onboarding, HR, benefits, time tracking, payroll processing, and tax filing under one roof. Bullhorn is an applicant tracking and recruiting CRM built for staffing agencies and internal talent acquisition teams. We map EPAY employee records and their associated compensation, benefits, and time-and-attendance data to Bullhorn Candidate and Contact profiles, and we flag explicitly that payroll processing history, tax filing records, and garnishment orders do not have native homes in Bullhorn and require either manual re-entry or parallel access to EPAY for lookback purposes. The absence of a public API on EPAY HCM means all source exports require vendor coordination, which we initiate early in the scoping phase. Bullhorn's Custom Objects are available on the Front Office Growth and Enterprise tiers only, so customers on the ATS tier with fewer than two custom objects available may need to upgrade or map their EPAY job-costing and labor-allocation data to standard Bullhorn fields. We do not migrate EPAY workflows, onboarding sequences, or benefits carrier integrations as these are either system-specific or require direct carrier re-enrollment. We deliver a written inventory of any EPAY configurations requiring manual rebuild in Bullhorn or a third-party HRIS integration.
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 EPAY HCM 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.
EPAY HCM
Employee
Bullhorn ATS & CRM
Candidate and Contact
1:1EPAY Employee records map to Bullhorn Candidate profiles (for recruiting and placement records) and optionally to Bullhorn Contact profiles (for HR and employee-relations records) depending on whether the migration scope includes staffing operations, internal HR records, or both. We preserve employee personal information, hire date, job title, department, and employment status. The mapping direction depends on the customer's Bullhorn usage pattern: staffing agencies use Candidate; internal talent acquisition teams may map employees to Contacts attached to a Company record representing their own organization. We flag this decision during scoping.
EPAY HCM
Compensation Record
Bullhorn ATS & CRM
Candidate Custom Fields or Custom Object
1:1EPAY compensation records (pay rates, salary history, pay frequency, effective-dated rate changes, bonuses) have no native Bullhorn equivalent in standard fields. We map pay rate to a Candidate custom field or Custom Object depending on the customer's Bullhorn edition and the number of compensation fields. If the customer is on Bullhorn Front Office Growth or Enterprise, we create a Compensation History custom object with effective-dated entries. If the customer is on ATS or ATS Growth, we use custom fields on the Candidate record. We preserve the full compensation timeline including pay changes and bonuses as supporting data for placement or employment offers.
EPAY HCM
Benefits Enrollment
Bullhorn ATS & CRM
Custom Object or Document Attachment
1:1EPAY benefits enrollment records (plan names, coverage tiers, enrollment dates, dependent information) map to a Bullhorn Benefits custom object if the customer's edition supports it. If the Bullhorn edition has no available Custom Object slots, we export the enrollment data as a structured CSV and attach it to the Candidate record. We flag that many insurance carriers require direct re-enrollment in the carrier portal or the new HR platform's carrier integration, so we treat benefits data as supporting documentation rather than a live enrollment migration. The customer budgets for a 2-4 week parallel re-enrollment window with each benefits vendor.
EPAY HCM
Time and Attendance Logs
Bullhorn ATS & CRM
Custom Object or Candidate Notes
1:1EPAY time-and-attendance logs (clock-in/clock-out data, overtime, accruals, scheduling rules) have no native Bullhorn equivalent because Bullhorn is not a time-tracking system. We export time-and-attendance data by pay period and map it to a Custom Object if available, or we export it as structured records for the customer's HR team to load into their chosen time-and-attendance platform post-migration. High-volume punch-level data is chunked by pay period to manage file sizes. We flag that customers who rely on EPAY time-and-attendance data for billing (staffing agencies billing clients by hours worked) need a replacement time-tracking platform integrated with Bullhorn.
EPAY HCM
Job Costing and Labor Allocation
Bullhorn ATS & CRM
Custom Object or Custom Fields
1:1EPAY job-costing and labor-allocation data (cost center assignments, project codes, department allocations) maps to a Bullhorn Custom Object if the customer has available slots on their Bullhorn edition. Front Office Growth and Enterprise editions support up to 10 Custom Objects with 55 fields each, which accommodates cost center, project code, and department fields. ATS Growth and ATS editions are limited to 2 Custom Objects, which may require the customer to prioritize which job-costing fields migrate and which are exported as a lookup table for manual reference. We validate the Custom Object availability during scoping.
EPAY HCM
Payroll Processing History
Bullhorn ATS & CRM
Not Migrated (External Storage)
lossyEPAY payroll processing history (pay runs, earnings, deductions, taxes, net pay by pay period) cannot migrate into Bullhorn because Bullhorn does not have a payroll module and no standard Bullhorn object stores payroll data. We export the payroll history as a structured archive file that the customer stores externally (document management system, HRIS of record, or a payroll lookup tool). For companies still processing payroll in EPAY during the transition, we recommend retaining read-only EPAY access for a minimum of 90 days post-migration for garnishment lookback and payroll dispute resolution. Tax filing records similarly require external storage or a dedicated payroll platform.
EPAY HCM
Garnishments and Deductions
Bullhorn ATS & CRM
Custom Object with Legal Hold Flag
1:1EPAY garnishment orders, wage deductions, and voluntary deduction codes map to a Bullhorn Custom Object with fields for deduction type, court or agency, current balance, and deduction amount per pay period. Active garnishment orders require manual verification by the customer's payroll administrator before the first payroll run in the new system because Bullhorn does not process payroll and cannot enforce deduction calculations. We flag every active deduction during scoping with a verification checklist that the customer completes before cutover. Deduction history without active orders is exported as supporting documentation.
EPAY HCM
Performance Review Records
Bullhorn ATS & CRM
Custom Object or Candidate Notes
1:1EPAY performance review records (review cycles, 360-degree feedback, journaling entries, review status, scores) map to a Bullhorn Custom Object if available. If no Custom Object is available on the customer's edition, we export the review history as structured records attached to the Candidate. Bullhorn's review-cycle structure differs from EPAY's performance management module, so we preserve the historical review data as documentation rather than a live performance module migration. The customer's HR team rebuilds active review cycles in their chosen performance management platform post-migration.
EPAY HCM
Learning and Training Records
Bullhorn ATS & CRM
Custom Object or Candidate Skills
1:1EPAY learning and training records (course completions, custom certificates, training status) map to Bullhorn Candidate Skills (for skill-based matching and searchable records) and a Custom Object for detailed completion history if available. We export completion status, certificate metadata, and course names. Custom course structures and learning paths from EPAY LMS require manual rebuild in the customer's chosen training platform because Bullhorn does not have a native LMS. Certificate metadata migrates to a Custom Object or Candidate file attachment for compliance documentation.
EPAY HCM
ACA Compliance Data
Bullhorn ATS & CRM
Not Migrated (External Storage)
lossyEPAY ACA eligibility tracking, coverage offers, and enrollment status for Affordable Care Act compliance do not map to Bullhorn because Bullhorn does not have a compliance module for ACA measurement or reporting. We export ACA measurement data as a structured file for the customer's HR compliance team to load into their chosen compliance tool or retain for IRS reporting. Customers who use EPAY specifically for ACA tracking and reporting should select a dedicated ACA compliance platform as part of their post-migration HRIS stack.
EPAY HCM
Recruiting (EPAY module)
Bullhorn ATS & CRM
Candidate and JobOrder
1:1For customers using EPAY's recruiting and applicant tracking module, job postings and applicant records map to Bullhorn JobOrder and Candidate records respectively. EPAY job postings become Bullhorn JobOrder entries with job title, description, requirements, and status. EPAY applicants become Bullhorn Candidates with application status and submission history. We resolve the EPAY applicant pipeline stages to Bullhorn lead-status values during transformation. This module migration only applies if the customer actively uses EPAY for external hiring rather than purely for internal workforce management.
EPAY HCM
Onboarding (EPAY module)
Bullhorn ATS & CRM
Candidate Task Workflow
lossyEPAY onboarding records (new hire tasks, document collection, I-9 verification, onboarding checklist status) map to Bullhorn Candidate tasks and a documented onboarding task list. Bullhorn Onboarding (formerly Able) is a separate product that some customers license independently. We export the onboarding task structure as a written checklist for the customer's HR team to rebuild in Bullhorn, Bullhorn Onboarding, or a third-party onboarding platform. Active document uploads from EPAY onboarding migrate as file attachments to the Candidate record. We do not migrate onboarding automations as code.
| EPAY HCM | Bullhorn ATS & CRM | Compatibility | |
|---|---|---|---|
| Employee | Candidate and Contact1:1 | Fully supported | |
| Compensation Record | Candidate Custom Fields or Custom Object1:1 | Fully supported | |
| Benefits Enrollment | Custom Object or Document Attachment1:1 | Fully supported | |
| Time and Attendance Logs | Custom Object or Candidate Notes1:1 | Mapping required | |
| Job Costing and Labor Allocation | Custom Object or Custom Fields1:1 | Mapping required | |
| Payroll Processing History | Not Migrated (External Storage)lossy | Mapping required | |
| Garnishments and Deductions | Custom Object with Legal Hold Flag1:1 | Mapping required | |
| Performance Review Records | Custom Object or Candidate Notes1:1 | Mapping required | |
| Learning and Training Records | Custom Object or Candidate Skills1:1 | Mapping required | |
| ACA Compliance Data | Not Migrated (External Storage)lossy | Mapping required | |
| Recruiting (EPAY module) | Candidate and JobOrder1:1 | Fully supported | |
| Onboarding (EPAY module) | Candidate Task Workflowlossy | 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.
EPAY HCM gotchas
No public API means migration extraction is vendor-assisted
Historical payroll and tax filing data require special handling
Benefits carrier re-enrollment is often required at destination
Employee count directly affects billing — imports increase costs
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 edition selection
We audit the EPAY HCM environment across all active modules in scope: Employee records, Compensation history, Benefits enrollments, Time and Attendance logs, Job Costing data, Payroll history, Garnishments and Deductions, Performance Reviews, Learning Records, and any active recruiting or onboarding modules. We pair this with a Bullhorn edition assessment to determine available Custom Object slots, identify any upgrade requirements, and confirm whether the customer is on Bullhorn Platform or Bullhorn Recruitment Cloud (Salesforce-based) because the API and migration tools differ. The discovery output is a written migration scope listing every object, record count, and edition gap that must be resolved before migration begins.
Vendor-assisted export coordination with EPAY
We initiate the export request with EPAY HCM's customer success or data team, providing a detailed schema of the records and fields required. Because EPAY has no self-service export portal, we coordinate the export format (CSV, XML, or database extract), delivery timeline, and record counts. We validate the export against our discovery record counts as soon as it arrives and escalate any gaps before beginning transformation work. If the customer has a large historical payroll volume, we request that EPAY batch the export by pay period to avoid single-file size issues.
Bullhorn schema provisioning and custom object setup
We design and deploy the destination schema in Bullhorn before any data import. This includes creating Custom Objects (if available on the customer's edition) with fields mapped from EPAY compensation, benefits, time-and-attendance, job-costing, and garnishment records; adding custom Candidate fields for data that exceeds Custom Object capacity; configuring Candidate field mappings through Bullhorn Admin; and setting up JobOrder and placement records if the customer uses Bullhorn for staffing operations. Schema is deployed into a Bullhorn sandbox or staging environment first for validation. Bullhorn editions with zero available Custom Objects require the customer to either upgrade or approve a reduced field set.
Data transformation and record deduplication
We transform EPAY records into Bullhorn Candidate and Contact format. Employee records become Candidates (and optionally Contacts) with personal information, employment dates, job titles, and department assignments. Compensation records are transformed into custom object entries with effective dates. Benefits enrollments are structured as enrollment records with plan details and dependent information. We deduplicate on Social Security Number or employee ID where available, and flag any records with missing required Bullhorn fields for the customer's HR admin to complete before import. Time-and-attendance data is exported separately for the customer's chosen time-tracking platform, not into Bullhorn.
Payroll and deduction verification handoff
We deliver a structured export of payroll history, garnishment orders, and active deduction codes as a written handoff to the customer's payroll administrator. We provide a verification checklist for every active garnishment order and deduction code that the administrator must confirm is set up correctly in the new payroll platform before processing the first payroll run. We do not set up payroll deductions in Bullhorn because Bullhorn does not process payroll. The customer selects and configures a dedicated payroll platform (ADP, Paychex, Rippling, or EPAY read-only access) before cutover.
Production migration in dependency order
We run production migration into Bullhorn in record-dependency order: Custom Objects and custom fields are deployed first, then Candidate records are imported with all custom field data resolved. If the scope includes Bullhorn Contact records for internal employees, those import after Candidate records with a Contact-to-Candidate reference. JobOrder records import next if the customer uses Bullhorn for staffing. Benefits enrollment documentation and performance review records attach to the relevant Candidate or Contact. We run row-count reconciliation after each phase before proceeding to the next. We do not migrate workflows, onboarding sequences, or automation rules as these are EPAY-specific and have no Bullhorn equivalent.
Cutover, validation, and benefits re-enrollment support
We freeze EPAY access for write operations during cutover and run a final delta migration of any records modified during the window. We deliver the migration reconciliation report to the customer's HR and recruiting leads for sign-off. We support a one-week hypercare window to resolve record-level issues surfaced during initial Bullhorn usage. We provide a written handoff for benefits carrier re-enrollment, including a template communication to send to employees with their EPAY enrollment summary and instructions for re-enrolling with each carrier. We do not manage carrier re-enrollment directly or provide ongoing payroll administration post-migration.
Platform deep dives
EPAY HCM
Source
Strengths
Weaknesses
Bullhorn ATS & CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard HRMS migration. All 7 core objects map 1:1 between EPAY HCM and Bullhorn ATS & CRM.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across EPAY HCM and Bullhorn ATS & CRM.
Object compatibility
All 7 core objects map 1:1 between EPAY HCM and Bullhorn ATS & CRM.
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
EPAY HCM: Not publicly documented..
Data volume sensitivity
EPAY HCM 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 EPAY HCM to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.
Walk through your EPAY HCM 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 EPAY HCM
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.