HRMS migration

Migrate from HR-ON to Crelate

Field-level mapping, validation, and rollback between HR-ON and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.

HR-ON logo

HR-ON

Source

Crelate

Destination

Crelate logo

Compatibility

67%

8 of 12

objects map 1:1 between HR-ON and Crelate.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from HR-ON to Crelate is a cross-domain migration from an HR administration platform to an ATS-recruiting CRM. HR-ON structures data around employees, document templates, and systemFields embedded on employee records; Crelate structures data around candidates, jobs, submissions, and client relationships. The central migration challenge is that HR-ON stores no dedicated candidate pipeline objects—any candidate data in HR-ON is embedded in employee records. We extract active employee profiles as candidate seed records in Crelate, preserve dateOfBirth and employment history as candidate custom fields, carry Danish (da_DK) and English (en_US) language preferences into Crelate's candidate record, and flag every HR-ON workflow, document routing rule, and onboarding template that has no Crelate equivalent so the customer's admin can rebuild them post-migration. HR-ON's lack of a bulk export endpoint means we retrieve records individually via JWT-authenticated calls to the HR-ON REST API v1, which extends migration timelines proportionally with employee base size.

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

HR-ON logo

HR-ON

What's pushing teams away

  • Conflicting public reporting on API availability — some sources say HR-ON has an open API while others state HR-ON Recruit specifically does not. Buyers needing certainty on programmatic access must confirm with HR-ON directly before contracting.
  • Suite plan at €317/month is materially more expensive than Recruit at €167/month — companies that only need ATS functionality may find the upsell to the full Suite expensive.
  • European focus means thinner partner network in North America and APAC compared with global HRIS providers.
  • Reporting and analytics depth lag mid-market HRIS leaders like BambooHR and HiBob.
  • Recruiting-focused entry point means HR-ON requires the Suite tier to cover onboarding and ongoing HR processes.

Choosing

Crelate logo

Crelate

What's pulling them in

  • Affordable per-seat pricing with transparent tiers makes Crelate accessible for small-to-mid staffing firms evaluating ATS platforms for the first time.
  • Fast implementation reported by customers—some describe getting live in a matter of minutes with support team assistance.
  • Unified ATS + CRM in a single product eliminates the need to buy and synchronize separate recruiting and sales tools.
  • Flexible custom fields across Contacts, Companies, and Opportunities allow recruiting teams to capture firm-specific data without developer involvement.
  • Positive reviews highlight the product's intuitive interface and functional breadth for teams that need recruiting workflows without enterprise overhead.

Object mapping

How HR-ON objects map to Crelate

Each row shows how a HR-ON object lands in Crelate, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

HR-ON

Employee

maps to

Crelate

Candidate

1:1
Fully supported

HR-ON Employee records map to Crelate Candidate records. We extract firstName, lastName, dateOfBirth, and contact fields directly. HR-ON systemFields that contain organizational metadata (department, manager, location) map to Candidate custom fields because Crelate stores candidate-specific organizational preferences in custom fields rather than in a separate org chart. Language preference (da_DK or en_US) from HR-ON carries into Crelate's candidate language field. We flag any Employee with a startDate in the future as a recruiting-stage candidate rather than an active hire to preserve the pipeline distinction.

HR-ON

systemFields (Organizational Metadata)

maps to

Crelate

Candidate Custom Fields

lossy
Fully supported

HR-ON embeds org metadata (department, reporting manager, cost center, employment type) inside systemFields on Employee records rather than as separate objects. We parse these key-value pairs during extraction, create matching custom fields on the Crelate Candidate object, and populate them during import. The customer reviews the custom field schema before deployment to ensure naming aligns with their Crelate data governance standards.

HR-ON

Document Template

maps to

Crelate

Candidate Attachment (with template reference)

1:1
Fully supported

HR-ON Document Templates (with fields name, description, documentType, dateFormat, and language) map to Crelate as candidate attachments with a custom field storing the source HR-ON template reference. Crelate does not have a native document template library for employee documents, so we preserve the template metadata in a custom text field on the attachment so the customer's admin can relink or recreate templates post-migration. Language variants from HR-ON (da_DK, en_US) attach as metadata on each document.

HR-ON

Document (generated from template)

maps to

Crelate

Candidate Attachment

1:1
Fully supported

HR-ON generates documents from templates and stores them with dateFormat and language metadata. We export these as binary blobs or PDF links and associate them with the relevant Candidate record in Crelate via the CandidateAttachments endpoint. We preserve the original document name, creation date, and language variant. Documents without a corresponding Candidate (orphaned records where the employee was deleted in HR-ON) are archived separately and flagged for manual review.

HR-ON

Custom Fields (on Employee)

maps to

Crelate

Custom Fields (on Candidate)

lossy
Fully supported

HR-ON custom properties on Employees map to Crelate Candidate custom fields. We extract all non-systemField properties during scoping, validate each against Crelate's supported field types (text, number, date, picklist, checkbox, multi-select), and flag any with incompatible types—for example, HR-ON multi-select checkboxes that have no direct Crelate equivalent require either a custom text field or a delimited picklist. We pre-create the destination schema in a Crelate sandbox before migration begins.

HR-ON

User

maps to

Crelate

User

1:1
Fully supported

HR-ON user accounts map to Crelate Users. We match by email address and map HR-ON roles to Crelate's permission structure. HR-ON-specific permissions that have no Crelate equivalent (such as Danish payroll configuration access) are flagged as a manual configuration item for the customer's admin. Inactive HR-ON users map to inactive Crelate users pending admin reactivation decisions.

HR-ON

Date Metadata (flexible formats)

maps to

Crelate

Date Fields (ISO 8601)

lossy
Fully supported

HR-ON stores dates in four distinct formats: DD-MM-YYYY, DD/MM/YYYY, YYYY-MM-DD, and written form (July 20, 2021). We normalize all date values to ISO 8601 during extraction and validate each normalized date against Crelate's date field requirements before loading. Birth dates, start dates, and document creation dates are processed separately to ensure each date type maps to the correct Crelate field. Any unparseable dates are logged and set to a null value pending manual correction.

HR-ON

Language Preference

maps to

Crelate

Candidate Language Field

1:1
Fully supported

HR-ON stores language at da_DK (Danish) and en_US (English) per template and employee. We carry this through to Crelate's candidate language field, preserving the locale value so that any downstream communication templates render in the correct language. If the customer plans to use Crelate's email sequencing, the language preference informs which email template variant is sent.

HR-ON

Employment Type Metadata

maps to

Crelate

Candidate Custom Field or Placement Type

1:1
Fully supported

HR-ON stores employment type (full-time, part-time, contractor, intern) in systemFields on Employee records. We map this to a Candidate custom field during migration. For organizations that also plan to use Crelate's placement or contracting workflows, the employment type maps to the Crelate placement type so that temp-to-perm or contract placements carry the correct classification.

HR-ON

Onboarding Workflow State

maps to

Crelate

Candidate Custom Field (read-only)

1:1
Fully supported

HR-ON embeds onboarding workflow stages in systemFields on Employee records. These stages have no direct Crelate equivalent because Crelate models recruiting pipelines rather than HR onboarding workflows. We migrate the last-known onboarding stage as a static custom field value on the Candidate record, flagging it as a historical marker rather than an active workflow state. The customer's admin rebuilds any active onboarding tracking in Crelate's task and pipeline tools post-migration.

HR-ON

Benefits Enrollment Data

maps to

Crelate

Candidate Custom Fields (read-only)

1:1
Fully supported

If HR-ON stores benefits enrollment information in custom fields on Employee records, we migrate these as read-only custom fields on the Crelate Candidate. Crelate has no native benefits management module, so benefits data is preserved for reference only and the customer's HR admin handles benefits administration separately from the recruiting CRM.

HR-ON

Organizational Hierarchy (flat in systemFields)

maps to

Crelate

Department Custom Field + Placement Reporting

lossy
Fully supported

HR-ON stores organizational hierarchy within systemFields on Employee records rather than as a separate structure. We flatten this into a department custom field on the Crelate Candidate record. If the customer requires a Crelate departmental structure for reporting, we can create a Department custom object and populate it with the extracted hierarchy, but this requires Crelate's Business Plus or Enterprise tier and is scoped as an optional configuration item during discovery.

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.

HR-ON logo

HR-ON gotchas

High

No bulk export endpoint forces sequential reads

Medium

Date format normalization required before import

Low

Language-specific document types may not map directly

Crelate logo

Crelate gotchas

High

120 req/min API rate limit throttles bulk migrations

High

20 custom field per-entity cap forces data model decisions

Medium

15,000-record export ceiling on single operations

Medium

Sequences and automation workflows do not migrate

Low

API key is a querystring parameter, not a header

Pair-specific challenges

  • HR-ON has no bulk export endpoint

    HR-ON's API at api.hr-on.com exposes no batch read or bulk export endpoint. We must retrieve employee records individually via POST requests to the /v1/staff/employees endpoint, which extends migration timelines linearly with the employee base size. We implement chunking at 50 records per request, JWT token refresh on expiry, and exponential backoff on rate-limited responses. Organizations with over 1,000 employee records should expect proportionally longer extraction phases. We flag any HR-ON API timeout or 5xx response with a retry log and escalate to the customer if the HR-ON API becomes a bottleneck.

  • No direct candidate pipeline in HR-ON

    HR-ON models HR administration, not recruiting pipelines. Any candidate data in HR-ON is embedded in employee records. We migrate active employee profiles as candidate seed records, but HR-ON's onboarding workflow stages are not recruiting pipeline stages and have no Crelate equivalent. The customer's admin rebuilds any active recruiting tracking in Crelate's pipeline, job requisition, and submission tools post-migration. We deliver a written inventory of every HR-ON onboarding workflow state that requires manual rebuild so the admin has a complete checklist.

  • Date format normalization is required before import

    HR-ON stores dates in four distinct formats depending on locale and template settings: DD-MM-YYYY, DD/MM/YYYY, YYYY-MM-DD, and written form. Crelate expects ISO 8601 dates in all date fields. We parse and normalize all date values to ISO 8601 during extraction and validate against the destination field requirements before loading. Any unparseable dates (such as mixed-format strings or ambiguous day-month combinations) are logged and set to null pending manual correction. The customer reviews the date validation report before finalizing the migration.

  • Danish language documents may lack Crelate template equivalents

    HR-ON's Danish-language document templates (da_DK locale) may not map directly to any Crelate template. Crelate's template system is oriented around recruiting communication rather than HR onboarding documentation. We flag each document with its source language so the customer can reassign or recreate templates in Crelate post-migration. The document binary content (PDF or blob) migrates as an attachment regardless of language, but the template logic requires manual relinking by the customer's admin.

  • Workflows, automations, and onboarding sequences do not migrate

    HR-ON's document routing rules, onboarding workflow triggers, and approval chains have no Crelate equivalent because Crelate models recruiting workflows rather than HR administration workflows. We deliver a written inventory of every active HR-ON workflow with its trigger conditions, steps, and routing logic for the customer's admin to rebuild in Crelate's task management and pipeline automation tools. Any HR-ON automation that moves beyond simple document attachment into conditional logic requires scoping as a separate workflow rebuild engagement.

Migration approach

Six steps for a successful HR-ON to Crelate data migration

  1. Discovery and scoping

    We audit the HR-ON tenant via JWT-authenticated API calls, extracting a full inventory of Employee records, Document Templates, systemFields, custom properties, and user accounts. We assess the employee base size to estimate extraction time given HR-ON's sequential API constraints. We review any HR-ON onboarding workflow configurations that the customer wants documented for rebuild. The discovery output is a written migration scope, a data quality report flagging records with unparseable dates or missing required fields, and a candidate versus employee classification decision for records with future start dates.

  2. Date normalization and language preference extraction

    We normalize all date values from HR-ON's four format variants (DD-MM-YYYY, DD/MM/YYYY, YYYY-MM-DD, and written form) to ISO 8601 during extraction. We extract the language preference (da_DK or en_US) from each employee record and template and store it as a dedicated field for mapping to Crelate's candidate language field. Any date that fails normalization is logged with the source record ID and original value for manual review. This step runs in parallel with discovery to avoid re-reading data.

  3. Crelate sandbox setup and custom field provisioning

    We provision a Crelate sandbox environment and create all required custom fields on the Candidate object to match the HR-ON custom property schema and systemField extras. We map HR-ON data types to Crelate field types, flagging any multi-select, multi-checkbox, or nested JSON properties that require custom text fields or delimited values in Crelate. We configure the Crelate user roles to approximate the HR-ON role structure and flag any HR-ON-specific permissions that require manual configuration post-migration.

  4. Sandbox migration and reconciliation

    We run a full migration into the Crelate sandbox using production-equivalent data volumes. We validate record counts, spot-check 25-50 records against the HR-ON source for field accuracy, and verify that date normalization produced correct ISO 8601 values. The customer's HR lead reviews the sandbox data and signs off on the field mapping and custom field schema before production migration begins. Any mapping corrections happen here.

  5. Production migration in dependency order

    We run production migration in the following order: Crelate Users (validated against the user provisioning list), Candidate records (with organizational metadata from HR-ON systemFields mapped to custom fields), Candidate attachments (documents from HR-ON with template reference metadata preserved), and language preferences (carried from HR-ON da_DK and en_US locale settings). Each phase emits a row-count reconciliation report before the next phase begins. We maintain a delta log of any records modified in HR-ON during the migration window for a final cutover sync.

  6. Cutover, validation, and workflow handoff

    We freeze HR-ON writes during cutover, run a final delta migration of any records modified during the migration window, and enable Crelate as the system of record. We deliver a written inventory of every HR-ON onboarding workflow state, document routing rule, and automation requiring rebuild in Crelate's task and pipeline tools. We support a one-week hypercare window for reconciliation issues. We do not rebuild HR-ON workflows as Crelate automations inside the migration scope; that is a separate engagement or an internal admin task.

Platform deep dives

Context on both ends of the pair

HR-ON logo

HR-ON

Source

Strengths

  • REST API at api.hr-on.com with documented endpoints for employees and document templates.
  • Supports multi-language document generation with Danish and English locale handling.
  • Structured systemFields on Employee records provide consistent metadata for extraction.
  • JWT authentication enables programmatic access without complex OAuth flows.
  • 4.6 rating on G2 with user praise for ease of use and helpful HR features.

Weaknesses

  • No publicly documented bulk export endpoint; data retrieval depends on per-record API calls.
  • Limited object types beyond Employees and Document Templates, reducing migration scope options.
  • Small market presence (34 G2 reviews) means less community knowledge and fewer migration guides.
  • No Wikipedia article indicates limited public documentation depth compared to major HRMS platforms.
  • Danish-market focus means English documentation and support resources are less comprehensive.
Crelate logo

Crelate

Destination

Strengths

  • Unified ATS and CRM in a single platform reduces data synchronization overhead for recruiting teams.
  • Fast setup with guided implementation reported as a significant time saver for small teams.
  • Transparent per-seat pricing without surprise fees at the base tier.
  • Flexible custom field configuration across core objects without developer dependency.
  • Export capability supports up to 15,000 records per operation for Contacts, Companies, and Opportunities.

Weaknesses

  • API rate limit of 120 requests per minute restricts bulk migration throughput.
  • Custom field cap of 20 per entity requires field consolidation for complex recruiting schemas.
  • All advanced features (Activities, Activity Forms, Core Record Field customization) are tier-gated add-ons.
  • Customer service responsiveness receives consistent negative feedback in reviews.
  • Resume parsing quality trails competitors and generates support requests.

Complexity grading

How hard is this migration?

Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across HR-ON and Crelate.

  • Object compatibility

    B

    1 of 7 objects need a mapping; the rest are 1:1.

  • 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

    HR-ON: Not publicly documented..

  • Data volume sensitivity

    B

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

Estimator

Estimate your HR-ON to Crelate 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 HR-ON to Crelate data migrations

Answers to the questions buyers ask most during HR-ON to Crelate migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your HR-ON to Crelate migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for organizations with fewer than 500 employee records, fewer than 20 custom fields per record, and under 1,000 document attachments. Migrations with over 500 employee records, extensive systemFields schemas, or large document attachment volumes extend to seven to twelve weeks because HR-ON's sequential API forces per-record reads rather than bulk export. We size the extraction timeline based on the employee base count during discovery.

Adjacent paths

Related migrations to explore

Ready when you are

Move from HR-ON.
Land in Crelate, 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