Appearance
Seller Verification (Platform Verification) ​
Purpose: Define the user-facing flow and data model for platform-based seller verification. Audience: Product, Developer, Admin Prerequisites: Supabase schema present (profiles, seller_verifications).
Overview ​
- Goal: raise marketplace trust by verifying seller identity and ownership through platform verification.
- Status: implemented (DB + routes guarded).
- Note: This is separate from Stripe KYC verification. See Verification Systems for complete verification overview.
Data Model ​
profilesseller_verifiedboolean (default false)seller_verification_statusin (unverified,pending,approved,rejected)seller_verification_datetimestamptz
seller_verificationsid,seller_id,document_type,document_url,status(pending|approved|rejected),submitted_at,verified_at,verified_by,notes
Access & RLS (recommendation) ​
- Sellers: INSERT own requests (status
pending), SELECT own rows - Admins: SELECT/UPDATE all rows
- Trigger sync: updates
profilesfields when a row is approved/rejected
Storage ​
- Bucket:
seller-verifications - Path:
{auth.uid()}/<file> - Private with signed URLs; enforce type/size limits client-side
UI & Routing ​
/seller-verification(ProtectedRoute)/admin/seller-verifications(AdminProtectedRoute)- Gate
SellerDashboard: if not approved, show CTA to verify
Notifications ​
- On submit: notify admins + confirm to seller (in-app + email)
- On approve/reject: notify seller (in-app + email); log in
email_logs
Admin Review ​
- Table with filters by status/date/seller
- Actions: approve/reject with notes; audit fields
verified_at,verified_by
Integration with Stripe KYC ​
Platform verification works alongside Stripe KYC:
- Platform Verification: Required for listing visibility and platform trust
- Stripe KYC: Required for receiving payouts and financial transactions
- Combined Requirement: Both verifications needed for full platform access
See Verification Systems for complete integration details.
Related ​
- Verification Systems - Complete verification overview
- Stripe Integration - Stripe KYC implementation
docs/security-privacy.md(Storage & Media Security)