CRM migration
Field-level mapping, validation, and rollback between Novo Work Order and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Novo Work Order
Source
Salesforce Sales Cloud
Destination
Compatibility
10 of 12
objects map 1:1 between Novo Work Order and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
48–72 hours
Overview
Novo Work Order structures its data around work orders linked to assets, locations, and departments — with labor tracking, parts usage, and preventive maintenance schedules stored as related records. Salesforce Sales Cloud natively models Accounts, Contacts, Cases, and Assets, but lacks a native work-order object; FlitStack maps Novo work orders to Salesforce Cases (or a custom Work_Order__c object when the source schema requires it), assets to the native Asset object, and technicians to Salesforce Users via email resolution. Preventive maintenance schedules, which Novo models as standalone records, become a custom PM_Schedule__c object with a master-detail relationship to Asset. The migration preserves original create dates as a custom Original_Create_Date__c field since Salesforce sets CreatedDate at load time, and status-change timestamps surface as custom datetime fields for reporting continuity. FlitStack uses Salesforce Bulk API 2.0 for large record volumes, REST API for real-time validation, and handles any attachments via re-upload to Salesforce Files. Workflows, automations, and email templates do not migrate — FlitStack exports workflow definitions as a JSON reference so your Salesforce admin can rebuild them in Flow.
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 Novo Work Order 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.
Novo Work Order
Work Order
Salesforce Sales Cloud
Case
1:1Novo Work Order maps directly to Salesforce Case. The CaseNumber in Salesforce receives the Novo work order ID for traceability. Status values map via value-mapping table (Novo Open → Salesforce New, Novo In Progress → In Progress, Novo On Hold → Waiting on Customer, Novo Complete → Closed, Novo Cancelled → Cancelled). Priority maps 1:1.
Novo Work Order
Work Order
Salesforce Sales Cloud
Work_Order__c (Custom Object)
1:1If Novo work orders have custom fields that don't fit Salesforce Case's standard schema (e.g., specific municipal permit fields), FlitStack creates a Work_Order__c custom object with a master-detail link to Case. This keeps native Case features (email-to-case, Web-to-Case, Case Team) while storing Novo-specific data in custom fields.
Novo Work Order
Asset
Salesforce Sales Cloud
Asset
1:1Novo assets map 1:1 to Salesforce Asset. The Asset's Name, SerialNumber, InstallDate, Status, and AccountId (linked to the Account representing the asset's location/owner) transfer directly. Novo's asset hierarchy (parent/child equipment) maps to Salesforce's ParentAssetId lookup. If a Novo asset references a location that does not yet exist as a Salesforce Account, FlitStack creates the Account on the fly, linking the asset to ensure continuity.
Novo Work Order
Preventive Maintenance
Salesforce Sales Cloud
PM_Schedule__c (Custom Object)
1:1Novo's Preventive Maintenance records have schedule rules, frequency, and last-run dates. Salesforce has no native PM object — FlitStack creates a PM_Schedule__c custom object with master-detail to Asset. PM_Schedule__c stores frequency, next_due_date, last_completed_date, and a link to the related Case created when the PM runs.
Novo Work Order
Department
Salesforce Sales Cloud
Queue + Custom Department Field
1:1Novo Departments route work orders to teams. Salesforce Queues handle Case assignment for groups. FlitStack creates a Queue per Novo Department and a custom Department__c pick-list field on Case for reporting. Technicians resolve to Salesforce Users by email match — unmatched technicians flagged for admin review before migration.
Novo Work Order
Location / Facility
Salesforce Sales Cloud
Account
1:1Novo locations (addresses, facilities, infrastructure) map to Salesforce Account. Municipalities typically use Account for external entities (vendors, partner agencies) and may use a custom Location__c object for internal facilities — FlitStack recommends Account for external-facing locations and creates Location__c for internal infrastructure when the inventory is large.
Novo Work Order
Labor Line Item
Salesforce Sales Cloud
Custom Labor field on Case
many:1Novo records multiple labor entries per work order (technician, hours, date). Salesforce Case has no native labor sub-object. FlitStack merges these into Total_Labor_Hours__c (sum), Labor_Cost__c (sum), and a custom Work_Order_Labor__c junction object if individual line-item audit is required. When labor entries include overtime rates or varying wage codes, FlitStack stores the overtime hours in a separate Overtime_Hours__c field and calculates additional cost in Overtime_Cost__c, ensuring accurate labor budgeting.
Novo Work Order
Parts / Materials Line Item
Salesforce Sales Cloud
Custom Parts field on Case + Product2
many:1Novo tracks parts used per work order with quantity and cost. FlitStack maps parts to Product2 (if an inventory catalog exists) and creates a custom Parts_JSON__c field on Case storing the array of parts consumed. Individual part line items can be preserved in a custom Work_Order_Parts__c object for full audit history.
Novo Work Order
Attachment / Photo
Salesforce Sales Cloud
Salesforce Files (ContentDocument/ContentVersion)
1:1Novo file attachments and inspection photos re-upload to Salesforce Files and link to the related Case or Asset record via ContentDocumentLink. Salesforce's 25MB per-file limit applies — large photos are compressed before upload. Inline images in work order notes are extracted and rehosted.
Novo Work Order
User / Technician
Salesforce Sales Cloud
User
1:1Novo technicians resolve to Salesforce Users by email match. If a Novo technician has no matching Salesforce User, their records are assigned to a fallback OwnerId (typically the admin's user) and flagged in the pre-migration report for the customer to create or link accounts before go-live.
Novo Work Order
Work Order Comment / Note
Salesforce Sales Cloud
Case Comment
1:1Novo work order comments and internal notes map to Salesforce CaseComment. Original timestamps and the commenting technician's name (resolved to Salesforce User) are preserved. Rich-text formatting in Novo notes is converted to plain text with line breaks preserved in CaseComment.Body.
Novo Work Order
Custom Fields (Work Order)
Salesforce Sales Cloud
Custom Fields on Case or Work_Order__c
1:1Novo custom properties on work orders (e.g., permit_number, inspection_result, funding_source) require Salesforce custom fields. FlitStack creates these as pick-list, text, number, or date fields depending on the source type. Field-level API name uses the __c suffix. Any invalid Salesforce field names (spaces, special characters) are normalized before migration.
| Novo Work Order | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Work Order | Case1:1 | Fully supported | |
| Work Order | Work_Order__c (Custom Object)1:1 | Fully supported | |
| Asset | Asset1:1 | Fully supported | |
| Preventive Maintenance | PM_Schedule__c (Custom Object)1:1 | Fully supported | |
| Department | Queue + Custom Department Field1:1 | Fully supported | |
| Location / Facility | Account1:1 | Fully supported | |
| Labor Line Item | Custom Labor field on Casemany:1 | Fully supported | |
| Parts / Materials Line Item | Custom Parts field on Case + Product2many:1 | Fully supported | |
| Attachment / Photo | Salesforce Files (ContentDocument/ContentVersion)1:1 | Fully supported | |
| User / Technician | User1:1 | Fully supported | |
| Work Order Comment / Note | Case Comment1:1 | Fully supported | |
| Custom Fields (Work Order) | Custom Fields on Case or Work_Order__c1: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.
Novo Work Order gotchas
No public API forces migration via built-in exports
Pricing opacity complicates budget planning
Municipal-specific custom fields need careful schema mapping
Preventative maintenance recurrence rules vary by configuration
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
Inventory Novo data model and export via API
FlitStack connects to Novo Work Order via its REST API to pull the full data model — work orders, assets, locations, departments, preventive maintenance records, and custom fields. We generate a data inventory report listing record counts per object, custom field names and types, attachment counts and total file size, and technician/user records. This report drives the scope assessment and confirms the migration estimate before any data moves.
Design Salesforce schema: Case vs. Work_Order__c, PM_Schedule__c, queues
Based on the data inventory, FlitStack delivers a Salesforce schema setup plan. If Novo work orders have fewer than 10 custom fields, we recommend standard Case with custom fields. If the custom field count exceeds 10, we recommend Work_Order__c as a custom object with master-detail to Case. We also specify PM_Schedule__c field definitions, Queue names per Novo Department, and any custom pick-list values for the Department__c field. Your Salesforce admin creates the schema in a sandbox before the migration dry run.
Resolve technicians and departments by email
Novo technician records are matched to Salesforce Users by email address. Unmatched technicians are flagged in a pre-migration report — your team either creates Salesforce User accounts for them or assigns their records to a fallback owner. Departments are mapped to Salesforce Queues created in Step 2. FlitStack generates the Queue membership list from Novo department membership data so the Queues are pre-populated before migration.
Run sample migration with field-level diff
A representative slice of 200–500 records migrates first — spanning work orders at each status, assets with and without PM records, and attachments. FlitStack generates a field-level diff comparing source values to destination values for every mapped field. You verify that Novo status values map correctly to Salesforce Status, priority mapping is accurate, technician assignment resolves, and asset links populate. The diff report is reviewed in a sync call before the full run is scheduled.
Execute full migration with delta-pickup window
The full migration loads Accounts (from Novo locations) first, then Assets, then Cases (or Work_Order__c records), then PM_Schedule__c, then Case Comments and Salesforce Files. A delta-pickup window of 24–48 hours after the full run captures any records modified in Novo during the cutover. All operations are logged to an audit trail. If reconciliation reveals missing or mismatched records, FlitStack triggers a one-click rollback to the pre-migration state and re-runs the affected object.
Platform deep dives
Novo Work Order
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 Novo Work Order 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
Novo Work Order: Not publicly documented.
Data volume sensitivity
Novo Work Order 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 Novo Work Order to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Novo Work Order 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 Novo Work Order
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.