Why is this valuable?
Stop jumping between different calendars or guessing if a room in another office is free. Whether your team is spread across three different Microsoft tenancies or thirty, this add-in brings every available space, desk, and resource into a single, unified view.
Real-time availability: No more "ghost bookings" or back-and-forth emails to colleagues in other departments.
Total visibility: See every room across the entire organization right from your Outlook ribbon.
"Everything-in-One" Booking
We’ve made it impossible to forget the coffee! Now, you can book your room, order lunch for the team, and request a hybrid-meeting setup (like a projector or extra monitors) all in one single flow across the entire real estate.
Attached services: Catering and equipment requests are linked directly to your meeting invite.
Automatic alerts: The moment you click "Book," the right teams (Catering, IT, or Facilities) get notified instantly, even if they sit in a different company tenancy.
Who does this help?
Whether you’re a global conglomerate managing a "house of brands" or a fast-growing company navigate an M&A merger, this solution is a total game-changer for your workplace.
It’s perfect for co-working providers who need to give different tenants a seamless way to book shared desks, and just as vital for joint ventures or global firms with regional hubs who want to share high-end meeting rooms and catering across different office locations without the IT headache.
Essentially, if your organization has multiple teams sitting on different email domains but sharing the same physical front door, we’ve built this specifically to get everyone on the same page!
First Steps / Prerequisites
Before proceeding, the following guide should be read and followed. These steps are required to enable Planner to connect to all of the required Microsoft tenants, import users and distribute the Outlook Add-in.
Technical Steps
This guide explains how to configure your Microsoft 365 conference rooms so that users from other organizations (tenants) can book them through Outlook.
This process is fully compliant with Microsoft guidelines and works alongside built-in Exchange features to deliver a secure and trusted solution.
Prerequisites
Before you begin, make sure you have:
Exchange Online administrator access to your Microsoft 365 tenant
The Exchange Online PowerShell module installed on your computer
The email addresses of the rooms you want to share (or the name of the room list)
Step 1 — Connect to Exchange Online PowerShell
Open PowerShell on your computer and run:
PowerShell
# Install the module (only needed once)
Install-Module -Name ExchangeOnlineManagement -Force
# Connect to your tenant
Connect-ExchangeOnline
Sign in with your admin account when prompted.
Step 2 — Enable External Booking
By default, conference rooms reject booking requests from outside your organization. The following command enables external bookings.
For a single room:
PowerShell
Set-CalendarProcessing -Identity "[email protected]" `
-ProcessExternalMeetingMessages $true `
-AutomateProcessing AutoAccept
For all rooms in a room list (recommended):
PowerShell
Get-DistributionGroupMember -Identity "[email protected]" |
ForEach-Object {
Set-CalendarProcessing -Identity $_.Identity `
-ProcessExternalMeetingMessages $true `
-AutomateProcessing AutoAccept
Write-Host "Updated: $($_.DisplayName)"
}
For all rooms in your entire tenant:
PowerShell
Get-Mailbox -RecipientTypeDetails RoomMailbox -ResultSize Unlimited |
Set-CalendarProcessing `
-ProcessExternalMeetingMessages $true `
-AutomateProcessing AutoAccept
Step 3 — Set Up Free/Busy Sharing
This allows users from the other organization to check room availability before booking, preventing scheduling conflicts.
PowerShell
# Define your allowed partner domains
$AllowedDomains = @("partnerorganization-a.com", "partnerorganization-b.com")
# Create organisation relationships
$AllowedDomains | ForEach-Object {
$domain = $_
try {
New-OrganizationRelationship `
-Name "Partner Organization" `
-DomainNames $domain `
-FreeBusyAccessEnabled $true `
-FreeBusyAccessLevel LimitedDetails
Write-Host "Successfully created relationship for $domain"
} catch {
Write-Warning "Failed to create relationship for ${domain}: $_"
}
}
Step 4 — Protect your conference rooms from accepting booking from unknown domains (Optional but Highly Recommended)
If an email is sent to our room mailbox from an external person, delete it UNLESS they are from trusted partner domains.
PowerShell
# Define your allowed partner domains
$AllowedDomains = @("partnerorganization-a.com", "partnerorganization-b.com")
# Set your master Room List email
$AllRoomsGroup = "[email protected]"
# Create the Global Rule
New-TransportRule -Name "Global External Room Protection" `
-SentToMemberOf $AllRoomsGroup `
-FromScope NotInOrganization `
-ExceptIfSenderDomainIs $AllowedDomains `
-DeleteMessage $true `
-StopRuleProcessing $true
Step 5 — Verify the Settings
After applying the changes, confirm everything looks correct:
PowerShell
# Check a single room
Get-CalendarProcessing -Identity "[email protected]" |
Select-Object Identity, ProcessExternalMeetingMessages, AutomateProcessing
PowerShell
# Check all rooms in a room list
Get-DistributionGroupMember -Identity "[email protected]" |
ForEach-Object {
Get-CalendarProcessing -Identity $_.Identity
} | Select-Object Identity, ProcessExternalMeetingMessages, AutomateProcessing
You should see:
Field | Expected Value |
|
|
|
|
How to reverting the change (if required)
If you need to disable external booking again:
PowerShell
Set-CalendarProcessing -Identity "[email protected]" `
-ProcessExternalMeetingMessages $false
And then revert Step 4 if it was implemented.
PowerShell
Remove-TransportRule -Identity "Global External Room Protection" -Confirm:$false
Final Step: Enable the Feature in Planner
Contact the support team and request the enablement of the AllowSecondaryTenantsBookExchangeRooms feature.
Once completed all multi-tenant users will be able to book the Exchange rooms from the connected Exchange tenants.
