Restricted access

September 29, 2010

Data Integration Application for Microsoft Dynamics CRM

A couple of days ago, our team faced an issue when developing a custom application for data integration to Microsoft Dynamics CRM. We thought that sharing the problem and the solution will be useful for the community, so here it is.

Apatar developers had chosen PHP technology for that custom data integration application; I will explain why they had chosen PHP and not Java or Delphi in my next post. Meanwhile, please, keep in mind that this case describes accessing Microsoft Dynamics CRM by means of PHP NuSOAP.

The Microsoft Dynamics CRM Software Development Kit includes documentation that covers a wide range of instructive and practical information. Unfortunately, it does not provide the appropriate information on accessing Microsoft Dynamics CRM MetadataService (fields, tables, and their descriptions) and CrmService (accounts, contacts, leads). To be more exact, it provides the same URL formula for accessing both metadata and data services:


where service name is either MetadataService or CrmService.

In the course of development, it became clear that this formula does not work for both services. So, the correct formulas are:

For Metadata


For CRM data


As you can see, to access MetadataService you have to add ?wsdl at the end of URL, and to access CrmService you don’t have to add anything.

Hope you’ll find this information useful!