---
module: vault.import
title: Import
tab: Testing
order: 35
audience: dev
---

Frontend test checklist for **Import CIT Data** in Vault (`vault.bcos.dev` → **Import** in the sidebar). Click through in the UI and mark each row Pass or Fail.

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

| Login | Role | Sees |
|-------|------|------|
| `bcos_a@bcos.dev` | Admin | All institutions |
| `msp_a@msp1.bcos.dev` | MSP admin | C1 + C2 only |
| `customer_a@customer1.bcos.dev` | Customer | C1 only |

For upload tests, make a small CSV using a real sim ATM id (e.g. **C1-ATM-001**) — or just use the downloaded template and change the `atm_id` column to `C1-ATM-001`.

## What to test

| # | Do this | ✅ Pass if |
|---|---------|-----------|
| 1 | As `msp_a`, open **Import** | Page shows the **drag & drop upload box**, a **↓ Download Template** button, and an **Import History** table |
| 2 | Click **↓ Download Template** | A file `cit-import-template.csv` downloads to your computer |
| 3 | Expand **CSV Format Reference** | Section opens and shows the cassette-row and removal-row column layouts |
| 4 | Click **Browse File** and pick a valid `.csv` (atm_id = `C1-ATM-001`) | Box shows **Uploading…**, then the file appears at the **top** of Import History with status **Processing** |
| 5 | Wait a few seconds (no refresh) | Row flips to **Completed**, the **Records** column shows a visit count, and a green "Import complete" message appears |
| 6 | Try to upload a non-CSV file (e.g. a `.txt` or `.pdf`) | Upload is **rejected** with an "Only CSV files are accepted" message — nothing is added to the history |
| 7 | Upload a CSV where `visit_date` is a bad date (e.g. `not-a-date`) | Row shows status **Failed** and the **Error** column shows a short reason — page does **not** crash |
| 8 | If there are many imports, use the paging controls under the table | Page changes and row-count-per-page control both work — no error/crash |
| 9 | Log in as `customer_a`, open **Import** | You see the upload box **and** an Import History showing **only C1** files — no C2 or C3 imports |
| 10 | As `msp_a`, check the **By** column on completed imports | It shows the **email** of whoever uploaded each file |

> Note: Import has **no Add-button role gating** — every logged-in user (including `customer_a`) can upload for their own institution. Seeing an upload box as a customer is **expected**, not a bug.

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