HRMS migration

Migrate from Fountain to Zoho Recruit

Field-level mapping, validation, and rollback between Fountain and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.

Fountain logo

Fountain

Source

Zoho Recruit

Destination

Zoho Recruit logo

Compatibility

75%

9 of 12

objects map 1:1 between Fountain and Zoho Recruit.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Fountain to Zoho Recruit means trading a purpose-built frontline hiring platform for a more general-purpose ATS that integrates natively with the broader Zoho ecosystem. Fountain organizes hiring by Location and Department with multi-stage pipeline automation; Zoho Recruit uses a more flexible Candidates module with configurable pipelines and job openings tied to departments. We extract Fountain applicants as Zoho Recruit candidates, preserve the stage progression history as custom fields on each candidate record, and handle the readOnly attribute gap by flagging system-controlled fields that cannot land as editable values in Zoho. Fountain's automation rules (auto-advance stages, email triggers, task creation per stage) are not exposed via Fountain's public API, so we document every active workflow configuration for manual rebuild in Zoho Recruit's Workflow Rules. Documents, offers, and notes migrate as attachments and custom fields; workflow sequences, email templates, and reporting dashboards do not migrate as code and are inventoried for the customer's admin to rebuild.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Fountain logo

Fountain

What's pushing teams away

  • Steep initial learning curve despite intuitive day-to-day use — the breadth of features takes time to configure correctly before teams see value.
  • Formatting and UX for messaging and email templates feels clunky compared to dedicated email tools, requiring workaround styling for branded candidate communications.
  • Lack of native Slack integration frustrates ops teams that rely on real-time notifications for candidate status changes and approvals.
  • Activity timestamps and audit logs are difficult to locate and export, creating compliance challenges for regulated industries that need hiring record retention.
  • Focus on mass recruitment limits suitability for organizations needing specialized or executive-level hiring workflows that require more customization.

Choosing

Zoho Recruit logo

Zoho Recruit

What's pulling them in

  • Lowest cost entry point of any major ATS — a free tier with Candidates, Clients, Contacts, Interviews, and a career site lets small teams validate before committing to a paid plan.
  • Deep Zoho ecosystem integration — if the team already uses Zoho CRM, Sheets, or Analytics, candidate data flows between modules without re-keying or third-party middleware.
  • Customizable pipelines and stages — both agency and corporate editions let users define custom pipeline stages and assign candidates through drag-and-drop visual boards.
  • AI-assisted features via Zia — resume parsing, candidate summarization, and job-candidate matching are built in on paid tiers, reducing manual screening time.
  • Job board aggregation at no extra cost — paid tiers include postings to major job boards, extending reach without purchasing separate job ad bundles.

Object mapping

How Fountain objects map to Zoho Recruit

Each row shows how a Fountain 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.

Fountain

Applicant

maps to

Zoho Recruit

Candidate

1:1
Fully supported

Fountain's Applicant records map directly to Zoho Recruit's Candidate module. Each Applicant's contact details (name, email, phone, address) map to the corresponding Candidate fields. Fountain's applicant status (Applied, Screening, Interview, Offer, Hired, Rejected) maps to Zoho Recruit's Candidate Status picklist values, which we configure during schema setup to match Fountain's stage names. Note: Fountain applicants without a last name will be rejected by Zoho Recruit because Last Name is mandatory; we flag these during discovery and insert 'Not Provided' as a placeholder so the record is not dropped during import.

Fountain

Job Post

maps to

Zoho Recruit

Job Opening

1:1
Fully supported

Fountain Job Posts map to Zoho Recruit Job Openings. The Job Post's title, description, requirements, and department assignment migrate as Job Opening fields. Fountain's linked Location assignment maps to Zoho Recruit's Department or a custom Location field, depending on the customer's hierarchy preference. Active Job Post status maps to Zoho Recruit's Open status; archived or closed posts map to Closed with a custom archive_date field.

Fountain

Stage

maps to

Zoho Recruit

Hiring Pipeline Stage

lossy
Fully supported

Fountain's pipeline stages (e.g., Applied, Phone Screen, Interview, Offer, Hired) are not objects but configurable values on Job Posts. We extract the stage sequence from each Job Post's pipeline configuration, then create corresponding stage values in Zoho Recruit's Hiring Pipeline. Fountain's conditional stage transitions and automated actions per stage are documented as part of the automation inventory and are not migratable as code; they require manual configuration in Zoho Recruit's Workflow Rules after migration.

Fountain

Location

maps to

Zoho Recruit

Department or Custom Location Module

lossy
Fully supported

Fountain Locations represent physical work sites with addresses and location-specific hiring rules. We migrate location names and addresses as either Zoho Recruit Department records (if the customer uses department-based organization) or as entries in a custom Location module that we pre-create during schema setup. The choice is made during scoping based on the customer's reporting and filtering needs in Zoho Recruit.

Fountain

Department

maps to

Zoho Recruit

Department

1:1
Fully supported

Fountain Departments map directly to Zoho Recruit's Department object. We preserve department assignments on Job Posts so that hiring manager filtering and reporting by business unit remain consistent after migration. If Fountain uses nested department hierarchies, we flatten them into Zoho Recruit's single-level Department structure with a custom parent_department__c field to maintain the hierarchy for reporting.

Fountain

Offer

maps to

Zoho Recruit

Offer

1:1
Fully supported

Fountain Offer records (compensation details, start dates, offer status tied to specific Applicants) map to Zoho Recruit's Offer module. Salary, shift schedule, position details, and offer status migrate as Offer fields linked to the corresponding Candidate. Zoho Recruit's Offer Letter Templates (50 on Standard, 100 on Enterprise) can be associated with migrated offers post-migration; the templates themselves are not migratable and are documented for rebuild.

Fountain

Custom Attributes

maps to

Zoho Recruit

Custom Fields

1:1
Mapping required

Fountain customAttributes on Applicants and Jobs migrate to Zoho Recruit custom fields on the corresponding module. We identify all customAttributes during discovery, map their data types to Zoho Recruit field types (Text, Picklist, Checkbox, Date, Number), and create the fields before import. Fountain's readOnly attributes (system-controlled fields that cannot be set via API) are flagged and mapped either to Zoho Recruit read-only fields or to custom display fields with a system-populated default value, because Zoho Recruit has no direct equivalent of Fountain's readOnly flag at the API level.

Fountain

Documents

maps to

Zoho Recruit

Attachments / Document Library

1:1
Mapping required

Fountain's document attachments (hiring forms, certifications, background check results, offer letters) are stored separately from Applicant records and require individual API calls to retrieve. We export documents in parallel batches, maintaining filename-to-applicant-ID mapping, then upload each file to Zoho Recruit's Attachments section on the corresponding Candidate record. Large document volumes increase migration duration and must be scoped explicitly; we recommend a document-only dry run with a sample of 50 records before committing to the full volume.

Fountain

Notes

maps to

Zoho Recruit

Notes

1:1
Mapping required

Fountain Notes on Applicants (hiring manager context, interview feedback, internal commentary) are text blobs with author and timestamp. We migrate note content and attribution to Zoho Recruit Notes linked to the corresponding Candidate record. Zoho Recruit Notes do not support the same rich formatting options as some ATS platforms, so we preserve the plain-text content and include the author name and timestamp in the Note body to maintain full context.

Fountain

Automated Workflows

maps to

Zoho Recruit

Workflow Rules

lossy
Not supported

Fountain's automation rules (auto-advancing candidates, email triggers, task creation per stage, conditional stage transitions) are not exposed via Fountain's public API and cannot be extracted programmatically. We document every active workflow configuration during discovery by reviewing Fountain's pipeline settings with the customer's admin, and we deliver a written inventory of each automation with its trigger, conditions, actions, and the equivalent Zoho Recruit Workflow Rule configuration. The customer's admin rebuilds the workflows in Zoho Recruit post-migration; we do not rebuild them as part of the migration scope.

Fountain

Hiring Source Attribution

maps to

Zoho Recruit

Source Field

1:1
Fully supported

Fountain tracks where each applicant originated (Indeed, referrals, direct apply, job board) as part of the Applicant record. We migrate the source attribution to Zoho Recruit's Candidate Source field on each record. If Fountain uses custom source channels beyond the standard list, we create matching custom picklist values in Zoho Recruit during schema setup so reporting by sourcing channel remains consistent.

Fountain

Owner

maps to

Zoho Recruit

User

1:1
Fully supported

Fountain's hiring team members (recruiters and hiring managers assigned to Jobs and Applicants) map to Zoho Recruit User records. We resolve owners by email match against the destination Zoho Recruit User table. Any Fountain Owner without a matching Zoho Recruit User goes to a reconciliation queue for the customer's admin to provision before record import resumes, because Zoho Recruit requires a valid OwnerId on candidate records.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Fountain logo

Fountain gotchas

High

Automation rules not exportable via API

Medium

ReadOnly custom attributes block field migration

Medium

Rate limits undocumented for migration planning

Medium

Document storage requires separate export workflow

Zoho Recruit logo

Zoho Recruit gotchas

High

Daily API rate limits are tier-gated and per-user capped

High

User import hard cap of 2,000 records

Medium

Attachment folder hierarchy must be preserved exactly

Medium

Resume parsing quota varies by plan and resets daily

Low

Custom fields unavailable in Free and Standard editions

Pair-specific challenges

  • Fountain readOnly custom attributes cannot be written to Zoho via API

    Fountain's customAttributes include a readOnly flag that marks certain fields as system-controlled and unmodifiable via API. When we encounter readOnly custom attributes on Applicant or Job records, we cannot import values into Zoho Recruit as editable fields because Fountain's API rejects writes to those fields and Zoho Recruit has no readOnly field mechanism to receive a locked value. We flag these during discovery and suggest either excluding them from migration or mapping them to Zoho Recruit custom fields with a system-populated default. Customers should audit which readOnly attributes contain compliance-relevant or hiring-critical data before deciding on exclusion, because data left behind may affect reporting continuity.

  • Fountain automation rules are not accessible via API for migration

    Fountain's automated workflow rules (auto-advancing candidates, email triggers per stage, task creation per pipeline step) are not exposed through the public API. We cannot extract them programmatically and therefore cannot migrate them to Zoho Recruit Workflow Rules as part of the data migration. During migration scoping we review Fountain's pipeline configurations with the customer's admin and produce a written inventory of every active automation with its trigger conditions, stage criteria, and recommended Zoho Recruit Workflow Rule equivalent. Rebuilding these in Zoho Recruit post-migration is a manual step that should be accounted for in project timelines and resource planning.

  • Fountain documents require individual API calls and separate export workflow

    Fountain stores document attachments (hiring forms, certifications, background check results) separately from Applicant records, requiring individual API calls to retrieve each file. This makes document migration significantly slower than record migration for high-volume hiring operations. We handle this by exporting documents in parallel batches while maintaining a filename-to-applicant-ID lookup table, then uploading each file to the corresponding Zoho Recruit Candidate record. Large document volumes should be scoped explicitly before migration begins; a document-only dry run with 50 records helps estimate total duration and flag any file format incompatibilities.

  • Zoho Recruit requires Last Name; Fountain may have applicants without names

    Zoho Recruit enforces Last Name as a mandatory field on Candidate records. Fountain allows applicants to be created with minimal information (first name only, or no name at all in some onboarding flows), which means migrated records without a last name will be rejected during Zoho Recruit import. We flag all records missing last names during the pre-migration audit and substitute a placeholder value ('Not Provided') so the record is not dropped. Customers with significant volumes of nameless or partial-name applicants should review whether these records are hiring-critical before accepting the placeholder substitution.

  • Fountain API rate limits are undocumented, creating migration throughput uncertainty

    Fountain's API documentation references rate limits but does not publish specific thresholds for requests per minute or per hour. For migrations with thousands of applicants and job posts, we cannot guarantee consistent API throughput without confirmed limits. We request explicit rate limit documentation from Fountain during migration kickoff, and we implement exponential backoff and queue management to avoid triggering throttling that could stall migration. If Fountain provides no rate limit documentation, we proceed with conservative throttling assumptions, which extends migration duration for large datasets.

Migration approach

Six steps for a successful Fountain to Zoho Recruit data migration

  1. Discovery and Fountain API audit

    We audit the source Fountain account across active Job Posts, Applicant volumes by status, Locations, Departments, customAttributes (including readOnly flags), document attachment counts, active workflow configurations, and Notes volume. We extract a complete list of Fountain's pipeline stage names and transitions for each Job Post. We also request Fountain's API rate limit documentation and confirm document export access. The discovery output is a written migration scope with record counts per object, a list of readOnly attributes requiring disposition decisions, and the automation inventory for Zoho Recruit rebuild.

  2. Zoho Recruit schema setup and field mapping design

    We configure the destination Zoho Recruit environment before any data moves. This includes creating custom fields to match Fountain's customAttributes, configuring Hiring Pipeline stage values to mirror Fountain's pipeline stage names, setting up Department records to match Fountain's location and department hierarchy, and creating any custom picklist values for Candidate Source and status. We also configure Zoho Recruit's workflow rules structure (not the rules themselves, which are documented separately) and set up the Document Library folder structure for migrated attachments. Schema setup is validated in Zoho Recruit's sandbox or trial environment before production configuration.

  3. Applicant record migration and last-name remediation

    We extract all Fountain Applicant records with their contact details, hiring source attribution, stage history, and custom attribute values. Records missing last names are flagged and assigned the placeholder 'Not Provided' so they are not dropped by Zoho Recruit's mandatory field validation. We import Applicants as Zoho Recruit Candidates in batches, using email address as the dedupe key to prevent duplicate records. After each batch, we reconcile the imported record count against Fountain's source record count and spot-check field mappings for accuracy.

  4. Job Post and pipeline stage migration

    We migrate Fountain Job Posts to Zoho Recruit Job Openings, preserving title, description, requirements, department assignment, and location. Each Job Opening is linked to the corresponding Hiring Pipeline stage values configured in step 2. Fountain's stage-to-stage transition history is preserved as a custom multivalue field on the associated Candidate record so hiring managers retain visibility into the candidate's progression through Fountain's pipeline.

  5. Document and attachment transfer

    We export Fountain document attachments in parallel batches using the filename-to-applicant-ID lookup table created during discovery. Each document is uploaded to the corresponding Zoho Recruit Candidate record's Attachments section. Document transfer runs concurrently with record migration but is tracked separately for reconciliation purposes. We verify that every Candidate with at least one Fountain document has at least one Zoho Recruit attachment after upload, and we flag any document that fails to transfer for manual review.

  6. Cutover, validation, and automation rebuild handoff

    We freeze Fountain writes during cutover, run a final delta migration of any records modified during the migration window, then mark Zoho Recruit as the system of record. We deliver the complete automation inventory document to the customer's admin team, mapping each Fountain automation to a Zoho Recruit Workflow Rule configuration with step-by-step instructions. We do not rebuild Fountain automations as Zoho Recruit Workflow Rules inside the migration scope; that work is handled by the customer's admin or a Zoho implementation partner. We support a one-week hypercare window where we resolve any data quality issues reported by the recruiting team.

Platform deep dives

Context on both ends of the pair

Fountain logo

Fountain

Source

Strengths

  • Purpose-built for frontline hourly hiring with industry-specific job templates and shift types.
  • Automation reduces manual screening for high-volume positions with location and qualifier filtering.
  • Mobile-optimized application flow improves candidate completion rates for hourly workforce.
  • Multi-location management consolidates hiring operations across hundreds of sites.
  • Compliance tooling handles I-9 verification, E-Verify integration, and age-restricted role controls.

Weaknesses

  • Enterprise pricing and implementation requirements create barriers for small businesses.
  • Mass-recruitment focus limits customization options for specialized or executive hiring.
  • API documentation and export capabilities are less mature than established ATS platforms.
  • Limited integration ecosystem compared to platforms like Workday or BambooHR.
  • Reporting and analytics dashboards lack depth for advanced workforce planning insights.
Zoho Recruit logo

Zoho Recruit

Destination

Strengths

  • Free tier includes full candidate management with a hosted career site, making it viable for very small staffing operations.
  • Multi-edition architecture splits agency and corporate HR workflows, with tier-gated features that scale predictably with headcount.
  • Per-user API rate limits (500–1000/day) are generous for mid-size migrations compared to competitors that gate by total org quota.
  • Zoho's own data migration tool supports CSV import from Bullhorn, CATS, Jobdiva, and Workable, validating interoperability with common ATS formats.
  • 45-day money-back guarantee and 15-day full-feature trial reduce financial risk for teams evaluating the platform.

Weaknesses

  • Free edition excludes custom fields, lookup relationships, and formula fields, making data model extensibility unavailable until a paid tier is purchased.
  • Resume parsing quotas are capped: 250/day on Standard, 500/day on Professional, unlimited only on Enterprise — bulk imports of large candidate pools will hit these limits.
  • No bulk/batch API endpoint for inserts or updates — large migrations rely on looping single-record API calls within daily rate limit windows.
  • Custom modules cannot be imported from external ATS; only standard modules (Users, Candidates, Clients, etc.) are in the supported migration list.
  • Attachments require a rigid folder hierarchy to re-associate with records, and any deviation in folder structure during extraction causes silent disassociation.

Complexity grading

How hard is this migration?

Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Fountain and Zoho Recruit.

  • Object compatibility

    B

    1 of 7 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Fountain: Not publicly documented — Fountain does not publish specific per-minute or per-hour API limits.

  • Data volume sensitivity

    B

    Fountain doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Fountain to Zoho Recruit migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Fountain to Zoho Recruit data migrations

Answers to the questions buyers ask most during Fountain to Zoho Recruit migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Fountain to Zoho Recruit migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for accounts under 5,000 applicants and 200 active job posts with no document transfer. Migrations with large document volumes (hiring forms, certifications, background checks), extensive readOnly attribute remediation, or multi-location multi-department hierarchies requiring custom pipeline configuration extend to eight to twelve weeks. The document export and upload phase is typically the longest single step because Fountain stores attachments separately from applicant records, requiring individual API calls per file.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Fountain.
Land in Zoho Recruit, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day