Automatic Deposit Scheme Verification on Panel Load
Automatic Deposit Scheme Verification on Panel Load
Available from: v0.1.229
Overview
The Deposit Scheme Panel now automatically verifies a tenancy's deposit registration with the scheme API as soon as the panel opens — no manual button click required. This brings the on-demand UI surface in line with the platform's existing automated background sweep, ensuring agents always see an up-to-date verification status immediately.
How It Works
When the panel loads, the system evaluates three conditions:
| Condition | Required value |
|---|---|
depositProtectionRef | Set (non-null) |
depositProtectedAt | null (not yet confirmed) |
| Scheme API configured | true |
If all three are met, verifyMutation fires automatically in the background via a useEffect hook. The panel moves through the following states:
- Checking… — A skeleton placeholder replaces the amber warning while the API call is in flight.
- Verified — The confirmation timestamp and scheme details are displayed inline once the scheme API responds successfully.
- Unverified / Error — If the API returns a non-verified result or an error, the panel surfaces the appropriate status message and makes the Re-verify button available.
Caching
Verification results are cached for 24 hours. If a result already exists within that window the panel will not re-fire the automatic check, preventing redundant API calls to the scheme provider.
The cache is invalidated whenever:
- The
depositProtectionRefon the tenancy changes. - An agent manually clicks Re-verify.
- The 24-hour TTL expires.
The Re-verify Button
The "Verify with [Scheme]" button remains visible on the panel but its role has changed. It now acts as a Re-verify control — useful when:
- A reference number has just been corrected.
- An agent wants to force a fresh check outside the 24-hour cache window.
- The automatic check returned an inconclusive result.
Relationship to the Background Sweep
The platform runs a weekly Inngest job (deposit-scheme-sync-status-check) that automatically checks deposit registration status across all tenancies. This panel-level auto-trigger is a complementary, on-demand layer — it ensures verification happens the moment an agent opens a specific tenancy, rather than waiting for the next scheduled sweep.
Before and After
Before v0.1.229
[Panel loads]
└─ Amber warning: "Click Verify with [Scheme] to confirm this deposit is live"
└─ Agent clicks button → API call fires → result shown
From v0.1.229
[Panel loads]
└─ Conditions checked (ref set, no confirmed date, API configured)
├─ All met → "Checking…" skeleton → API call fires → result shown inline
└─ Not met (e.g. already verified) → normal verified state shown
Affected Component
deposit-scheme-panel.tsx