CRM migration

Migrate from CASH to Freshsales

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

CASH logo

CASH

Source

Freshsales

Destination

Freshsales logo

Compatibility

100%

12 of 12

objects map 1:1 between CASH and Freshsales.

Complexity

CModerate

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

FlitStack AI migrates CASH CRM records to Freshsales using the CASH API export and Freshsales REST/Bulk API import. The migration carries all standard objects — contacts, companies, deals, pipelines, activities, and notes — plus any CASH custom fields into Freshsales custom fields with type-aware mapping. Freshsales organizes deals in pipelines with stage values that are scoped per pipeline; CASH deal stages map to Freshsales pipeline stage values using value mapping. Activities (calls, emails, meetings) attach to the parent contact, account, or deal record in Freshsales with original timestamps and owners preserved. Workflows, automations, and email templates do not transfer — FlitStack exports CASH workflow definitions as JSON for your Freshsales admin to rebuild in Freshsales' workflow designer. The mechanism uses scoped read access to CASH, field transformation, and a staged Freshsales import with a delta-pickup window for in-flight records during cutover. During the pre‑migration phase, FlitStack validates all required Freshsales fields, creates custom field definitions via the Freshsales API, and builds pipeline and stage structures before loading any records. A sample diff of 100–500 representative records is generated for review, confirming correct field values, owner assignments, and lifecycle stage mapping. After approval, the full dataset loads in object sequence—Accounts, Contacts, Leads, Deals, Activities, Notes, and Files—while a delta‑pickup window captures any new or updated entries in CASH during the cutover. All operations are logged, and a one‑click rollback reverts Freshsales to its pre‑migration state if reconciliation detects discrepancies.

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

CASH logo

CASH

What's pushing teams away

  • Spend caps remain on the business account itself — $7,500/day and $17,500/month limit operational outflows.
  • Not a relationship CRM — customer records are tied to payment instruments, not lifecycle/profile data. Email, phone, address, notes, and tags are not first-class.
  • Limited reporting — no built-in funnel, deal pipeline, or activity timeline; merchants outgrow this and migrate to Square Customer Directory, Shopify, or a dedicated CRM.
  • 3% fee for credit-card-funded payments (above the 2.75% baseline) erodes margin for higher-ticket items.
  • No multi-user / role-based access — the account belongs to one Cash App identity, which constrains team operations.

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 CASH objects map to Freshsales

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

CASH

Contact

maps to

Freshsales

Contact

1:1
Fully supported

CASH contact records map directly to Freshsales Contact objects. Email address is the primary identifier used for deduplication. Freshsales requires that the parent Account be created first when the contact has an associated company — we migrate accounts before contacts to resolve the foreign key.

CASH

Lead

maps to

Freshsales

Lead

1:1
Fully supported

CASH leads migrate as Freshsales Lead records. Freshsales maintains separate Lead and Contact objects; leads that convert during the CASH usage period retain their lead status in Freshsales as historical records unless a lead-to-contact conversion event is present in the source data.

CASH

Company

maps to

Freshsales

Account

1:1
Fully supported

CASH company records map directly to Freshsales Account objects. Company name, domain, industry, employee count, and annual revenue transfer as Account fields. Parent-company hierarchies in CASH map to Freshsales Parent Account relationships; we resolve circular references before committing the import.

CASH

Deal

maps to

Freshsales

Deal

1:1
Fully supported

CASH deal records map to Freshsales Deal objects with deal name, amount, expected close date, and owner preserved. Freshsales Deal requires a pipeline assignment; we set the pipeline ID during migration based on the CASH pipeline identifier. Deal probability maps from CASH stage probabilities to Freshsales stage probabilities per pipeline.

CASH

Pipeline

maps to

Freshsales

Pipeline

1:1
Fully supported

CASH pipelines map to Freshsales Pipelines. On Freshsales Growth, only one pipeline is permitted per account — multi-pipeline CASH setups require either merging into one pipeline or upgrading to Freshsales Pro or Enterprise before migration. Stage names and order transfer as Freshsales stage values within each pipeline.

CASH

Stage

maps to

Freshsales

Stage

1:1
Fully supported

CASH stage names and their display order map to Freshsales Stage values on the corresponding pipeline. Each CASH stage probability becomes the Freshsales stage probability value. If CASH uses custom stage names not present in Freshsales' default stage list, we create custom stage values via the Freshsales pipeline API before loading deal records.

CASH

Activity (Call, Email, Meeting)

maps to

Freshsales

Sales Activity

1:1
Fully supported

CASH call, email, and meeting records migrate as Freshsales Sales Activities linked to the parent Contact or Deal record. Original subject line, owner, start/end time, and duration are preserved. Freshsales Sales Activities appear in the contact and deal timeline views.

CASH

Note

maps to

Freshsales

Note

1:1
Fully supported

CASH notes migrate as Freshsales Note records attached to the Contact, Account, or Deal. Note body text and any rich-text formatting transfers as-is. If CASH stores notes in a separate attachments table, we link them to the parent object by record ID matching during the import sequence.

CASH

User

maps to

Freshsales

User

1:1
Fully supported

CASH users map to Freshsales users by email address match. Unmatched owners receive a fallback assignment to a designated Freshsales admin user and are flagged in the migration report for manual reassignment. Freshsales user roles and profiles must be configured separately post-migration.

CASH

Custom Field

maps to

Freshsales

Custom Field

1:1
Fully supported

CASH custom fields on any object become Freshsales Custom Fields on the corresponding module. Freshsales requires custom fields to be created via the API before data loads — we create field definitions first (with correct data types: text, number, picklist, date, checkbox), then load values. Picklist custom fields use value mapping where CASH picklist values differ from Freshsales defaults.

CASH

Workflow Definition

maps to

Freshsales

Workflow (Freshsales)

1:1
Fully supported

CASH workflow definitions do not transfer to Freshsales. FlitStack exports workflow rules as JSON for each CASH workflow trigger/action chain. Your Freshsales admin rebuilds these in Freshsales' Workflow Designer (basic on Growth; advanced on Pro/Enterprise). We also document which workflows reference deleted records or inactive users for cleanup.

CASH

Attachment / File

maps to

Freshsales

File

1:1
Fully supported

CASH file attachments on contacts, companies, or deals migrate to Freshsales Files attached to the corresponding record. Files over 25MB cannot be imported via Freshsales API and are flagged for manual re-upload. We preserve the original file name and download URL from CASH for reference.

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.

CASH logo

CASH gotchas

High

Cash App is a payment app, not a CRM — schema mismatch on import

Medium

Spend caps on the Cash App for Business account

Medium

Unverified business accounts have a $250/day receive limit

Low

No published rate limit on Square Connect API used for Cash App Pay

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

  • Custom field creation must precede data load

    Freshsales requires custom fields to be created via the API before records can be loaded into them. FlitStack runs a schema-prep phase that calls the Freshsales Custom Fields API for every CASH custom field — determining the correct field type (text, number, picklist, date, checkbox), setting picklist values for custom picklists, and capturing the Freshsales field ID for use in the record import. If a CASH custom field uses a data type Freshsales does not support, we map it to the nearest equivalent and flag the transformation for your admin's review before the load runs.

  • Pipeline count limits on Freshsales Growth

    Freshsales Growth plan supports one pipeline per account. CASH setups that use multiple pipelines (separate sales team pipelines, product-specific pipelines, or regional pipelines) will encounter a Freshsales API validation error if the extra pipelines are imported without upgrading to Pro or Enterprise. FlitStack surfaces all CASH pipeline identifiers before migration and recommends either merging pipelines in CASH before export or upgrading Freshsales. If neither is done, the extra pipelines are skipped and flagged in the migration report with instructions for post-migration manual setup.

  • Owner resolution gaps leave records unassigned

    Freshsales user assignment requires an existing Freshsales user record. CASH owner IDs that have no matching email in Freshsales produce orphaned deal and contact records with no owner_id — these appear in Freshsales as unassigned and do not surface in sales rep dashboards. FlitStack pre-validates all CASH owner emails against the Freshsales user list and generates a pre-migration owner resolution report. Any unmatched owner is assigned to a fallback Freshsales admin user and listed in the report for manual reassignment after go-live.

  • Activity timeline owner attribution

    CASH activities store the creating user's ID as owner. When that user's email has no Freshsales match, the activity migrates with no owner attribution in Freshsales — it still attaches to the parent Contact or Deal record but the Sales Activity shows no assignee. This is a known Freshsales API limitation when importing Sales Activities with a non-matching user reference. FlitStack flags all such activities in the migration report and can optionally re-assign them to a fallback user post-migration.

Migration approach

Six steps for a successful CASH to Freshsales data migration

  1. Extract and validate CASH data export

    FlitStack connects to CASH via API using scoped read access and exports all records from each object in sequence: accounts first, then contacts and leads, then deals and pipeline stages, then activities and notes, and finally custom field definitions. We validate field types, check for null values in required Freshsales fields, and flag any CASH custom fields that use data types not supported natively in Freshsales. The output is a structured JSON dataset ready for Freshsales field mapping.

  2. Create Freshsales schema and custom fields

    Before any data loads, FlitStack calls the Freshsales API to create all required custom fields discovered in the CASH export. This includes custom fields on Contact, Account, Deal, and any custom modules. For each custom field, we set the correct type (text, number, picklist, date, checkbox), populate picklist values using CASH picklist values as the source, and capture the Freshsales field ID returned by the API. We also create the Freshsales pipeline(s) and stage definitions using the pipeline API before loading any deal records.

  3. Match CASH users to Freshsales users by email

    FlitStack fetches the Freshsales user list and matches each CASH owner ID to a Freshsales user by email address. Unmatched owners are flagged in the owner resolution report and assigned to a fallback Freshsales user (typically an admin). Deal and contact records for which no owner match exists receive the fallback assignment. The resolution report is delivered before the migration run so your admin can create missing Freshsales users or adjust assignments.

  4. Run sample migration with field-level diff

    A representative slice of CASH data — typically 100–500 records spanning contacts, accounts, deals, and a selection of activities — is migrated to Freshsales first. FlitStack generates a field-level diff comparing the source CASH values against the Freshsales field values for every mapped field. You review the diff to confirm that lifecycle stages, deal amounts, stage names, and owner assignments are correct before the full migration commits.

  5. Execute full migration with delta-pickup window

    After sample approval, the full CASH dataset loads into Freshsales in the object sequence: Accounts → Contacts → Leads → Deals → Activities → Notes → Files. A delta-pickup window of 24–48 hours runs in parallel, capturing any records created or modified in CASH during the cutover. All operations are logged in the FlitStack audit log. One-click rollback reverts Freshsales to its pre-migration state if reconciliation fails. We deliver a final reconciliation report comparing record counts and field values between CASH and Freshsales.

Platform deep dives

Context on both ends of the pair

CASH logo

CASH

Source

Strengths

  • Familiar consumer UX increases checkout completion vs entering card data.
  • Flat 2.75% fee with no monthly minimum is friendly to low-volume sellers.
  • Integrates with Square's merchant stack for in-person acceptance.
  • Verified business account removes inbound receive caps.
  • Setup is genuinely zero-paperwork compared to traditional merchant accounts.

Weaknesses

  • Not a CRM — minimal contact, no pipeline, no activities timeline.
  • Spend caps ($7,500/day, $17,500/month) constrain larger operational use.
  • 3% fee on credit-card-funded payments hits higher-ticket margins.
  • No multi-user/role-based team access.
  • Square API rate limits are not publicly published — must be discovered via backoff in practice.
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. 5 of 8 objects need a manual workaround.

C

Overall complexity

Moderate migration

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

  • Object compatibility

    F

    5 of 8 objects need a manual workaround.

  • 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

    CASH: Square does not publish fixed rate limits — APIs return rate-limit error codes; exponential backoff is required.

  • Data volume sensitivity

    A

    CASH exposes a bulk API — large-volume migrations stream efficiently.

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most CASH-to-Freshsales migrations complete in 48–72 hours of clock time for datasets under 50,000 records. Larger setups with multiple pipelines, extensive activity histories, or more than 50 custom fields extend to 5–7 days. The longest single step is usually the Freshsales schema-prep phase where custom fields and pipeline stages are created via API — this must complete before any data loads.

Adjacent paths

Related migrations to explore

Ready when you are

Move from CASH.
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