CRM migration
Field-level mapping, validation, and rollback between WennSoft and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
WennSoft
Source
Salesforce Sales Cloud
Destination
Compatibility
11 of 11
objects map 1:1 between WennSoft and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
48–72 hours
Overview
WennSoft serves field service and construction companies through service management, job costing, equipment tracking, and scheduling modules built atop Microsoft Dynamics GP. Its data model centers on service calls with line-item costs, equipment records with maintenance histories, and extended pricing matrices that calculate billing rates by call type, problem type, and technician. Salesforce Sales Cloud natively models sales relationships — Accounts, Contacts, Leads, and Opportunities — with no built-in field-service dispatch or job-costing constructs. Migrating WennSoft to Salesforce requires mapping service calls into Cases or a custom Work_Order__c object, translating equipment into Salesforce Asset or a custom Equipment__c object with parent-account lookups, and preserving job-cost rollups as custom fields on Opportunities or as a linked Job_Cost__c custom object. We use the WennSoft API and database exports to extract all standard objects plus extended pricing matrix rows, then load into Salesforce via Bulk API with field-level validation. Workflows, scheduling rules, and extended pricing formulas do not migrate — we document them for your Salesforce admin to rebuild.
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 WennSoft 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.
WennSoft
Customer
Salesforce Sales Cloud
Account
1:1WennSoft customers map directly to Salesforce Accounts. Customer name becomes Account Name. WennSoft's multi-location structure maps to Account Address fields, with each location potentially becoming a separate Account Address record or a Location custom field on the primary Account.
WennSoft
Location
Salesforce Sales Cloud
Account Address / Custom Location Field
1:1WennSoft locations store service-site addresses linked to customers. Each location links to an Account via AccountId. Multiple locations per customer become multiple Address records on the Account or a custom Location__c object with a lookup to Account.
WennSoft
Contact
Salesforce Sales Cloud
Contact
1:1Direct map. WennSoft contacts store name, phone, email, and role per customer. These map to Salesforce Contact fields (FirstName, LastName, Email, Phone, Title). Primary contact designation preserved as a custom field.
WennSoft
Service Call
Salesforce Sales Cloud
Case / Work_Order__c (Custom)
1:1Service calls translate to Salesforce Cases or a custom Work_Order__c object. Call status (Open, Scheduled, In Progress, Complete, Invoiced) maps to Case Status via value mapping. We recommend Work_Order__c when service-call-specific fields like problem_type and call_type are numerous.
WennSoft
Equipment
Salesforce Sales Cloud
Asset / Equipment__c (Custom)
1:1Equipment records map to Salesforce Asset by default (serial number, install date, status). Parent-equipment hierarchies require a custom Equipment__c object with Parent_Equipment__c lookup, since Asset does not natively support equipment-to-equipment hierarchies.
WennSoft
Employee / Technician
Salesforce Sales Cloud
User
1:1WennSoft employees (technicians, dispatchers) map to Salesforce Users by email match. Active employees get active Salesforce User accounts; inactive employees flagged for manual review. Role-based assignment preserved on the User record.
WennSoft
Job Cost / Project
Salesforce Sales Cloud
Opportunity / Job_Cost__c (Custom)
1:1Job cost rollups map to Opportunity Amount fields or a linked Job_Cost__c custom object. Labor cost, parts cost, and subcontractor cost become custom currency fields. The Opportunity represents the job; the Job_Cost__c object holds the cost breakdown per service call.
WennSoft
Time Entry
Salesforce Sales Cloud
Task / Time_Entry__c (Custom)
1:1Technician time entries become Salesforce Tasks with Type='Field Service' or a custom Time_Entry__c object. Billable vs. non-billable flags translate to custom picklists. Hours and labor rates preserved as custom fields linked to the Work_Order__c or Opportunity.
WennSoft
Invoice
Salesforce Sales Cloud
Order / Invoice__c (Custom)
1:1Posted invoices map to Salesforce Orders by default. Unposted invoices (unbilled costs) surface as custom Invoice__c records with status='Unbilled', linking to the service call for billing reconciliation after cutover.
WennSoft
Extended Pricing Matrix
Salesforce Sales Cloud
PricebookEntry / Custom Pricing Table
1:1Extended pricing matrix rows (billing rate by call type, problem type, equipment type) export as reference data. In Salesforce, these become custom pricing formula fields on Work_Order__c or are used to configure Salesforce CPQ product rules. Not a direct data migration — a rebuild guide delivered alongside the migration.
WennSoft
Attachment / Document
Salesforce Sales Cloud
Salesforce Files
1:1WennSoft documents and attachments linked to service calls, equipment, or customers re-upload to Salesforce Files attached to the corresponding record. File size limits apply (Salesforce default 25MB per file).
| WennSoft | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Customer | Account1:1 | Fully supported | |
| Location | Account Address / Custom Location Field1:1 | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Service Call | Case / Work_Order__c (Custom)1:1 | Fully supported | |
| Equipment | Asset / Equipment__c (Custom)1:1 | Fully supported | |
| Employee / Technician | User1:1 | Fully supported | |
| Job Cost / Project | Opportunity / Job_Cost__c (Custom)1:1 | Fully supported | |
| Time Entry | Task / Time_Entry__c (Custom)1:1 | Fully supported | |
| Invoice | Order / Invoice__c (Custom)1:1 | Fully supported | |
| Extended Pricing Matrix | PricebookEntry / Custom Pricing Table1:1 | Mapping required | |
| Attachment / Document | Salesforce Files1: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.
WennSoft gotchas
Invoice posting locks billing rates permanently
Unposted Costs and Unbilled Costs require separate extraction
Integration complexity and frequent glitches slow migrations
No public bulk export API documented
Dynamics GP edition gating may block migration paths
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
Audit WennSoft data model and export all standard objects
FlitStack connects to WennSoft via API and database export to extract all standard objects: Customers, Locations, Contacts, Service Calls, Equipment, Employees, Job Costs, Time Entries, Invoices, and Extended Pricing Matrix rows. We profile record counts, identify null foreign keys, flag duplicate customers, and assess the depth of equipment hierarchies. This produces a data quality report and a custom field mapping plan tailored to your WennSoft schema.
Design Salesforce custom object schema and field-level mapping
Based on the audit, FlitStack designs the Salesforce custom objects needed: Work_Order__c, Job_Cost__c, Equipment__c (for hierarchy support), Location__c, and Invoice__c. We create a field-level mapping document specifying every standard and custom field, value mappings for picklists (call status, problem type, equipment status), and transformation rules. Your Salesforce admin reviews and approves the schema before any data loads.
Resolve owners and users by email match
WennSoft technician IDs and employee records match to Salesforce Users by email. FlitStack runs an email-match scan against your Salesforce User list. Matched records map directly; unmatched technicians are flagged for your admin to create Salesforce User accounts or assign to a fallback User. No Work_Order__c record loads without a resolved OwnerId — this prevents orphaned records in Salesforce.
Run a sample migration with field-level diff
A representative slice of 200–500 records (spanning service calls across call statuses, equipment with parent-child relationships, and job cost records) migrates first. FlitStack generates a field-level diff comparing source and destination values, including picklist value mappings, foreign key resolutions, and custom field populations. You verify the diff before the full run commits. This catches mapping errors early.
Execute full migration with delta-pickup window
The full dataset loads into Salesforce via Bulk API, sequenced by foreign key dependency (Accounts first, then Contacts, then Work_Order__c). A delta-pickup window of 24–48 hours after the initial load captures any service calls modified in WennSoft during cutover. FlitStack generates an audit log of every record created or updated, with one-click rollback available if reconciliation identifies data integrity issues.
Platform deep dives
WennSoft
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 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 WennSoft and Salesforce Sales Cloud.
Object compatibility
2 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
WennSoft: Not publicly documented.
Data volume sensitivity
WennSoft 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 WennSoft to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your WennSoft 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 WennSoft
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.