CRM migration
Field-level mapping, validation, and rollback between Kordeva and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
Kordeva
Source
Freshsales
Destination
Compatibility
6 of 8
objects map 1:1 between Kordeva and Freshsales.
Complexity
CModerate
Timeline
2-4 weeks
Overview
Moving from Kordeva to Freshsales is a migration from a niche, under-documented platform to an established SMB CRM backed by a publicly listed vendor with 60,000+ customers. Kordeva's CRM core—Contacts, Companies, Deals, and Activities—maps directly to Freshsales standard objects, and the Custom Fields API gives us programmatic access to extended attributes. The constraint is Kordeva's sparse API surface: we conduct connectivity testing against the Custom Fields and base CRM endpoints before scoping, falling back to CSV export if API access is not confirmed. Freshsales has a mature import pipeline supporting up to 25,000 records per batch with a native migration path for Pipedrive and Salesforce, but Kordeva requires custom extraction logic. We do not migrate Intelligent Workflow (Premium-tier only) or In-Depth Reporting configurations; these appear in a written inventory for the customer's admin to rebuild in Freshsales. Campus Management and Call Center modules are out of scope as separate product lines.
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 Kordeva object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Kordeva
Contact
Freshsales
Contact
1:1Kordeva Contact records map 1:1 to Freshsales Contact. Standard fields (name, email, phone, address) transfer directly. Custom attributes retrieved via Kordeva's Custom Fields API migrate to Freshsales custom fields created in Admin Settings under the Contacts module. We enumerate all custom field definitions during discovery and create matching Freshsales fields before import. Email serves as the dedupe key; duplicates are flagged for customer review before insert.
Kordeva
Company
Freshsales
Account
1:1Kordeva Company records map to Freshsales Account. The company-contact association is preserved during migration by resolving the Contact's account_id at insert time. If Kordeva stores domain or industry as custom fields, we map those to Freshsales Account Website and Industry picklist values. Account is created before Contact import to satisfy the lookup dependency.
Kordeva
Deal
Freshsales
Deal
1:1Kordeva Deals map to Freshsales Deals with the pipeline stage name preserved in the deal stage field. Stage configuration (stage-to-stage mapping and probability) requires customer review because pipeline layouts differ between systems. We map Kordeva stage names to Freshsales deal stages during scoping, and the customer confirms the stage sequence before production migration. Deal amount, close date, and owner migrate directly.
Kordeva
Activity (calls, emails, meetings, tasks)
Freshsales
Tasks, Events
1:1Kordeva activity records (calls, emails, meetings, tasks) logged against Contacts and Deals migrate to Freshsales Tasks and Events. Call records become Tasks with TaskSubtype set to Call and call duration preserved. Meeting records become Events with start and end times and attendee data. Email records become Tasks with a custom field holding the email body for display in the activity timeline. We link each activity to the parent Contact or Deal via the WhoId and WhatId fields resolved at migration time.
Kordeva
Custom Fields
Freshsales
Custom Fields
lossyKordeva's Custom Fields API exposes extended resource attributes that we enumerate during discovery. We create equivalent custom fields in Freshsales under the appropriate module (Contacts, Accounts, Deals) before migration. Field types are mapped: text to text, number to number, date to date, picklist to picklist. If Kordeva uses a field type not supported by Freshsales (e.g., a complex multi-level lookup), we flag it during scoping and propose an alternative representation.
Kordeva
Accounts and Invoicing
Freshsales
Account
1:1Kordeva's Regular tier includes Accounts and Invoicing as a bundled feature. Invoice records, line items, and payment status migrate to Freshsales Account with custom fields carrying the invoice data, since Freshsales does not have a native invoicing object at the CRM tier. We perform field-level mapping for invoice schema differences and flag any unsupported invoice attributes (e.g., tax rate structures, partial payment schedules) for customer review.
Kordeva
Intelligent Workflow
Freshsales
Workflow
lossyKordeva's Intelligent Workflow feature is gated at the Premium tier. We confirm the customer's tier during scoping. If Premium features exist, we inventory every active workflow (trigger, conditions, actions) and deliver a written mapping document with recommended Freshsales Workflow equivalents. Workflows do not migrate as code; the customer or a Freshsales partner rebuilds them post-migration. This applies only to teams on the Premium tier.
Kordeva
Owner
Freshsales
User
1:1Kordeva Owners referenced on Contact, Company, Deal, and Activity records map to Freshsales User by email match. We extract every distinct owner ID, query the corresponding email, and resolve against the Freshsales User table. Any Owner without a matching User goes to a reconciliation queue for the customer's admin to provision before record import resumes.
| Kordeva | Freshsales | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Deal | Deal1:1 | Fully supported | |
| Activity (calls, emails, meetings, tasks) | Tasks, Events1:1 | Fully supported | |
| Custom Fields | Custom Fieldslossy | Mapping required | |
| Accounts and Invoicing | Account1:1 | Mapping required | |
| Intelligent Workflow | Workflowlossy | Fully supported | |
| Owner | User1: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.
Kordeva gotchas
Sparse public API documentation limits migration tooling confidence
Premium-tier feature boundary affects what data exists to migrate
Single verified review on G2 creates information asymmetry
Freshsales gotchas
Freddy AI is Pro-tier only despite heavy marketing
Post-migration emails and sequences are disabled
Bot session credits are a one-time 500-session allocation
Phone credits charged per minute with no cap
File storage limits scale with plan tier
Pair-specific challenges
Migration approach
Connectivity testing and API surface validation
We request Kordeva API credentials and run a connectivity test against the Custom Fields API and base CRM endpoints to confirm read access, response schemas, pagination behavior, and rate limits. If the API is confirmed, we extract a sample of 50-100 records (Contacts, Companies, Deals, Activities) to validate field availability and data quality. If API access is not confirmed, we fall back to CSV export from the Kordeva UI and assess which fields and history are captured. The output is a written API capability report and a confirmed or adjusted migration scope.
Discovery and Freshsales tenant configuration
We audit the Kordeva CRM environment: record counts per object, custom field definitions (via the Custom Fields API), pipeline stages and probabilities, owner assignments, and activity volume. In parallel, we configure the Freshsales destination tenant: create custom fields matching Kordeva's schema under the appropriate modules (Contacts, Accounts, Deals), set up deal stages to approximate the Kordeva pipeline, and add users matching the Kordeva owner roster. The customer reviews and approves the Freshsales configuration before data import begins.
Data extraction and cleansing
We extract all CRM records from Kordeva: Contacts with custom fields, Companies, Deals with stage and owner, and Activities (calls, emails, meetings, tasks). We run a data quality pass: dedupe on email address, standardize phone number formats, flag records with missing required fields (name, email), and identify orphaned Deals (no associated Contact or Company). Dirty data does not get fixed during migration—it is flagged for the customer to resolve or accept as-is. The cleansed dataset is staged in a temporary environment for reconciliation.
Test import and reconciliation
We run a test migration into the Freshsales tenant with a sample of 200-500 records to validate field mapping, record linkage (Contact-to-Account, Deal-to-Account), activity parent resolution, and custom field population. The customer spot-checks the test import and confirms the mapping is accurate. Any field mapping corrections, missing custom fields, or stage configuration issues are resolved before the production migration. This step prevents errors in production and avoids reprocessing large record volumes.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Kordeva Companies), Contacts (with AccountId resolved), Deals (with AccountId, OwnerId, and stage resolved), Activity history (Tasks and Events via bulk import with parent-record resolution), and custom field data for invoice records if in scope. Each phase emits a row-count reconciliation report showing records imported, skipped, and failed. Failed records are reviewed, corrected if possible, and retried within the same migration window.
Cutover, final validation, and handoff
We freeze Kordeva writes during the cutover window, run a final delta migration of any records created or modified after the initial production import, then mark Freshsales as the system of record. We deliver a migration summary report (record counts, field mapping log, any unmigrated records with reasons) and the Intelligent Workflow inventory document for the customer's admin to rebuild in Freshsales Workflows. We provide a one-week post-migration support window for reconciliation issues. Post-migration admin configuration, training, and workflow rebuild are outside standard scope.
Platform deep dives
Kordeva
Source
Strengths
Weaknesses
Freshsales
Destination
Strengths
Weaknesses
Complexity grading
Moderate CRM migration. 4 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Kordeva and Freshsales.
Object compatibility
4 of 8 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
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Kordeva: Not publicly documented.
Data volume sensitivity
Kordeva 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 Kordeva to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your Kordeva to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Kordeva
Other ways to arrive at Freshsales
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.