CRM migration
Field-level mapping, validation, and rollback between Time Matters(r) and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Time Matters(r)
Source
Salesforce Sales Cloud
Destination
Compatibility
12 of 12
objects map 1:1 between Time Matters(r) and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4–8 weeks
Overview
Time Matters is a legal practice management system built around four core record types: Contacts, Matters, Events, and Tasks, with a relational database supporting many-to-many links between contacts and matters. Firms rely on it for calendaring, document merge templates, trust accounting, and matter-centric billing. The platform predates modern cloud architecture — it stores data in local .tmd files and exports via custom templates to CSV, with no native API for real-time integration. Salesforce Sales Cloud uses a standard object model (Account, Contact, Case, Task, Event) with a different relational paradigm: contacts require an AccountId lookup, and multi-entity relationships need junction objects. FlitStack AI extracts Time Matters data via the platform's built-in Custom Export wizard, maps the N-to-N contact-matter graph to a Contact_Matter_Junction__c custom object, translates billing time entries to custom Expense__c and TimeEntry__c records, and loads everything through Salesforce Bulk API with a field-level diff before commit. Workflows, document merge templates, and trust-accounting rules do not migrate — they require manual rebuild in Salesforce Flow, DocuSign, and Financial Services Cloud respectively.
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 Time Matters(r) 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.
Time Matters(r)
Contact
Salesforce Sales Cloud
Contact
1:1Time Matters Contact records map directly to Salesforce Contact. The AccountId lookup requires that the firm (for attorney contacts) or client organization (for matter contacts) is loaded first. Unmatched firm names create a default 'Firm Unassigned' Account. Time Matters contact-type flags (Client, Opposing Counsel, Vendor) become custom pick-list values on a Contact_Type__c custom field.
Time Matters(r)
Firm (organization)
Salesforce Sales Cloud
Account
1:1Time Matters stores firm and organization names alongside contacts. These map to Salesforce Account records. Law firm name, office address, and bar number fields from Time Matters become custom fields on the Account object (Firm_Name__c, Bar_Number__c). Multi-office firms where Time Matters stores one record per office collapse to one Account with multiple Account Contact Relations.
Time Matters(r)
Matter
Salesforce Sales Cloud
Matter__c (custom object)
1:1Time Matters Matter records have no native Salesforce equivalent. FlitStack AI creates a custom Matter__c object in Salesforce with fields mirroring the source schema: Matter_Number__c, Matter_Title__c, Description__c, Status__c, Practice_Area__c, Responsible_Attorney__c, Client_Name__c, Open_Date__c, Close_Date__c, Billing_Method__c, Matter_Object_ID__c for traceability. The custom object is deployed via Salesforce Metadata API before data loading begins.
Time Matters(r)
MATTERCONTACT (N:N join)
Salesforce Sales Cloud
Contact_Matter_Junction__c (junction object)
1:1Time Matters allows a contact to link to N matters and a matter to have N contacts via the MATTERCONTACT join table. This N-to-N relationship requires a custom junction object (Contact_Matter_Junction__c) with lookup fields to both Contact and Matter__c, plus a Role__c pick-list field preserving the Time Matters contact role on that matter. Loading requires both parent records to exist first — Matter__c and Contact — before the junction table loads.
Time Matters(r)
Event
Salesforce Sales Cloud
Event
1:1Time Matters Events (calendar entries, depositions, hearings, filing deadlines) map to Salesforce Event records. The Subject, StartDateTime, EndDateTime, Description, and IsAllDayEvent fields carry over directly. Events linked to a Matter via MATTERCONTACT get the Matter__c lookup populated through the junction record. Original create timestamps and created-by users are preserved as custom fields (Original_Create_Date__c, Created_By_User__c).
Time Matters(r)
ToDo / Task
Salesforce Sales Cloud
Task
1:1Time Matters ToDo records map to Salesforce Task. Subject, Status, Priority, ActivityDate (due date), and Description migrate directly. Open todos preserve their original created date in Original_Create_Date__c. Tasks linked to a matter carry the Matter__c lookup through the junction table. Completed vs. open status maps via a value-mapping table (Open=Not Started, Completed=Completed in Salesforce).
Time Matters(r)
Note
Salesforce Sales Cloud
Note
1:1Time Matters Notes migrate as Salesforce Notes. The Note Title maps from Time Matters' subject or first-line text, and Body carries the full note content. Notes are linked to their parent Contact or Matter__c record by lookup. If Time Matters notes contain embedded file references, those references are stored as Note_Attachment_URL__c custom fields pointing to the re-uploaded Salesforce Files location.
Time Matters(r)
Document / File
Salesforce Sales Cloud
ContentDocument / Salesforce Files
1:1Time Matters stores document paths and file references linked to matters and contacts. FlitStack AI extracts the referenced documents from the firm's file server (via the export), re-uploads them to Salesforce Files, and stores the ContentDocumentId and link URL in a Document_Reference__c field on the associated Matter__c or Contact record.
Time Matters(r)
Time Entry / Expense
Salesforce Sales Cloud
TimeEntry__c / Expense__c (custom objects)
1:1Time Matters time and expense records track billable hours, rates, and expense amounts per matter. These have no Salesforce standard equivalent. FlitStack AI creates TimeEntry__c and Expense__c custom objects with fields: Entry_Date__c, Hours__c, Rate__c, Amount__c, Description__c, Billable__c, and a lookup to the associated Matter__c record. Default billing rates and invoice templates do not carry over.
Time Matters(r)
Billing / Invoice
Salesforce Sales Cloud
Invoice__c (custom object)
1:1Time Matters generates invoices tied to matter billing entries. These map to a custom Invoice__c object with Invoice_Number__c, Invoice_Date__c, Total_Amount__c, Status__c, and a lookup to the associated Matter__c. Invoice templates and billing rules must be rebuilt in Salesforce CPQ or Financial Services Cloud after migration.
Time Matters(r)
Workflow / Automation Rule
Salesforce Sales Cloud
Flow / Process Builder
1:1Time Matters workflow rules, internal triggers, task automation, and deadline-based alerts do not have a Salesforce equivalent and cannot be migrated. FlitStack AI exports the Time Matters workflow definitions as a reference document (PDF or Word) that your Salesforce admin can use to rebuild equivalent automation in Salesforce Flow or Apex triggers.
Time Matters(r)
Merge Template
Salesforce Sales Cloud
Salesforce Files + CPQ Document Generation
1:1Time Matters document merge templates are stored as .dot or proprietary template files tied to specific matter types. These cannot be imported into Salesforce. FlitStack exports them as reference documents. Firms typically rebuild document generation using Salesforce CPQ, Conga Composer, or Drawloop after migration.
| Time Matters(r) | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Firm (organization) | Account1:1 | Fully supported | |
| Matter | Matter__c (custom object)1:1 | Fully supported | |
| MATTERCONTACT (N:N join) | Contact_Matter_Junction__c (junction object)1:1 | Fully supported | |
| Event | Event1:1 | Fully supported | |
| ToDo / Task | Task1:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| Document / File | ContentDocument / Salesforce Files1:1 | Fully supported | |
| Time Entry / Expense | TimeEntry__c / Expense__c (custom objects)1:1 | Fully supported | |
| Billing / Invoice | Invoice__c (custom object)1:1 | Fully supported | |
| Workflow / Automation Rule | Flow / Process Builder1:1 | Fully supported | |
| Merge Template | Salesforce Files + CPQ Document Generation1: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.
Time Matters(r) gotchas
No API forces file-only migration with manual export wizard steps
Archived records excluded by default — explicit 'Both' selection required
Include field names checkbox is easy to miss, leaving CSVs headerless
Binary documents and attachments not included in any standard export
Merge template library requires separate file-share export, not in export wizard
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Discovery and Time Matters export extraction
FlitStack AI analyzes your Time Matters installation to identify all record types in use: Contacts, Matters, Events, Tasks, Notes, Time Entries, Expenses, and any custom fields defined in the system. We run the built-in Custom Export wizard for each record type, selecting 'Both' for archived/non-archived records to capture the full history. We extract the MATTERCONTACT join table separately to capture the N-to-N relationship graph. Data is validated for completeness (record counts per type, referential integrity between tables) before any transformation begins.
Schema build and Salesforce custom object creation
Before data can load, FlitStack AI creates the custom Matter__c object, the Contact_Matter_Junction__c junction object, and any custom fields needed for Time Matters data that has no standard Salesforce equivalent (Practice_Area__c, Default_Rate__c, TimeEntry__c, Expense__c, Invoice__c). We deploy these via Salesforce Metadata API into your sandbox first for validation. Once validated, the schema deploys to production. This step typically takes 3–5 business days and requires a Salesforce admin to approve the custom object deployment.
Data transformation and field mapping
FlitStack AI transforms the Time Matters CSV exports into Salesforce-compatible records. This includes: resolving firm names to AccountIds, mapping contact-type values to custom pick-list fields, translating Time Matters status values to Salesforce Task/Event status values, populating the Contact_Matter_Junction__c junction table with the N-to-N relationship rows, and writing original create/modified timestamps to custom datetime fields. The mapping is validated against the field_mapping specification before any load occurs.
Sample migration with field-level diff
A representative slice of records (typically 200–500 per object type) migrates into your Salesforce sandbox first. FlitStack AI generates a field-level diff comparing source and destination values side-by-side for every field in the mapping spec. You review the diff to confirm: matter status mapping, practice area values, contact-account resolution, junction table row completeness, and original timestamp preservation. Any mapping corrections are made before the full run commits.
Full migration with delta-pickup cutover
The full dataset loads into Salesforce production via Bulk API 2.0. A delta-pickup window (24–48 hours) runs concurrently with your Time Matters cutover: any records created or modified in Time Matters during the window are captured and loaded into Salesforce before go-live. An audit log records every upsert operation. FlitStack AI runs a post-load reconciliation comparing record counts and a spot-check of field values against the source CSV. One-click rollback is available if reconciliation reveals data integrity issues.
Platform deep dives
Time Matters(r)
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Time Matters(r) and Salesforce Sales Cloud.
Object compatibility
1 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
Time Matters(r): Not applicable.
Data volume sensitivity
Time Matters(r) 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 Time Matters(r) to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Time Matters(r) to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Time Matters(r)
Other ways to arrive at Salesforce Sales Cloud
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.