Skip to content

Add license and account UI in options (activate, manage, restore) #11

Description

@PAMulligan

Description

Add an account section to the options page where a user can activate Pro by entering their license key (or email magic link), see their current status and quota, open the Stripe customer portal to manage billing, and restore/sign out on a given device.

Why

Users need a stable, obvious home for "I paid, now unlock this install" and "manage my subscription," especially across multiple machines or after reinstalling. Putting it in options (rather than the transient side panel) gives it a permanent location and keeps billing management one click from Stripe's hosted portal.

Acceptance Criteria

  • Account section added to app/src/options/Options.tsx
  • License key activation field that calls /license/activate and stores the entitlement
  • Current status shown: tier, renewal/expiry, and remaining quota for free users
  • "Manage billing" opens the Stripe customer portal via the backend
  • "Sign out/deactivate on this device" clears the cached entitlement
  • Clear validation and error states (invalid key, expired, network error)
  • No raw card or financial data handled in the extension
  • Tests for activate, manage, and deactivate flows
  • CI passes

Resources

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions