CRM migration

Migrate from webCRM to Freshsales

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

webCRM logo

webCRM

Source

Freshsales

Destination

Freshsales logo

Compatibility

75%

6 of 8

objects map 1:1 between webCRM and Freshsales.

Complexity

CModerate

Timeline

3-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from webCRM to Freshsales is a structural migration that requires navigating webCRM's lack of a public API, its Overviews-based export model, and the webCRM Delivery XML format used by the Zynk connector. Freshsales uses Accounts as its primary company entity rather than webCRM's Organisations; we resolve that lookup relationship during import by exporting both objects together and matching by Organisation ID before Contacts are inserted. Deliveries in webCRM carry nested line-item detail in XML that we flatten into Freshsales Orders with associated Order Line Items. webCRM's Automation Module stores time-based workflows internally with no export path; we inventory every active automation during scoping and deliver a written map for the customer's admin to rebuild as Freshsales Workflows post-migration. The Freshsales API and CSV import tool provide the ingestion surface, and we use both depending on record volume and field complexity.

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

webCRM logo

webCRM

What's pushing teams away

  • Users report support response times as a pain point, with some customers citing delays when resolving configuration issues.
  • As a smaller CRM in a market dominated by HubSpot and Salesforce, businesses scaling beyond 50 users often migrate to platforms with more ecosystem integrations.
  • Limited public API documentation makes the platform difficult to integrate with custom tooling, pushing technical teams toward alternatives with better developer support.

Choosing

Freshsales logo

Freshsales

What's pulling them in

  • Lowest barrier to entry among major CRMs — the free tier supports up to 3 users and includes core CRM functionality before committing to per-seat pricing.
  • Built-in chat, email, and phone reduce reliance on third-party integrations for basic sales communication and contact management.
  • Freddy AI contact scoring and deal insights are included on Pro plans at a lower price than comparable HubSpot tiers.
  • Kanban pipeline views across Contacts, Accounts, and Deals provide visual deal management without requiring custom configuration.
  • Integration with the broader Freshworks ecosystem (Freshdesk, Freshchat, Freshservice) reduces tool sprawl for teams already using Freshworks.

Object mapping

How webCRM objects map to Freshsales

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

webCRM

Organisation

maps to

Freshsales

Account

1:1
Fully supported

webCRM Organisations map to Freshsales Accounts. The Organisation Name maps to Account Name; the Organisation ID becomes the dedupe key for import. We export Organisations first as a standalone batch because every Contact in Freshsales requires an AccountId or must be imported as a lead without account linkage. Custom fields on Organisation migrate to Freshsales custom fields on Account, created before import.

webCRM

Contact

maps to

Freshsales

Contact

1:1
Fully supported

webCRM Contacts link to Organisations via Organisation ID. We export both objects together, resolve the Organisation-to-Account ID mapping during the Organisations phase, then insert Contacts with AccountId populated from the lookup table. Email serves as the dedupe key for Contact uniqueness. Mobile and phone numbers migrate as custom fields if Freshsales standard phone fields are insufficient.

webCRM

Deal

maps to

Freshsales

Deal

1:1
Fully supported

webCRM Deals represent pipeline opportunities tied to Organisations and Contacts. We map deal stages individually since pipeline stage names vary between webCRM and Freshsales. Deal value, close date, and pipeline assignment transfer directly. Owner assignment resolves via email match to Freshsales User records in the reconciliation queue.

webCRM

Delivery (webCRM Delivery XML)

maps to

Freshsales

Order + Order Line Item

1:many
Fully supported

webCRM Deliveries are exported in webCRM Delivery XML format via Zynk. The nested XML structure with parent delivery headers and child line-item detail requires flattening before Freshsales ingestion. We parse the XML into two record types: Order (parent) and Order Line Item (child), with the parent Deal linked via WhatId. Quantity, unit price, and product reference transfer to the line item.

webCRM

Product

maps to

Freshsales

Product

1:1
Fully supported

webCRM maintains a Product Database with pricing and description fields. We export Products as standalone records and associate them with Deals or Order Line Items on the Freshsales side based on the customer's product-to-deal linking pattern observed during scoping. ProductCode maps from webCRM sku fields.

webCRM

Task

maps to

Freshsales

Task

1:1
Fully supported

webCRM Tasks are activity records linked to Organisations or Contacts. We export them as Tasks in Freshsales, preserving task status, priority, due date, and the parent record reference. Task assignments migrate by resolving webCRM owner email to Freshsales User. Note that Freshsales Activities (Apideck: Considering, not live) are not yet a supported API resource, so task-based activity tracking is the primary engagement record type.

webCRM

Automation Rules

maps to

Freshsales

Workflow

1:1
Not supported

webCRM's Automation Module stores time-based and event-triggered workflows internally with no public export endpoint. These are not accessible via export and cannot be migrated. We identify every active automation during scoping, document its trigger conditions and actions, and deliver a written inventory mapping each webCRM automation to an equivalent Freshsales Workflow configuration. The customer's admin rebuilds them post-migration; budget 1-2 hours per automation rule.

webCRM

Custom Fields

maps to

Freshsales

Custom Fields

lossy
Mapping required

Organisations, Contacts, Deals, and other objects in webCRM support custom fields. We extract the full custom field schema during scoping, including field type, required flag, and picklist values where applicable. Each field maps individually to the Freshsales equivalent (custom field on the corresponding object). Freshsales custom fields are created before any data import to avoid import errors from undefined field references.

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.

webCRM logo

webCRM gotchas

High

Automation rules are not exported or migratable

Medium

Export requires manual Overviews navigation

Medium

Delivery XML format requires transformation

Freshsales logo

Freshsales gotchas

Medium

Freddy AI is Pro-tier only despite heavy marketing

High

Post-migration emails and sequences are disabled

Medium

Bot session credits are a one-time 500-session allocation

Medium

Phone credits charged per minute with no cap

Low

File storage limits scale with plan tier

Pair-specific challenges

  • webCRM has no public API for automated export

    webCRM does not expose a documented REST or bulk API for programmatic data extraction. All export relies on manual navigation of the Utilities > Overviews menu or the Zynk workflow connector, which outputs webCRM Delivery XML. This means there is no automated way to pull live delta records after the initial export. We guide customers through the Overviews export process, batch the output into a consistent format, and plan for a freeze window on webCRM writes during the final cutover to capture any delta records created during migration.

  • webCRM Delivery XML requires flattening before Freshsales import

    Deliveries in webCRM are exported in webCRM Delivery XML format via Zynk, with nested structure for parent delivery headers and child line items. Freshsales does not accept nested XML on import; Orders require separate Order and Order Line Item records. We parse the XML, extract the delivery header fields and line-item detail, and restructure them into two flat record types before loading. Large delivery datasets with deep nesting require iterative XML parsing that adds processing time proportional to line-item count.

  • Automation rules are not migratable and must be rebuilt manually

    webCRM's Automation Module stores time-based and event-triggered workflows internally with no export endpoint. Any deadline reminders, inactivity triggers, or follow-up sequences configured in webCRM Automation will be lost during migration. We inventory every active automation during scoping and produce a written map of each rule with its trigger, conditions, and actions, plus the recommended Freshsales Workflow equivalent. The customer's admin rebuilds them post-migration; budget 1-2 hours per automation rule.

  • Freshsales custom objects are not supported via API

    Apideck's Freshsales connector documentation shows that Custom Objects and Custom Object Schemas are marked as Considering (not live). If the customer's webCRM implementation uses custom field-heavy schemas, those map to Freshsales custom fields on standard objects (Account, Contact, Deal) rather than separate custom object records. Complex many-to-many relationship data that would live in a custom object in Salesforce must be flattened or stored as custom fields on the related standard object in Freshsales.

  • Freshsales Activities API is not yet live

    Apideck's Freshsales connector lists Activities as Considering (not supported) and Pipelines as Considering (not supported). webCRM Tasks migrate as Freshsales Tasks, but any expectation of a unified Activities timeline that encompasses calls, emails, meetings, and tasks under a single API resource is not yet available in Freshsales REST. We plan engagement migration around Tasks as the primary record type, with Notes and custom fields providing context.

Migration approach

Six steps for a successful webCRM to Freshsales data migration

  1. Discovery and export preparation

    We audit the webCRM instance across Organisations, Contacts, Deals, Deliveries, Products, Tasks, and custom fields. We identify all active Automation Module rules and inventory them. We guide the customer through the Overviews export process for each object type, or coordinate with the Zynk connector for Delivery XML output. The discovery output is a written migration scope, a data quality report (duplicate records, missing required fields), and the automation inventory document.

  2. Delivery XML parsing and transformation

    If the customer uses the Zynk connector for Deliveries, we receive the webCRM Delivery XML and parse it into two flat record sets: Delivery headers and Delivery Line Items. We validate product references against the exported Product list, resolve any missing SKUs, and restructure the data into Freshsales Order and Order Line Item format. This step runs before any Freshsales ingestion because Order Line Items depend on Product IDs that must exist first.

  3. Schema provisioning in Freshsales

    We create all required Freshsales custom fields, match the Organisation-to-Account and Contact-to-Contact schema, and configure the Deal pipeline with stages mapped from webCRM. Custom fields are created before data import to avoid undefined field errors. We coordinate with the customer's Freshsales admin to provision Users matching the webCRM Owner email list.

  4. Owner reconciliation and User provisioning

    We extract every distinct webCRM Owner referenced on Contact, Organisation, Deal, and Task records and match by email against Freshsales User records. Owners without a matching User go to a reconciliation queue. The customer's Freshsales admin provisions any missing Users before record import resumes because OwnerId is a required reference on most standard objects.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Accounts (from webCRM Organisations), Products (standalone records), Contacts (with AccountId resolved), Deals (with AccountId and OwnerId resolved), Deliveries split into Orders and Order Line Items, Tasks. Each phase emits a row-count reconciliation report before the next phase begins. Large datasets use batch chunking with exponential backoff.

  6. Cutover, validation, and automation rebuild handoff

    We freeze webCRM writes during cutover, run a final delta migration of any records created during the migration window, then enable Freshsales as the system of record. We deliver the Automation Rules inventory document to the customer's admin team with Freshsales Workflow equivalents. We support a one-week hypercare window where we resolve any reconciliation issues. Workflow rebuild is outside migration scope.

Platform deep dives

Context on both ends of the pair

webCRM logo

webCRM

Source

Strengths

  • Pipeline management with customisable stages and revenue forecasting
  • Product database with real-time inventory overview
  • Task and time-based automation for follow-ups and reminders
  • Order management linking quotes to deliveries and inventory
  • High customer support ratings (4.7/5) on review platforms

Weaknesses

  • No publicly documented API for direct programmatic access
  • Automation rules are not exportable and must be rebuilt manually
  • Smaller market footprint limits third-party integrations compared to major CRMs
  • Export relies on manual Overviews utility or third-party tools like Zynk
  • Limited pricing transparency makes cost comparison difficult
Freshsales logo

Freshsales

Destination

Strengths

  • Generous free tier for small teams with core CRM functionality without per-seat costs.
  • All-in-one sales CRM with built-in telephony, chat, and email reducing third-party tool dependency.
  • Freddy AI contact scoring and deal predictions available on Pro tier.
  • Multiple pipeline views with Kanban and list options across all plans.

Weaknesses

  • Reports lack depth compared to competitors like HubSpot, with limited customization options.
  • Integration setup is poorly documented with no clear guides for connecting third-party tools.
  • AI features gated behind $39/user/month Pro tier despite marketing emphasis on Freddy AI.
  • Bot sessions limited to 500 one-time allocation with no monthly refresh.

Complexity grading

How hard is this migration?

Moderate CRM migration. 4 of 8 objects need a mapping; the rest are 1:1.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across webCRM and Freshsales.

  • Object compatibility

    C

    4 of 8 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

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

  • API constraints

    B

    webCRM: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your webCRM to Freshsales 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 webCRM to Freshsales data migrations

Answers to the questions buyers ask most during webCRM to Freshsales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your webCRM to Freshsales 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 four weeks for accounts under 5,000 Contacts, 1,000 Organisations, and 500 Deals with clean data. Migrations with high custom field counts (over 50 fields), deeply nested Delivery XML, or large task histories (over 100,000 records) move to six to eight weeks because of XML parsing overhead, bulk API chunking, and Owner reconciliation against Freshsales User provisioning.

Adjacent paths

Related migrations to explore

Ready when you are

Move from webCRM.
Land in Freshsales, 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