Predesign links
Whatsnext post - https://expensify.slack.com/archives/CC7NECV4L/p1764620384793629
Predesign - https://expensify.slack.com/archives/C07NMDKEFMH/p1764869641871379
Figma link - https://www.figma.com/design/XOfZbNPUeThgn3rycFX14x/Domains---SAML?node-id=1076-48767&p=f&t=dtiKmOWY337x6AxR-0
Data storage predesign - https://expensify.slack.com/archives/C07NMDKEFMH/p1764870173949399
Canvas with API and UX Pattern considerations - https://expensify.enterprise.slack.com/docs/T03SC9DTT/F0A1R9T88RK
Proposal
Background
Today, domain admins rely on Classic to perform essential enterprise governance tasks, including adding or removing domain members, granting domain admin privileges, and organising users via security groups to manage policy access and enforce company-wide standards. These tools are heavily used by IT, finance, and compliance teams across mid-market and enterprise organisations.
Currently, New Expensify offers no native interface for managing domain membership, adjusting domain admin permissions, or creating and maintaining domain security groups. This prevents us from migrating these customers who use these features to New Expensify. The only Classic Domains feature in NewDot now is the SAML setup and configuration.
Problem
When a domain admin needs to manage domain members, domain admins, or security groups, if they attempt to perform these actions in New Expensify, then they are forced back into Classic—undermining trust in NewDot as an enterprise-ready environment and increasing the likelihood they stop using it altogether.
Solution
Build native domain management capabilities in NewDot by extending the new Domains section within the Workspaces tab to support full domain configuration. This will provide a unified experience for enterprise admins and eliminate the last remaining domain-control dependency on Classic. These features will sit alongside the existing SAML configuration already supported in NewDot.
The suggested release would be:
- Release 1: Domain admins configuration - Introduce Domain Admins subpage in the domains settings where admins can:
- Add or remove domain admins
- Set primary contact for the domain
- Enable/ disable consolidated domain billing
- Release 2: Domain members management flow - Bring Domain Members subpage in the domains settings where admins can:
- Add/remove domain members
- See the list of domain members with their appropriate domain security group
- Release 3: Domain members configuration - More complex configuration of the domain members handled in the RHP:
- Close the domain member account
- Enable, disable or reset their 2FA
- Report Suspicious activity
- Set or unset a vacation delegate
- Export the domain members
- Release 4: Domain Security groups configuration - Bring over the Domain Security Groups subpage in the domains, where admins can:
- Create and delete domain security groups
- Edit existing domain security groups through RHP
- In the members page, allow admins to move members between different security groups
For this project, our goal is to close the feature gap as quickly as possible while ensuring the UI remains intuitive for migrated admins. To achieve this, we will closely mirror Classic’s configuration experience, with UX improvements considered out of scope for this initial phase.
Tasks
Issue Owner
Current Issue Owner: @mountiny
DESIGN DOC ➡️
Predesign links
Whatsnext post - https://expensify.slack.com/archives/CC7NECV4L/p1764620384793629
Predesign - https://expensify.slack.com/archives/C07NMDKEFMH/p1764869641871379
Figma link - https://www.figma.com/design/XOfZbNPUeThgn3rycFX14x/Domains---SAML?node-id=1076-48767&p=f&t=dtiKmOWY337x6AxR-0
Data storage predesign - https://expensify.slack.com/archives/C07NMDKEFMH/p1764870173949399
Canvas with API and UX Pattern considerations - https://expensify.enterprise.slack.com/docs/T03SC9DTT/F0A1R9T88RK
Proposal
Background
Today, domain admins rely on Classic to perform essential enterprise governance tasks, including adding or removing domain members, granting domain admin privileges, and organising users via security groups to manage policy access and enforce company-wide standards. These tools are heavily used by IT, finance, and compliance teams across mid-market and enterprise organisations.
Currently, New Expensify offers no native interface for managing domain membership, adjusting domain admin permissions, or creating and maintaining domain security groups. This prevents us from migrating these customers who use these features to New Expensify. The only Classic Domains feature in NewDot now is the SAML setup and configuration.
Problem
When a domain admin needs to manage domain members, domain admins, or security groups, if they attempt to perform these actions in New Expensify, then they are forced back into Classic—undermining trust in NewDot as an enterprise-ready environment and increasing the likelihood they stop using it altogether.
Solution
Build native domain management capabilities in NewDot by extending the new Domains section within the Workspaces tab to support full domain configuration. This will provide a unified experience for enterprise admins and eliminate the last remaining domain-control dependency on Classic. These features will sit alongside the existing SAML configuration already supported in NewDot.
The suggested release would be:
For this project, our goal is to close the feature gap as quickly as possible while ensuring the UI remains intuitive for migrated admins. To achieve this, we will closely mirror Classic’s configuration experience, with UX improvements considered out of scope for this initial phase.
Tasks
#whatsnexthttps://expensify.slack.com/archives/CC7NECV4L/p1764620384793629strategy@expensify.comand paste in the Proposalstrategy@expensify.com(continue the same email chain as before - your last message should be the WN Proposal) with the link to your Design Doc containing your high-level problem and solutionDesignDocReviewlabel to get the High-level overview of the problem and High-level of proposed solution section reviewedDesignDocReviewlabel to this issuestrategy@expensify.comone last time to let them know the Design Doc is moving into the implementation phasestrategy@expensify.comonce everything has been implemented and do a Project Wrap-Up retrospective that provides:Issue Owner
Current Issue Owner: @mountiny