CRM migration
Field-level mapping, validation, and rollback between FotoNotes and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
FotoNotes
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
12 of 12
objects map 1:1 between FotoNotes and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
72–96 hours
Overview
FotoNotes is a field-centric platform built around properties (containers), work orders (containees), photos, and role-based vendor access — not a traditional CRM. Dynamics 365 Sales is built on Dataverse with Account, Contact, Lead, Opportunity, and Activity entities. There is no native one-to-one object between FotoNotes work orders and Dynamics opportunities; we treat FotoNotes properties as Accounts, primary contacts on work orders as Contacts, and work orders themselves as Opportunities or custom WorkOrder tables depending on your Dynamics license tier. Photo attachments download from FotoNotes storage and re-upload to Dynamics 365's SharePoint-connected file store. Vendor-admin and field-user roles do not map to Dynamics security roles — we surface the FotoNotes role assignments as a custom picklist field so your Dynamics administrator can rebuild appropriate security tiers post-migration. Because FotoNotes has no native API for bulk export, we use its batch-report download endpoint combined with structured CSV extraction for structured data, and direct photo archive downloads for binary assets. Workflows and automation logic (assignment rules, notification triggers, template-based work orders) have no equivalent in Dynamics 365 and must be rebuilt using Power Automate or Dynamics workflows after migration.
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.
Source platform
FotoNotes platform overview
Scorecard, SWOT, gotchas, and pricing for FotoNotes.
Destination platform
Microsoft Dynamics 365 Sales platform overview
Scorecard, SWOT, gotchas, and pricing for Microsoft Dynamics 365 Sales .
Data migration guide
The complete Microsoft Dynamics 365 Sales migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Microsoft Dynamics 365 Sales migration checklist
Pre- and post-cutover tasks for moving onto Microsoft Dynamics 365 Sales .
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a FotoNotes object lands in Microsoft Dynamics 365 Sales , including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
FotoNotes
Property (Container)
Microsoft Dynamics 365 Sales
Account
1:1Each FotoNotes Property record maps to a Dynamics 365 Account. Address fields on the property map to Account.Address and Account.City/State/PostalCode. Parent/child property hierarchies map to Account.ParentAccountId for multi-building portfolios. We also preserve the original property identifier in a custom field (Original_Property_ID__c) to support traceability and future delta migrations.
FotoNotes
Property (Container)
Microsoft Dynamics 365 Sales
Site (custom table)
1:1When FotoNotes Properties represent physical sites within a corporate Account (e.g., 12 buildings under one company), we create a custom Site table in Dynamics with a lookup to Account. This preserves the container hierarchy while keeping the CRM relationship intact.
FotoNotes
Work Order (Containee)
Microsoft Dynamics 365 Sales
Opportunity
1:1Work orders map to Dynamics Opportunities. The work order name becomes Opportunity.Name; status maps to Opportunity.StatusCode; estimated completion date maps to Opportunity.CloseDate. If FotoNotes stores monetary amounts (e.g., repair estimates), those map to Opportunity.EstimatedValue. We also capture the original work order ID in a custom field (Original_WO_ID__c) for reference and to enable delta sync during cutover.
FotoNotes
Work Order (Containee)
Microsoft Dynamics 365 Sales
Custom WorkOrder table
1:1For teams needing work-order specifics beyond CRM fields (e.g., vendor assignment, trade type, permit number), we create a custom WorkOrder table in Dataverse with a lookup to Account. This requires Sales Enterprise licensing for unlimited custom tables. The table includes fields such as Trade_Type__c, Permit_Number__c, and Vendor_Assignment__c to capture detailed work-order attributes.
FotoNotes
Work Order Type / Service
Microsoft Dynamics 365 Sales
Opportunity Subject or custom Type field
1:1FotoNotes Work Order Types (e.g., Plumbing, Electrical, HVAC, Inspection) map to a custom picklist on Opportunity or WorkOrder. Value-by-value mapping required — we preserve the FotoNotes type labels and your Dynamics admin assigns icons/status colors per type. This ensures that reporting filters can distinguish service categories across all migrated work orders without manual data entry.
FotoNotes
Primary Contact on Work Order
Microsoft Dynamics 365 Sales
Contact
1:1The person listed as the primary contact on a FotoNotes work order migrates as a Dynamics 365 Contact record, linked to the Account (Property). Contact name, phone, and email map directly. Multiple contacts per work order become Contact records with the WorkOrder lookup.
FotoNotes
Vendor / Field User Assignment
Microsoft Dynamics 365 Sales
User lookup + custom role field
1:1FotoNotes vendor and field user assignments are not Dynamics Users (those are internal staff). We create Contact records for vendors and map the FotoNotes role type to a custom Vendor_Role__c picklist on the Contact. Dynamics Users get resolved by email match for internal staff.
FotoNotes
Photo / Attachment
Microsoft Dynamics 365 Sales
SharePoint Document Location or NoteAttachment
1:1FotoNotes photos download from FotoNotes cloud storage. We re-upload them to SharePoint Document Locations linked to the corresponding Account or WorkOrder record in Dynamics. Photo filenames preserve the original naming convention. Batch uploads run in 500-file sequences to stay within Power Platform API limits.
FotoNotes
Comments / Activity Log
Microsoft Dynamics 365 Sales
Note (annotation) or custom Activity
1:1FotoNotes work order comments and the Activity Log stream map to Dynamics Note records (not Activities) with notetext capturing the comment body, createdon preserving the original timestamp, and modifiedby resolving to a Dynamics User by email. Status-change entries in the log become custom Activity records.
FotoNotes
Batch Report / PDF
Microsoft Dynamics 365 Sales
SharePoint Document Library
1:1FotoNotes batch PDF reports generated at migration time are downloaded and stored in a dedicated SharePoint Document Library linked to the Account. These are reference-only — they do not become Dynamics records but are accessible from the Account form. The library uses a consistent folder structure mirroring the original FotoNotes batch report hierarchy for straightforward retrieval.
FotoNotes
Dashboard / View Configuration
Microsoft Dynamics 365 Sales
Custom Dashboard (not migrated)
1:1FotoNotes saved dashboard views and custom portal views have no Dynamics equivalent. We document the view names and filter criteria as a reference sheet for your Dynamics admin to recreate in Dynamics Sales app dashboards. This reference includes column layouts, sort orders, and any conditional formatting applied in FotoNotes, enabling the admin to replicate the user experience.
FotoNotes
Template / Work Order Template
Microsoft Dynamics 365 Sales
Power Automate flow (not migrated)
1:1FotoNotes work order templates (which auto-populate container fields into new work orders) do not migrate. We export template field names and default values as a structured JSON file; your Dynamics admin uses this to build Power Automate templates or classic workflows in Dynamics.
| FotoNotes | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Property (Container) | Account1:1 | Fully supported | |
| Property (Container) | Site (custom table)1:1 | Fully supported | |
| Work Order (Containee) | Opportunity1:1 | Fully supported | |
| Work Order (Containee) | Custom WorkOrder table1:1 | Fully supported | |
| Work Order Type / Service | Opportunity Subject or custom Type field1:1 | Fully supported | |
| Primary Contact on Work Order | Contact1:1 | Fully supported | |
| Vendor / Field User Assignment | User lookup + custom role field1:1 | Fully supported | |
| Photo / Attachment | SharePoint Document Location or NoteAttachment1:1 | Fully supported | |
| Comments / Activity Log | Note (annotation) or custom Activity1:1 | Fully supported | |
| Batch Report / PDF | SharePoint Document Library1:1 | Fully supported | |
| Dashboard / View Configuration | Custom Dashboard (not migrated)1:1 | Fully supported | |
| Template / Work Order Template | Power Automate flow (not migrated)1: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.
FotoNotes gotchas
Container-to-contained field inheritance is implicit
Batch PDF reports are the only bulk export mechanism
Vendor sub-accounts require hierarchical mapping
FotoNotes is now SiteCapture — documentation split
Microsoft Dynamics 365 Sales gotchas
Professional tier 15-table custom table limit blocks migrations
October 2024 pricing increase applies at renewal for all customers
Custom fields must be created in the UI before API writes
Power Platform request limits apply to bulk migrations
Activity records orphaned to inactive owners fail silently
Pair-specific challenges
Migration approach
Discover FotoNotes data inventory and export permissions
We audit your FotoNotes account tier to confirm batch export limits, available record types (properties, work orders, types, contacts), and photo storage quotas. We document all active work order templates, custom property fields, and role assignments before designing the mapping plan. If export throttling is detected, we coordinate multiple export passes with de-duplication logic to ensure complete data retrieval without gaps.
Design Dynamics 365 schema and custom table architecture
Based on the FotoNotes inventory, we design the Dynamics 365 target schema: Account records for properties, custom WorkOrder table if needed (vs. Opportunity-based mapping), Contact records for all parties, custom picklist fields for work order types and vendor roles, and SharePoint Document Library configuration for photos. We deliver a schema setup plan so your Dynamics admin (or our team) creates all custom fields and SharePoint document locations before data loads begin. This step resolves the Professional vs. Enterprise licensing question.
Extract FotoNotes data via batch reports and photo archive downloads
We trigger batch CSV exports from FotoNotes for all property, work order, type, and contact records. Photo archives download in parallel using FotoNotes' storage URLs. All exports run with scoped read access — your team continues using FotoNotes during extraction. We validate row counts against FotoNotes' internal record counts and flag any export-window gaps before proceeding to transformation. We also log file sizes and capture any warnings for post-migration audit.
Run sample migration with field-level diff against Dynamics 365
A representative slice — typically 100–500 records spanning properties, work orders, contacts, comments, and photos — migrates first. We generate a field-level diff comparing source FotoNotes values against destination Dynamics 365 fields. You verify that work order type value mappings, vendor role pick-lists, photo SharePoint links, and container hierarchy (parent-account linking) all resolve correctly before the full run commits, including status mapping, date field alignment, and any custom field transformations.
Execute full migration with delta-pickup window and one-click rollback
The full migration runs against Dynamics 365 using Dataverse Web API for record creation and SharePoint REST API for file uploads. A delta-pickup window (24–48 hours) captures any FotoNotes records created or updated during the cutover window so Dynamics reflects the final state at go-live. Our audit log records every operation; if reconciliation fails, one-click rollback reverts all Dynamics records created during the migration without affecting the source FotoNotes account.
Platform deep dives
FotoNotes
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between FotoNotes and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across FotoNotes and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between FotoNotes and Microsoft Dynamics 365 Sales .
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
FotoNotes: Not publicly documented.
Data volume sensitivity
FotoNotes 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 FotoNotes to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your FotoNotes to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave FotoNotes
Other ways to arrive at Microsoft Dynamics 365 Sales
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.