Menu Close

[SOLVED] We Are Preparing a Mailbox For The User (2021)

I’m going to show you the quick fix to solve we are preparing a mailbox for the user in office 365.

I struggled with a cloud mailbox issue in a Hybrid environment where in a user had the Exchange Online Plan 2 license but received the error that we are preparing a mailbox for the user in Microsoft 365. I waited for 4 days and tried some steps but unfortunately none of them worked. I was able to fix the error and would like to discuss the same in this article.

we are preparing a mailbox for the user

I have accessed connect-msolservice module and ensured that no errors on the user account. The command that I used to check the status is below. It’s worth to clear any errors when troubleshooting the mailbox issues.

(Get-MsolUser -UserPrincipalName user@techieberry.com).errors[0].ErrorDetail.objecterrors.errorrecord.ErrorDescription

The command normally shows any errors on a user account from Azure AD perspective. Thankfully, no errors on the affected mailbox. Also, verified that no email address conflicts with other accounts and all seems to be ok.

I even tried the Redo-MsolProvisionUser command to see if it makes any difference but in vain. Redo-MsolProvisionUser retries the provisioning of a user object in Azure Active Directory.

I decided to try different steps and it worked.

  • Go to “Exchange On-Premises”
  • Access “Exchange Management Shell
  • Disable the affected mailbox. For example, Disable-RemoteMailbox test248
    Note: I strongly advise not to use the remove-mailbox command as it removes the AD account that is associated with a mailbox. It is recommended to use the disable command.
microsoft office 365
  • Wait for the changes to reflect in cloud. After sync is completed, the account will have no mailbox in the cloud but it will be listed in the soft-deleted list which is ok for now.
  • Go back to on-premises powershell and enable the mailbox instead of remote user mailbox. For example, Enable-Mailbox test248
    Note: If no AD account is available, then the Enable-mailbox command will not work.
office 365 mailbox
  • Allow for a few hours for sync again. Once it is completed, initiate the migration from on-premises to Exchange Online and assign the appropriate license.
  • Guess what? After the migration is completed, we are preparing a mailbox for the user error no longer occurs.

Now, you should move the mailbox contents from the soft-deleted mailbox to the active mailbox using the below command to make sure the user has all data.

New-MailboxRestoreRequest -SourceMailbox softmailbox@techieberry.com -TargetMailbox activemailbox@techieberry.com -AllowLegacyDNMismatch

Source mailbox is the soft deleted mailbox and the target mailbox is the active one.

To get more information, visit the Microsoft website.

Also read: Office 365 Mailbox Doesn’t Exist [SOLVED]

Want to improve your Exchange Online experience for better productivity? Check out the tips and tricks mentioned here.

Now I’d like to hear from you:

Did I Miss Anything? Or maybe you have a question about something that I covered.

Either way, I’d like to hear from you. So go ahead and leave a comment below.

Related Posts

8 Comments

  1. Enrique

    Hello thanks for the Info, but once you disable the remote mailbox shouldnt the enable script be “Enable-Remote ID -RemoteRoutingAddress name.last@domain.mail.onmicrosft.com“?

    • techieberry

      Hi, After disabled the remote mailbox, I tried the Enable-RemoteMailbox and waited for a couple of sync but no luck. Therefore, created a mailbox (Enable-Mailbox) and migrated to cloud.

  2. Steve

    Great Post. I had a similar issue and could not find an answer. Followed your steps forced a sync then re-enabled the account and the mailbox was back to a user mailbox and immediately accessable.

  3. Josh

    Hmm the mailbox I tried this with was deleted and was not able to recover it. It never showed up in the disconnected mailboxes and when I enabled the mailbox it just started a fresh one. When I $dbs = Get-MailboxDatabase
    >> $dbs | foreach {Get-MailboxStatistics -Database $_.DistinguishedName} | Format-Table DisplayName,Database,DisconnectDate I see two mailboxes of the same name.

    • techieberry

      Have you disabled (disable-remotemailbox) the remote mailbox when performing these instructions or removed the same?

Leave a Reply

Your email address will not be published. Required fields are marked *