Documentation menu

Auth & Roles

anymrkt uses NextAuth v5 with Google OAuth and credentials sign-in. Roles are stored in the Supabase profiles table, not in the JWT.

Roles

RoleDescription
buyerBrowsing and purchasing listings.
seller_pendingBrand created; onboarding in progress.
seller_activeBrand fully onboarded; can list, sell, use tools.
operatorPlatform admin via is_operator() RLS helper.

Server-side ownership checks

All seller API routes must verify ownership + role server-side. Never trust client-sent IDs.

Sending mail

Check email configuration from the admin panel, not by reading env vars. The app uses Resend for outbound email.