← Back to portfolio
Case Study 01 / B2B Enterprise UX

Designing user access provisioning for an enterprise financial platform

Client Nexus Financial
Role Senior Product Designer
Timeline 4 years
Product Apex Platform

Company name changed under NDA. Fortune 100 US retirement and asset management firm, 2018 to 2024.

01 / Overview

Overview

This case study walks through the design of a guided, multi-step provisioning wizard for Apex Platform, a B2B enterprise tool used by plan sponsor administrators to manage employee benefit access.

Over four years I designed the User Management module end to end, from user creation through role assignment, plan and division selection, and final review.

02 / Role

My role beyond UI design

I was the sole designer on this module for the duration of the project, which meant the role extended well past screens. I translated business requirements written by product managers into flows, identified gaps in those requirements before engineering picked them up, and held the line on consistency as the platform's broader design system evolved through several iterations.

The work sat at the intersection of three competing pressures: what the business needed shipped, what the backend systems could support, and what a non-technical administrator could realistically complete without confusion. Most of my decisions were a negotiation between those three.

03 / Challenges

Key challenges

Provisioning access for a B2B financial platform is a genuinely complex design problem, with real technical depth behind every screen. Below are the central challenges I designed for, pulled directly from the product requirements I worked from.

Challenge Solution
Clients and relationship managers needed a faster, more modern way to set up new user access than the existing manual process allowed. I designed a fully digital, guided wizard that let authorized administrators create users and provision access directly inside the platform, giving clients a self-service path end to end.
Two different benefits in the same wizard relied on different backend sequencing, plans-then-divisions for most benefits, divisions-then-plans for Stock Plan Services, each rooted in sound product-specific logic. I designed one consistent wizard shell, including the step structure and progress indication, that could elegantly absorb either sequence without the administrator ever perceiving a difference.
Role names and permissions varied meaningfully across benefits, reflecting real differences in what each role could responsibly access. I embedded plain-language role descriptions directly into the selection step, putting the right context exactly where administrators needed it to make a confident choice.
The initial MVP was intentionally scoped to a focused first release, clients without divisions and under eight plans, while the broader client base had richer, more varied configurations. I designed the flow to scale gracefully from day one, so the same wizard structure built for the MVP could extend naturally to mixed-division, multi-plan scenarios without a redesign.
04 / Discovery

Discovery

Before diving into requirements, it is worth zooming out to where this work sits in the administrator's broader task. The Add Access wizard is one stage in a longer journey that starts before the administrator ever opens the platform and continues well after a user is provisioned.

Administrator provisioning journey Four stages of the administrator journey with the case study focus highlighted on Provision Access FIGURE 01 / ADMINISTRATOR JOURNEY STAGE 01 New hire needs access STAGE 02 Create the user STAGE 03 Provision access STAGE 04 Review access CASE STUDY FOCUS The wizard design
Fig 01. The provision access stage sits in the middle of a longer administrator workflow.

Reading the requirements

The earliest project documentation defined a deliberately narrow MVP. Entry criteria included: the client must already be on the platform's newer roles-based access system, the client must not use divisions, and the client must have fewer than eight plans for the selected benefit. Administrators setting up users as Directing Parties, Third Party users, or Advisors were explicitly out of scope.

This told me two things. First, whatever I designed for the MVP needed a clear, intentional ceiling, since the easy path was deliberately small. Second, the real complexity, divisions, larger plan counts, and third-party relationships, was coming, and the architecture of the wizard needed to anticipate it rather than require a rebuild later.

Key insights from requirements

Core hypotheses

If administrators see role options described in plain language at the point of selection, then they will make confident, well-informed access grants, since the right context lives exactly where the decision happens rather than in a separate document.

If the wizard's step structure stays visually and structurally identical regardless of which benefit is selected, then administrators will build a reliable mental model of the task, even though Stock Plan Services required reversed backend sequencing.

05 / Validation

Usability validation

To test the two core hypotheses, I ran moderated, task-based usability testing with 7 administrators, weighted toward qualitative depth given the platform's low-frequency, high-stakes usage pattern.

Study design

Participants included a mix of frequent and infrequent users, since infrequent users carry the highest risk of confusion in an unfamiliar flow, along with administrators managing more complex client configurations, multiple plans, and mixed division rules, to stress-test beyond the MVP's simpler baseline case.

Key tasks included completing the full Create User flow unassisted, adding access for a straightforward single-benefit case to establish a baseline, then the harder mixed-division scenario where some plans are restricted and others are not. A role-selection task asked participants to explain a role's permissions in their own words immediately after reading its in-flow description, directly testing whether the plain-language content was doing its job. A final task tested the edit-from-review pattern, asking participants to return to an earlier step and revise a decision after reaching the review screen.

What the study confirmed

The plain-language role descriptions worked as intended. Every participant correctly explained their selected role's permissions without hesitation, validating the decision to embed that context directly in the flow rather than in separate documentation. The edit-from-review pattern also performed well, with all participants successfully locating and correcting a prior decision without confusion.

What the study surfaced

The mixed-division task was the one place where the design needed work. In the original version, the binary "restrict by division?" gate applied once per plan, but the per-plan division list that followed reused the same visual treatment regardless of whether a plan was restricted or unrestricted. Three of seven participants briefly hesitated on unrestricted plans, unsure whether the absence of selected divisions meant "no restriction" or "not yet completed."

In response, I added the explicit "No division restrictions, user will access all divisions" label to unrestricted plans, replacing the ambiguous empty state with a clear, confirmed status. The screens in this case study reflect that revised version. A short follow-up check with two of the original participants confirmed the new label resolved the hesitation.

06 / Design

Design solution

The wizard moves through six steps, with the division filtering step branching depending on whether a plan is restricted, before converging back into a single review and submission step.

Add Access wizard flow Six-step wizard with a branching division filtering step that converges into a single review and submit step FIGURE 02 / WIZARD FLOW ARCHITECTURE STEP 01 Create user STEP 02 Select role STEP 03 Select plans STEP 04 / DECISION Restrict by divisions? YES NO STEP 05A Per-plan division filtering STEP 05B Skip to review Converge to review and submit
Fig 02. The decision node in step 04 branches, then converges back into a single review flow.

Design principles

I explored three directions for how the wizard should present multi-step, multi-benefit complexity to a non-technical administrator. The Guided Wizard with Consistent Shell ultimately shipped because it gave administrators a stable structural anchor. The progress bar and step pattern never changed, while the underlying logic flexed per benefit. This balanced predictability with flexibility.

Key design decisions

Key insight A consistent shell with adaptive internal logic is more durable than branching flows with hidden steps, since predictability matters more than minimalism in compliance-sensitive enterprise tools.
07 / Feature Deep Dive

Feature deep dive

The wizard moves through six steps, with the division filtering step branching depending on whether a plan is restricted, before converging back into a single review and submission step. The screens below walk through each step, paired with the specific anti-patterns avoided and UX psychology principles applied.

Creating a user

The first step in granting access is creating the user's record. I designed a two-step flow: user type selection, then a personal information form.

User type selection screen, empty state
User type, empty state
User type selection screen, Internal selected
User type, Internal selected
Anti-Patterns Used

Avoid Hidden Defaults: Rather than pre-selecting a default user type, both options are presented unselected with equal visual weight, forcing an intentional choice rather than letting an administrator accidentally proceed with the wrong type.

Don't Overload the Decision: Only two options are shown at this stage, even though the platform eventually supports more nuanced user classifications, since presenting that complexity before it's relevant would slow down the common case.

UX Psychology Applied

Hick's Law: Decision time increases with the number and complexity of choices. Limiting this step to two clearly differentiated options keeps the decision fast, even though the underlying permission system is far more complex.

Recognition Over Recall: Each option includes a short description rather than relying on the administrator to remember what "Internal" or "External" means from a separate document.

Personal information form, empty state
Personal information, empty
Personal information form, filled with Daniel Souza's details
Personal information, filled
Anti-Patterns Used

Don't Force Uniform Field Widths: Rather than aligning all fields to a rigid column grid, each field is sized to match the length of its expected content, a phone number field is exactly as wide as a phone number, not as wide as an address line.

UX Psychology Applied

Cognitive Load Reduction: A field's width is a visual cue for what kind of input is expected before the user even reads the label. Matching width to content type reduces the small but real mental effort of parsing each field.

Role selection

Role selection screen with plain-language role descriptions
Role selection, plain-language descriptions
Anti-Patterns Used

Don't Bury Critical Decisions in Documentation: The legacy experience required consulting a separate PDF to understand role differences. I moved that explanatory content directly into the selection step.

UX Psychology Applied

Recognition Over Recall: As above, this is one of the clearest applications of the principle in the whole flow, since selecting the wrong role here was a genuine compliance risk, not just an inconvenience.

Progressive Disclosure: A "Compare roles" link is available for administrators who want more depth, without forcing that detail on everyone by default.

Plan selection

Plan selection, empty state
Plan selection, empty
Plan selection, three plans selected
Plan selection, three selected
Anti-Patterns Used

Avoid Forced Sequential Selection for Independent Items: Plans are independent of one another, so I used checkboxes with a select-all shortcut rather than forcing one-at-a-time confirmation, which would have added friction for clients with many plans.

UX Psychology Applied

Goal Gradient Effect: The select-all option lets administrators reach a near-complete state quickly, then fine-tune by deselecting, which research on goal-directed behavior shows increases the likelihood of completing the full set of decisions.

Division filtering

Division gate, binary question: restrict by divisions?
Division gate, binary question
Division per plan, empty state
Division per plan, empty
Division per plan, mixed selections: one plan restricted, two unrestricted
Division per plan, mixed selections
Anti-Patterns Used

Don't Present Irrelevant Complexity: For clients or plans that don't use divisions, this step is skipped silently rather than shown with a "not applicable" message, which would have added noise to a flow most administrators would see as a non-issue.

Avoid Flattening Genuinely Different Decisions Into One: Rather than asking "select divisions" as a single ambiguous question, I split it into a binary gate, restrict or don't, followed by granular selection only for plans where the answer was yes.

Don't Leave Empty States Ambiguous: Usability testing surfaced hesitation when unrestricted plans showed no selected divisions with no further explanation, since participants couldn't tell if that meant "no restriction" or "incomplete." I added an explicit "No division restrictions, user will access all divisions" label to remove that ambiguity.

UX Psychology Applied

Chunking: Breaking the division decision into two smaller, sequential decisions, rather than one large multi-part one, reduces the cognitive load of holding several plan-by-plan decisions in mind at once.

Miller's Law: This step can present several plans simultaneously, each with their own division state. Grouping the binary gate and the detail view as two distinct sub-steps keeps the number of decisions visible at once within a manageable range.

Review and submit

Review and submit screen showing a complete summary of all selections
Review and submit, 100% complete
Anti-Patterns Used

Don't Submit Without Confirmation in a Compliance Context: Given the audit requirements behind this flow, allowing direct submission from any earlier step without a final review would have been a real compliance risk.

UX Psychology Applied

Peak-End Rule: The final screen in any flow disproportionately shapes how the whole experience is remembered. A clear, error-free review and submission step was designed to be the strongest moment in the journey, not an afterthought.

Zeigarnik Effect: The persistent progress bar reaching 100% at this step, after being visible throughout, gives a strong sense of closure that an unindicated multi-step form would lack.

Stock Plan Services: a divergent flow, a consistent experience

Stock Plan Services required divisions to be selected before plans, the reverse of every other benefit. The wizard shell stays identical, the same progress bar, the same step structure, but the content inside the division step changes to reflect SPS's text-entry input pattern rather than a checkbox list.

SPS division step, showing a text entry field for division names with a validate button
SPS division step, text entry
SPS terms and conditions screen at 90% progress
SPS terms, 90% progress
Anti-Patterns Used

Don't Expose Backend Inconsistency to the User: The SPS division-before-plans sequence is a backend constraint, not a user-facing concept. The wizard absorbs the difference without asking the administrator to understand why the order changed.

UX Psychology Applied

Consistency and Standards: By keeping the wizard shell identical across both DC and SPS flows, administrators who have completed the DC flow can approach SPS with a reliable mental model of what to expect, even though the underlying logic is different.

Access review lifecycle

Beyond provisioning, administrators are required to periodically review and certify that all users have the correct level of access. I designed two screens that close the loop on the full access management lifecycle.

Plan access review dashboard showing plans due for review, overdue plans, and review history
Plan review dashboard

The Plan Review dashboard gives administrators a high-level view of all plans, with clear status indicators for plans due for review, plans overdue, and plans with upcoming review dates. Clicking into a plan takes the administrator to the Attestation screen.

Attestation screen for a single plan, showing the date and reviewer of the last review, a table of three active users listing user ID, name, internal or external type, type of access, last login date, who set them up and when, a certification checkbox reading that these users have the access required to perform their job alongside a Certify button, then a separate table of deleted users showing who removed them and when, and a review history table listing each past reviewer and review date
Attestation screen, single plan

The Attestation screen lists every active user on the plan with their access type, presents a clear certification action, and maintains a full review history. The compliance requirement, reviewing access no less than annually, is built directly into the UI rather than managed outside the platform.

Anti-Patterns Used

Don't Separate Compliance Tasks from the Core Workflow: Rather than managing access review through a separate report or email process, the review and attestation screens live inside the same platform administrators use to provision access, keeping the full lifecycle in one place.

UX Psychology Applied

Closing the Loop: The Attestation screen's review history and certification action give administrators a clear sense of completion for each plan, reinforcing the ongoing nature of access management as a cycle rather than a one-time task.

08 / Impact

Business impact

09 / Closing

Closing

Winning moments

Lessons learned

Explore other work

← Back to portfolio