Architecture for adding On-premise exchange server to CRM online for Outgoing emails: Server Side Sync

In my last post I discussed the architecture for incoming mail support in CRM online via exchange on premise server.

Here is the link for it:

In this post, I am basically going to concentrate to showcase the reverse architecture support.


In the above diagram clearly states that a forward rule is being setup from Exchange online to Exchange on premise via Exchange online admin centre.

As this is a relatively new area I am going to put a step by step of how the forward rule can be setup:

1. In the Exchange Admin Center, navigate to Recipients > Mailboxes.

2. In the list of user mailboxes, click or tap the mailbox that you want to configure mail forwarding for, and then click or tap Edit clip_image001.

3. On the mailbox properties page, click Mailbox Features.

4. Under Mail Flow, select View details to view or change the setting for forwarding email messages.

5. On this page, you can set the maximum number of recipients that the user can send a message to. For on-premises Exchange organizations, the recipient limit is unlimited.

For Exchange Online organizations, the limit is 500 recipients.

6. Check the Enable forwarding check box, and then click or tap Browse.

7. On the Select Recipient page, select a user you want to forward all email to. Select the Deliver message to both forwarding address and mailbox check box if you want both the recipient and the forwarding email

address to get copies of the emails sent. Click or tap OK, and then click or tap Save.

8. What if you want to forward mail to an address outside your organization? Or forward mail to multiple recipients? You can do that, too- You need to create contacts with external address and that will be available on Step 2.

Note: You need Exchange online license like Exchange Plan 1, Exchange Plan 2 or collaborative E3 enterprise license for the mailbox user on office 365 to achieve this.

Also, TechNet links were used for step by step of exchange online navigation.

Hope it helps and Happy CRMing!

Architecture for adding On-premise exchange server to CRM online for incoming emails: Server Side Sync

Please note : This article applies to CRM online prior to CRM 2016 Online version.

CRM online currently doesn’t support Exchange on server to be connected directly for Server side sync with Exchange on-premise.

Recently one of my colleague was designing a deck for customer to tell them the way forward. Customer has a on-premise exchange server which they use for consumer queries and also wanted to move to CRM online for case management.

So, one of my colleagues suggested the below architecture. Since, this is not a architecture I saw available in community or TechNet links, I thought it is worthwhile to share the information here.

Here consumer is sending over emails to Exchange On-premise server:


This emails are forwarded to office 365 tenant via a forward rule in exchange. Emails are added to a support queue where CRM users can access and convert to a case.

It is a simple and efficient workaround to use Server side sync in tandem with Exchange on premise server for incoming mails.

Hope it helps and happy CRMing!


This is a question which I wanted to write about since a long time. One of the thing which needs to be clear to clients, companies when we work on projects is the role of a consultant and role of the developer in the projects. This becomes more important when we have larger implementations and multi-geography teams and deployments to handle.


CRM consultant’s is an expert who will visit clients (or be a semi-permanent contractor in an organisation) and advise them on their CRM systems, train employees in

the use of the CRM systems, configure/set up/customise their CRM systems and possibly design/develop software for that organisation (or at least provide a design

spec/requirements for the software and manage the project with software developers).

CRM Developer’s will work on a broad spectrum of work, however, it’s likely to be designing/developing software for a specific purpose or design brief with little or no involvement with the end client.

Or it could be in-house software development for the IT systems of the company that you are working for.

CRM consultant’s is primarily a customer facing function and lot of it involved not only techno-functional skills but also communication skills, presentation skills alongside.

A Technical consultant will also need to possess great CRM and .net technical experience set as well.

CRM developer’s on the other hand is very hands-on job, primarily focused on technical delivery and to develop and package new services and/or offerings in line your organisation and client expectations.

CRM Consultant’s job is also to contribute to the participation in scoping, estimating and risk management efforts.

Also, to participate in building knowledge capital, improving the aptitude of your team by sharing your technical knowledge and experience.

CRM developer’s primary focus is to deliver code maintaining code quality, unit testing and fix bugs with least number of bugs introduced to the project.

CRM Consultant job is to suggest the best possible solution to problem and making it an easy job for the customer to select the best option.

It might be his/her job to complete technical delivery as well.

CRM developer’s need to have not only sound background of CRM but also of Unit testing frameworks.

Hope it helps and Happy CRMing!


Recently, in one scenario, I was being asked on my email that somebody was facing network error on their ODATA call:


Everything seemed find with ODATA request and I was not able to find the root cause of where the problem was coming from.

All the URL’s and request parameters were correctly set. Still, there was network error occurring.


The resolution was quiet simple:

· URL was working with IP address instead of server name, so first thing was to get it corrected

· Second thing was to add CRM to trusted sites:

In Internet Explorer, navigate to Tools� Internet Options. A window pops up containing multiple tabs. Under the Security Tab, click Trusted sites and then the Sites button.


2. In the pop-up window type the trusted site names (https://* and https://*, one at a time, and click �Add.


This resolved the error, Hope it helps and Happy CRMing!


Evaluating consultants is definitely simpler than selecting the CRM application. As with application evaluation, there are a number of criteria to be considered and selecting the right consultant is often crucial to success of CRM projects.

The term “right” used here is not just in the notion of correct, it is in the notion of appropriateness for specific implementations.


A consultant can help, not only technically but in generic terms as:

· Provide accurate and reliable information.

· Improve your decisions.

· Improve quality of the implementation.

Consultants have a broad range of expertise, so questions like below become important:

· What is the consultant’s special area of expertise: Definitely for Dynamics CRM I will choose a Dynamics CRM expert.

· What is the consultant’s knowledge of the industry?  If I am a financial institution, I will choose a consultant with prior implementation experience of the industry

or one which has experience on several areas.

· Will the consultant provide an independent perspective? This is important, Consultants should never agree to everything that customer says, otherwise they

cannot improve the implementation in any way.

· What are the research capabilities of analysing existing information?

· Ask for a sample of the consultant’s work? This is again just to help understand the experience.

· Cost! Yes, cost always matters.

For a Dynamics CRM consultant, I will prefer to say that the consultant should possess:

· Deep technical expertise of Dynamics CRM

· Deep understanding of the process of implementing CRM

· Experience of implementing CRM implementations.

Sometimes, there are scenarios where decision makers of an implementation are not people with CRM background. It works ok if they are customers, but any consultant without CRM experience working on

CRM project is not preferable especially if they will be involved in design, estimations and scoping.

Thank you for reading, always choose right consultants and make your Dynamics CRM systems a success story!

Happy CRMing!

WHAT to choose :Data Migration OR Data Integration in Dynamics CRM implementations?

Data integration is the process of standardising the data definitions and data structures of multiple data sources by using a common schema thereby providing a

unified view of the data for enterprise-level planning and decision making.


on the other hand, Data Migration is the process of transferring data between storage types, formats, or computer systems.

This process is most often required when organizations upgrade to new systems or change computer systems.


Dynamics CRM implementations often need to choose between this choice since CRM is all about Data.

A correct design time decision can often help reduce the complexity of design and cost of effort and implementation.

For eg, if one of the main focus of customer requirements is to centralize storage of Data, it is always better to think whether the business requirement is to have centralize storage or to have view

that there is centralized storage.

In terms of choice, If its just view of data to be looking centralized it is Data integration for CRM, else it is Data migration from heterogeneous sources to CRM.

This is just one business case to explain the choice.

I will continue to pen more on this in the coming days and weeks. Happy CRMing!

Note: Definitions for the terms were binged!

{Quick Tip} Understanding what is a Dynamics CRM “Package”?

This is a recent addition to the list of administration terms and feature that I do not see many people have ramped up on or are using in the field.

So, today I am just going to focus on the term: What is a CRM package?


As per the official MSDN link:

A CRM “package” can consist of any or all of the following:

· One or more CRM solution files.

· Flat files or exported data files from the Configuration Migration tool. For more information about the tool.

· Custom code that can run while the package is being deployed to the CRM server, or after it’s been deployed.

· HTML content specific to the package that can display at the beginning and end of the deployment process.

This can be useful to provide a description of the solutions and files that are deployed in the package.

Basically CRM Package is a collection of all the things we needed to do as part of regular deployments and is cool as it does it in one click!

So, how to start using it?

Here is the MSDN Links, You need to use Package Deployer tool to generate and consume CRM Packages:

Hope it helps and Happy CRMing!