Configuring Sharepoint 2010 to Accept Incoming Emails

It would  be nice to create a list, announcement or a document respository automatically by sending email to a Sharepoint Server, whats even better is that you can run a logic behind it using workflow and automate business processes as well.  A good example would be a service request or a project request where it originates from an email and depending on the contents of the email it filters it out and assigns a task to different departments. Well before all of that happens you need to configure Sharepoint first to accept incoming emails and here is a simple way to do that and it only involves 8 easy steps; so let's get starting.

Step 1 : Add SMTP Feature to your Sharepoint Server.

To do that go to your Server Manager by going to Start->Administrative Tools->Server Manager or just type "Server Manager" in the search box.  Once in  the server manager go to features, then in feature summary click "Add Features".

Select "SMTP Server" and click "Add Required Role Services".

Step 2 : Install IIS 6 Management Console.

Since SMTP Management still uses the old MMC UI, you need to install the IIS 6 Management Console, to check whether it's installed go to Server Manager->Roles->Web Server(IIS) then under the Role Services you will see what's installed, if it's not there then click "Add Role Services".

Choose the required IIS 6 Management Components, and confirm installation.

Once installed you should see it under Administrative Tools->Internet Information Services (IIS) 6.0 Manager.

Step 3 : Setup your SMTP Server.

Knowing that Internet Information Services (IIS) 6.0 Manager is installed, click on it and start setting up your SMTP.

Go to the SMTP Virtual Server, right click on it and choose properties.

Go to Access then setup Authentication, make sure Anonymous Access is checked then click OK.

Now click Connection, choose "All except the list below" then click OK.

Finally click relay choose "Only the list below" and make sure the item  "Allow all computers which successfully authenticate to relay, regardless of the list above" is checked. Click OK then Apply.

Step 4 : Take note of where the Email Drop Folder is located.

This will be the location where an email message is dropped off first before processing. To go there just below "SMTP Virtual Server" you will see "Domains" and right click on the Domain Name of your server the select properties.

Step 5 : Check if SMTP service is running.

To check if your SMTP Service is runing type "services.msc" in run command; once the Serices Console loads, go to "Simple Mail Transfer Protocol (SMTP)", double click the entry and make sure Startup Type is "Automatic" and start the service.  Click Apply and OK.

Step 6 : Configure incoming e-mail settings in Sharepoint 2010

Now go to your Sharepoint Central Administration.  Once there go to System Sttings->Configure incoming e-mail settings.

Configure the following options:
  • Enable sites on this server to receive e-mail? -> Yes
  • Settings mode: -> Automatic
  • Use the SharePoint Directory Management Service to create distribution groups and contacts? -> No
  • E-mail server display address: ->, this is the default
  • Safe E-Mail Servers -> Accept mail from all e-mail servers

Click OK and then it does some processing on the background and among the processes involved is setting up security properties on the Drop Folder which I mentioned in step 4, sometimes that fails (very rarely this happens) so it is best to check if that indeed worked by going to the Security Properties of the Drop Folder.

Make sure the security properties are such:
  • WSS_Admin_WPG – Full Control
  • WSS_WPG – Read & Execute / List folder Contents / Read

Step 7 : Configure your Sharepoint List Incoming e-mail settings.

Now configure your list to accept that emails, to do that choose a list (It will only work on some list types), Calendar or Document Library then go to Communications->Incoming e-mail settings.

Then set up the following:
  • Allow this list to receive e-mail? -> Yes
  • E-mail address: > The email address you want, this will be automatically routed once it hits the domain so no need to create it on Exchange
  • Save e-mail attachments? -> Yes, if you want to
  • Save original e-mail? -> Yes, if you want to
  • Save meeting invitations? -> Yes, if you want to
  • E-mail security policy: -> Accept e-mail messages from any sender

Click OK, now your all done, all you have to do it test.

Step 8 : Testing Time.

Send an email to the account you configured in step 7.

Check the Drop Folder mentioned in Step 4 and an email (.eml) file will be there while its being processed.

Once it disappread check your list and the email should be there.

Congratulations!  You made it.