3cx Version 20 with m365 sync, there is no clear path on how to set a custom extension and then sync the m365 user

xosystems

Premier Customer
Joined
Jul 3, 2025
Messages
1
Reaction score
1
Hello everyone,
I hope you’re doing well.
We need to migrate from an old PBX to 3CX, each user has a specific phone extension.

We’ve successfully deployed 3CX v20 Enterprise on Azure with Microsoft 365 integration.
The 3CX dashboard reports that the firewall configuration is OK, and M365 sync with message: “Status OK. Real Time Notifications from 3CX to Microsoft 365 are working and in sync.”

What we’ve done:
  • Installed 3CX v20.
  • Verified firewall checks
  • Enabled M365 integration (UPN matches exactly).
  • Using selected Users on 3CX / Admin / Users / M365 with
    • Enable SSO
    • Sync user photo
    • Sync Personal Contacts
    • Sync user account details (also tried without)
      • Account Enabled -> Disable Extension
      • GivenName -> First Name
      • Surname -> Last Name
      • Mail -> Email
      • MobilePhone -> Mobile
      • Business Phones -> Outbound Caller ID
What is working:
  • If we select a user from 3CX / Admin / Users / M365, the user is successfully added on 3CX / Admin / Users with elements such as photo, presence sync, etc

What isn’t working:
  • We cannot assign a custom extension to a new user and have it synchronize to Azure Entra ID/M365.
  • We cannot return a deleted user on 3cx / Admin / Users from m365

How we’re creating users:

In 3CX Management Console → Extensions → Add New Extension:
  • Extension: Custom (e.g. 1501)
  • First Name, Last Name
  • Email = Azure Entra UPN (exact match)
XAPI Comparison
We have also tried to cross-check differences between a successfully synced user from m365 and a user that was first created on 3cx
"/xapi/v1/$metadata#Users(Greetings(),ForwardingProfiles(),ForwardingExceptions(),Phones(),Groups())/$entity"
  • User A: Originated in M365 → JSON includes "Tags": ["MS"]
  • User B: Originated in 3CX → JSON includes "Tags": []
We attempted an unsuccessfully xapi patch to the Tags

What we need:
  • Guidance on configuring 3CX so that custom extension assignments push correctly into M365 contacts/users.
  • How do we return a deleted user?
  • Are there any specific permissions, policies, or mapping steps required?


Thank you in advance for your insights!
 

Attachments

  • m365_integration.png
    m365_integration.png
    6.7 KB · Views: 6
  • m365_settings.png
    m365_settings.png
    16.5 KB · Views: 6
  • Users.png
    Users.png
    75.6 KB · Views: 6
Last edited:
  • Like
Reactions: gieinf
When i did that for our dutch branches recently I imported dummy users with the correct email adresses/UPN via csv
all i gave them were the bare required fields extension, mail, name(test), surname (test)...
after that i enabled the users in the M365 options and added them to sync and all the data was synced

1759317153606.png
 
  • Like
Reactions: Evolute IT

Forum statistics

Threads
111,954
Messages
589,919
Members
164,851
Latest member
DrunkeMeister