HRMS migration
Field-level mapping, validation, and rollback between Folks HR and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
Folks HR
Source
Zoho Recruit
Destination
Compatibility
8 of 13
objects map 1:1 between Folks HR and Zoho Recruit.
Complexity
BStandard
Timeline
2-3 weeks
Overview
Moving from Folks HR to Zoho Recruit is an HRIS-to-ATS architectural shift, not a lateral platform swap. Folks HR stores Candidates as part of a full employee-lifecycle HRMS covering recruitment through performance reviews; Zoho Recruit is a purpose-built applicant tracking system with Candidate, Job Opening, Client (staffing), Interview, and Task modules. We extract the recruiting subset from Folks HR—Candidates, job requisitions, application history, interview scores, and resume attachments—and map them into Zoho Recruit's standard modules. Leave balances, time entries, performance reviews, and expense reports have no Zoho Recruit equivalent and are flagged as out-of-scope or routed to Zoho People if the customer maintains that integration. Workflows and approval chains built in Folks HR do not migrate; we deliver a written inventory for the customer's admin to configure in Zoho Recruit's workflow builder 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 Folks HR 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.
Folks HR
Candidates
Zoho Recruit
Candidate
1:1Folks HR Candidates with application status, resume uploads, interview scores, and hiring stage map directly to Zoho Recruit Candidate records. Application status values from Folks HR are mapped to Zoho Recruit Candidate status picklist (Active, Interview, Offer, Hired, Rejected). The full status transition history migrates as a custom multi-line text field or note attachment for audit. Resume files (stored as document attachments in Folks HR) are downloaded individually per the Folks HR API (no bulk download endpoint) and uploaded to Zoho Recruit's Candidate attachment model. We sequence file retrieval across multiple sessions to stay within the 60 req/min rate limit on the source.
Folks HR
Active Job Postings
Zoho Recruit
Job Opening
1:1Folks HR does not expose a formal Job Opening or requisition object; active job postings exist as part of the recruitment module but lack the structured requisition workflow (approval routing, hiring team assignment, interview schedule) that Zoho Recruit models explicitly. We extract active postings from Folks HR and create corresponding Zoho Recruit Job Opening records with title, department, location, employment type, and description. Job Opening status (Open, On Hold, Closed, Cancelled) is set based on the Folks HR posting active/inactive flag. The hiring manager assignment maps from the Folks HR recruiter owner to Zoho Recruit's Hiring Manager field.
Folks HR
Candidate to Job Association
Zoho Recruit
Candidate-Job Opening Linkage
lossyFolks HR tracks which Candidates apply to which postings but the association structure is implicit in the application history. We reconstruct the Candidate-to-Job Opening linkage in Zoho Recruit by creating Job Application records that link each migrated Candidate to the corresponding Job Opening. Application date, current stage, and last activity date are preserved. This step is essential for staffing agencies where the same Candidate may apply to multiple Job Openings across clients.
Folks HR
Interview Scores and Feedback
Zoho Recruit
Interview + Custom Score Fields
lossyFolks HR stores interview scores and reviewer feedback per Candidate. Zoho Recruit's Interview module captures interviewer, date, type, and feedback; score values migrate to custom fields on the Interview record. We create Zoho Recruit custom fields (if not already present) to capture each Folks HR rating dimension and map the values preserving the reviewer assignment. If Folks HR uses a 360-degree feedback model, we create multiple Interview records per Candidate per round.
Folks HR
Departments
Zoho Recruit
Department (Zoho People) or Candidate Custom Field
lossyFolks HR Departments map to Zoho Recruit Department values if Zoho People is co-deployed. If the migration scope is Zoho Recruit standalone without Zoho People integration, Departments are stored as a custom picklist field on the Job Opening and optionally on Candidate for segmentation. We configure the Department field during the Zoho Recruit schema setup phase before any candidate import.
Folks HR
User Accounts and Roles
Zoho Recruit
Zoho Recruit User
1:1Folks HR User accounts with role-based permissions (admin, manager, employee) are exported and matched to Zoho Recruit Users by email address. Recruiter and Hiring Manager roles from Folks HR map to Zoho Recruit's recruiter profile assignment. Any Folks HR user without a matching Zoho Recruit User is flagged in a reconciliation queue for the customer's admin to provision before candidate import resumes, because OwnerId references on Candidates and Job Openings must be satisfied at insert time.
Folks HR
Employee Records
Zoho Recruit
Zoho People Employee (separate integration scope)
1:1Folks HR Employee records (current employees who are not candidates) do not map into Zoho Recruit's ATS object model. If the destination includes Zoho People, Employees migrate separately through the Zoho People migration module. We flag this as a parallel migration scope and note that the Folks HR employee export should be scoped separately from the recruitment export to avoid candidate record duplication when a former candidate becomes a hired Employee.
Folks HR
Custom Fields on Candidates
Zoho Recruit
Candidate Custom Fields
lossyFolks HR custom fields defined on the Candidate object migrate as Zoho Recruit Candidate custom fields. Field type mapping is required during the configuration phase: Folks HR text fields map to Zoho Recruit single-line or multi-line text; dropdown fields map to picklist; date fields map to date. We extract the full custom field schema from Folks HR during scoping, pre-create the equivalent fields in Zoho Recruit, and document any field type changes for the customer to approve before the migration run.
Folks HR
Leave Requests and Balances
Zoho Recruit
None (out of scope)
1:1Folks HR Leave Requests and accrual balances have no equivalent object in Zoho Recruit's ATS model. The leave balance calculation logic is server-side in Folks HR and not fully exposed via API, so we can only export current balance snapshots and request history. If the customer is also deploying Zoho People, leave data is a separate migration scope. If Zoho Recruit standalone, we document the gap and recommend the customer's HR admin manually configure leave types in Zoho People or accept the absence of leave tracking in the ATS.
Folks HR
Time Entries and Timesheets
Zoho Recruit
None (out of scope)
1:1Folks HR time tracking data (employee time entries by date, hours, and cost code) has no ATS equivalent in Zoho Recruit. This data is out of scope for a Folks HR to Zoho Recruit migration. If the customer's organization requires time tracking post-migration, we recommend evaluating Zoho People as a complementary HRMS layer or documenting the gap in the migration handoff checklist for the customer's HR leadership to address separately.
Folks HR
Performance Reviews
Zoho Recruit
None (out of scope)
1:1Folks HR performance review cycles, 360-degree feedback ratings, and review form history do not map into Zoho Recruit's ATS object model. Zoho Recruit is scoped to the talent acquisition lifecycle; performance management sits in Zoho People. We flag this as out-of-scope and recommend a separate Zoho People migration engagement if performance review history must be preserved. Review history is not lost—it remains accessible in Folks HR export files—but is not migrated into Zoho Recruit.
Folks HR
Expense Reports
Zoho Recruit
None (out of scope)
1:1Folks HR expense reports with line items, receipts, amounts, and approval status are an HRMS feature with no ATS equivalent in Zoho Recruit. Receipts in Folks HR require individual-file download (no bulk export), compounding the 60 req/min rate limit challenge if a customer requests expense migration. We recommend routing expense report migration to a separate scope targeting Zoho Expense or Zoho Books if the customer uses the Zoho finance suite. If this is a requirement, we scope it independently during discovery.
Folks HR
Document Attachments (Candidates)
Zoho Recruit
Candidate Attachments
lossyFolks HR document attachments for Candidates—resumes, cover letters, offer letters, portfolio files—are stored individually per record and retrievable only by explicit file ID via API. For migrations involving hundreds of candidate documents, we iterate through the file list and download each file in sequence with throttling to respect the 60 req/min limit. We then upload each file to the corresponding Zoho Recruit Candidate record as a Candidate Attachment. Document filenames are preserved to maintain traceability. We recommend customers prioritize high-value document types (resumes and offer letters) first if document migration must be phased due to volume.
| Folks HR | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Candidates | Candidate1:1 | Fully supported | |
| Active Job Postings | Job Opening1:1 | Fully supported | |
| Candidate to Job Association | Candidate-Job Opening Linkagelossy | Fully supported | |
| Interview Scores and Feedback | Interview + Custom Score Fieldslossy | Fully supported | |
| Departments | Department (Zoho People) or Candidate Custom Fieldlossy | Fully supported | |
| User Accounts and Roles | Zoho Recruit User1:1 | Fully supported | |
| Employee Records | Zoho People Employee (separate integration scope)1:1 | Fully supported | |
| Custom Fields on Candidates | Candidate Custom Fieldslossy | Fully supported | |
| Leave Requests and Balances | None (out of scope)1:1 | Mapping required | |
| Time Entries and Timesheets | None (out of scope)1:1 | Fully supported | |
| Performance Reviews | None (out of scope)1:1 | Fully supported | |
| Expense Reports | None (out of scope)1:1 | Mapping required | |
| Document Attachments (Candidates) | Candidate Attachmentslossy | 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.
Folks HR gotchas
API rate limit of 60 requests per minute
Document attachments require individual retrieval
No SSO forces email-based two-factor login
Leave balance calculations not exposed via API
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 scoping
We audit the source Folks HR portal for active Candidates, job postings, application history, interview score records, document attachment inventory, and user accounts with recruiter or hiring manager roles. We identify the total candidate count, average attachments per candidate, current job openings, and any custom fields defined on the Candidate object. We also assess whether a parallel Zoho People migration is in scope for employee, leave, time, and performance data, or whether Zoho Recruit is the sole destination. The discovery output is a written migration scope with record counts, document volume, and a clear out-of-scope list.
Schema setup in Zoho Recruit
We configure the Zoho Recruit destination environment before any data moves. This includes creating any missing custom fields on the Candidate module to match Folks HR custom field definitions, configuring Job Opening status values and department picklist entries, setting up Interview custom score fields, defining the recruiter and hiring manager user roles, and—if Zoho People is co-deployed—configuring the Zoho People integration for Candidate-to-Employee conversion. All schema work is validated in a Zoho Recruit sandbox or staging environment before production migration begins.
Owner reconciliation and user provisioning
We extract every distinct Folks HR user with a recruiter or hiring manager role and match them to Zoho Recruit Users by email address. Owners without a matching Zoho Recruit User are placed in a reconciliation queue for the customer's admin to provision before candidate import. OwnerId references on Candidates and Job Openings must be satisfied at insert time; any unresolved owner causes the record to fail validation. We validate the user mapping before the first candidate migration run to prevent mid-migration stalls.
Candidate and Job Opening migration
We export active Candidates and job postings from Folks HR via paginated API calls throttled to the 60 req/min limit. Candidates are mapped to Zoho Recruit Candidate records with status transformation, custom field mapping, and hiring stage preserved. Job Openings are reconstructed from active postings and inserted into Zoho Recruit with department, location, and hiring manager assigned. The Candidate-to-Job Opening linkage is created via Zoho Recruit Job Application records linking each candidate to their associated opening. This phase produces a row-count reconciliation report before proceeding.
Document attachment migration
We download candidate attachments individually by file ID from Folks HR with rate-limit throttling. Resume files are prioritized first, followed by cover letters and offer letters. Files are uploaded to the corresponding Zoho Recruit Candidate record as attachments. For large document archives (hundreds to thousands of files), we run attachment migration in a dedicated session and phase by attachment type. We surface the file count and estimated attachment-migration duration during scoping so customers can decide whether to prioritize a subset of documents or proceed with the full archive.
Cutover, validation, and workflow rebuild handoff
We freeze Folks HR writes during cutover and run a final delta migration for any candidate records modified during the migration window. We validate record counts in Zoho Recruit against source exports and spot-check 25-50 candidate records for field-level accuracy. We deliver the written Workflow and automation inventory for Folks HR recruitment workflows (if any exist) mapped to Zoho Recruit workflow equivalents, noting that Zoho Recruit's workflow builder covers task assignment and email alerts but not the full conditional logic of Folks HR's HRMS workflow engine. We do not rebuild workflows as part of the migration scope.
Platform deep dives
Folks HR
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 Folks HR 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
Folks HR: 60 requests per minute per organization.
Data volume sensitivity
Folks HR 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 Folks HR to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your Folks HR 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 Folks HR
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.