Skip to contentWork

RaiseNow

User management

A permission model for every org size

Role
Product Designer
Year
2024 – 26

The problem

RaiseNow serves nonprofits at both ends of the scale: single-account clubs and multi-tenant NGOs running dozens of regional accounts. One permission model covered both, so some users were over-privileged and others locked out of work they were accountable for.

What I did

I designed the permission model and the three screens that manage it: the users table, the invite modal and the detail panel. Most of the work went into making a complex model easy to read and change. The clips are from a prototype I built by directing Figma Make and Claude Code.

Six roles

I interviewed enterprise customers and our customer success team to map how access was actually used. From that came six roles, each scoped per account. A Developer role came out of an interview rather than the brief. It covers webhooks and API credentials, which connect other software to RaiseNow, and explicitly not refunds. Finance Officer kept supporter data because support agents troubleshoot with it.

  • Admin
  • Account Admin
  • Campaign Manager
  • Finance Officer
  • Viewer
  • Developer
PermissionAdminAccount AdminCampaign ManagerFinance OfficerViewerDeveloper
Touchpoint solutions
View touchpoint solutionsAllowedAllowedAllowedAllowedAllowedAllowed
Manage touchpoint solutionsAllowedAllowedAllowedNot allowedNot allowedNot allowed
Donations and payments
View transactionsAllowedAllowedAllowedAllowedAllowedAllowed
Export transactionsAllowedAllowedAllowedAllowedNot allowedAllowed
Process refundsAllowedAllowedAllowedAllowedNot allowedNot allowed
View supporter dataAllowedAllowedAllowedAllowedAllowedAllowed
Payouts
View payoutsAllowedAllowedAllowedAllowedAllowedAllowed
Export payoutsAllowedAllowedAllowedAllowedNot allowedAllowed
Settings
View organisation infoAllowedAllowedAllowedAllowedAllowedAllowed
Modify organisation infoAllowedNot allowedNot allowedNot allowedNot allowedNot allowed
Manage communicationsAllowedAllowedAllowedNot allowedNot allowedNot allowed
View usersAllowedAllowedAllowedNot allowedNot allowedNot allowed
Manage usersAllowedNot allowedNot allowedNot allowedNot allowedNot allowed
View payment providersAllowedAllowedAllowedAllowedAllowedAllowed
Manage payment providersAllowedAllowedNot allowedAllowedNot allowedNot allowed
View integrationsGrowthAllowedAllowedAllowedAllowedAllowedAllowed
Manage integrationsGrowthAllowedAllowedNot allowedNot allowedNot allowedAllowed
View webhooks and APIsGrowthAllowedAllowedNot allowedNot allowedAllowedAllowed
Manage webhooks and APIsGrowthAllowedAllowedNot allowedNot allowedNot allowedAllowed
What each role can see and do, by area. Growth marks permissions on the Growth plan only.

Role tags

Each role has its own colour and icon, so you can tell them apart at a glance. Roles are scoped per account, so hovering a tag opens a popover with the accounts it covers. Filtering works on the same tags: the chips above the table are the filter.

Filtering by two roles, then the accounts under Scarlett Holmes's Account Admin tag.

Invites

The invite modal works on the same model. Each role in the picker says what it covers, and every role is paired with an account. Several people can be invited in one go.

Inviting two people as Campaign Managers for Basel and Geneva.

Bulk edits

Tick two or more people and a floating bar offers to edit their roles and accounts or remove them together.

Two Campaign Managers selected.

Changing access

A person's detail panel shows their roles and accounts as a summary. Change access turns it into an editor with one row per role and account, so one pairing can change without touching the rest.

Scarlett Holmes's access, from summary to editor and back.