CRM migration

Migrate from GoldMine to Microsoft Dynamics 365 Sales

Field-level mapping, validation, and rollback between GoldMine and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .

GoldMine logo

GoldMine

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

56%

5 of 9

objects map 1:1 between GoldMine and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

GoldMine's April 2026 end-of-life deadline forces organizations off the platform now, and the absence of a modern REST API means migration relies on GoldMine's XML API DLL or direct database reads from Paradox-derived tables or SQL Server backends depending on version. We extract all core objects—Contacts, Companies, Opportunities, History records, and custom fields—before mapping them into Microsoft Microsoft Dynamics 365 Sales via Dataverse and the Microsoft Dynamics 365 Sales API with proper relationship resolution. Communication history is the highest-value migration object because GoldMine users have accumulated decades of email, call, and meeting logs that must normalize into Dynamics 365's activity model. File attachments require re-upload to SharePoint or Dynamics 365's document management because network share paths become orphaned post-migration. We do not migrate GoldMine workflows, custom tabs, or the GoldMine Outlook COM integration as code; we deliver a written inventory for your admin to rebuild in Dynamics 365's native tools.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

GoldMine logo

GoldMine

What's pushing teams away

  • The interface and UX have not kept pace with modern CRM design, driving younger or mobile-first users to work around the system rather than use it directly.
  • Support and feature development from Ivanti has slowed significantly, with formal end-of-life announced for April 2026, forcing organizations to plan a migration now.
  • Limited cloud and mobile capabilities compared to SaaS CRMs make it unsuitable for distributed or remote-first sales teams expecting real-time sync across devices.
  • Integration ecosystem is narrow—no modern REST API, fewer third-party connectors—making automation and modern tool stacks difficult to implement.
  • Reports and dashboards are basic compared to competitors, frustrating sales leaders who need pipeline visibility and analytics.

Choosing

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

What's pulling them in

  • Deep Microsoft 365, Teams, and Outlook integration makes Microsoft Dynamics 365 Sales a natural fit for Microsoft-first organizations already invested in that ecosystem
  • Sales Enterprise and Premium tiers offer unlimited custom tables and advanced AI-driven forecasting and predictive analytics not available in lower tiers
  • Professional tier pricing at $65 per user per month offers a lower entry cost than Salesforce for SMB teams with straightforward CRM needs
  • Flexible customization options allow businesses to build bespoke apps, tailor forms and views, and integrate with other Dynamics 365 modules
  • Microsoft Copilot AI tools are embedded directly into the sales workflow on Enterprise and Premium, automating routine tasks and providing deal intelligence

Object mapping

How GoldMine objects map to Microsoft Dynamics 365 Sales

Each row shows how a GoldMine 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.

GoldMine

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

GoldMine Contact records map 1:1 to Dynamics 365 Contact. Name fields (FirstName, LastName, FullName), phone numbers, email addresses, and address blocks transfer as standard typed fields. GoldMine's contact custom fields—stored in extended CONTACT1 columns linked by RECID—require schema discovery before mapping. We enumerate all non-system columns across the CONTACT1 table during discovery, classify each as string, integer, decimal, date, or picklist, and present the full custom field inventory for mapping before any record moves. Contact-Company linkage resolves to AccountId on Contact by matching the GoldMine Link-to-Company key.

GoldMine

Company

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

GoldMine Company records map 1:1 to Dynamics 365 Account. Company name, address, industry classification, annual revenue, and number of employees transfer as standard fields. Company custom fields follow the same extended-table discovery process as Contact custom fields. We create the Account before importing any related Contact so that the AccountId lookup is satisfied at Contact insert time. GoldMine allows a Company to exist without any linked Contact; Dynamics 365 Account behaves the same way.

GoldMine

Opportunity

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

GoldMine Opportunities map to Dynamics 365 Opportunity. The stage lifecycle differs significantly—GoldMine uses a simpler open-closed stage model while Dynamics 365 Opportunity includes stage probability percentages, forecast category, and record types tied to sales processes. We review the customer's GoldMine pipeline stage names and probability assumptions during scoping and configure matching stage values in Microsoft Dynamics 365 Sales Process before migration. Closed-Lost and Closed-Won dates, deal value, and owner all transfer directly.

GoldMine

History / Activity Log

maps to

Microsoft Dynamics 365 Sales

Email, Task, Appointment, and Note

1:many
Mapping required

GoldMine stores emails, calls, meetings, and notes as chronological History records tied to Contact or Company. These are the highest-risk migration object because the history table contains mixed formats—plain text entries, HTML-formatted emails, and MIME-encoded content. We normalize each history entry to the appropriate Dynamics 365 activity type: emails become Email (EmailMessage) records; call dispositions and durations become Task with TaskSubtype=Call; meetings become Appointment (Event) records; freeform notes become Note. Character set integrity is verified after normalization. Silent history loss is the most common post-migration complaint and we test history completeness against a row-count baseline before sign-off.

GoldMine

Calendar / Appointments

maps to

Microsoft Dynamics 365 Sales

Appointment

1:1
Mapping required

GoldMine appointments synced from Outlook or entered directly migrate as Dynamics 365 Appointment records. Subject, Start Time, End Time, Location, and attendees transfer with the GoldMine timestamp preserved in CreatedOn for timeline ordering. We map the GoldMine appointment linked record (Contact or Company) to the Regarding lookup on the Appointment. If the original GoldMine appointment references an attendee who is not in the migrated user roster, we flag that attendee for manual resolution.

GoldMine

Documents and Attachments

maps to

Microsoft Dynamics 365 Sales

SharePoint Document or Annotation

lossy
Mapping required

GoldMine attachments are stored either as BLOBs in the database or as files on a network share referenced by a path in the record. Network share paths become invalid after migration. We export attachments with the record they are attached to, re-upload to SharePoint Online (if the customer's Dynamics 365 is connected to SharePoint) or to Dynamics 365's native annotation model, and flag any attachment where the source path returns a file-not-found error so the customer decides whether to skip, restore from backup, or manually reattach. Attachments exceeding 25MB are flagged for chunked upload.

GoldMine

User

maps to

Microsoft Dynamics 365 Sales

User

1:1
Fully supported

GoldMine user accounts do not map automatically to Dynamics 365 users. We extract the full GoldMine user roster during discovery and match by email address against the destination Dynamics 365 tenant's Azure Active Directory-backed user list. Any GoldMine user without a matching Dynamics 365 user goes to a reconciliation queue; the customer's admin provisions the missing users before record import resumes. Active versus inactive status in GoldMine maps to Enabled versus Disabled in Dynamics 365, and the admin decides whether to activate for migration or mark inactive.

GoldMine

Groups and Marketing Lists

maps to

Microsoft Dynamics 365 Sales

Topic or Team

lossy
Fully supported

GoldMine supports Groups and marketing lists that label records for segmentation. We extract these as tag or segment data and apply them as Dynamics 365 Topics (with TopicAssignment records) or as Team membership depending on the customer's intended use. If GoldMine Groups function as security teams in the existing workflow, we recommend Teams in Dynamics 365 as the equivalent access-control mechanism. The customer confirms the segmentation strategy during scoping.

GoldMine

Custom Fields

maps to

Microsoft Dynamics 365 Sales

Custom Fields

lossy
Mapping required

GoldMine custom fields exist as extended columns in separate tables linked by RECID. They are not visible in the standard GoldMine UI and require SQL schema inspection to enumerate. We run a discovery query that pulls all non-system columns across the CONTACT1, COMPANIES, and PROJECTS tables, classifies each as text, numeric, date, or picklist, and presents the full inventory before any mapping. Dynamics 365 custom fields are created on the standard Dataverse entity with matching data types before migration. The custom field API names in Dynamics 365 follow Dataverse naming conventions (new_fieldname) and differ from GoldMine's internal column names.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

GoldMine logo

GoldMine gotchas

High

GoldMine support and updates end April 2026

High

No REST API requires direct database or XML API extraction

High

Communication history is the migration's highest-value and highest-risk object

Medium

Custom fields stored in extended tables require schema discovery

Medium

File attachments depend on server-side file paths that may be orphaned

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales gotchas

High

Professional tier 15-table custom table limit blocks migrations

High

October 2024 pricing increase applies at renewal for all customers

Medium

Custom fields must be created in the UI before API writes

Medium

Power Platform request limits apply to bulk migrations

Medium

Activity records orphaned to inactive owners fail silently

Pair-specific challenges

  • GoldMine XML API or database extraction requires schema discovery

    GoldMine has no REST API. We extract data via the GoldMine XML API DLL where available or by querying the backend database directly with read-only credentials. GoldMine customers run either a Paradox-derived file backend or SQL Server depending on version and configuration. Schema variation across GoldMine versions—some customers on GoldMine 2018, others on 2024.x—means we run a discovery pass before any extraction to enumerate table names, column types, and relationship keys. This discovery step adds two to four days to the project timeline but prevents silent data loss that occurs when migration tooling assumes a standard GoldMine schema that the customer's instance does not match.

  • Communication history normalization risks silent data loss

    GoldMine's History table stores email, call, meeting, and note records with mixed encoding—plain text, HTML, and MIME-encoded MIME payloads stored in the same column. Dynamics 365 separates activities into distinct tables (EmailMessage, Task, Appointment, Note) with typed fields. We must detect the activity type from the GoldMine history record type field, decode MIME where present, strip encoding artifacts, and insert into the correct Dynamics 365 table. If the history table contains orphaned records (referencing a Contact RECID that no longer exists), we flag those for exclusion rather than create orphaned activities in Dynamics. We validate history row counts against the GoldMine source before and after migration.

  • File attachments depend on server-side paths that break after migration

    GoldMine attachments reference either database BLOBs or file paths on a network share. Network share paths are specific to the GoldMine server environment and become invalid after migration to a cloud-hosted Dynamics 365 environment. We export attachments with the record they are attached to, re-upload to SharePoint Online or Dynamics 365's document store, and link them to the migrated record. Any attachment where the source path returns a file-not-found error is flagged in a reconciliation report so the customer can decide to skip, restore from a backup share, or manually reattach. Large attachments over 25MB require chunked upload handling.

  • Custom fields require SQL-level enumeration before mapping

    GoldMine stores custom fields in extended columns that are not exposed through the GoldMine UI. The standard GoldMine database schema for CONTACT1, COMPANIES, and PROJECTS contains system columns visible in documentation, but every customer's GoldMine instance has additional user-defined columns. We run a SQL schema discovery query that enumerates all non-system columns, classifies their data types, and presents the full custom field inventory before any mapping or data movement begins. Without this step, custom fields that the business relies on are silently excluded from the migration.

  • GoldMine end-of-life creates rushed-scoping risk

    Ivanti has announced GoldMine end-of-life and end-of-support in April 2026. Organizations that begin scoping in 2025 may feel pressure to accelerate timelines, which increases the risk of skipping the data quality assessment phase. Migrating dirty GoldMine data—duplicate records, inconsistent date formats, mixed character encoding, partial addresses—directly into Dynamics 365 will create reporting errors, broken workflows, and user adoption failures in the new system. We do not skip the data quality and discovery phases even under end-of-life urgency; we factor the April 2026 hard deadline into timeline scheduling and flag any scope that extends past Q1 2026 as requiring expedited scheduling.

Migration approach

Six steps for a successful GoldMine to Microsoft Dynamics 365 Sales data migration

  1. Discovery and GoldMine backend assessment

    We assess the GoldMine environment: version (2018 through 2024.x), database backend (Paradox file or SQL Server), connectivity method (XML API DLL availability, direct SQL read access), and network share accessibility for attachment paths. We run the schema discovery query to enumerate all custom fields across CONTACT1, COMPANIES, PROJECTS, and HISTORY tables. We extract record counts for Contacts, Companies, Opportunities, History entries, and attachments, and produce a data volume estimate for the Dynamics 365 destination. The discovery output is a written migration scope document covering every GoldMine object, its estimated row count, and its extraction method.

  2. Dynamics 365 environment preparation

    We assess the destination Microsoft Dynamics 365 Sales environment: Dataverse entity configuration, existing security roles, user roster synced from Azure Active Directory, and any validation rules or field-level security that could block import. We create custom fields on Contact, Account, and Opportunity matching the GoldMine custom field inventory discovered in Step 1. We configure Opportunity stages and sales processes to match the GoldMine pipeline stage names from the scoping document. If the customer has SharePoint Online integrated, we configure the SharePoint document management site for attachment re-upload. We coordinate with the customer's Dynamics 365 admin to grant the migration user the Dataverse bulk record import role.

  3. Data extraction and staging

    We extract data from GoldMine via the available method—XML API DLL for instances with the API configured, or direct SQL read from the GoldMine database for SQL Server backends, or GoldMine's export utility for Paradox backends. We stage the extracted data in a normalized intermediate format. During staging, we apply the history normalization transform: MIME-decoding, format detection (plain text, HTML, email, call, meeting), and classification into the appropriate Dynamics 365 activity type. We run de-duplication against Contact and Company records using email address as the primary key and name-address combinations as secondary keys. We produce a staging validation report showing record counts by object before proceeding to load.

  4. Attachment extraction and SharePoint re-upload

    We extract file attachments from GoldMine BLOBs or from the referenced network share paths. We resolve the parent record for each attachment (Contact, Company, or Opportunity) and upload the file to the corresponding SharePoint document library or Dynamics 365 annotation. We flag any attachment where the source path is inaccessible or returns a file-not-found error in the attachment reconciliation report. The customer reviews the reconciliation report and decides whether to restore from backup, skip, or manually reattach flagged files. Attachments exceeding 25MB are chunked for upload. We link each uploaded file to the parent record's Regarding field in Dynamics 365.

  5. Production migration in dependency order

    We run the production migration into the live Dynamics 365 environment in strict dependency order: Accounts (from GoldMine Companies) first; Contacts (with AccountId resolved and custom fields mapped) second; Opportunities (with AccountId, OwnerId, and stage resolved) third; Activity history (EmailMessage, Task, Appointment, Note via Dataverse bulk import with parent-record lookup) fourth; attachment links verified last. Each phase emits a row-count reconciliation report comparing records loaded against the staging baseline. Any discrepancies trigger a root-cause investigation before the next phase begins. Owner reconciliation occurs before record import: we match GoldMine users by email to Dynamics 365 users and flag any GoldMine user without a matching Dynamics 365 user for admin provisioning.

  6. Cutover, validation, and automation inventory handoff

    We freeze GoldMine write access during the cutover window and run a final delta migration of any records modified during the migration. We enable Dynamics 365 as the system of record and confirm that the migration row-count reconciliation shows fewer than 0.1 percent discrepancy on all primary objects. We deliver the GoldMine workflow and custom tab inventory—enumerating every GoldMine automation, custom tab configuration, and Outlook COM integration rule—for the customer's Dynamics 365 admin to rebuild in Power Automate, Dynamics workflows, or the native UI. We support a five-business-day hypercare window for reconciliation issues. Post-migration admin support, training, and workflow rebuild are outside standard migration scope and can be scoped as a separate engagement.

Platform deep dives

Context on both ends of the pair

GoldMine logo

GoldMine

Source

Strengths

  • Decades of accumulated contact and communication history in a single system.
  • Offline desktop operation with local database for intermittent connectivity environments.
  • Highly customizable database fields and tabs without requiring developer resources.
  • Strong Outlook email and calendar synchronization via COM-based integration.
  • Perpetual license ownership model gives organizations control over upgrade cycles.

Weaknesses

  • No modern REST API—all integrations rely on COM, DLL, or XML API methods that require Windows infrastructure.
  • End-of-life and end-of-support scheduled for April 2026, making new deployments inadvisable.
  • Outdated desktop-first UX that does not match modern SaaS CRM expectations for mobile, UI, or speed of use.
  • Limited native marketing automation compared to HubSpot, Salesforce, or Zoho.
  • Attachment and document management is file-system-dependent, not cloud-native.
Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

Destination

Strengths

  • Native integration with Microsoft 365, Teams, Outlook, and SharePoint for unified productivity workflow
  • Unlimited custom tables and complex workflows on Enterprise tier enable deep customization for complex sales processes
  • AI-driven predictive analytics and deal intelligence on Enterprise and Premium tiers help sales teams prioritize pipeline
  • Dataverse unified data layer provides a consistent API and data model across all Dynamics 365 and Power Platform apps
  • Strong security model with Field-Level Security and Record Ownership rules for governance-conscious enterprises

Weaknesses

  • Sales Professional tier caps custom tables at 15, creating a migration ceiling for highly customized SMB environments
  • October 2024 pricing increases of $15 per user across all tiers apply to existing customers upon renewal
  • Implementation typically requires costly certified partners, adding 30–50% to total project cost
  • Updates and platform releases can disrupt customizations and plugins, requiring regression testing after each wave
  • Non-Microsoft integrations require additional configuration or middleware, limiting flexibility for heterogeneous tech stacks

Complexity grading

How hard is this migration?

Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across GoldMine and Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    GoldMine: Not publicly documented—rate limiting is not formally specified for GoldMine's XML API or COM-based integrations.

  • Data volume sensitivity

    B

    GoldMine doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your GoldMine to Microsoft Dynamics 365 Sales migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about GoldMine to Microsoft Dynamics 365 Sales data migrations

Answers to the questions buyers ask most during GoldMine to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your GoldMine to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Migrations under 15,000 Contacts, 3,000 Companies, and 200,000 history records land between three and five weeks. Migrations with SQL Server backend GoldMine (enabling cleaner extraction), large communication histories exceeding 500,000 records, multiple custom field tables, or GoldMine Premium Project objects move to eight to fourteen weeks because of schema discovery, MIME normalization, and SharePoint document re-upload. The GoldMine April 2026 end-of-life date means scoping should begin no later than Q3 2025 to maintain a comfortable migration window without rushed scheduling.

Adjacent paths

Related migrations to explore

Ready when you are

Move from GoldMine.
Land in Microsoft Dynamics 365 Sales , intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day