New Server to Server Integration with CRM Online and SharePoint provides much more Limited Functionality

Dynamics CRM has supported integration with SharePoint for many years through the documents tab in Dynamics CRM.  The integration allows a CRM user to upload documents into SharePoint through CRM instead of having documents stored as attachments in the CRM database.

The original CRM integration was done using client side integration (e.g. an IFrame) and required deployment of a sandbox solution to the SharePoint farm to enable it. 

There is a new server side integration available with the latest update to CRM online.  You can switch to this integration by clicking on the “enable server based SharePoint integration” in the settings menu for document management.

Enable server-based SharePoint integration

The potential advantage to this approach is that the interface is no longer an IFrame and instead is native CRM functionality.  You no longer have to sign-in to SharePoint – CRM negotiates the authentication for you in the background.  There is also no need for installation of a sandbox solution (which are being deprecated) in your SharePoint environment.

However, before you activate this feature, be prepared for some significant loss in functionality.  See this article for specific details from Microsoft.

Once You Enable Server Based Integration, You’re Stuck With It

Once you enable server-based SharePoint integration, there is no method available to roll-back to the older method. 

No Support for SharePoint Commands

The client side integration with SharePoint surfaces a standard document library and provides direct access to standard SharePoint commands such as Alert Me, Download a Copy, Copy Shortcut, Send ShortCut, View Properties and Version History.  The server side integration does not support this functionality – you have to open up the provided link to SharePoint to access these commands.

Open SharePoint Team Site

No Support for Content Types and Extended Metadata Properties

One of the key concepts in SharePoint is applying metadata attributes to documents through content types.  Content types define types of documents and prescribe the optional or required metadata attributes to be supplied by the user when uploading or creating a document.

Here is an example document library that I configured with content types and a required metadata attribute for address.


For the content type Contoso NDA, I have a required field Address that should be supplied in order for the document to be valid.  SharePoint enforces this when you upload a document to the document library.


However, when you upload a document through CRM’s server side integration, there is no support for either content types or additional metadata attributes beyond Name and Title.


The same document properties in CRM only show Name and Title and don’t allow you to switch content types at all.

If you upload a document through CRM’s user interface, it assign the document to the default content type for the library.  It will not show any extended properties, such as our required Address field.  When you try to check in the document, you’ll get the following error:


If You’re Using Content Types and Metadata, Server Side Integration is Limited

If you’re using content types or metadata beyond just a bunch of documents thrown into a folder, the current server side integration is very limited.  Before you click on the button and enable server side integration with SharePoint, especially given that there is no way to revert your decision, you should review your information management needs for managing documents in SharePoint as the current server side integration will probably not meet your needs if you’re trying to support a proper taxonomy, document management life cycle, records management, etc. in SharePoint.

  • geetika Sharma


    I have a requirement to add metadata while uploading document in ms crm 2015 online. Can anyone tell me any workarounds to do it with server based integration while uploading document from crm itself.

    • cwoodill

      The out of the box integration does not support this scenario…