CRM migration
Field-level mapping, validation, and rollback between Forms On Fire and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Forms On Fire
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
10 of 12
objects map 1:1 between Forms On Fire and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
Forms On Fire is a mobile-first no-code form and data-capture platform used in field-service, construction, and inspection workflows. Organizations accumulate thousands of form submissions containing structured field data, GPS coordinates, photos, signatures, and barcodes — data that lives outside any traditional CRM object model. Microsoft Dynamics 365 Sales, built on Dataverse, stores Leads, Contacts, Accounts, and Opportunities with a relational schema that supports custom tables and columns. FlitStack AI sequences the migration in three phases: export all Forms On Fire form submissions via the REST API, map each submission's field values to Contact, Account, or custom Dataverse table rows, and load into Dynamics 365 using the Web API with field-level validation at each pass. GPS coordinates, photo attachments, and signature fields have no native Dynamics 365 equivalent — these become custom decimal and file fields that your team configures post-migration. Any Forms On Fire automations (workflow rules, email notifications, downstream triggers) have no equivalent in Dynamics 365 and must be rebuilt in Power Automate after the data lands.
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
Forms On Fire platform overview
Scorecard, SWOT, gotchas, and pricing for Forms On Fire.
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 Forms On Fire 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.
Forms On Fire
Form Submission (Entry)
Microsoft Dynamics 365 Sales
Contact
1:1When a form submission captures a named individual with a verifiable email address, FlitStack creates a Dynamics 365 Contact record. The form field values for first name, last name, email, phone, and job title map directly to the corresponding Contact columns. Each submission becomes one Contact — duplicate detection by email match prevents double records if the same person submits multiple forms.
Forms On Fire
Form Submission (Entry)
Microsoft Dynamics 365 Sales
Lead
1:manySubmissions that contain a name and contact information but no company affiliation route to the Lead entity instead of Contact. FlitStack applies a split rule: submissions with a populated company_name field become Contact linked to an Account; submissions without a company field become Lead records. The split preserves all other field data in custom columns on the Lead record.
Forms On Fire
Form Submission (Entry)
Microsoft Dynamics 365 Sales
Account
many:1All submissions that share a common company_name value are consolidated into a single Dynamics 365 Account. FlitStack deduplicates Accounts by name before writing — if 150 submissions reference 'Acme Construction', one Account record is created and each related Contact/Lead is linked via the primarycontactid lookup. The Account stores the company-level fields from the form: domain, industry, number of employees if captured.
Forms On Fire
Form Template
Microsoft Dynamics 365 Sales
Custom Dataverse Table
1:1Multi-section forms with dozens of custom fields — inspection checklists, safety audits, asset surveys — cannot flatten into the standard Contact schema. FlitStack creates a custom Dataverse table named after the form (e.g., Inspection_Submission__c) and maps each custom form field to a typed column in that table. The submission's parent Contact or Account is stored as a lookup column on the custom table.
Forms On Fire
Form Attachment (Photo / Signature / File)
Microsoft Dynamics 365 Sales
Note (Annotation)
1:1Files attached to a form submission — photos, signatures, scanned documents — are re-uploaded to Dynamics 365 as Note records attached to the parent Contact, Account, or custom submission record. FlitStack downloads each file from Forms On Fire storage and creates an Annotation record with the original filename, MIME type, and base64 body. File size limits (max 128 MB per file in Dataverse) are enforced during the download step.
Forms On Fire
GPS Coordinates
Microsoft Dynamics 365 Sales
Custom Decimal Fields (latitude / longitude)
1:1Forms On Fire captures GPS location as separate decimal fields on each submission (Location_Data_Latitude and Location_Data_Longitude). Dynamics 365 has no native GPS composite field on Contact or Account. FlitStack creates two custom decimal fields on the target entity (e.g., Source_Latitude__c and Source_Longitude__c) and stores the original GPS coordinates. The fields are available for Power BI mapping but require a map visualization component to display geographically.
Forms On Fire
Data Source (Reference Table / Choices)
Microsoft Dynamics 365 Sales
Custom Option Set or Dataverse Table
1:1Forms On Fire data sources (e.g., product catalogs, equipment lists, inspector names) are lookup lists embedded in form fields. FlitStack evaluates each data source by row count: lists under 100 rows are converted to Dataverse global option sets and mapped to a custom choice column on the target entity; lists over 100 rows or with dynamic filtering are migrated as a separate Dataverse table with a lookup relationship from the submission record.
Forms On Fire
Forms On Fire User / Owner
Microsoft Dynamics 365 Sales
SystemUser (User)
1:1Forms On Fire user accounts (assigned as the owner of a submission) are matched to Dynamics 365 SystemUser records by email address. FlitStack runs the email resolution step before any data writes — unmatched owners are flagged in the migration report and assigned to a designated fallback user until your admin provisions the correct Dynamics 365 licenses and accounts.
Forms On Fire
Submission Timestamp
Microsoft Dynamics 365 Sales
Custom DateTime Field (Original_Submitted_Date__c)
1:1Dynamics 365 sets CreatedOn to the migration execution timestamp by default. FlitStack preserves the original Forms On Fire submission timestamp in a custom datetime field (Original_Submitted_Date__c) on every record. This field is critical for reporting continuity — it ensures that Dynamics 365 views and dashboards reflect when the submission actually occurred, not when it was migrated.
Forms On Fire
Forms On Fire Workflow Rules
Microsoft Dynamics 365 Sales
Power Automate (no native equivalent)
1:1Forms On Fire workflow rules (conditional logic, email notifications, status-change triggers) have no migration path to Dynamics 365. FlitStack exports each form's workflow rule definitions as a structured JSON document that a Power Automate or Dynamics 365 admin can use as a rebuild specification. The data migration completes independently of workflow rebuild — both proceed in parallel after the data lands.
Forms On Fire
Form Design / Template
Microsoft Dynamics 365 Sales
SharePoint Document Library (reference only)
1:1Forms On Fire form designs are not migrated to Dynamics 365 — they are not a CRM artifact. FlitStack exports each form's JSON schema and PDF screenshot to a SharePoint document library as a reference archive. This provides an audit trail of what the original form looked like without attempting to reconstruct it in Dynamics 365 forms or Power Apps.
Forms On Fire
Submission Status (Draft / Submitted / Approved)
Microsoft Dynamics 365 Sales
Custom Status Field (Submission_Status__c)
1:1Forms On Fire submission lifecycle states (Draft, Submitted, Approved, Rejected) have no direct Dynamics 365 equivalent on Contact or Lead. FlitStack creates a custom choice field (Submission_Status__c) on the target entity and maps the original status value value-by-value. Status values are preserved for reporting and filtering even though Dynamics 365 native record state (Active/Inactive) operates independently.
| Forms On Fire | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Form Submission (Entry) | Contact1:1 | Fully supported | |
| Form Submission (Entry) | Lead1:many | Fully supported | |
| Form Submission (Entry) | Accountmany:1 | Fully supported | |
| Form Template | Custom Dataverse Table1:1 | Fully supported | |
| Form Attachment (Photo / Signature / File) | Note (Annotation)1:1 | Fully supported | |
| GPS Coordinates | Custom Decimal Fields (latitude / longitude)1:1 | Fully supported | |
| Data Source (Reference Table / Choices) | Custom Option Set or Dataverse Table1:1 | Fully supported | |
| Forms On Fire User / Owner | SystemUser (User)1:1 | Fully supported | |
| Submission Timestamp | Custom DateTime Field (Original_Submitted_Date__c)1:1 | Fully supported | |
| Forms On Fire Workflow Rules | Power Automate (no native equivalent)1:1 | Fully supported | |
| Form Design / Template | SharePoint Document Library (reference only)1:1 | Fully supported | |
| Submission Status (Draft / Submitted / Approved) | Custom Status Field (Submission_Status__c)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.
Forms On Fire gotchas
Standard tier entry limits silently gate historical data
dotx template linkage breaks Word document generation
Data Source auto-select behavior can silently alter form state
Enterprise requires 25+ users minimum
Non-Office document generation not supported
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
Audit Forms On Fire form templates and estimate migration scope
FlitStack connects to the Forms On Fire REST API using scoped read credentials and enumerates every form template in your account. For each template we capture field names, field types, data source references, workflow rule definitions, and attachment storage references. We produce a scoping report listing the total submission count, unique field schemas across templates, and a count of distinct attachment types. This report determines the migration tier and surfaces any schema complexity (forms with 50+ custom fields, multi-step forms, or forms with large data-source lookups) before work begins.
Design the Dynamics 365 target schema and license compatibility check
FlitStack delivers a schema design document specifying the Dataverse custom tables, custom columns, and option sets to be created in your Dynamics 365 environment before the migration run. This document includes the Forms On Fire field name, the target Dataverse column name, the data type mapping, and whether the column is required or optional. If your Dynamics 365 license is Sales Professional, we flag which form templates will be consolidated to stay within the 15-table limit. We also verify that your Dynamics 365 storage quota has capacity for all photo and signature attachments before the attachment migration step.
Export Forms On Fire submissions and attachments via REST API
FlitStack executes a paginated export of all form submissions from the Forms On Fire API, pulling field values, metadata, and submission status for every record. The export runs in parallel with an attachment export that downloads photos, signatures, and documents to a secure staging area. Each submission record is tagged with the API response cursor position so the export is resumable if interrupted. Owner email addresses are extracted from each submission and resolved against your specified fallback-owner policy before the data is staged for transformation.
Transform and validate field mappings in a sample migration
A representative slice of submissions (typically 100–500 records across two or three form templates) is processed through the field-mapping logic and written to a Dynamics 365 sandbox or a dedicated migration test environment. FlitStack generates a field-level diff report comparing every source field value to its mapped destination value, flagging any truncated text, unmapped pick-list values, missing required fields, or OwnerId resolution failures. Your team reviews the diff and approves the mapping plan before the full migration commits.
Run full migration with delta-pickup window and audit logging
The full submission dataset is processed through the validated mapping in batches, with each batch written to Dynamics 365 via the Dataverse Web API. FlitStack maintains a migration audit log recording every create operation with the source submission ID, destination record ID, and timestamp. After the initial load completes, a delta-pickup window of 24–48 hours captures any new or modified submissions created in Forms On Fire during the cutover period. The delta window ensures Dynamics 365 reflects the final state of Forms On Fire at go-live. One-click rollback is available if post-migration reconciliation reveals data integrity issues.
Platform deep dives
Forms On Fire
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Forms On Fire and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Forms On Fire and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Forms On Fire 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
Forms On Fire: Not publicly documented.
Data volume sensitivity
Forms On Fire 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 Forms On Fire to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Forms On Fire 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 Forms On Fire
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.