# UJ-103 View subscription, usage, and invoices

Audience: AI coding agents first.

- Actor + entry point: Authenticated staff operator; `/users/{userId}`.
- Priority: MUST-HAVE.
- Preconditions: Register account; create subscription through public checkout + webhook APIs; generate usage through translation API; issue invoice through settlement flow.
- Test layer: L3.

## Steps

1. Open account → `Status`, `Credits Balance`, and `Member Since` render (`admin-panel/src/pages/UserDetailPage.tsx:188-214`).
2. Inspect `Subscription` card → plan, billing cycle, status, and period end render (`admin-panel/src/pages/UserDetailPage.tsx:217-250`).
3. Open usage/invoices section in new dashboard → seeded usage totals and invoice number/status/amount render; fresh reload returns same values.

## Failure branches

- Auth failure → redirect/login; no billing data.
- Wrong account ID → `404` without cross-account details.
- Rate limit `429` → visible retry state; previously loaded values marked stale.

## Backend touchpoints

`GET /v1/admin/users/{userId}`; locked-v1 staff subscription, usage, and invoice read endpoints (route names UNKNOWN; record in INDEX uncertainties).

