CRM migration
Field-level mapping, validation, and rollback between OctopusPro and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
OctopusPro
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
6 of 9
objects map 1:1 between OctopusPro and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from OctopusPro to Microsoft Microsoft Dynamics 365 Sales is a cross-category migration: OctopusPro is structured around the field-service lifecycle (bookings, dispatch, job completion, invoicing), while Microsoft Dynamics 365 Sales is a CRM centered on Accounts, Contacts, Leads, and Opportunities. We migrate the customer data, booking history, and invoice/payment records that represent your business relationships and revenue history, but the operational scheduling layer — job status tracking, GPS dispatch, field-worker assignments — has no direct equivalent in Microsoft Dynamics 365 Sales and requires manual rebuild or a separate Field Service module. OctopusPro has no documented public API, so all source data is obtained through a support-assisted export; we handle that request on your behalf. Custom fields on customer profiles and bookings are tenant-specific and must be discovered before we can map them. We do not migrate Customer Portal settings, automations, or forms as code; we deliver a written inventory of each for your admin to reconstruct at the destination.
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
OctopusPro platform overview
Scorecard, SWOT, gotchas, and pricing for OctopusPro.
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 OctopusPro 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.
OctopusPro
Customer
Microsoft Dynamics 365 Sales
Account + Contact
1:manyOctopusPro Customer records map to a Microsoft Dynamics 365 Account as the organizational record and a primary Contact as the point of record. Name, phone, email, address, and notes transfer to Account (company-level) and Contact (individual-level) fields respectively. Customer Portal preferences do not migrate; these are a configuration layer with no data payload in OctopusPro.
OctopusPro
Booking
Microsoft Dynamics 365 Sales
Opportunity + Task (custom Job entity recommended)
1:manyOctopusPro Bookings are the central record — they combine a customer link, one or more field workers, a service, a time slot, status, and often an associated invoice. Microsoft Dynamics 365 Sales has no booking or job object natively. We recommend a custom Job entity on Dataverse to capture service name, scheduled date, worker assignment, status, and booking-level custom fields; the commercial dimension (estimated value, service type) maps to Opportunity for pipeline tracking. Historical bookings with invoiced amounts map as closed Opportunities with the invoice amount as the Actual Value.
OctopusPro
Field Worker
Microsoft Dynamics 365 Sales
User
1:1OctopusPro field worker records (name, role, contact details, pay rate, location tracking preferences) map to Microsoft Dynamics 365 User records. We match by email address. Field-worker-specific attributes such as pay rate are not native Dynamics fields and require custom fields or Notes. GPS tracking and location monitoring settings have no equivalent in Microsoft Dynamics 365 Sales and do not migrate.
OctopusPro
Invoice
Microsoft Dynamics 365 Sales
Invoice (Microsoft Dynamics 365 Sales Enterprise) or Order + Custom Invoice entity
1:1OctopusPro Invoice records — line items, tax, totals, and payment status tied to a booking — map to Microsoft Dynamics 365 Sales Invoice (available in Sales Enterprise tier) or to a combination of Order and a custom Invoice entity for Sales Professional. Invoice-to-booking linkage is preserved via the custom Job entity reference. Unpaid invoices migrate with their balance outstanding for follow-up in Dynamics.
OctopusPro
Payment
Microsoft Dynamics 365 Sales
Invoice Payment or Order (as paid)
1:1Payment records (amount, method, date, status) map to payment records on the corresponding Dynamics Invoice or Order. Partial payments, overpayments, and refunds are flagged as exceptions in the migration report for the customer's admin to reconcile manually in the destination. OctopusPro POS receipts are not migratable as receipt images; we capture the payment data only.
OctopusPro
Quote / Estimate
Microsoft Dynamics 365 Sales
Quote
1:1OctopusPro Quotes (line items, validity dates, accept/reject status) map to Microsoft Dynamics 365 Quote records linked to the Account and Opportunity. Quote status (Draft, Sent, Accepted, Rejected, Revised) maps directly to Dynamics Quote Status. Signed or approved quotes with a linked booking are flagged for conversion to a closed Opportunity at migration time.
OctopusPro
Service
Microsoft Dynamics 365 Sales
Product2
1:1OctopusPro Service definitions (name, description, pricing rules, duration, service-area constraints) map to Dynamics 365 Product2 records. Pricing rules and duration migrate as custom fields on Product2 or as fields on the associated PricebookEntry. Service-area constraints have no native Dynamics equivalent and require a custom field or a note in the migration inventory.
OctopusPro
Custom Fields
Microsoft Dynamics 365 Sales
Custom Fields on mapped entities
lossyOctopusPro custom fields on Customer profiles and Bookings are tenant-specific and must be discovered from OctopusPro support as part of the export process. We map each discovered custom field to the corresponding custom field on the target Dynamics entity (Account, Contact, or custom Job entity), using the Dataverse field type that most closely matches the source data type. Custom field schema discovery is completed during the scoping phase before any data transforms are written.
OctopusPro
Forms & Checklists
Microsoft Dynamics 365 Sales
Custom Entity + Note
1:1OctopusPro forms and checklists capture structured field data at the booking level — job photos, intake tags, condition reports. We map the captured data fields to custom fields on the Job entity where available; unstructured notes, photo references, and narrative content migrate as Note records linked to the parent record. Form schema and layout do not migrate; the data captured inside them does.
| OctopusPro | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Customer | Account + Contact1:many | Fully supported | |
| Booking | Opportunity + Task (custom Job entity recommended)1:many | Fully supported | |
| Field Worker | User1:1 | Fully supported | |
| Invoice | Invoice (Microsoft Dynamics 365 Sales Enterprise) or Order + Custom Invoice entity1:1 | Fully supported | |
| Payment | Invoice Payment or Order (as paid)1:1 | Fully supported | |
| Quote / Estimate | Quote1:1 | Fully supported | |
| Service | Product21:1 | Fully supported | |
| Custom Fields | Custom Fields on mapped entitieslossy | Mapping required | |
| Forms & Checklists | Custom Entity + Note1:1 | Mapping required |
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.
OctopusPro gotchas
Booking Fee vs Commission billing model affects migration cost estimates
Incorrect charges and billing disputes are documented in reviews
No documented public API or bulk export mechanism
Customer Portal settings do not migrate independently
Custom field schema is tenant-specific and must be discovered before mapping
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
Export initiation and scoping
We request a structured data export from OctopusPro support on your behalf, including Customers, Bookings, Field Workers, Invoices, Payments, Quotes, Services, and any available custom field definitions. While awaiting the export, we conduct a scoping call to enumerate record counts, identify custom field requirements, confirm the booking-to-entity decomposition strategy, and assess the invoice model (native Dynamics Invoice vs custom entity). We also identify any open billing disputes with OctopusPro that could delay account closure.
Schema design in Microsoft Dynamics 365 Sales
We design the destination schema in a Microsoft Dynamics 365 Sales Sandbox. This includes provisioning the custom Job entity on Dataverse (if the booking decomposition is chosen), custom fields on Account and Contact for OctopusPro custom field discovery, Product2 records for Services, and the field mapping matrix. If the customer uses Microsoft Dynamics 365 Sales Enterprise, we configure the standard Invoice object; for Sales Professional, we design a custom Invoice entity. The schema is validated in Sandbox before production migration begins.
Sandbox migration and reconciliation
We run a full migration into the Sandbox using production-like data volume. Your team reconciles record counts against the OctopusPro export (Customers in, Accounts in, Bookings in, Invoices in, etc.), spot-checks field values on 25-50 records, and validates the booking decomposition. Any mapping corrections are applied here. Schema changes that require Dynamics admin privileges (custom entity creation, field additions) are completed during this phase. Sign-off on the Sandbox migration gates the production cutover.
User and field worker provisioning
We extract every distinct OctopusPro field worker referenced on Bookings and match by email against the Dynamics 365 User table. Any field worker without a matching User goes to a reconciliation queue. Your Dynamics admin provisions missing Users before the production migration phase. Field worker-specific attributes without native Dynamics fields are captured as custom fields or Notes.
Production migration in dependency order
We run production migration in record-dependency order: Accounts and Contacts (from OctopusPro Customers), Products and Pricebook entries (from Services), custom Job entity records (from Bookings), Opportunities (from commercial booking data and invoice history), Invoices or Orders, Payments, Quotes, and Task records for engagement history. Custom field data from OctopusPro is loaded after the base entities are confirmed. Each phase emits a row-count reconciliation report.
Cutover, validation, and rebuild handoff
We freeze OctopusPro writes during cutover, run a final delta migration of records modified during the migration window, then enable Microsoft Dynamics 365 Sales as the system of record. We deliver the automation and portal settings inventory to your admin team with recommended rebuild paths (Power Automate for OctopusPro automations, Power Pages for customer portal replacement). We support a one-week post-go-live window for reconciliation issues. We do not rebuild automations, forms, or portal configurations as part of the migration scope; these are separate engagements.
Platform deep dives
OctopusPro
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
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 OctopusPro and Microsoft Dynamics 365 Sales .
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
OctopusPro: Not publicly documented.
Data volume sensitivity
OctopusPro 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 OctopusPro to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your OctopusPro 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 OctopusPro
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.