HRMS migration
Field-level mapping, validation, and rollback between OrangeHRM and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.
OrangeHRM
Source
Crelate
Destination
Compatibility
9 of 14
objects map 1:1 between OrangeHRM and Crelate.
Complexity
BStandard
Timeline
2-4 weeks
Overview
OrangeHRM and Crelate serve different HR functions: OrangeHRM is a general-purpose HRMS organizing employee records around PIM (Personal Information Module), Leave, Attendance, and Recruitment modules. Crelate is a purpose-built recruiting platform combining ATS, CRM, and sourcing tools for executive search and talent acquisition teams. Migrating from OrangeHRM to Crelate is primarily a recruitment-module extraction because the full OrangeHRM employee data model (leave entitlements, attendance records, performance reviews, payroll) has no native Crelate equivalent. We extract candidate profiles and vacancy records from OrangeHRM's Recruitment module, map OrangeHRM Employees into Crelate Contacts with a Contact type field distinguishing internal employees from placed candidates, and deliver a written inventory of any OrangeHRM recruitment workflows requiring rebuild in Crelate. Leave, attendance, payroll, and performance review data are flagged as non-migratable because Crelate is a recruiting platform, not an HRMS.
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 OrangeHRM 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.
OrangeHRM
Employee (PIM)
Crelate
Contact (type = Employee or Candidate)
lossyOrangeHRM Employee records from the PIM module map to Crelate Contact records. We add a custom picklist field crelate_source_type__c with values Employee and Candidate so that migrated OrangeHRM employees are distinguished from Crelate-generated candidate records. Standard fields (name, email, phone, job title, department, supervisor) map directly. OrangeHRM's supervisor chain reconstructs as a custom lookup field or the contact's hierarchy display in Crelate.
OrangeHRM
Custom Fields (Employee Level)
Crelate
Custom Fields (Contact)
lossyOrangeHRM allows up to 10 custom fields per employee screen (Text, Number, Dropdown types). We extract these as flat key-value pairs per employee and map them to Crelate's custom Contact fields. OrangeHRM Dropdown values become Crelate picklist options. We require that Crelate custom fields are created before migration runs; field creation order and naming must be confirmed during scoping because Crelate requires admin access to Settings | Core Records.
OrangeHRM
Candidate (Recruitment Module)
Crelate
Contact (type = Candidate)
1:1OrangeHRM Candidate records map directly to Crelate Contact records with type = Candidate. Candidate name, email, phone, and application status migrate. OrangeHRM's candidate-specific fields (keywords, application date, shortlisting status) map to Crelate's built-in Contact fields and custom fields. If the candidate email already exists from an OrangeHRM Employee record, we flag the duplicate for manual resolution or auto-merge based on the customer's preference.
OrangeHRM
Vacancy (Recruitment Module)
Crelate
Job
1:1OrangeHRM Job Vacancy records map to Crelate Job records. OrangeHRM vacancy fields (title, description, hiring manager, status, job specification) map to Crelate Job fields including title, description, owner, status, and assigned recruiter. Active and closed vacancy status from OrangeHRM maps to Crelate Job status (Open, Closed, On Hold). OrangeHRM's vacancy-to-candidate association migrates as a Crelate Job-to-Contact association.
OrangeHRM
Job Specification
Crelate
Job Description or Custom Field
lossyOrangeHRM stores job specifications as attached text or linked records within the Vacancy. Long-form job descriptions migrate to Crelate's Job description field. Structured specification fields (education requirements, experience years, skills) migrate as custom fields on the Job record if the customer requires searchability on these attributes.
OrangeHRM
Application Status History
Crelate
Activity Timeline or Pipeline Stage
lossyOrangeHRM tracks candidate application status (Application Initiated, Shortlisted, Interview Scheduled, Interview Passed, Job Offered, etc.). We map these to Crelate's Activity records on the Contact timeline for historical audit. If the customer uses Crelate's pipeline feature for candidate tracking, we map OrangeHRM status values to Crelate pipeline stages during scoping.
OrangeHRM
Leave Entitlements and Requests
Crelate
Not Migrated (Flagged)
1:1Crelate has no leave management module. Leave entitlements, balances, and request records from OrangeHRM cannot be mapped to any Crelate object. We flag this data as non-migratable during scoping and recommend that customers use the migration as an opportunity to establish a dedicated leave management system (BambooHR, Rippling, or Workday) if leave tracking is required post-Crelate. Historical leave balances can be stored as a custom field on the Contact record for reference if desired.
OrangeHRM
Attendance Records
Crelate
Not Migrated (Flagged)
1:1Crelate has no attendance or time-tracking module. Punch-in/punch-out records and attendance summaries from OrangeHRM have no destination in Crelate. We flag attendance data as non-migratable and advise customers to consolidate any historical attendance reports as a file attachment on the Contact record or in a separate document management system before migration cutover.
OrangeHRM
Performance Reviews
Crelate
Not Migrated (Flagged)
1:1Crelate has no performance management module. Performance review cycles, ratings, goals, and competencies from OrangeHRM cannot migrate to Crelate. We flag performance data as non-migratable and note that if the customer's organization requires post-hire performance tracking, they should maintain this in a separate HRMS platform. We deliver a written summary of OrangeHRM performance review records for the customer's HR team to archive.
OrangeHRM
Onboarding and Offboarding Tasks
Crelate
Not Migrated (Flagged)
1:1Crelate is a recruiting platform and does not manage onboarding or offboarding task workflows. OrangeHRM task type definitions and per-employee task assignments are flagged as non-migratable. We extract task definitions as a CSV reference file and deliver it to the customer so their recruiting or HR team can manually reconstruct relevant pre-boarding tasks in Crelate or a separate onboarding tool.
OrangeHRM
Organization Structure (Reporting Lines)
Crelate
Contact Hierarchy or Custom Field
lossyOrangeHRM's supervisor-employee relationships define the organizational chart. We extract direct-report mappings and store the supervisor relationship as a custom lookup field on the Contact record in Crelate. For organizations with deep hierarchies, we export the full org chart as a CSV that can be loaded into Crelate's Contact hierarchy feature or used to build the org structure in a separate HRMS.
OrangeHRM
Work Schedules (OrangeHRM 7.13+)
Crelate
Not Migrated (Flagged)
1:1Work Schedule records from OrangeHRM 7.13 and later have no equivalent in Crelate. We flag schedule data as non-migratable and note that if the customer's recruiting team needs to track recruiter availability or interview scheduling preferences, Crelate's calendar integration (via Google Calendar or Outlook connectors) is the replacement mechanism rather than a structured schedule record.
OrangeHRM
Users and Admin Roles
Crelate
Not Migrated (Recreated)
1:1OrangeHRM user accounts and admin role assignments are system configuration, not HR data. They do not migrate. We deliver a written inventory of OrangeHRM user roles and their module access permissions for the customer to use as a reference when provisioning Crelate user accounts and assigning Crelate User Roles with API access enabled for any integration requirements.
OrangeHRM
Documents (Employee Files)
Crelate
File Attachments (on Contact)
1:1OrangeHRM stores employee document uploads (contracts, ID scans, certifications) as file references. We export document metadata (filename, type, upload date) and provide a file copy package transferred as a separate deliverable. Crelate supports file attachments on Contact records via its document storage. The customer's admin uploads the file package to Crelate after migration cutover and links documents to the appropriate Contact records.
| OrangeHRM | Crelate | Compatibility | |
|---|---|---|---|
| Employee (PIM) | Contact (type = Employee or Candidate)lossy | Fully supported | |
| Custom Fields (Employee Level) | Custom Fields (Contact)lossy | Mapping required | |
| Candidate (Recruitment Module) | Contact (type = Candidate)1:1 | Fully supported | |
| Vacancy (Recruitment Module) | Job1:1 | Fully supported | |
| Job Specification | Job Description or Custom Fieldlossy | Fully supported | |
| Application Status History | Activity Timeline or Pipeline Stagelossy | Fully supported | |
| Leave Entitlements and Requests | Not Migrated (Flagged)1:1 | Mapping required | |
| Attendance Records | Not Migrated (Flagged)1:1 | Mapping required | |
| Performance Reviews | Not Migrated (Flagged)1:1 | Mapping required | |
| Onboarding and Offboarding Tasks | Not Migrated (Flagged)1:1 | Mapping required | |
| Organization Structure (Reporting Lines) | Contact Hierarchy or Custom Fieldlossy | Mapping required | |
| Work Schedules (OrangeHRM 7.13+) | Not Migrated (Flagged)1:1 | Fully supported | |
| Users and Admin Roles | Not Migrated (Recreated)1:1 | Not supported | |
| Documents (Employee Files) | File Attachments (on Contact)1: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.
OrangeHRM gotchas
API access is Advanced-tier only
PHP max_execution_time blocks upgrades and imports on XAMPP
Timesheet module absent in Starter tier
Leave type normalization required across platforms
Onboarding task bulk upload requires Gold Support contact
Crelate gotchas
120 req/min API rate limit throttles bulk migrations
20 custom field per-entity cap forces data model decisions
15,000-record export ceiling on single operations
Sequences and automation workflows do not migrate
API key is a querystring parameter, not a header
Pair-specific challenges
Migration approach
Discovery and tier confirmation
We audit the source OrangeHRM instance for edition (Starter or Advanced), installed modules (PIM, Leave, Attendance, Recruitment, Performance), and record volumes per module. We confirm the OrangeHRM version and whether REST API v2 is available for extraction. We also confirm the customer's Crelate plan (Business, Business Plus, or Enterprise) and verify that API access is enabled in Crelate Settings | Advanced Settings | User Roles. The discovery output is a written migration scope listing migratable objects (Candidates, Vacancies, Employees), non-migratable objects (Leave, Attendance, Performance, Work Schedules, User accounts), and a custom field mapping specification for Crelate.
Crelate schema preparation
We provide the customer with a Crelate custom field specification to create in Settings | Core Records | Contacts before migration runs. This includes OrangeHRM custom field names, Crelate field names, data types (Text, Number, Picklist), and picklist option values. We also identify any Crelate pipeline stages to map from OrangeHRM application statuses. Crelate's admin creates the fields; we validate the schema before extraction begins to avoid mid-migration field creation delays.
Data extraction
For OrangeHRM Advanced tier customers, we use the REST API v2 with rate-limit handling and exponential backoff to extract Candidates, Vacancies, and Employees in paginated batches. For OrangeHRM Starter customers, we use the CSV export feature via the UI, parse each module's CSV output, and apply schema validation and type inference. We extract document metadata and file references separately and package them for manual upload to Crelate post-migration. We run a record-count reconciliation against OrangeHRM's module-level counts to confirm extraction completeness.
Transform and deduplication
We apply the mapping specification: OrangeHRM Candidates become Crelate Contacts (type = Candidate), OrangeHRM Employees become Crelate Contacts (type = Employee), and OrangeHRM Vacancies become Crelate Jobs. We run email-based deduplication across the merged Contact set, flagging records with matching emails but different names for customer resolution. Application status history from OrangeHRM transforms into Activity records on the Crelate Contact timeline. Leave, Attendance, and Performance records are excluded from the transform and documented in the non-migratable data inventory.
Test migration to Crelate sandbox
We run a full migration into a Crelate test environment using production-like data volume. The customer's recruiting lead reviews a sample of migrated Contacts and Jobs, validates field mapping accuracy, confirms that custom fields populated correctly, and spot-checks candidate-vacancy associations. We correct any mapping errors identified during test migration before the production cutover date. Test migration typically runs for 3-5 business days including customer review and sign-off.
Production migration and cutover
We freeze OrangeHRM write access during the cutover window. We run the final delta migration capturing any records modified since the test migration, load Contacts and Jobs into Crelate production, and run a row-count reconciliation report. The customer uploads the document file package to Crelate and links documents to Contact records. We deliver the non-migratable data inventory (Leave, Attendance, Performance, User roles) as a written document for the customer's HR team to archive or transfer to a separate HRMS. We support a 5-business-day hypercare window for reconciliation issues raised by the recruiting team.
Platform deep dives
OrangeHRM
Source
Strengths
Weaknesses
Crelate
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 OrangeHRM and Crelate.
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
OrangeHRM: Not publicly documented.
Data volume sensitivity
OrangeHRM 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 OrangeHRM to Crelate migration scoping. Not seeing yours? Book a call.
Walk through your OrangeHRM to Crelate migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave OrangeHRM
Other ways to arrive at Crelate
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.