QXchange Integration with MS Dynamics CRM

Overview – Dynamics CRM
QXchange is a powerful and easy to use data integration tool to access, integrate and manage large volumes of data from various systems. Extraction, transformation and loading of data are powered by QXchange with source and target database support.

QXchange helps organizations to bond together all enterprise data and ensures accuracy of data in a timely manner. QXchange is a simple stand-alone application that can be used by novice users with ease.

QXchange can quickly and easily transfer data between many standard data formats and applications, including MS Access, Excel, Comma delimited flat file, MS SQL Server, QuickBooks, Salesforce.com, Dynamics CRM, Dynamics CRM, Mantis BT and others. It allows simple and clear setup of extraction, transformation and loading instructions to exchange data between different formats

Dynamics CRM is a server-client application, which, like Microsoft SharePoint, is primarily an IIS-based web application which also supports extensive web services interfaces. Clients access Dynamics CRM either by using a Browser or by a thick client plug-in to Microsoft Outlook.

Dynamics CRM, supplies Web services, a pool of API calls for building applications and integrating with Dynamics CRMobjects. This set of APIs allows you to create and retrieve data from Dynamics CRMaccounts. The API ensures that 

  • the third-party software complies with security access to the data
  • provides strong error recovery and data logging to make sure data is protected
  • provides standardization across various upgrades of Dynamics CRM

Authentication and Authorization
QXchange uses sign-on information provided by the individual customer to identify itself while communicating through the Dynamics CRMAPI. An existing user id and password can be used. The login information is encrypted and stored locally on the user machines. The application and login information is presented to the Dynamics CRMauthentication system to allow access to the QXchange application.

Use of the login information allows Dynamics CRMto enforce access to various data objects based on the same security profile used within the application for direct access.

Data Access Plug-in
QXchange integration engine uses Data Access Plug-ins (DAPs) for individual application and data format integration. All the DAPs are called using a standard Application Program Interface (API). The Dynamics CRMAPI is wrapped inside one of these DAPs. This allows for a smooth and standard operation across all the various DAPs.

QXchange is installed locally at the customer site so that customer data is directly loaded between customer machines and the Dynamics CRMsite without any other intervening web sites. QXchange sends a message request to Dynamics CRMandDynamics CRMsends back a response message; the communication is managed synchronously

Dynamics CRMData 

The Dynamics CRM API exposes all of the data objects available in the Dynamics CRM data file. Some of the various objects available are listed here and there are more objects accessible. Currently there are 300+ objects available for access.

Data formats including notes can be accessed using QXchange.


The following lists are available for access:

Transactions Objects

Accounts, Contacts, products 


Opportunities, Leads, orders, invoices, campaigns


Quotes, sales literature ,marketing lists, Quick, ,Goals, Goal Metrics 

The QXchange engine works the same for all different DAPs. Every data transfer is set up as a profile, with a source and target data file, which can be of different data formats. Data transfer between specific objects and the mapping of source to target fields are also set up in the profile.

The profile can be executed directly or can be scheduled to be executed later. The process can be run on a local desktop or on a server.

Source Data
Dynamics CRM can be defined as source data and the various objects can be accessed. Field level data from the objects can be extracted and mapped to destination objects and fields in different data formats. Data from multiple objects can be extracted. Multiple profiles can be set up to extract data from various objects. Source data can also be filtered using various expressions. Prior to executing extract the source data can be viewed to make sure the right records are getting selected.

Target Data
Dynamics CRMcan be defined as target data and the various objects can be updated. Data can be updated to multiple objects. In some cases update may have to affect multiple data objects at the same time, for example: Invoice Header and Line.

Data can be updated in various modes: Insert, Update and Upset. Insert expects the record being updated to be new and unique. Update expects the record to already exist. Upset, tries to insert first and if that fails tries to update.

The QXchange ability to integrate Dynamics CRM allows many uses. Certain limitations in Dynamics CRM reporting can be exceeded with this tool. This allows many different scenarios:

  • Extract closed opportunities in the last month into Excel
  • Extract Account information with company names starting with “A”
  • Make a copy of all available Dynamics CRM  data in a MS SQL Server Database, for use in reporting
  • Insert spreadsheet invoice data sent from branch offices into Dynamics CRM
  • Extract Opportunities from Dynamics CRM and create Sales orders in accounting software.
  • Extract Accounts from Dynamics CRM and create Customers in accountingsoftware.
  • Extract Invoices from Dynamics CRM and update Invoices in accountingsoftware.
  • Get orders entered from an online e-commerce system and load them into Dynamics CRM as Opportunities.
  • Get customer data entered online and create Customers in Dynamics CRM
QXchange does a tremendous job, understanding the intricacies of the Dynamics CRMdata structure as well as the complications inherent in the data integration process. With this ability and its ease of use, it allows users to make more effective use of their Dynamics CRMData.