HRMS migration
Field-level mapping, validation, and rollback between Eploy and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
Eploy
Source
Zoho Recruit
Destination
Compatibility
10 of 12
objects map 1:1 between Eploy and Zoho Recruit.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Eploy to Zoho Recruit is a data-model remapping exercise across two ATS platforms with different pricing philosophies and schema conventions. Eploy's flat-rate UK-market positioning (£695/month entry) contrasts with Zoho Recruit's per-seat model ($25-$75/user/month with a free tier), creating immediate cost divergence for mid-to-large hiring teams. We map Eploy's Candidates, Jobs, Offers, and Talent Pools into Zoho Recruit's corresponding modules, resolve the Last Name mandatory-field requirement that causes silent record skips when candidate first names exist without last names, and remap Eploy's custom workflow stage names into Zoho Recruit's pipeline stage values. Document attachments (resumes, cover letters, compliance files) require a download-then-upload pass because neither platform exposes them as inline blobs. We do not migrate Eploy Workflows or Hiring Manager Portal role assignments as automation; we deliver a written inventory of both for the customer's admin to rebuild in Zoho Recruit's Blueprint and workflow rules.
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 Eploy object lands in Zoho Recruit, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Eploy
Job Requisition
Zoho Recruit
Job Opening
1:1Eploy Jobs map directly to Zoho Recruit Job Openings. We preserve job title, department, location, salary bands, and the associated workflow assignment. Custom job fields (Eploy's custom property schema) map to Zoho Recruit custom fields on the Job Opening module; Zoho Standard allows up to 50 custom fields per module on the Standard plan, and up to 300 on Enterprise. If Eploy custom field count exceeds the destination limit, we collapse secondary fields into a JSON blob stored in a Notes field and document the collapse for the customer's admin to address post-migration.
Eploy
Candidate
Zoho Recruit
Candidate
1:1Eploy Candidate records map to Zoho Recruit Candidates with a critical gap: Last Name is mandatory in Zoho Recruit and any record without a Last Name value is silently ignored during import. We detect missing Last Name values during extraction, flag them in the migration report, and either split full-name fields where available or write 'Not Provided' as a placeholder per Zoho Recruit's own migration documentation. Contact details, skills, application history, and status fields map 1:1. Duplicate candidate detection uses email as the dedupe key, consistent with Zoho Recruit's standard import behaviour.
Eploy
Workflow Stage
Zoho Recruit
Pipeline Stage
lossyEploy workflow stages are fully custom per organisation with no canonical list in the API; we discover them by querying active job records and aggregating distinct stage values into a mapping table during scoping. Each Eploy stage maps to a Zoho Recruit pipeline stage value that we configure in Setup > Recruit > Pipelines before migration. Stage transition timestamps from Eploy migrate as audit timestamps on the candidate record. We require customer confirmation of the stage mapping table before any candidate records are written to Zoho Recruit.
Eploy
Offer
Zoho Recruit
Offer
1:1Eploy Offer records (salary, start date, role details, e-signature status) map to Zoho Recruit Offer records, which are available from the Standard plan upwards. We migrate active offers and preserve the e-signature audit trail where the API exposes it. Zoho Recruit's Offer module supports offer letter templates (50 at Standard, 100 at Enterprise); we map Eploy's offer letter references to the nearest equivalent template or store the original Eploy document as an attachment on the Offer record.
Eploy
Hiring Manager Portal
Zoho Recruit
User (Staffing Agency) or Zoho Recruit Portal
1:1Eploy's Hiring Manager Portal assignments (specific users tied to jobs and workflow stages) map to Zoho Recruit User assignments on Job Openings and as Hiring Manager portal access. Role-based permissions in Eploy may not translate directly; we flag any role that has no Zoho Recruit equivalent (for example, Eploy-specific workflow escalation roles) in the migration report. Customer admin resolves these during the post-migration configuration window.
Eploy
Onboarding Record
Zoho Recruit
Candidate (Convert to Employee) or Notes
lossyEploy's onboarding module lives in a separate schema that may not expose all fields via the standard API. New hire information, reference collection, and contract status that are accessible via API migrate as structured fields on the Zoho Recruit Candidate record. We flag any onboarding objects that return partial schemas and recommend manual CSV export for compliance documents and reference records that cannot be extracted automatically, because Zoho Recruit does not have a separate onboarding module and converts candidates directly to employees in Zoho People.
Eploy
Employee Referral
Zoho Recruit
Candidate (Referral Source)
1:1Eploy referral records link an employee to a referred candidate with reward status. We preserve referral attribution by writing the referring employee's name to a Zoho Recruit custom field (for example, referral_source__c) and setting the Candidate Source to 'Employee Referral'. The reward status maps to a custom picklist or text field since Zoho Recruit's standard Source field does not carry reward status natively.
Eploy
Talent Pool
Zoho Recruit
Tag or Custom Candidate Field
1:1Eploy Talent Pools are saved candidate collections used for future roles. We migrate pool memberships by writing each pool name as a Zoho Recruit Tag on the Candidate record, preserving the candidate-to-pool association. If the customer uses Talent Pools as formal segments with shared attributes, we alternatively create a custom multi-select picklist field on the Candidate module to represent pool membership, with the choice made during scoping.
Eploy
Custom Property
Zoho Recruit
Custom Field
1:1Eploy organisations add custom fields to jobs, candidates, and other objects. We detect the full custom property schema during discovery and create corresponding custom fields in Zoho Recruit's module builder before migration. Field type mapping applies: text maps to single-line text, multi-select maps to multi-select picklist, date maps to date, and numeric maps to number. Fields that cannot map directly (for example, Eploy-specific structured data types with no Zoho equivalent) are serialised into a JSON text field with documentation provided to the customer's admin.
Eploy
Assessment
Zoho Recruit
Candidate Custom Field or Attachment
1:1Assessment scores and results attached to candidate records in Eploy migrate as structured custom fields on the Zoho Recruit Candidate module where the API exposes numerical or categorical scores. Visual assessment scores that lack a structured API equivalent are migrated as attachments with the original filename preserved, so the information is not lost even if the scoring format does not transfer cleanly. The customer admin can then configure Zoho Recruit's native assessment integration post-migration if desired.
Eploy
Document / Attachment
Zoho Recruit
Attachment on Candidate or Job Opening
1:1Resume and document attachments in Eploy are served as download URLs rather than inline blobs. We enumerate all attachment URLs per candidate record, download each file to temporary encrypted storage, then upload to Zoho Recruit's attachment endpoint linked to the corresponding Candidate or Job Opening record. Filenames and the association back to the parent record are preserved. For compliance-heavy sectors with hundreds of attachments per candidate, this pass extends migration time and requires storage headroom; we scope this separately during discovery.
Eploy
Communication History
Zoho Recruit
Notes or Tasks on Candidate
1:1Email and SMS threads tied to candidates in Eploy migrate as Zoho Recruit Notes linked to the Candidate record, preserving email content and timestamps. Formatting may flatten in transit; we document the formatting transformation for the customer's admin. SMS content migrates as Notes with an sms: prefix in the note title to distinguish it from email threads. This approach mirrors Zoho Recruit's own data migration documentation, which maps communication history to the Notes module.
| Eploy | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Job Requisition | Job Opening1:1 | Fully supported | |
| Candidate | Candidate1:1 | Fully supported | |
| Workflow Stage | Pipeline Stagelossy | Fully supported | |
| Offer | Offer1:1 | Fully supported | |
| Hiring Manager Portal | User (Staffing Agency) or Zoho Recruit Portal1:1 | Fully supported | |
| Onboarding Record | Candidate (Convert to Employee) or Noteslossy | Fully supported | |
| Employee Referral | Candidate (Referral Source)1:1 | Fully supported | |
| Talent Pool | Tag or Custom Candidate Field1:1 | Fully supported | |
| Custom Property | Custom Field1:1 | Fully supported | |
| Assessment | Candidate Custom Field or Attachment1:1 | Fully supported | |
| Document / Attachment | Attachment on Candidate or Job Opening1:1 | Fully supported | |
| Communication History | Notes or Tasks on Candidate1:1 | Mapping required |
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.
Eploy gotchas
API rate limits cap daily call volumes per tier
API keys are tied to individual user records
Onboarding module data may live in a separate schema
Custom workflow stages require mapping table creation
Document attachments require separate download-then-upload passes
Zoho Recruit gotchas
Daily API rate limits are tier-gated and per-user capped
User import hard cap of 2,000 records
Attachment folder hierarchy must be preserved exactly
Resume parsing quota varies by plan and resets daily
Custom fields unavailable in Free and Standard editions
Pair-specific challenges
Migration approach
Discovery and data audit
We audit the source Eploy portal across subscription tier (to determine API rate limit tier), candidate volume, job requisition count, onboarding module presence, custom property schemas, workflow stage names aggregated from active jobs, talent pool list, document attachment count per candidate, and any active hiring manager portal assignments. We pair this with a Zoho Recruit edition check (Free/Standard/Professional/Enterprise) to confirm that destination custom field limits (50 on Standard, 300 on Enterprise) accommodate the Eploy custom property schema without collapse. The discovery output is a written migration scope confirming record counts per module, any gaps requiring manual export, and the Zoho Recruit plan recommendation.
Service account provisioning and API pre-flight
We request a dedicated Eploy service account with read permissions across all objects (Jobs, Candidates, Offers, Onboarding, Talent Pools, Custom Properties) and verify the API key validity in a pre-flight test that extracts a sample of 50 records across all modules. We also confirm the subscribed API rate limit tier so that our migration workers throttle to the correct daily cap. If the Eploy account uses Tier 1 (1,000 calls/day), we scope a longer migration window; Tier 4 (50,000 calls/day) allows faster throughput. We document the service account requirements in the pre-flight report and do not begin extraction until the account is confirmed active.
Schema preparation in Zoho Recruit
We configure the Zoho Recruit destination schema before any data import begins. This includes creating custom fields on Job Opening and Candidate modules to receive Eploy custom properties, configuring pipeline stages in Setup > Recruit > Pipelines mapped from the Eploy stage mapping table confirmed by the customer, creating custom fields for referral source and reward status, and confirming that mandatory fields (Last Name) have either source values or 'Not Provided' placeholders assigned. Zoho Recruit's field type constraints (date formats, picklist values) are validated against the Eploy source data types during this phase so that type-mismatch errors are caught before record insertion.
Document download pass and attachment staging
We enumerate all document attachment URLs from the Eploy candidate API, download each file to AES-256-encrypted temporary storage, and validate file integrity (size, MIME type) before staging for upload. We build an attachment manifest linking each downloaded file to its parent Eploy candidate record and the corresponding Zoho Recruit Candidate record ID (resolved after candidate insertion). Large attachment volumes (over 5,000 total files) are staged in batches to manage storage costs. This pass runs in parallel with the candidate record extraction to compress total migration time.
Production migration in dependency order
We run production migration in record-dependency order: Job Openings first (no dependencies), then Candidates (with Last Name remediation applied), then Offers, then Talent Pool tags applied to Candidate records, then communication history as Notes, then document attachments linked to their parent records. Each phase emits a row-count reconciliation report comparing Eploy source counts to Zoho Recruit destination counts. Any module with a discrepancy greater than 1% triggers a root-cause investigation before the next phase begins. Workflow stages and hiring manager assignments are migrated last as they depend on both Job Opening and User records being fully loaded.
Cutover, validation, and Workflow rebuild handoff
We freeze Eploy writes during cutover, run a final delta migration of any records created or modified during the migration window, then enable Zoho Recruit as the system of record. We deliver a Workflow and Automation Inventory document listing every active Eploy workflow with its trigger conditions, stage sequence, and recommended Zoho Recruit Blueprint equivalent. We deliver a separate Onboarding Module Gap Report listing any records that could not be extracted automatically with manual export instructions. We support a one-week hypercare window for reconciliation issues. We do not rebuild Eploy workflows as Zoho Recruit Blueprint or workflow rules inside the migration scope; that work is handled by the customer's admin using the inventory document we provide.
Platform deep dives
Eploy
Source
Strengths
Weaknesses
Zoho Recruit
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 Eploy and Zoho Recruit.
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
Eploy: 10 requests per second; daily tier caps of 1,000 / 5,000 / 10,000 / 50,000 depending on subscribed tier.
Data volume sensitivity
Eploy 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 Eploy to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your Eploy to Zoho Recruit migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Eploy
Other ways to arrive at Zoho Recruit
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.