---
module: msp.institutions
title: Institutions
tab: Testing
order: 35
audience: dev
---

Frontend test checklist for the MSP **Institutions** screen (`msp.bcos.dev`). Click through in the UI and mark each row Pass or Fail.

## Set up
Log in at **msp.bcos.dev** — test accounts (all password `Passw0rd-d3v!`):

| Login | Role | Sees |
|-------|------|------|
| `bcos_a@bcos.dev` | Admin | **All** institutions (C1BD, C2BD, C3BD) |
| `msp_a@msp1.bcos.dev` | MSP admin | **C1BD + C2BD only** |
| `customer_a@customer1.bcos.dev` | Customer | Not an MSP admin — no access to this screen |

Data is the sim institutions **C1BD / C2BD / C3BD** (with their C1-/C2-/C3- simulator devices behind them).

## What to test

| # | Do this | ✅ Pass if |
|---|---------|-----------|
| 1 | As `bcos_a`, open **Institutions** | Table loads with columns **Institution · Contact · License Key · Granted** and rows for C1BD, C2BD, C3BD |
| 2 | Open the **Filters** sidebar, type an institution name in **Search** | List narrows to matches; **✕ Clear all** brings every row back |
| 3 | On a row, click **Edit Contact**, change Name/Email/Phone, click **Save Changes** | A success toast appears, the panel closes, and the new contact shows in that row |
| 4 | Click **Edit Contact**, clear the **Name** field, click **Save Changes** | A **"Contact name is required"** error shows and nothing is saved |
| 5 | Click **Tokens**, enter a name (e.g. `C1-ATM-001`), click **+ Generate** | A green banner shows the **raw token once** with a **Copy** button, and the token appears in the list as **ACTIVE** |
| 6 | In the same Tokens panel, click **Revoke** on that token | Its status flips to **REVOKED** and a **Delete all revoked** button appears |
| 7 | On a row, click **Readiness** | A panel opens with a **Ready to onboard** / **Not ready** banner and grouped checks (Customer Profile, Licensing, Agent Connectivity) each marked ✓ or ✗ |
| 8 | Log in as `msp_a` and open **Institutions** | You see **only C1BD and C2BD** — **C3BD is not listed** |
| 9 | Log in as `customer_a` | The **MSP / Institutions screen is not available** to you (not in the menu / access denied) — no institution list |

**Report a fail with:** the row #, which login you used, and what you actually saw.
