CRM migration

Migrate from InTouch to Salesforce Sales Cloud

Field-level mapping, validation, and rollback between InTouch and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.

InTouch logo

InTouch

Source

Salesforce Sales Cloud

Destination

Salesforce Sales Cloud logo

Compatibility

92%

11 of 12

objects map 1:1 between InTouch and Salesforce Sales Cloud.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

InTouch CRM stores contacts, organizations, deals, and activities in a flat object model optimized for small teams. Salesforce Sales Cloud uses a richer schema with separate Lead and Contact objects, Account hierarchies, Opportunity RecordTypeId scoping, and a Sales Process model that ties stage pick-lists to record types. When teams migrate from InTouch to Salesforce, they typically have under 50,000 records, a modest number of custom fields per object, and one to three deal pipelines. FlitStack AI extracts InTouch data via its export API, maps contacts to either Salesforce Lead or Contact based on deal status, converts InTouch organizations to Account records with hierarchical ParentId support, and routes deals to Opportunity with stage values mapped per Salesforce record type. Custom fields from InTouch matter templates land as Salesforce __c custom fields created during the pre-migration schema phase. InTouch workflows, email templates, and automation sequences do not migrate — FlitStack exports the definitions as rebuild references for your Salesforce admin. The migration uses Salesforce Bulk API 2.0 for high-volume record insertion, with delta-pickup capturing any InTouch changes during the 24–48 hour cutover window. An audit log records every operation, and one-click rollback is available if record counts or field-level checks reveal unexpected divergence.

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

InTouch logo

InTouch

What's pushing teams away

  • Advanced customisation for dashboards, reporting, and workflow branching is limited, causing firms with complex or non-standard transaction types to outgrow the platform's flexibility.
  • The mobile app receives consistent criticism for poor usability and feature gaps compared to the desktop interface, which frustrates fee-earners who work on-site at properties.
  • The transition from the legacy flash-based version to the modern platform disrupted established users' workflows, and some firms report the learning curve on the new UI was steeper than expected.
  • Firms requiring deep third-party integrations with accounting software, Land Registry portals, or practice management suites find InTouch's native integration ecosystem too narrow for their needs.

Choosing

Salesforce Sales Cloud logo

Salesforce Sales Cloud

What's pulling them in

  • The AppExchange marketplace with 5,000+ prebuilt apps gives enterprises integrations for nearly every business workflow without custom development.
  • Native Einstein AI for lead scoring, opportunity insights, and predictive forecasting adds intelligence without a separate platform purchase.
  • Territory management, multi-currency support, and advanced forecasting satisfy the needs of complex B2B sales organizations with structured revenue teams.
  • Slack, Tableau, and CPQ are deeply integrated into the core platform, keeping the sales stack unified for teams already in the Salesforce ecosystem.
  • Organizations with a large, established Salesforce implementation choose it because switching costs — integrations, custom code, trained admins — are prohibitive.

Object mapping

How InTouch objects map to Salesforce Sales Cloud

Each row shows how a InTouch object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

InTouch

Contact

maps to

Salesforce Sales Cloud

Lead / Contact

1:many
Fully supported

InTouch contacts split based on their deal association and status. Contacts linked to closed-won or closed-lost deals in InTouch route to Salesforce Contact under the primary Account. Contacts without deal history route to Salesforce Lead. The split decision is made during migration validation against InTouch's contact properties and deal association table.

InTouch

Organization

maps to

Salesforce Sales Cloud

Account

1:1
Fully supported

InTouch organizations map directly to Salesforce Account records, preserving the organization name, domain, industry, employee count, and annual revenue data as standard Account fields. Organization hierarchies where a parent organization has child sub-organizations in InTouch map to the Salesforce ParentId lookup on Account, enabling account hierarchy reporting. For InTouch contacts that lack a primary organization assignment, FlitStack creates a default 'Unassigned Account' placeholder record before migration begins, ensuring every contact has a valid AccountId rather than remaining orphaned.

InTouch

Deal

maps to

Salesforce Sales Cloud

Opportunity

1:1
Fully supported

InTouch deals map directly to Salesforce Opportunity records using a field-by-field mapping approach. The deal name becomes Opportunity.Name, the deal amount maps to Opportunity.Amount, and the close date transfers to CloseDate. The stage value requires careful value-by-value mapping against the Salesforce stage pick-list defined on the Opportunity's RecordTypeId, ensuring the InTouch stage name matches the correct Salesforce stage label for the appropriate sales process.

InTouch

Pipeline

maps to

Salesforce Sales Cloud

Sales Process + Record Type

1:1
Fully supported

Each InTouch pipeline transforms into a Salesforce Sales Process linked to a specific RecordTypeId. Before migration execution, FlitStack delivers a comprehensive record-type setup plan that documents which RecordTypeId values your team needs to create in Salesforce, which stage pick-list values should belong to each Sales Process, and the order of stage progression for forecasting accuracy. Your Salesforce admin creates these elements during the pre-migration schema phase.

InTouch

Pipeline Stage

maps to

Salesforce Sales Cloud

Opportunity Stage

1:1
Fully supported

InTouch stage names map value-by-value to Salesforce Opportunity Stage pick-list values, with each InTouch stage matched to its corresponding Salesforce stage label under the appropriate RecordTypeId. Probability percentages from InTouch are re-applied per Salesforce stage configuration, and the Forecast Category (Commit, Best Case, Omitted) is set according to the stage mapping defined in the Sales Process. For organizations using HubSpot-style entered-timestamp tracking, custom datetime fields are required.

InTouch

Activity (Call, Email, Task)

maps to

Salesforce Sales Cloud

Task

1:1
Fully supported

InTouch calls and emails are migrated as Salesforce Task records with the Type field set to 'Call' or 'Email' respectively. The Task.Subject field carries the original activity title from InTouch, Task.Description preserves the full body text or notes, and Task.ActivityDate transfers the original timestamp to maintain historical activity records. The OwnerId is resolved by matching the InTouch owner email address to the corresponding Salesforce User record.

InTouch

Activity (Meeting)

maps to

Salesforce Sales Cloud

Event

1:1
Fully supported

InTouch meeting records map to Salesforce Event objects, preserving Event.Subject from the meeting title, Event.StartDateTime from the scheduled start, Event.EndDateTime from the scheduled end, and Event.Location from the venue or call-in details. The OwnerId on each Event follows the same email-match resolution logic used for Tasks, ensuring the calendar event appears in the correct Salesforce user's activity timeline after migration completes.

InTouch

Note

maps to

Salesforce Sales Cloud

Note

1:1
Fully supported

InTouch notes migrate as Salesforce Notes (Lightning Experience format, not legacy Note object). Note.Title is set from the InTouch note subject; Note.Body carries the full note text. Notes linked to specific InTouch contacts or deals carry the corresponding Salesforce WhatId or WhoId after migration.

InTouch

Custom Field

maps to

Salesforce Sales Cloud

Custom Field (__c)

1:1
Fully supported

InTouch custom fields per matter template require pre-created Salesforce custom fields. FlitStack generates a field creation manifest with label, API name (__c suffix), data type, and pick-list values where applicable. Custom fields are created before data migration runs so the target schema exists at insert time.

InTouch

Owner

maps to

Salesforce Sales Cloud

User (OwnerId)

1:1
Fully supported

InTouch owner IDs are resolved by email match against Salesforce User records. Matched owners map directly to OwnerId. Unmatched owners are flagged before migration with a fallback owner assignment option — either a designated Salesforce admin or a placeholder user created for unmapped records.

InTouch

Attachment / File

maps to

Salesforce Sales Cloud

ContentVersion / ContentDocument

1:1
Fully supported

InTouch file attachments are re-uploaded to Salesforce as ContentVersion records linked to the parent object (Account, Contact, or Opportunity). File size limits apply: Salesforce default is 25MB per file. Inline images in InTouch notes are extracted, downloaded, and rehosted as Salesforce Files.

InTouch

Tag / Label

maps to

Salesforce Sales Cloud

Custom Field or Campaign Member

1:1
Fully supported

InTouch contact tags have no direct Salesforce equivalent. Tags are migrated as a custom multi-select pick-list field (Source_Tags__c) on the Contact or Lead object. If InTouch tags represent segmentation used for marketing, Campaign Member records are created with the tag name as Campaign.CampaignName.

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.

InTouch logo

InTouch gotchas

High

Custom fields are template-bound and require pre-migration schema review

Medium

Contact export runs asynchronously and can exceed one hour for large rolls

Medium

Legacy flash-era data may have inconsistent field encoding in exports

Low

Matter export is not a self-service feature on all tiers

Salesforce Sales Cloud logo

Salesforce Sales Cloud gotchas

High

Workflow Rules and Process Builder are retired

High

Bulk API batch quota exhaustion during large imports

Medium

Storage overage billing is non-obvious

Medium

Account-Contact many-to-many relationship mapping

Low

Territory and team member import ordering dependencies

Pair-specific challenges

  • InTouch contact-to-deal association requires junction object creation

    InTouch allows a deal to be associated with multiple contacts and vice versa (N:N relationship). Salesforce OpportunityContactRole supports a one-opportunity-to-many-contacts model but does not support many-to-many contact-to-opportunity links natively. For InTouch deals associated with multiple contacts, FlitStack creates OpportunityContactRole records for the primary contact and surfaces additional associations as a custom junction object — your Salesforce admin decides whether to reproduce every link or collapse to a primary contact role. If you need full N:N parity, a custom junction object with both Opportunity__c and Contact__c lookup fields is required, adding a custom object to your Salesforce schema before migration.

  • InTouch custom fields require Salesforce field creation before migration

    InTouch matter templates define custom fields per object that have no predetermined Salesforce schema equivalent. Salesforce requires each __c custom field to exist before data insertion — the field cannot be created mid-migration pass. FlitStack delivers a field creation manifest (label, API name, data type, pick-list values) as part of the pre-migration schema plan. Fields must be created in your Salesforce org before the sample migration runs. Any InTouch custom field with a data type not directly supported by Salesforce (such as InTouch's dynamic calculated fields) requires a custom field type decision — typically mapped to Formula fields or Text fields with transformation logic in the migration tool.

  • Deal probability and forecast category may diverge from InTouch stage assumptions

    InTouch applies probability as a static number entered manually per deal. Salesforce ties probability to the StageName pick-list value defined in the Sales Process — it recalculates automatically based on stage configuration. If your InTouch deals have manually overridden probabilities that differ from stage defaults, those overridden values are lost unless you map them to a custom Probability_Override__c field. Similarly, Salesforce's forecast category (Commit, Best Case, Omitted) is stage-driven and cannot be set per record unless your org has Forecast Categories enabled at the opportunity level. FlitStack flags probability overrides during the field-level diff so your admin can decide whether to preserve them as a custom field.

  • InTouch workflows, sequences, and automation rules do not migrate

    InTouch automations (drip campaigns, lead scoring rules, task triggers, workflow-based notifications) are executed by InTouch's own automation engine and are not stored as exportable data records. Salesforce Flow, Process Builder, and Approval Processes are destination-side schema constructs that must be rebuilt. FlitStack can export InTouch workflow definitions as JSON or CSV reference files that your Salesforce admin or consultant uses as a rebuild blueprint. Email templates from InTouch drip sequences are not exportable in a format Salesforce can import — these require manual rebuild using Salesforce Email Templates or Marketing Cloud Content Builder. FlitStack discloses this limitation upfront and provides a scope exclusion list in the migration plan.

  • Salesforce Bulk API daily limits constrain large activity migrations

    InTouch accounts with 5+ years of activity history (calls, emails, meetings logged per contact) can accumulate millions of Task and Event records. Salesforce Bulk API 2.0 enforces daily job limits (100,000 records per 24-hour rolling window for standard orgs). FlitStack batches activity migration into staggered loads across the delta-pickup window. If your InTouch instance has over 500,000 activity records, the activity migration phase may extend beyond the 48–72 hour primary window. FlitStack provides a pre-migration activity volume estimate so you can plan your cutover timeline accordingly and decide whether to archive historical activities older than a defined threshold.

Migration approach

Six steps for a successful InTouch to Salesforce Sales Cloud data migration

  1. Audit InTouch schema and Salesforce target org

    FlitStack connects to your InTouch instance via API using scoped read-only credentials and exports the full object inventory: contacts, organizations, deals, activities, custom fields, and attachments. Simultaneously, we survey your Salesforce target org to inventory existing RecordTypes, page layouts, custom fields, and Sales Processes. This dual-audit produces a delta report identifying which InTouch objects have direct Salesforce counterparts and which require custom field creation or value mapping setup before data can land cleanly.

  2. Design Salesforce schema and field mapping plan

    Based on the dual-audit, FlitStack generates a Salesforce schema setup manifest: which RecordTypeId values to create, which Sales Processes to configure, which custom __c fields to add, and which pick-list value sets to define per record type. The field mapping plan documents every source field to target field mapping including transformation logic, default values, and value-mapping tables for pick-list fields. Your Salesforce admin (or FlitStack, if included in scope) creates the schema elements in the target org before any data migration runs.

  3. Resolve owners and create fallback user

    InTouch owner IDs are matched to Salesforce users by email address. FlitStack runs an owner resolution pass against your Salesforce user list and reports unmatched owners with record counts. Your team either invites those users to Salesforce before migration or designates a fallback Salesforce user (typically an admin) to own records whose original owners have no Salesforce account. This step gates the migration — no Opportunity, Contact, or Account is inserted without a valid OwnerId.

  4. Run sample migration with field-level diff

    A representative slice of 100–500 records spanning contacts, organizations, deals, and activities migrates into a Salesforce sandbox or scratch org. FlitStack generates a field-level diff comparing source values against destination field values for every mapped field. You review the diff to verify stage mapping, owner resolution, custom field population, and activity linkage before the full run commits. Any mapping corrections are applied to the migration plan before the production migration window opens.

  5. Execute full migration with delta-pickup cutover

    The full migration loads all InTouch records into Salesforce via Bulk API 2.0, respecting foreign-key dependency order: Account records first, then Contact and Lead splits, then Opportunity records with OpportunityContactRole junctions, then Tasks, Events, Notes, and Files. A delta-pickup window (24–48 hours) captures any records created or modified in InTouch during the cutover. FlitStack's audit log records every insert, update, and error. One-click rollback reverts all migration changes if the field-level reconciliation reveals unacceptable divergence. Once rollback window expires, the migration is considered complete.

Platform deep dives

Context on both ends of the pair

InTouch logo

InTouch

Source

Strengths

  • Purpose-built conveyancing workflow templates with Land Registry task automation built in.
  • Fully managed cloud infrastructure with six file replicas across two regions and real-time database replication.
  • Data export capability included at all pricing tiers, not gated behind Enterprise only.
  • Dedicated customer champion and structured onboarding for firms with limited in-house IT capacity.
  • 2FA security enforced for both users and clients accessing the system.

Weaknesses

  • Advanced customisation for dashboards, reports, and workflow branching is limited compared to general-purpose legal platforms.
  • Mobile app is widely reported as under-featured and difficult to use on-site.
  • Native integration ecosystem with third-party accounting, Land Registry, and practice management tools is narrow.
  • Transition from the legacy flash-based interface created workflow disruption for established users that some firms still reference negatively.
Salesforce Sales Cloud logo

Salesforce Sales Cloud

Destination

Strengths

  • Largest enterprise app ecosystem in CRM with 5,000+ AppExchange integrations covering nearly every vertical workflow.
  • Native Einstein AI delivers lead scoring, opportunity insights, and predictive forecasting without a third-party layer.
  • Advanced territory management, multi-currency, and flexible forecasting satisfy complex B2B revenue structures.
  • Deep platform extensibility: Custom Objects, Apex, Flow, and the Metadata API allow full schema customization.
  • Well-documented REST API, Bulk API, and Composite API with published rate limits for programmatic migration.

Weaknesses

  • Pricing model is layered and opaque in practice: per-seat fees plus storage overages, add-on subscriptions, and annual uplifts compound to 30–40% above sticker price.
  • Workflow Rules and Process Builder are deprecated, forcing all orgs onto Salesforce Flow — a migration task that catches many teams by surprise.
  • Steep administrative complexity: meaningful configuration requires a dedicated Salesforce admin or consultant.
  • API rate limits are edition-gated (100k/day base for Enterprise) and easily exhausted by large historical imports without throttling.
  • Data export is exportable via Data Loader but preserving relationship integrity across 30+ objects requires careful ETL sequencing.

Complexity grading

How hard is this migration?

Standard CRM migration. 2 of 8 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 InTouch and Salesforce Sales Cloud.

  • Object compatibility

    B

    2 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

    InTouch: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your InTouch to Salesforce Sales Cloud 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 InTouch to Salesforce Sales Cloud data migrations

Answers to the questions buyers ask most during InTouch to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your InTouch to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most InTouch-to-Salesforce migrations complete in 48–72 hours for under 50,000 total records. Larger setups with 50,000–300,000 records or multiple Salesforce record types extend to 5–10 days. The longest planning step is designing the Salesforce record-type and Sales Process schema before any data moves — that schema design typically takes 1–3 days depending on pipeline complexity. Actual data loading via Salesforce Bulk API is clock-time bound by API rate limits, not by record count as much as by the dependency chain (Accounts before Contacts before Opportunities).

Adjacent paths

Related migrations to explore

Ready when you are

Move from InTouch.
Land in Salesforce Sales Cloud, 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