Migrating to Exchange Online Part 2

March 18, 2013 by Dennis Rea in IT Infrastructure, Office365, Technical Documentation

IMAP4 Mailbox Migration Specifics

Email provider Northwind Traders supports the Internet Message Access Protocol (IMAP). Using the IMAP protocol allows you to migrate all mailbox folders (not just the Inbox as with POP3). Also, the provider allows the customer to configure their own address space and subsequently have MX records configured in DNS with their domain registrar to direct incoming email to the provider’s mail server.

Capability Example 1 IMAP provider
Domain name suffix Customer-specific; for example, contoso.com or treyresearch.com
IMAP migration YES
Admin account with Full Access NO
Export org address book YES
Export Contacts YES
Export Calendar NO


Unfortunately, with this provider there is no single account that has full mailbox access to all mailboxes. Consequently, it is necessary to work around this as described later in this article.

First, it is necessary to verify the domain name to Microsoft. Let’s assume that the name of the provider is Northwind Traders, and that our registered domain name is treyresearch.com. Further details for verifying domain names can be found at Verify your domain and change name servers at any DNS hosting provider or domain registrar.

Further information on IMAP migrations may be found at Migrate Email from an IMAP Server to Exchange Online Mailboxes.

Verify your email domain with Office 365 and configure it as an accepted domain

To create users with your treyresearch.com email addresses, you must specify the domain name, verify that you own that domain name, and then add it as an accepted domain. To do this, perform the following steps:

  1. Log in to Office 365 using the administrator account.
  2. In the Admin portal, under Manage your organization, under domains, click Manage your website and email domains.

  3. Click Add a domain.

  4. Type the name of the domain and then click next.

  5. In the Tell us about… screen, select Yes to confirm that you already have the email address.

    Note that in this example, I have selected Yes for the web site selection. For your organization, you may opt to make another choice. Click Next.

  6. Select Confirm that you own <your company name>.

  7. Click the drop-down list and then select your provider.

    In this example, treyresearch.com uses Go Daddy’s DNS to host their namespace, so we select Go Daddy in the Office 365 dialog box.

  8. You are prompted with a screen instructing you what value to enter in a TXT DNS record. Office 365 provides great instructions here to assist with registering the domain. It is worth printing out the instructions. Click Print to print the instructions provided on the Office 365 site. If you cannot print, it might be necessary to switch between the screens.

    Scroll down and make a note of the value of the TXT record you will need to add to your provider’s DNS; e.g., in my example it was MS=ms87257449.


Add a TXT record to your registrar’s DNS

  1. To change the settings in DNS, go to your registrar’s domain management page, in this case Go Daddy.
  2. Open the Go Daddy control panel.
  3. Click Domain Manager.

  4. Click the domain name, and then under DNS Manager, click Launch.

  5. In DNS Manager, click Add Record.

  6. At this point, the Office 365 Help screen dialog boxes will provide you with the record details you need to enter. Keep the printout at hand, or jot down the values. Once you have the record value, in the Add DNS Record dialog box, click the down arrow for the Record type: box, and then choose TXT (Text).

  7. For TXT Name, type or paste the following: @

    For TXT Value, type or paste the value you noted previously; e.g., MS=ms87257449

    For TTL, leave the value set to 1 Hour.

    Click OK.

    Note: While you are editing the DNS records, now is a good time to confirm that the time to live (TTL) of the MX record is no longer than 1 hour. If it is, reduce it to 1 hour, which will make the final transition a lot smoother.

  8. Save the Zone File.
  9. Click OK.


Complete verification of the domain name

  1. Wait at least 15 minutes for the changes to take effect across the Internet. Come back to the Office 365 portal, and then click done, verify now.

    If the verification of the DNS record cannot be confirmed immediately, wait and try again later. In my experience, these names typically take less than 1 hour to resolve.

  2. Once confirmed, the following screen is displayed. Click next. (In this example we are only confirming ownership of the domain name.)

  3. Now that you have confirmed that you have ownership of the domain and that it is configured as an accepted domain, you can create email addresses using the domain name. Click Finish.

The next step is to create the mailboxes.

Create the Office 365 User Accounts

Because there is no bulk import feature in the Office 365 Small Business tenant, it is necessary to create the user accounts manually. This should not be too much of an ordeal, as customers choosing the Office 365 Small Business client will be small organizations with only a few users to create.

As stated earlier, the hosting provider in this example does allow for an export of mailbox configuration data. This is extremely useful for manually recreating the user accounts in Office 365.

For example, with Rackspace email hosting, I was able to export mailbox information by selecting Export list (.csv) as shown below.

The exported .CSV file is shown below.

The details in the spreadsheet are a great reference for creating users manually on the Office 365 Small Business portal.

To create the users, perform the following steps:

  1. Open the Office 365 admin console.
  2. Click Add users, reset passwords, and more.

  3. Click Add new (the + sign).

  4. Type in each user’s details from the exported .CSV file. Ensure that the correct domain name is showing in the domain name drop-down list (under User name). Click next.

  5. Under Assign permissions, choose whether you want the user to be an administrator, and set the user’s location. Click next.

  6. Select the licenses to apply to the user, and then click next.

    Note: Licenses may be changed and reconfigured later. For more information on assigning licenses, see Assign or remove a license.

  7. The user account password can be sent to an email account for management purposes. To do so, type the email address and then click create.

    Once created, the user accounts and passwords are displayed in a similar way to those on the following screen.

The next step is to import all email from the hosting provider to the new Office 365 mailboxes.

Populate Office 365 users’ mailboxes with hosted mailbox email items

Now we need to connect to the host Northwind Traders, collect all of the users’ email, and place it in their Office 365 mailboxes. To do this, we use the built-in Office 365 IMAP migration tools. The IMAP provider Northwind Traders does not provide an administrator account to log in to all of the mailboxes and access email. Therefore the only way to get import to work is to create a .CSV file as shown in the following illustration, with the users’ logon names and passwords.

You have a couple of options here, depending on the security of the customer you’re working with. In an environment where everyone trusts each other and the risk of anyone reading other people’s mail is insignificant, you could get all users to change their passwords to be the same, which makes creating the spreadsheet much easier. However, it is more than likely that this is not desirable, in which case you will need to gather each user’s password individually.

Create a .CSV file

I recommend initially creating a .CSV file with only a few test user accounts in it. Hopefully your users’ passwords are stronger than those in my example below!

Some providers require “email address” in the UserName field, and some require just the short username. Trial and error may be required here.


Navigation to the migration settings in the Exchange Administration Center

Important: To navigate to the Exchange Administration Center (EAC)
in the Office 365 Small Business tenant, it is necessary to manually enter the URL for the EAC into your browser. To do this, perform the following steps:

  1. In the Office 365 portal, at the top of the page, select Outlook.
  2. In Outlook Web App, go to the address bar in your browser and replace the URL to the right of https://outlook.office365.com/ with ecp. For example, if your Outlook Web App URL is https://podxxx.outlook.com/owa/, change it to https://podxxx.outlook.com/ecp, and then press Enter. This will take you to the EAC.
  3. When you are finished, return to the Office 365 portal by clicking Admin at the top of the page.

    The Exchange Administration Center will now be displayed.

  4. In the Exchange Administration Center, click migration.

  5. Click new and then select Migrate to Exchange Online.

  6. Select IMAP migration and then click next.

    The new migration batch screen will appear.

  7. Browse to the.CSV file you created containing the users’ logons and passwords to the IMAP provider, and then click next.

  8. In the new migration batch screen, enter the server name (e.g., imap.nwtraders.com – the Northwind Traders IMAP server) and then click next.

    Note: Your e-mail provider will be able to provide you with this name; however, it is likely that you are already know it as the name you use to connect your IMAP clients.

  9. In the new migration batch screen, enter a batch name. The batch name is for identification purposes only; e.g., I entered the name importuseremail. Use an intuitive name here so that it will be easy to recognize what it refers to at a later stage.

  10. Browse to the Office 365 mailbox to which you want the report of the migration to be delivered, and then choose to start the batch immediately or later. Click new.

  11. The migration batch will show a status of Created. Click Start to begin the migration.

  12. Click Refresh for updates.

  13. Click View details for details on the progress of all mailboxes.

    The details screen reports on the progress of all mailboxes.

    The screen above reports that the IMAP migration failed. This is because I had used an incorrect password to access that specific account in the .CSV file.


When the procedure has been completed, an email message will be sent to the administrator mailbox in Office 365. Open the email and download the report. Look for any errors in the email; typically, an incorrect password for a user mailbox will create an error.

Recommended practice: Initially, create a .CSV file with just a few ‘test’ mailboxes listed in it to confirm that the format of the .CSV file is correct and that mailboxes migrate. This is also a good time to record how long a mailbox takes to migrate and calculate the GB/hour transfer rate. This figure should be used to calculate the time required for a complete migration. Once a mailbox has been migrated, Office 365 will continue to synchronize the mailbox every 24 hours. Therefore it is possible to perform a migration where users continue to use their Northwind-hosted mailboxes until you have migrated all of the mail.

Migrating User Contacts

The Northwind Traders hosting environment provides no way to export contacts. Therefore, if your users want to have their contacts available in Office 365, they will need to export them and then import them into Office 365 themselves. Here’s an example of exporting contacts with the hosting provider Go Daddy. For additional information on importing contacts, see Import contacts using Outlook Web App.


Export contacts

  1. Instruct your users to go to the Go Daddy workspace. Click the Email tab, and then click Address Book.
  2. Select Contacts.

  3. Click Export.

  4. Click Export CSV and then save the user’s personal contacts to a .CSV file in a safe location.

    This will be imported into Office 365 when the user can access their Office 365 mailbox.

Import contacts into Office 365

Instruct users to import their contacts by opening Outlook Web App by performing the following steps.

  1. Select Import Contacts.

  2. Instruct the user to select the .CSV file the user saved prior to migration and then click next.

    The contacts have now been imported and will appear on the contacts screen in Outlook Web App.


That’s it – mailboxes have now been created and populated with historic email. Users have imported their contacts.

Switch the destination for email delivery to Office 365

Now it is time to switch over so that mail will be delivered to Office 365. To do this requires changing the MX record for your organization in DNS on the Internet. (Remember, we ensured that its TTL was 1 hour in previous steps.) Go back to the printout of those instructions and enter the value of the MX record that was given to you by Office 365. For more information, see Verify your domain and change name servers at any DNS hosting provider or domain registrar.