HRMS migration
Field-level mapping, validation, and rollback between Sesame HR and Recruit CRM & ATS. We move data and schema; workflows are rebuilt natively in Recruit CRM & ATS.
Sesame HR
Source
Recruit CRM & ATS
Destination
Compatibility
8 of 10
objects map 1:1 between Sesame HR and Recruit CRM & ATS.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Sesame HR to Recruit CRM is a platform-family migration: Sesame HR is a broad HR suite (time tracking, leave, shifts, payroll prep, and recruitment) while Recruit CRM is a purpose-built applicant tracking and recruitment CRM. The migration centers on recruitment data, not general HR data. We extract Candidates, Job postings, and custom properties from Sesame HR and map them to Recruit CRM's Candidate, Contact, Company, and Job objects. Time entries, shift schedules, leave balances, PTO records, and payroll preparation data have no direct equivalent in Recruit CRM; we flag these clearly and deliver them as structured reference exports rather than forcing them into a schema that cannot hold them. Recruit CRM's rate limit (60 requests per minute on accounts with 6 or fewer licenses, 10 per minute per additional license) is lower than Sesame HR's shared 1,000-per-minute company limit, so we adjust our extraction throttle during the Sesame HR pull and our insert pacing during Recruit CRM load.
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 Sesame 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.
Sesame HR
Employee
Recruit CRM & ATS
Candidate
1:1Active and inactive employees migrate to Recruit CRM Candidate records with a custom boolean field hs_hr_employee__c set to true to distinguish HR-origin records from sourced candidates. Standard Candidate fields (first name, last name, email, phone, location) map 1:1 from Sesame HR Employee fields. We extract hire_date, department, job_title, and manager from Sesame HR and store them in Candidate custom fields candidate_hire_date__c, candidate_department__c, candidate_job_title__c, and candidate_manager__c. Employment status (active, terminated, on leave) maps to Candidate custom field candidate_employment_status__c. This mapping does not represent a full ATS-to-CRM conversion; it preserves the talent pool that may be tapped for future roles.
Sesame HR
Candidate / Vacancy
Recruit CRM & ATS
Job
1:1Sesame HR job postings and their associated candidates map to Recruit CRM Job records. Each Sesame HR vacancy becomes a Job with title, description, requirements, and status (open/closed/filled). We map Sesame HR's vacancy status to Recruit CRM Job status field: abierta maps to Open, cerrada maps to Closed, andcubierta maps to Filled. Active candidates per vacancy link to the Job via Recruit CRM's candidate_job association. If Sesame HR Starter tier is in use and more than 5 vacancies exist, we flag any hidden vacancies for manual extraction and plan upgrade or alternative sourcing.
Sesame HR
Candidate
Recruit CRM & ATS
Candidate (application stage)
1:1Candidate application history in Sesame HR (stage changes, interview notes, offer status) maps to Recruit CRM Candidate records with stage history preserved in custom fields and candidate notes. Recruit CRM's pipeline stages (Applied, Screening, Interview, Offer, Hired, Rejected) are used as the destination stage model; we map Sesame HR's internal stage labels to these equivalents using a customer-approved mapping table defined during scoping.
Sesame HR
Candidate / Employee tags
Recruit CRM & ATS
Hotlist
lossySesame HR allows custom tags and labels on employees and candidates. We extract all tags and map them to Recruit CRM Hotlist entries: each distinct tag becomes a Hotlist, and records carrying that tag are added to the corresponding Hotlist. Tag deduplication is applied during extraction so that identical labels do not create duplicate Hotlists in Recruit CRM.
Sesame HR
Custom properties
Recruit CRM & ATS
Custom Fields
1:1Sesame HR custom fields on Employee and Candidate records map to Recruit CRM Custom Fields on the Candidate object. We read the full custom field schema during discovery, including field type (text, number, date, picklist, multi-select), required flag, and any validation rules. Picklist and multi-select fields require a value-mapping table agreed with the customer; we apply the mapping during the transform step before Recruit CRM insert. New Custom Fields are created in Recruit CRM via the Custom Field API before any Candidate records are imported.
Sesame HR
Contracts
Recruit CRM & ATS
Candidate custom fields (contract data)
1:1Sesame HR Contract records (employment type, salary band, start/end dates) are extracted as a structured block and stored in Candidate custom fields on the corresponding migrated Employee record: contract_type__c, contract_start_date__c, contract_end_date__c, and contract_salary_band__c. These fields are informational in Recruit CRM and do not drive any native ATS logic; they are preserved for reference and audit purposes. If the customer requires a full HR system post-migration, contract data should be directed to a dedicated HRMS rather than overloading the ATS.
Sesame HR
Organizational chart
Recruit CRM & ATS
Recruiter (User) assignment
lossySesame HR's organizational chart is a hierarchical manager-subordinate structure. We extract it as a flat list of manager_id and employee_id relationships. In Recruit CRM, the hiring manager, recruiter, and team lead for each Job are set as Recruit CRM User assignments on the Job record. We match Sesame HR department heads to Recruit CRM Users by email and flag any unmatched managers for the customer's admin to provision.
Sesame HR
Time entries, shifts, leave records, PTO balances, payroll preparation
Recruit CRM & ATS
Reference export (no direct mapping)
1:1Time entries, shift schedules, absence records, PTO balances, and payroll preparation data have no native equivalent in Recruit CRM. Recruit CRM is an ATS and recruitment CRM, not an HRMS or payroll system. We export these records as structured CSV and JSON reference packages during the migration handoff. The customer directs these to their ongoing HRMS or payroll system separately. We document the field schema of each export so that the receiving system admin can build the import mapping.
Sesame HR
Reports / audit logs
Recruit CRM & ATS
Reference documents
1:1Sesame HR contract data reports, personal data history, and employment data history are exported as PDF and CSV reference artifacts. These are included in the migration package as read-only documents attached to the corresponding Candidate record in Recruit CRM where the API supports file attachment, or delivered as a separate document package for the customer's records. We do not recreate them as live reporting objects in Recruit CRM.
Sesame HR
Documents (contracts, ID copies, certificates)
Recruit CRM & ATS
Files
1:1Employee documents such as contracts, ID copies, and certificates are exported as binary files from Sesame HR. We attach them to the corresponding Candidate record in Recruit CRM via the Files API, preserving original filenames and file type. Files are associated with the Candidate record so that hiring managers and recruiters have access to pre-hire documentation within the ATS context. This is informational only; Recruit CRM does not have a native document management or compliance storage module.
| Sesame HR | Recruit CRM & ATS | Compatibility | |
|---|---|---|---|
| Employee | Candidate1:1 | Fully supported | |
| Candidate / Vacancy | Job1:1 | Fully supported | |
| Candidate | Candidate (application stage)1:1 | Fully supported | |
| Candidate / Employee tags | Hotlistlossy | Fully supported | |
| Custom properties | Custom Fields1:1 | Mapping required | |
| Contracts | Candidate custom fields (contract data)1:1 | Fully supported | |
| Organizational chart | Recruiter (User) assignmentlossy | Fully supported | |
| Time entries, shifts, leave records, PTO balances, payroll preparation | Reference export (no direct mapping)1:1 | Fully supported | |
| Reports / audit logs | Reference documents1:1 | Fully supported | |
| Documents (contracts, ID copies, certificates) | Files1: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.
Sesame HR gotchas
Rate limit shared across all company tokens
Starter tier caps recruitment at 5 positions
Payroll data requires downstream reconciliation
Enterprise tier minimum user count gates key features
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 tier verification
We audit the Sesame HR tenant for plan tier (Starter/Professional/Enterprise), active vacancy count, candidate record volume, custom field schema on Employee and Candidate objects, tag and label taxonomy, and any existing API integrations hitting the platform concurrently. We verify whether any vacancies are hidden by the Starter 5-position cap. We establish the Recruit CRM account tier and resulting API rate limit (60 rpm or 10 per license) before designing extraction and load pacing. The discovery output is a written migration scope document covering record counts, custom field inventory, and any data that has no Recruit CRM destination (time, leave, payroll).
Stage mapping design and Recruit CRM custom field provisioning
We design the candidate stage mapping table: each Sesame HR internal stage label maps to a Recruit CRM ATS pipeline stage via a customer-approved table. We create all required Recruit CRM Custom Fields via the API (text, number, date, picklist, multi-select) before any candidate records are inserted. Tags from Sesame HR are mapped to Recruit CRM Hotlists during this phase, with deduplication applied. Recruit CRM is a Sandbox-free platform by default; we validate the schema and mapping in a Recruit CRM staging environment or by running the first batch against a test account before production load.
Data extraction with rate-limit management
We extract all candidate and job records from Sesame HR via the API with chunked pagination to stay well under the 1,000 requests per minute company-level limit. Extraction runs during off-peak hours relative to the customer's existing Sesame HR integrations. We extract time entries, leave records, shift schedules, payroll preparation data, and org chart as separate reference packages for delivery as CSV and JSON, not as Recruit CRM imports. Employee records are extracted as candidates with the hs_hr_employee__c flag set.
Transform and stage mapping application
We apply the approved stage mapping table to all candidate records. Custom field value mapping (for picklist and multi-select fields) is applied per the scoping agreement. Tags are translated into Recruit CRM Hotlist memberships. Contract data is embedded into Candidate custom fields. Manager-subordinate relationships from the org chart are translated into Recruit CRM User assignments on Job records. Any records that reference inactive departments or unlinked managers are flagged in a pre-load reconciliation report for the customer to resolve before production insert.
Production load with rate-limit pacing
We insert records into Recruit CRM in dependency order: Custom Fields first, then Candidates, then Jobs, then Hotlist memberships, then file attachments. Each batch is paced to stay within Recruit CRM's rate limit (monitored via the X-RateLimit-Remaining header on every response). We implement exponential backoff on 429 responses. Active Sesame HR writes are frozen during the production load window. After each batch, we emit a reconciliation report comparing Sesame HR record count by type against Recruit CRM inserted count to confirm completeness.
Cutover, reference export delivery, and automation inventory
We deliver the time-entry, leave, shift, payroll preparation, and org chart reference packages as structured CSV and JSON with schema documentation for the customer's ongoing HRMS or payroll system. We deliver a written inventory of any Sesame HR recruitment automations, pipeline rules, or workflow triggers in scope, noting that Recruit CRM's automation model differs and these require rebuild by the customer's admin. We conduct a final delta sync of any records modified during the migration window, validate record counts in Recruit CRM, and hand off. We do not provide post-migration admin support, training, or workflow rebuild as standard scope.
Platform deep dives
Sesame 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 Sesame 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
Sesame HR: Not publicly documented as a single numeric ceiling on the official API docs..
Data volume sensitivity
Sesame 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 Sesame HR to Recruit CRM & ATS migration scoping. Not seeing yours? Book a call.
Walk through your Sesame 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 Sesame 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.