Before
- Internal calls show up as a bare number
- CSV exports and PowerShell scripts someone has to keep running
- Joiners and leavers never reach the phone
Enterprise Contacts pulls Microsoft 365 contacts directly into the native iOS Contacts app, so colleagues show up as caller ID, autocomplete in Mail, and appear in every app on your iPhone.
The problem
Microsoft 365 keeps the Global Address List in Outlook and Teams, but not in the iPhone's own Contacts app. So colleagues ring as bare numbers, and IT ends up keeping PowerShell scripts and CSV exports alive that break every time joiners and leavers change.
Before
With Enterprise Contacts
Three audiences, one app
For employees
Open Enterprise Contacts once. Your colleagues live in your phone forever.
For IT admins
Manage Entra ID source groups from any browser. Sign in and get started in minutes.
For IT Techs
Configure once in Entra ID. No MDM profiles, no per-device setup.
The flow
Authenticate once. Enterprise Contacts fetches contacts from sources you authorize, encrypts them on device, then publishes to the system address book where every other app reads from.
Delivered through Apple's ContactProvider framework, fully integrated with the system Contacts app, not a parallel address book.
Contacts sync in the background about every 2 hours, without opening the app, and your IT admin can choose another cadence. Joiners usually appear and leavers disappear within about half an hour, and changed details and photos update in place. The cadence is a target: iOS decides when background work actually runs.
Sync from Entra ID security groups, shared Exchange mailboxes, or your personal Exchange contacts folder, all in one place.
Authentication via Microsoft MSAL. Contact data is stored encrypted on device using iOS Data Protection. No third-party servers. Usage data stays in the EU — Azure Sweden Central — and can be switched off in Settings.
For IT administrators
About 10 minutes of Entra ID configuration, not an MDM project. No MDM profiles, no app configuration files, no per-user setup, and no PowerShell script or CSV export to keep alive.
Approve the read-only Graph permissions that let users sign in and sync contacts.
Approve the group management permissions that let IT admins create contact sources.
Use the Web Admin to define which contact sources each group of users should see.
Users sign in with their work account and configuration applies automatically.
Why I built it
Microsoft 365 has excellent contact management inside Teams, Outlook and the web. None of it reaches the native iOS Contacts app, which is where Phone, Mail, Messages and caller ID actually read from. I built the fix for myself, and it turned out to work for everyone. Enterprise Contacts is built and run by one person, based in Denmark.
Free for any Microsoft 365 tenant. No credit card. No MDM. Set up in about 10 minutes.