Changing a user's role
Roles are read-only in the user panel — here's why, and what to do instead (parent access, suspend, merge).
A user's role (teacher / parent / student / admin) is read-only in the admin panel. Open Admin → Users → a user, and the Role row shows the current role with a Locked badge — there's no "change role" control.
Why it's locked
Flipping a role is deliberately not a one-click action, because it has side effects that are easy to cause by accident:
- It invalidates the user's session — they're signed out and must sign in again.
- It can detach a parent's children — family rows and claimed students are tied to the
parentrole, so demoting a parent orphans their kids from the family view. - Student accounts sign in by PIN, not phone — switching a phone user to
studentremoves their phone-OTP sign-in.
Rather than expose a footgun, the panel keeps role fixed and points you at the safer, purpose-built actions below.
What to do instead
- A teacher who also has children using Keybaki → toggle Parent access on their account. This adds the family surfaces (wallet, children, monitoring) without changing their primary role — exactly what "teacher with kids" needs. See Changing a user's scope.
- Abuse or a compromised account → Suspend them from the detail panel. See Suspending and restoring users.
- A duplicate account (same person signed up twice, or a parent + teacher record to combine) → use an account merge instead of re-roling. See Account merges.
If a role genuinely must change
That's intentional: the change itself exists server-side, but it isn't exposed in the panel because of the session + family side effects above. Raise it with the platform team rather than working around the lock — they'll run it with the child-detach and re-sign-in handled deliberately.
Related