Included in SSIS PowerPack

SSIS Dynamics CRM / Dataverse / PowerApps Destination

Bulk insert, update, upsert and delete records in Dynamics 365 Online, Dataverse, PowerApps or on-premises Dynamics CRM.

Load data from SQL Server, Oracle, JSON or any SSIS source into Dynamics CRM with bulk Insert, Update, Upsert (by primary or alternate key) and Delete. Write Lookup, PartyList and PickList fields, split inserted, updated and failed rows into separate outputs, and connect with OAuth (Azure AD app) for MFA-protected tenants.

The trial includes Dynamics CRM / Dataverse / PowerApps Destination and every other PowerPack component

SSIS Dynamics CRM connection manager settings
Dynamics CRM / Dataverse connection manager: pick the authentication type and organization

Trusted by data teams worldwide

MicrosoftIBMOracleDell TechnologiesHPCiscoAT&TVerizonDHLFedExUPSWalmart

Also rated on Capterra★★★★★ , Trustpilot★★★★★ and BBBA+ — see why teams trust ZappySys

At a glance

What Dynamics CRM / Dataverse / PowerApps Destination can do

Dynamics CRM / Dataverse Destination performs bulk insert, update, upsert and delete operations on Dynamics 365 Online, Dataverse / PowerApps and on-premises or IFD Dynamics CRM.

Bulk insert to CRM

Bulk insert data into Dynamics CRM / Dataverse from any source such as SQL Server, JSON or Oracle.

  • Dynamics 365 Online, On-Premises and PowerApps
  • BatchSize: rows sent in each request

Load data into Dynamics CRM

Upsert, update & delete

Bulk Upsert (Insert or Update), Update and Delete records.

  • Operation: Insert, Update, UpdateOrInsert or Delete
  • UpsertKeyField: primary key or alternate key
  • Delete needs only the primary key mapped

Upsert / delete guide

Inserted vs updated outputs

Detect new versus updated records when you upsert.

  • Separate outputs for inserted, updated and error records
  • DoNotCreateOutputs removes unused outputs to speed things up

See the outputs

Lookup, PartyList & PickList

Write advanced CRM data types such as Lookup, PartyList and Multi-Select PickList.

  • Set PickList by text or numeric value
  • Set Lookup by record ID or by text (JSON format)
  • UseDefaultIfLookupFails writes null when a lookup fails

Special data types

Error output & progress

Redirect failed records to the error output and track progress.

  • Reports progress every N rows
  • Summary at the end: total, inserted, updated, deleted, errors and time taken

Error handling

Parallel processing

Send requests on multiple threads to speed up loading.

  • EnableParallelProcessing
  • MaxParallelThreads: 1 to 40

Component properties

Null, duplicate & date options

Fine-tune how values are written to CRM.

  • IgnoreFieldsIfInputNull / FieldsToSetNullIfInputNull
  • EnableDuplicateDetection blocks duplicates via CRM rules
  • InputDateTimeConversionMode: LocalToUtc, UtcToLocal and more

Component properties

SQL Server 2012–2025 & ADF

Runs in your environment on SQL Server 2012–2025 and Azure-SSIS.

  • SQL Server 2025, 2022, 2019, 2017, 2016, 2014, 2012 (32/64-bit)
  • Azure Data Factory (SSIS IR)
  • Design packages in Visual Studio 2017, 2019, 2022, or 2026
  • Windows only (64-bit OS): Windows 7–11 or Windows Server 2012–2025

Compatibility and requirements

Modern CRM authentication

Connect to Dynamics 365 Online, Dataverse, PowerApps, IFD or On-Premises CRM.

  • AuthType: OAuth Client Credentials, OAuth Delegated (MFA / 2FA), IFD or Active Directory
  • Custom TokenUrl (e.g. US GCC)
  • Retry on throttling (e.g. 429) and proxy settings

Connection Manager help

See all features
  • Bulk Insert data to Microsoft Dynamics CRM / Dataverse from any source such as SQL Server, JSON, Oracle
  • Bulk Upsert (Insert or Update) by primary key or alternate key
  • Bulk Update and Bulk Delete
  • Advanced data types such as Lookup, PartyList and Multi-Select PickList
  • New record output (detect new vs updated records when you use Upsert)
  • Error output for failed records
  • Report progress every N rows and a row count summary at the end
  • Multi-threaded loading (EnableParallelProcessing, up to 40 threads)
  • Option to ignore NULL input values or set selected fields to NULL
  • Duplicate detection during Insert, Update or Upsert
  • Input date/time conversion (local / UTC)
  • Azure AD App (OAuth) Client Id / Secret for modern security with MFA / 2FA
  • Retry and proxy settings on the Dynamics CRM Connection Manager
  • Support for SQL Server 2025, 2022, 2019, 2017, 2016, 2014, 2012 (32/64-bit) and Azure Data Factory

Runs in your environment ·

SQL Server 2012–2025

and Azure-SSIS · Read the FAQ

How it works

From the toolbox to your first run.

Connect, choose the operation and key, map columns, then route inserted, updated and failed rows.

Connect to Dynamics 365, Dataverse or on-premises CRM.

Create a ZS-DYNAMICS-CRM connection and choose the authentication type: OAuth 2.0 Client Credentials or OAuth Delegated (interactive sign-in, for MFA / 2FA) for Dynamics 365 Online and Dataverse, or IFD and Active Directory for on-premises CRM. Then select the organization and click Test Connection. The older Online Federation (user name / password) mode is deprecated.

  • One connection for CRM Source and CRM Destination
  • Custom TokenUrl (e.g. US GCC)
  • Retry on throttling such as HTTP 429

Connection manager help

SSIS Dynamics CRM connection manager

Inside the UI

Key settings, as they appear in SSDT.

Real screens from the Dynamics CRM / Dataverse / PowerApps Destination product page. Step through them, or open any shot at full size.

Configure Dynamics CRM Connection

Shared by Dynamics CRM Source and Destination: choose the authentication type, credentials and organization, then test the connection.

Compatibility and requirements

Designed to stay inside your SSIS runtime.

  • SQL Server 2012 through 2025, 32-bit and 64-bit
  • Windows only, 64-bit OS required. SQL Server Express and Web editions do not include SSIS
  • Azure Data Factory SSIS Integration Runtime
  • Self-hosted: credentials and data stay in your environment (external API calls still reach that service)
  • Fully functional 30-day trial of SSIS PowerPack

FAQ

Questions teams ask before they drop Dynamics CRM / Dataverse / PowerApps Destination on the canvas.

What is Dynamics CRM / Dataverse / PowerApps Destination?

It is an SSIS data flow destination that performs bulk insert, update, upsert and delete operations on Microsoft Dynamics CRM, including Dynamics 365 Online, Dataverse / PowerApps and on-premises or IFD installations.

Can I upsert without the CRM record ID?

Yes. Define an alternate key on the CRM table, map it, and enter its name in UpsertKeyField. You can also use the table’s primary key (for example accountid). See Load data into Dynamics CRM.

How do I set Lookup, PartyList or PickList fields?

Set a PickList by its text or numeric value. Set a Lookup or PartyList by record ID (simple key/value or JSON format), or by text using JSON, which is slower on large tables. Set UseDefaultIfLookupFails to write null instead of failing when a text lookup finds no match.

How do I know which rows were inserted or updated?

In upsert mode the destination has Inserted and Updated outputs plus an error output for failed records. At the end of the run it also logs total, inserted, updated, deleted and error counts.

Which SQL Server versions can I run it on?

SQL Server 2025, 2022, 2019, 2017, 2016, 2014, and 2012 (32- and 64-bit), plus Azure Data Factory with an SSIS Integration Runtime (packages must target SQL Server 2017). See Compatibility and requirements.

Independent ratings

Trusted by data teams, recognized by the industry

See why teams trust ZappySys (opens in new tab)

What customers say

  • Customer story

    ZappySys has been a fantastic way to bring our small company into the world of APIs, automation, and systems integration by providing tools within an easy-to-use framework.

    Ben KingeryOxspring Paul
  • Customer story

    At Synchronous Customers, we need to connect various types of data quickly. The super handy ZappySys connectors and great documentation let us do it without writing a lot of code.

    Joel ConnerSynchronous Customers
  • Customer story

    I looked everywhere for a product that could integrate to a web portal backend API via JSON. After many attempts, ZappySys was the only solution that gave me all the options I needed in a quick & clean interface within SSIS.

    Maz DunicSave the Children Australia
  • Customer story

    We have worked with the ZappySys support team for over a year and have consistently found them extremely helpful — resourceful and creative in offering multiple solutions to our challenges.

    Senthil SekarPublicis Groupe
  • Trustpilot

    I’ve been using ZappySys for over 6 years — it makes development faster, and I introduced it to my current company.

    Anna JohnsonTrustpilot review
  • Trustpilot

    I’m integrating data from APIs into database tables with SSIS/ZappySys — very easy to use, fast, and highly efficient without writing complex code.

    Carolyn S.Trustpilot review
  • Customer quote

    I submitted a support request and had someone logged in and fixing things within 2 hours.

    Barry Wilson
  • Customer quote

    The REST source is very powerful — the only thing I found I could use after trying components from major vendors.

    Jes KirkupKTC
  • Customer quote

    Whenever we run into an obstacle, ZappySys has a solution for us. We are so glad that we chose ZappySys PowerPack.

    Kevin ChenBerricle

Start your free trial today

Install SSIS PowerPack and drag Dynamics CRM / Dataverse / PowerApps Destination onto the Data Flow.

Bulk insert, update, upsert and delete Dynamics 365, Dataverse and on-premises CRM records from any SSIS source.

  • Data Flow Destination in SSISDynamics CRM / Dataverse / PowerApps Destination appears in the toolbox after you install PowerPack.
  • Fully functional 30-day trialSSIS PowerPack, running in your environment.
  • Live supportHelp during your trial and after purchase.

New purchases may be eligible for refund review within 30 days. See the refund policy.

Talk to an engineer before or during your trial.

1 / 8