HRMS migration
Field-level mapping, validation, and rollback between ZenApply and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
ZenApply
Source
Zoho Recruit
Destination
Compatibility
9 of 12
objects map 1:1 between ZenApply and Zoho Recruit.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from ZenApply to Zoho Recruit is a lateral-object migration: both platforms track Candidates, Jobs, and Applications, but ZenApply exposes no public REST API and stores video resume content as hosted URLs, while Zoho Recruit offers a documented REST API, a native CSV import tool, and 50+ native integrations. We begin by enumerating every active custom field in ZenApply through structured customer discovery, configure matching custom fields in Zoho Recruit under Setup > Customization > Modules, then load Candidates, link them to Job Openings, and attach applications with status history preserved. Video resume assets require active downloading during the migration window before the ZenApply account is deactivated. Interview scorecards, notes, and engagement records migrate as free-text notes attached to the relevant Candidate. Workflows, automations, and ZenApply's candidate rating or approval pipelines do not migrate as logic; we deliver a written inventory for the customer's admin to rebuild in Zoho Recruit's Blueprint and workflow tools post-migration.
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 ZenApply 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.
ZenApply
Candidates (Applicants)
Zoho Recruit
Candidates
1:1ZenApply Candidate records map to Zoho Recruit Candidates using the standard ATS mapping: First Name, Last Name, Email, Phone, and Address fields transfer directly. Any custom profile fields discovered during scoping map to Zoho Recruit custom Candidate fields created under Setup > Customization > Modules. ZenApply stores candidates with a video-first profile model; the video URL transfers as a candidate-level field, and the actual media file downloads and re-uploads separately. The candidate's original application source attribution (referral, job board, direct) maps to Zoho Recruit's Source field.
ZenApply
Jobs (Positions)
Zoho Recruit
Job Openings
1:1ZenApply Job records map to Zoho Recruit Job Openings. Job title, description, department, employment type (full-time, part-time, contract), and status (active, closed, on hold) transfer directly. ZenApply's CSV export does not include salary band data unless manually added during export preparation; we flag this gap during discovery and map any salary information as a custom Job Opening field. Job Opening status in Zoho Recruit maps from ZenApply's open/closed flag.
ZenApply
Applications
Zoho Recruit
Candidates linked to Job Openings
1:1ZenApply Application records are the join between Candidate and Job, carrying submission date, application status (new, screening, interview, offer, hired, rejected), and source attribution. We map Application status to Zoho Recruit's Candidate stage within the relevant Job Opening pipeline. Application submission timestamps migrate as activity records on the Candidate. If ZenApply's pipeline stages are customer-configured, we normalise them against Zoho Recruit's default stage values during field mapping.
ZenApply
Video Profiles
Zoho Recruit
Candidate Documents (Media)
lossyVideo resume assets are stored as ZenApply-hosted media URLs, not downloadable blobs. We flag every video URL during discovery, download each file to temporary secure storage during the migration window, and upload to Zoho Recruit's Document Library as a file attachment on the mapped Candidate record. This step is time-gated: video downloads and re-uploads must complete before the ZenApply account is deactivated, or the source URLs become invalid. Estimate one to two additional days per 100 video assets.
ZenApply
Custom Fields
Zoho Recruit
Custom Candidate Fields
lossyZenApply allows custom fields on candidate profiles per position or globally, but there is no admin schema export to enumerate them automatically. We conduct a structured discovery session with the customer's ZenApply admin to walk through every active application form and candidate profile editor, capturing field name, type, and current values for all custom properties. Each discovered custom field is pre-created in Zoho Recruit under Setup > Customization > Modules before any Candidate records are loaded, so that data types (text, picklist, date, numeric) are correctly configured and no records are rejected on import.
ZenApply
Interview Scorecards
Zoho Recruit
Interview Feedback Forms
1:1ZenApply scorecard data (ratings per criterion, overall score, reviewer name, review date, and comments) links to Application and Interviewer records. We map scorecard template structure and individual criterion ratings to Zoho Recruit Interview Feedback Forms. Reviewer comments transfer as free-text notes attached to the Candidate. Any numerical scores map to Zoho Recruit's numeric rating fields on the feedback form. If ZenApply scorecard templates vary by position, we document each template variant during discovery and create equivalent feedback forms in Zoho Recruit.
ZenApply
Notes
Zoho Recruit
Notes
1:1ZenApply free-form notes attached to Candidates migrate as Zoho Recruit Notes linked directly to the Candidate record via ContentDocumentLink. Note creation timestamps are preserved. Rich-text formatting in ZenApply notes converts to plain text in Zoho Recruit if the original contains HTML markup; we strip HTML tags during the transform step to avoid display issues.
ZenApply
Tasks
Zoho Recruit
Tasks
1:1ZenApply task records (status, due date, priority, owner, description) map to Zoho Recruit Tasks linked to the relevant Candidate or Job Opening. Task owner resolution matches by email against Zoho Recruit User records; any unmatched owners are flagged for the customer to provision before production migration. Recurring tasks migrate as a single Task with the recurrence pattern noted in the description field.
ZenApply
Calls
Zoho Recruit
Events (Call subtype)
1:1ZenApply call records migrate to Zoho Recruit Events with a call subtype indicator. Call duration, disposition, and outcome notes transfer to custom Event fields. The call date becomes the Event start date. Call recordings (if available as URLs in ZenApply) transfer as file attachments on the Event record.
ZenApply
Departments
Zoho Recruit
Departments
1:1ZenApply Department values on Jobs map to Zoho Recruit Department records. We create the Department structure in Zoho Recruit during schema design and link Job Openings to the correct Department on import. If ZenApply has a flat department structure with no dedicated Department object, we create Departments in Zoho Recruit from the distinct department values found on Job records.
ZenApply
Users (Hiring Team)
Zoho Recruit
Users
1:1ZenApply User records (name, email, role: Admin, Hiring Manager, Recruiter) map to Zoho Recruit User accounts. We resolve each ZenApply user by email match against the Zoho Recruit User table. If the destination Zoho Recruit account is new and has no Users yet, the customer's admin provisions accounts for each migrating team member before production migration. Role mapping (Admin to Zoho Recruit Administrator, Hiring Manager to Hiring Manager, Recruiter to Recruiter) is configured as part of the user provisioning step.
ZenApply
Attachments (Documents)
Zoho Recruit
Candidate Documents
lossyResume files, cover letters, portfolio attachments, and other document URLs stored in ZenApply are downloaded to temporary storage, then uploaded to Zoho Recruit's Document Library linked to the relevant Candidate record. We preserve original filenames and MIME types. Files larger than Zoho Recruit's attachment limits (25 MB per file) are flagged for the customer to store externally and reference via URL in a custom Candidate field.
| ZenApply | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Candidates (Applicants) | Candidates1:1 | Mapping required | |
| Jobs (Positions) | Job Openings1:1 | Mapping required | |
| Applications | Candidates linked to Job Openings1:1 | Fully supported | |
| Video Profiles | Candidate Documents (Media)lossy | Mapping required | |
| Custom Fields | Custom Candidate Fieldslossy | Mapping required | |
| Interview Scorecards | Interview Feedback Forms1:1 | Mapping required | |
| Notes | Notes1:1 | Fully supported | |
| Tasks | Tasks1:1 | Fully supported | |
| Calls | Events (Call subtype)1:1 | Fully supported | |
| Departments | Departments1:1 | Fully supported | |
| Users (Hiring Team) | Users1:1 | Mapping required | |
| Attachments (Documents) | Candidate Documentslossy | 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.
ZenApply gotchas
No public API schema or documented export endpoints
Video media assets stored as URLs, not files
Custom profile fields are customer-specific and require manual discovery
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 CSV export preparation
We audit the ZenApply admin dashboard with the customer's team lead to enumerate all active Job postings, candidate custom fields, video assets, scorecard templates, and any existing notes or attachment URLs. We provide a structured CSV export checklist that ensures the exporting admin includes every visible custom property in the export. We identify any fields that cannot be exported from ZenApply and flag them for manual re-entry in Zoho Recruit after migration. The discovery output is a written migration scope document and a pre-export field audit sign-off from the customer.
Zoho Recruit schema configuration
We configure the Zoho Recruit destination schema before any data loads. This includes creating custom Candidate fields under Setup > Customization > Modules to match every ZenApply custom profile property (text, picklist, date, numeric, or multi-select as appropriate), verifying the Job Opening field set, confirming the Department structure, creating Interview Feedback Forms that mirror ZenApply scorecard templates, and setting up the hiring pipeline stages. If the destination Zoho Recruit account is new, we also provision User accounts and assign roles. Schema configuration is validated in a pre-production state before candidate data is loaded.
Sandbox test migration
We run a test migration using a subset of ZenApply CSV data into a Zoho Recruit sandbox or trial account. We validate field mapping correctness across all standard and custom fields, verify that Candidate records link correctly to Job Openings, confirm that interview feedback forms capture scorecard data, and reconcile record counts. We identify any field type mismatches (a ZenApply text field that should map to a Zoho Recruit picklist, for example) and correct the mapping specification before production migration begins. This step prevents field rejection on the production import.
Video and attachment asset transfer
We download all video resume files from ZenApply-hosted URLs and all document attachments (resumes, cover letters, portfolios) to temporary encrypted storage. We re-upload each file to Zoho Recruit's Document Library and link it to the corresponding Candidate record. This step runs in parallel with the data migration and must complete before the ZenApply account is deactivated. We provide the customer with the date by which the ZenApply account must remain active to complete all asset transfers.
Production migration in dependency order
We load data into the production Zoho Recruit account in dependency order: Departments first (required by Job Openings), then Job Openings (required by Applications), then Candidates (standalone), then Applications linking Candidates to Job Openings, then Interview Feedback Forms, Tasks, Notes, and Document attachments. We use Zoho Recruit's native CSV import wizard for structured records and the REST API for custom field updates. Each phase emits a row-count reconciliation report. Any record rejected during import (missing required field, type mismatch) is logged, corrected, and reloaded within the same phase.
Cutover, validation, and rebuild handoff
We freeze writes to the ZenApply account during the final 24 hours before cutover and run a delta migration of any records modified during the migration window. We validate a random sample of migrated Candidates against the ZenApply source (name, email, phone, application status, custom field values, attachment presence). We deliver the written automation and workflow inventory document to the customer's admin team with Zoho Recruit Blueprint and Assignment Rule equivalents for each ZenApply configuration item. We offer a one-week post-migration support window to resolve reconciliation issues. We do not rebuild ZenApply automations inside the migration scope; that work is handled by the customer's admin or a Zoho partner post-migration.
Platform deep dives
ZenApply
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 ZenApply 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
ZenApply: Not publicly documented.
Data volume sensitivity
ZenApply 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 ZenApply to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your ZenApply 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 ZenApply
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.