HRMS migration
Field-level mapping, validation, and rollback between Folks HR and Recruit CRM & ATS. We move data and schema; workflows are rebuilt natively in Recruit CRM & ATS.
Folks HR
Source
Recruit CRM & ATS
Destination
Compatibility
7 of 10
objects map 1:1 between Folks HR and Recruit CRM & ATS.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Folks HR to Recruit CRM is a platform-category shift: Folks HR is a Canadian SMB HRIS that bundles recruitment alongside payroll, leave management, and performance reviews, while Recruit CRM is a dedicated recruitment agency ATS and CRM. The migration scope centers on the candidate pipeline, job records, and contact data that both platforms share. We flag the leave balances, time tracking entries, and performance review histories that have no natural home in Recruit CRM so your team can plan manual entry or accept archive-only status. We export from Folks HR's REST API at 60 requests per minute with batch chunking and OAuth 2.0 scope-based authentication, and load into Recruit CRM via its bulk import endpoints with parent-record resolution for companies and contacts before candidate records are inserted. Workflow configurations and custom accrual rules in Folks HR do not migrate; we deliver a written inventory of these for your admin to rebuild inside Recruit CRM.
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 Recruit CRM & ATS, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Folks HR
Recruitment Candidates
Recruit CRM & ATS
Candidate
1:1Folks HR Candidate records map directly to Recruit CRM Candidate profiles. We extract full candidate data including name, contact information, resume file, application status, interview scores, and the complete hiring stage history including all status transitions and timestamps. The Folks HR candidate ID is preserved in a custom field folks_hr_id__c on the Recruit CRM Candidate for cross-system audit. Resume files are downloaded individually (no bulk endpoint in Folks HR) and re-attached to the corresponding Recruit CRM Candidate record during the document migration phase.
Folks HR
Job Requisitions
Recruit CRM & ATS
Job
1:1Folks HR job requisition records map to Recruit CRM Job postings. We transfer job title, job description, department assignment, status (open, filled, on hold), and the date the requisition opened. Candidate-to-job associations are preserved as Recruit CRM Applications linked to the Job and the Candidate. If Folks HR stores job requirements as structured fields, we map them to the Recruit CRM job custom fields; unstructured rich-text requirements migrate as the job description body.
Folks HR
Candidate Applications
Recruit CRM & ATS
Application
1:1Each Folks HR application-to-requisition record maps to a Recruit CRM Application. The application status in Folks HR (applied, screening, interview, offer, hired, rejected) maps to the nearest Recruit CRM pipeline stage. We preserve the application date, the assigned recruiter, and any interview score or rating recorded against the application in Folks HR as notes or custom fields on the Recruit CRM Application.
Folks HR
Departments and Org Structure
Recruit CRM & ATS
Company
1:1Folks HR departments map to Recruit CRM Company records when the migration scope includes client or employer organization data. The Folks HR department name becomes the Company name, and the department manager assignment becomes the primary contact on the Recruit CRM Company. If Folks HR stores client companies separately from internal departments, we separate them during scoping so internal org units and external clients do not collide in the Recruit CRM Company list.
Folks HR
User Accounts and Roles
Recruit CRM & ATS
User
1:1Folks HR user accounts with role-based permissions (admin, manager, employee) map to Recruit CRM user accounts. We extract all active and recently inactive user records with their email, name, role assignment, and access level. Role names differ between platforms: Folks HR admin maps to Recruit CRM Admin, manager to Recruit CRM Recruiter, and employee to Recruit CRM Limited User. The customer's Recruit CRM admin provisions matching accounts before the migration cutover so OwnerId lookups resolve correctly on all candidate and job records.
Folks HR
Documents and Attachments
Recruit CRM & ATS
Document Attachments on Candidate and Job
lossyFolks HR stores candidate resumes, offer letters, and supporting documents as individual file attachments accessible by ID via the API. Recruit CRM accepts document uploads attached to Candidates, Jobs, and Applications. We download each file individually from Folks HR (no bulk download endpoint), preserve the original filename and MIME type, and upload to the corresponding Recruit CRM record. For migrations with hundreds of documents, this extends the timeline materially; we prioritize resume files and most-recent offer letters and flag the document download cycle during scoping.
Folks HR
Custom Fields and Properties
Recruit CRM & ATS
Custom Fields on Candidate, Job, Application, and Contact
lossyFolks HR custom field definitions and values on candidate profiles, job records, and employee objects are exported via API. We map each custom field to a corresponding Recruit CRM custom field, matching field types where possible (text to text, date to date, dropdown to picklist). Fields with no equivalent in Recruit CRM are flagged in the mapping document for the customer to either drop or create a new Recruit CRM custom field before migration. Field type mapping requires manual review because Folks HR and Recruit CRM use different type taxonomies.
Folks HR
Employees
Recruit CRM & ATS
Contact
1:manyFolks HR Employee records have no direct equivalent in Recruit CRM because Recruit CRM is a recruitment agency platform, not an HRIS. Employees who are also active candidates in the Folks HR recruitment pipeline migrate as Recruit CRM Candidates. Former employees or internal staff with no recruiting relationship migrate as Recruit CRM Contacts in the client's company list, with a custom field folks_hr_employee_id__c for record linkage. We apply this split based on the employee's current recruiting status in Folks HR at migration time.
Folks HR
Leave Requests and Balances
Recruit CRM & ATS
No equivalent object
1:1Folks HR leave types, accrual rules, and current balance snapshots have no natural home in Recruit CRM. Recruit CRM is purpose-built for recruitment workflows and does not expose a leave management object. We export the current leave balance snapshot per employee and the complete leave request history (dates, leave type, status, approver) as a structured CSV file delivered alongside the migration. The customer's HR team uses this file to enter balances manually in their chosen HR system, or accepts archive-only status for historical leave data.
Folks HR
Time Tracking and Timesheets
Recruit CRM & ATS
No equivalent object
1:1Folks HR time entries with date, hours, cost code, and employee association cannot migrate to Recruit CRM because Recruit CRM has no timesheet or time tracking object. We export the complete historical timesheet archive as a structured CSV file with employee name, date, hours, and cost code. This file is delivered alongside the migration for the customer's finance or HR team to archive in a separate system or spreadsheet. We flag this gap explicitly during scoping so it does not surface as a surprise post-migration.
| Folks HR | Recruit CRM & ATS | Compatibility | |
|---|---|---|---|
| Recruitment Candidates | Candidate1:1 | Fully supported | |
| Job Requisitions | Job1:1 | Fully supported | |
| Candidate Applications | Application1:1 | Fully supported | |
| Departments and Org Structure | Company1:1 | Fully supported | |
| User Accounts and Roles | User1:1 | Fully supported | |
| Documents and Attachments | Document Attachments on Candidate and Joblossy | Mapping required | |
| Custom Fields and Properties | Custom Fields on Candidate, Job, Application, and Contactlossy | Mapping required | |
| Employees | Contact1:many | Fully supported | |
| Leave Requests and Balances | No equivalent object1:1 | Mapping required | |
| Time Tracking and Timesheets | No equivalent object1: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.
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
Recruit CRM & ATS gotchas
API rate limits are license-scaled and can throttle bulk migration
Custom field schemas vary per organization and require field-level mapping
Files and email attachments require separate extraction and re-upload
Email sequences and automation logic do not transfer between platforms
Pair-specific challenges
Migration approach
Discovery and scoping
We audit the source Folks HR account for candidate record volume, job requisition count, document attachment inventory, user account list, and any active custom field definitions. We cross-reference against the customer's Recruit CRM target plan to identify which Folks HR modules are in scope for migration and which lack a Recruit CRM equivalent (leave, time tracking, performance reviews). The discovery output is a written migration scope document with record counts, document file counts, and an explicit gap list for non-migratable data. This phase also confirms the Folks HR API plan tier because OAuth 2.0 API access requires a Professional or Enterprise subscription.
Sandbox scoping and document prioritization
We run a sandbox migration against a trial Recruit CRM account using a representative subset of the candidate and job data. This validates the field mapping, confirms which custom fields exist or need to be created in Recruit CRM, and surfaces any Recruit CRM validation rules that would reject imported values. For document-heavy migrations, we produce a prioritized document list distinguishing mission-critical files (current resumes, active offer letters) from archive-only files (older performance reviews, training records) so that if the migration window tightens, the customer can decide what ships first.
Schema preparation in Recruit CRM
We work with the customer's Recruit CRM admin to create any missing custom fields on Candidate, Job, Application, and Contact objects before the production import begins. Custom fields are created with the correct type (text, picklist, date, number) based on the mapping review from discovery. User accounts matching the Folks HR user list are provisioned in Recruit CRM so that OwnerId lookups resolve at import time. We do not create workflows, automation rules, or pipeline stages as part of the migration scope; these are documented separately for the admin to configure.
Data extraction from Folks HR
We export candidate records, job requisitions, application associations, company and department data, user accounts, and custom field values from Folks HR via its REST API using OAuth 2.0 authentication. Requests are batched and throttled to 60 per minute with exponential backoff to handle 429 responses gracefully. Documents are downloaded individually by file ID in a separate process run in parallel with the record export, tracking completion by filename and candidate ID for reattachment in Recruit CRM.
Production migration and cutover
We run the production import into the live Recruit CRM account in dependency order: Users first (validated against the provisioning checklist), then Companies, then Jobs, then Candidates, then Applications linked to both Candidates and Jobs, then Documents attached to their parent records. Each phase emits a row-count reconciliation report comparing source record count to destination inserted count. Any records that fail validation are held in a correction queue for the admin to resolve before the next phase begins. We freeze Folks HR write access during the final cutover window to capture any last-minute changes as a delta import.
Gap inventory handoff and post-migration verification
We deliver a written gap inventory covering all non-migratable Folks HR data: leave balance snapshots as a dated CSV, time entry archives as a dated CSV, performance review records if any exist, and any custom fields that could not be mapped due to type incompatibility. We provide a written inventory of Folks HR automation configurations (if any exist on the Professional or Enterprise plan) with recommendations for equivalent Recruit CRM setup. We support a five-business-day post-migration verification window to address data quality issues raised by the customer's recruitment team after they begin working in Recruit CRM.
Platform deep dives
Folks HR
Source
Strengths
Weaknesses
Recruit CRM & ATS
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 Recruit CRM & ATS.
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 Recruit CRM & ATS migration scoping. Not seeing yours? Book a call.
Walk through your Folks HR to Recruit CRM & ATS 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 Recruit CRM & ATS
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.