Skip to content
Ritesh FirodiyaGet in touch

Work / AskCal / Wiki / Surfaces

unverified

Surfacecanonicalverified 2026-09-23

SURFACE.MOBILE.SCAN.UNVERIFIED

Summary

The screen a paying subscriber should never need.

Raw wireframe

  • .context/designs/mobile/scan/unverified.html

Why it is drawn this way

The bug it fixes. The server decides entitlement by asking RevenueCat on every request. If that call cannot be made or cannot be trusted — key not provisioned, wrong key type, a 401, a 5xx, an id the dashboard has never seen — the answer is false. False does not mean "unpaid", it means "unknown", and routing unknown onto the unpaid path locks out someone who has already paid.

So this screen says the plan could not be checked, rather than saying the user is on the free tier, and it offers Restore.

The free paths stay on screen, exactly as they do on the out-of-scans screen. The user is never stuck.

Related

Sources

  • .context/designs/mobile/scan/unverified.html

Every project of mine is written down like this.

Read the résumé