HRMS migration

Migrate from Voyse to Bullhorn ATS & CRM

Field-level mapping, validation, and rollback between Voyse and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.

Voyse logo

Voyse

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

62%

8 of 13

objects map 1:1 between Voyse and Bullhorn ATS & CRM.

Complexity

CModerate

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Voyse to Bullhorn is a migration from a small-team HRMS focused on UK software organisations into the market-leading recruitment ATS and CRM used by over 10,000 staffing agencies globally. Voyse stores candidate records, employee profiles, and onboarding stage data in a flat or lightly structured schema; Bullhorn uses a normalised entity model with separate Candidate, Contact, Company, Job, and Placement objects linked by lookups. We scope Voyse's custom property fields, resolve them against Bullhorn's standard and custom field inventory, and load records in dependency order starting with Companies, then Candidates, then Jobs, with Placements inserted once both Candidate and Job lookups are satisfied. Custom objects migrate as Bullhorn Custom Objects with a 55-field-per-object ceiling enforced by Bullhorn's edition (Front Office Growth 10 objects; ATS Growth none; ATS 2 objects). Onboarding workflows, automation rules, and document templates are not migratable as code; we deliver a written inventory for your Bullhorn admin to configure post-migration. Bullhorn's API rate limits and Bulk API chunking apply to large record sets.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Voyse logo

Voyse

What's pushing teams away

  • Voyse does not sell HRMS software; the FlitStack catalog category 'hrms' is incorrect — there is no employee, payroll, or org-chart data to migrate from a BPO service relationship.
  • Customer 'data' in Voyse is operational call/case data sitting in LiveVox and DOMO tenants Voyse manages on behalf of the client; ownership and export rights are governed by the Master Services Agreement rather than a software contract.
  • Switching BPOs is operationally heavy — new agent training, knowledge transfer, and re-papering compliance for regulated workflows (loan apps, fraud, recoveries) typically takes months.
  • Belize jurisdiction may not satisfy data-residency requirements for highly regulated US, EU, or APAC customers.
  • Outsourced QA and training quality varies per agent cohort; customers who scale beyond a single team often need to onboard a second BPO or move workloads back in-house.

Choosing

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

What's pulling them in

  • Agencies choose Bullhorn because it combines ATS and CRM in one platform, eliminating the need to switch between separate tools for candidate management and client relationship tracking.
  • The resume parser extracts contact details, work history, and skills into structured, searchable candidate profiles automatically without manual data entry, reportedly driving 24% more placements per recruiter.
  • Bullhorn's placement and split-billing model natively supports contract staffing workflows, handling start/end dates, overtime rules, and multi-party pay/charge rates in a single record.
  • The platform offers extensive third-party integrations through its Recruitment Cloud Marketplace, connecting with back-office, onboarding, and payroll systems used by staffing agencies.
  • 72% of Bullhorn customers are teams with fewer than 10 users, and Bullhorn's implementation team handles setup and data migration for small agencies going live within weeks.

Object mapping

How Voyse objects map to Bullhorn ATS & CRM

Each row shows how a Voyse 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.

Voyse

Candidate

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

Voyse candidate records map directly to Bullhorn Candidate entities. We preserve the Voyse candidate identifier as a custom field voyse_id__c for audit. Core fields (firstName, lastName, email, phone, address) map to Bullhorn Candidate fields with edit type validation applied. Voyse custom properties (skills, availability status, stage flags) migrate to Bullhorn Candidate custom fields or Custom Objects depending on the property cardinality (multi-select migrates to a custom multi-select picklist; structured records migrate to a named Custom Object on the Candidate entity). We validate field edit types against the Bullhorn API field schema before write-back.

Voyse

Contact

maps to

Bullhorn ATS & CRM

Contact

1:1
Fully supported

Voyse contact records (client-facing or employee contact profiles) map to Bullhorn Contact entities. The Voyse email field becomes the dedupe key during import. We resolve the Company lookup by matching Voyse company name or domain against Bullhorn Corporation name or website. Any Voyse contact without a matching Corporation is held for reconciliation. Contact type distinctions (internal employee, external client contact) map to a Bullhorn custom field or category if the customer has a Contact type taxonomy defined.

Voyse

Company

maps to

Bullhorn ATS & CRM

Corporation

1:1
Fully supported

Voyse company records (organisations associated with candidates or clients) map to Bullhorn Corporation. The Corporation is the parent entity for Contacts, Job Orders, and Opportunities, so it is migrated first in the dependency chain. We set Corporation.name from Voyse.companyName and Corporation.website from Voyse.companyDomain for dedupe and lookup resolution. Bullhorn Corporation accepts custom fields for industry classification, staff count, and billing contact details.

Voyse

Job

maps to

Bullhorn ATS & CRM

Job Order

1:1
Fully supported

Voyse job postings or vacancy records map to Bullhorn Job Order (the Bullhorn internal name for job record). Job title, description, location, employment type, and salary fields map directly. The Voyse job status (open, filled, closed) maps to Job Order status in Bullhorn. If Voyse tracks job-to-candidate assignments, we resolve the Candidate lookup during migration. Bullhorn Job Order custom fields capture any Voyse-specific job attributes not covered by standard fields.

Voyse

Placement

maps to

Bullhorn ATS & CRM

Placement

1:1
Fully supported

Voyse records tracking a candidate placed into a role map to Bullhorn Placement. Placement requires both a resolved Candidate lookup and a resolved Job Order lookup, so it migrates after both parent entities are confirmed in Bullhorn. We map Voyse placement start date, end date, and billing rate to Bullhorn Placement date fields and custom billing fields. Commission tracking in Voyse maps to Bullhorn PlacementCommission records if the customer maintains commission data in Voyse.

Voyse

Employee Profile

maps to

Bullhorn ATS & CRM

Candidate + Custom Object

1:many
Fully supported

Voyse employee profiles (records that combine personal data with employment data such as start date, department, manager, and onboarding stage) cannot map to a single Bullhorn entity because Bullhorn separates personal candidate data (Candidate) from placement and employment data (Placement and related Custom Objects). We split the profile into a Bullhorn Candidate record for personal data and a Custom Object (EmployeeData or OnboardingData) for employment attributes including manager, startDate, department, and onboarding stage. The split rule is defined during scoping based on the customer's Voyse data model.

Voyse

Onboarding Stage

maps to

Bullhorn ATS & CRM

Custom Object on Candidate or Placement

lossy
Fully supported

Voyse onboarding workflow stages (pre-hire, documentation, training, active) have no direct Bullhorn standard field equivalent. We migrate these as a Bullhorn Custom Object attached to the Candidate or Placement record, with stage name, enteredDate, and completedDate fields. Bullhorn ATS edition limits to 2 searchable Custom Objects per entity; if the customer exceeds this, we recommend attaching onboarding data as a bullhornnative Custom Object for searchable stages and non-searchable stage notes as custom fields.

Voyse

Document

maps to

Bullhorn ATS & CRM

ContentDocument + ContentVersion

1:1
Fully supported

Voyse-uploaded documents (CVs, contracts, onboarding paperwork) migrate as Bullhorn ContentDocument records with ContentVersion for versioned file content. We preserve the original filename and file extension, and link each document to the parent entity (Candidate, Contact, Job Order, or Placement) via ContentDocumentLink. Bullhorn's file size limits (default 25 MB per file; configurable higher for enterprise) apply to the migrated documents.

Voyse

Custom Property

maps to

Bullhorn ATS & CRM

Custom Field or Custom Object

lossy
Fully supported

Voyse custom properties that are single-value per record map to Bullhorn custom fields on the appropriate entity. Multi-value or structured custom properties (key-value pairs, JSON-like data) map to Bullhorn Custom Objects with a 1:N or 1:1 relationship to the parent entity. We validate each Voyse custom property against Bullhorn's field edit type options (text, number, date, dropdown, multi-select, picker types) during the pre-migration schema audit and flag any that exceed Bullhorn's 55-field per Custom Object limit.

Voyse

Skill

maps to

Bullhorn ATS & CRM

Skill

1:1
Fully supported

Voyse skill tags stored against candidates migrate to Bullhorn Skill entities. Bullhorn Skills are managed through a dedicated Skills module and linked to Candidate records via CandidateSkill records. We preserve skill name, proficiency level (if available in Voyse), and the date the skill was added or verified. Skills without proficiency in Voyse are imported as Skill with no proficiency rating.

Voyse

User

maps to

Bullhorn ATS & CRM

Bullhorn User

1:1
Fully supported

Voyse users referenced as owners, assignees, or recruiters on any record map to Bullhorn User entities. We resolve users by email address match. Any Voyse user without a matching Bullhorn User is held in a reconciliation queue for the customer's Bullhorn admin to provision before record import resumes. User permissions, roles, and team assignments require manual configuration in Bullhorn after migration.

Voyse

Engagement

maps to

Bullhorn ATS & CRM

Note or Task

lossy
Fully supported

Voyse engagement records (notes, comments, activity log entries) attached to candidate or employee profiles migrate to Bullhorn Note entities linked to the parent Candidate or Contact via ContentDocumentLink. Voyse engagement timestamps are preserved as Note.createdDate. Bullhorn does not have a native activity timeline equivalent to some ATS platforms; we use Notes to preserve the engagement record with the original Voyse text content and author attribution.

Voyse

Tag

maps to

Bullhorn ATS & CRM

Category or Custom Field

lossy
Fully supported

Voyse tags (flat labels attached to candidate or job records) migrate to Bullhorn Category entities or to a custom multi-select picklist field depending on whether the customer uses Bullhorn's native Category taxonomy. Tags used for Boolean flags (active, verified, priority) migrate to Bullhorn custom checkbox fields. The customer chooses the tag strategy during scoping based on whether Bullhorn Categories are already in use in the destination org.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Voyse logo

Voyse gotchas

High

Catalog category is materially wrong

High

Operational data lives in BPO-managed third-party tenants

Medium

Compliance and PII handling is governed by the MSA

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM gotchas

High

ATS Growth edition has no API access

High

Attachments excluded from CSV bulk exports

Medium

Custom Object limits vary sharply by edition

Medium

Opportunity pipeline stages are recruitment-specific

Low

Resume parse quality varies by document format

Pair-specific challenges

  • Bullhorn edition enforces Custom Object count limits

    Bullhorn ATS edition (the base tier) permits only 2 searchable Custom Objects per entity. Bullhorn ATS Growth permits none. Bullhorn Front Office Growth and Enterprise permit 10 searchable Custom Objects per entity. Voyse custom properties that map to Custom Objects will exceed ATS edition limits. We identify every Voyse custom property during scoping, classify each as either a standard custom field (no limit) or a Custom Object (edition-limited), and recommend an edition upgrade or a Custom Object consolidation strategy before migration begins. Skipping this step results in blocked imports for objects that exceed the edition ceiling.

  • Voyse API field types require pre-scope flagging

    Voyse does not publish a public API field schema, and the export API may return undocumented field types or values that require type inference during scoping. We inspect a full export sample during the discovery phase, identify any fields with ambiguous or unrecognised data types, and either map them to a Bullhorn field with compatible edit type or flag them as requiring manual review before write-back. Migrations that begin without this inspection risk silent data truncation or API rejection for fields that exceed Bullhorn's edit type constraints.

  • Onboarding workflow rules do not migrate as code

    Voyse onboarding workflow rules (stage progression triggers, automated reminders, document collection sequences) are not extractable as executable configuration. We do not migrate them. We deliver a written inventory of every active Voyse onboarding workflow with its trigger conditions, stage sequence, assigned tasks, and reminder schedule for the Bullhorn admin to rebuild using Bullhorn Automation or third-party workflow tools. The inventory is scoped during discovery from the Voyse export data and verified with the customer before migration.

  • Bullhorn REST API rate limits apply to live migrations

    Bullhorn's REST API enforces per-minute and per-day rate limits that vary by edition and request type. For migrations exceeding 10,000 records or large document attachment batches, we use the Bullhorn Bulk API 2.0 with batch chunking, exponential backoff on rate limit responses, and pagination handling. We validate the destination Bullhorn org's API permissions before migration begins. If the Bullhorn org uses a third-party integration that consumes API quota, we coordinate the migration window to avoid quota contention.

  • Candidate-to-Company dedupe uses name and domain, not a shared ID

    Voyse and Bullhorn share no common external identifier, so candidate-to-company deduplication relies on string matching of name and email domain. Voyse companies without a website URL (common for sole-trader candidates) require manual resolution against Bullhorn Corporation records during reconciliation. We flag any Voyse company records with missing or ambiguous identifiers in the pre-migration audit and present them as a manual resolution list to the customer's admin before production migration begins.

Migration approach

Six steps for a successful Voyse to Bullhorn ATS & CRM data migration

  1. Discovery and edition assessment

    We audit the source Voyse account for record counts (Candidates, Companies, Jobs, Placements, Employees, Documents), custom property names and data types, onboarding workflow rule definitions, and any unstructured data fields that lack a clear type assignment. We simultaneously assess the destination Bullhorn edition and available Custom Object headroom. The output is a written migration scope that identifies every object, flags fields that require type resolution or manual reconciliation, and recommends a Bullhorn edition upgrade if the customer's Voyse custom property count exceeds the base ATS Custom Object ceiling.

  2. Schema design and field mapping

    We design the destination Bullhorn schema based on the scoping output. This includes provisioning Bullhorn custom fields (with edit types matched to Voyse property types), Custom Objects (named and structured per the customer's Voyse data model, with 55-field limits respected), Category taxonomy (if Tags are in use), and any required custom picklist values. The schema is validated against the Bullhorn API field list before any data is written. We deliver the complete field mapping document for the customer's review before sandbox migration begins.

  3. Sandbox migration and reconciliation

    We run a full migration into a Bullhorn Sandbox using production-like record volumes. The customer's Bullhorn admin reconciles record counts (Candidates in, Contacts in, Corporations in, Jobs in, Placements in), spot-checks 20-40 records against the Voyse source, and reviews the custom object and field data to confirm accuracy. Any mapping corrections, custom field additions, or category taxonomy adjustments are made in the sandbox before production migration is scheduled. Bullhorn ATS edition customers with fewer than 2 Custom Objects remaining must confirm their consolidation strategy before proceeding.

  4. User provisioning and owner reconciliation

    We extract every distinct Voyse user referenced as an owner, assignee, or recruiter on Candidate, Job, Placement, or engagement records and match by email against the Bullhorn destination org's User table. Users without a matching Bullhorn account are held in a reconciliation queue. The customer's Bullhorn admin provisions missing Users before production migration resumes. Migration cannot proceed past this step because Bullhorn OwnerId references are required on Job Order, Placement, and engagement records.

  5. Production migration in dependency order

    We run production migration in record-dependency sequence: Corporations first (parent for Contacts and Jobs), then Contacts and Candidates in parallel (with CorporationId resolved on Contacts), then Job Orders (with CorporationId resolved), then Placements (with CandidateId and JobOrderId resolved), then engagement records (Notes via ContentDocument), then Custom Objects last (with parent entity lookups satisfied). Each phase emits a row-count reconciliation report and a sample record validation before the next phase begins. Bullhorn Bulk API 2.0 handles batches exceeding 1,000 records with exponential backoff on rate limit responses.

  6. Cutover, document validation, and workflow inventory handoff

    We freeze Voyse record writes during cutover, run a final delta migration of any records modified during the migration window, then enable Bullhorn as the system of record. We deliver the onboarding workflow inventory document to the customer's Bullhorn admin team. We do not rebuild Voyse onboarding workflows as Bullhorn Automation; that work is documented separately for the admin to configure post-migration. We support a five-business-day hypercare window to resolve any record linkage issues or field-level data gaps raised by the customer's team.

Platform deep dives

Context on both ends of the pair

Voyse logo

Voyse

Source

Strengths

  • Established Belize-based nearshore contact-center BPO.
  • Omnichannel coverage across voice, web chat, SMS, and email.
  • Modern stack with LiveVox CCaaS and DOMO WFM/BI.
  • Reported strong CSAT and NPS metrics.
  • Broad service mix including regulated workflows.

Weaknesses

  • Not a software product — there is no Voyse-branded tenant to migrate.
  • Data lives in BPO-managed LiveVox/DOMO tenants under MSA governance.
  • Belize jurisdiction may not meet some data-residency rules.
  • Switching BPOs involves heavy operational re-onboarding, not just data movement.
  • FlitStack catalog category 'hrms' is incorrect for this vendor.
Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

Destination

Strengths

  • Unified ATS and CRM on one platform purpose-built for staffing agencies, eliminating separate tools for candidates and clients.
  • Automated resume parsing extracts structured candidate data—contact details, work history, skills—into searchable profiles instantly.
  • Native placement and split-billing model handles contract staffing workflows including start/end dates and overtime rules.
  • Bullhorn Recruitment Cloud Marketplace offers 100+ pre-validated third-party integrations spanning the full recruiting lifecycle.
  • 24/7 global support coverage from 350+ support staff with dedicated account management included at all tiers.

Weaknesses

  • Widely regarded as old and bloated with an unintuitive interface and steep learning curve for new recruiters.
  • Slow page loads and performance lag cited in over 200 verified G2 reviews during high-volume recruiting periods.
  • Pricing is opaque—custom-negotiated per organization with significant upfront implementation fees that vary by deal.
  • ATS Growth edition excludes API access entirely, preventing automated data export without upgrading first.

Complexity grading

How hard is this migration?

Moderate HRMS migration. 4 of 7 objects need a manual workaround.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Voyse and Bullhorn ATS & CRM.

  • Object compatibility

    D

    4 of 7 objects need a manual workaround.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Voyse: Determined by the underlying LiveVox / DOMO / other tenant APIs, not by Voyse itself..

  • Data volume sensitivity

    B

    Voyse doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Voyse to Bullhorn ATS & CRM migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Voyse to Bullhorn ATS & CRM data migrations

Answers to the questions buyers ask most during Voyse to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Voyse to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Voyse to Bullhorn migrations land between three and five weeks for accounts with under 5,000 Candidates, 500 Jobs, and fewer than 5 Custom Objects. Migrations exceeding 20,000 Candidates, large document attachment libraries, multiple Custom Objects that require Bullhorn edition upgrade, or complex onboarding workflow inventories move to eight to twelve weeks because of schema design, edition procurement, and reconciliation scope.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Voyse.
Land in Bullhorn ATS & CRM, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day