How pwg09/detailflow works
DetailFlow is a multi-tenant SaaS for automotive detail businesses. Owners configure a business and services, share a business-specific lead form, review submitted leads, create and share quotes, and collect customer payments; customers submit vehicle details and photos and can access quotes. The graph preserves the documented dashboard, team, analytics, billing, and AI-assessment capabilities. Source excerpts are partial, so uncertain wiring—particularly email and several dashboard endpoints—is omitted.
Main entry points: page.tsx Business dashboard · server.ts Authenticated data access · ai/route.ts AI assessment endpoint · quote/route.ts Lead submission
Components 26
Customer flow
- Business lead form
app/[businessSlug]/lead/page.tsx - Lead submission
app/api/public/quote/route.ts - Customer quote page
app/q/[token]/page.tsx
Business workspace
- Business dashboard
app/dashboard/page.tsx - Business onboarding
app/api/onboarding/business/route.ts - Business settings
app/api/dashboard/business/route.ts - Service management
app/api/dashboard/services/route.ts - Lead management
app/api/dashboard/leads/route.ts - Team management
app/api/dashboard/team/route.ts - Analytics
app/api/dashboard/analytics/route.ts - AI assessment endpoint
app/api/dashboard/ai/route.ts
Quotes and payments
- Quote access and checkout
app/api/public/quote-access/[token]/route.ts - Quote management
app/api/dashboard/quotes/route.ts - Subscription billing
app/api/dashboard/billing/route.ts - Stripe Connect
app/api/dashboard/billing/connect/route.ts - Stripe webhook
app/api/stripe/webhook/route.ts - Stripe
Application services
- Authenticated data access
lib/supabase/server.ts - Admin data access
lib/supabase/admin.ts - Vehicle assessment
lib/ai.ts - Rate limiting and security
lib/security.ts - Supabase database
- Vehicle photo storage
Other components
- Customer
- Business owner
- NVIDIA AI API
Connections 46
- Customer → Business lead form: opens link
- Business lead form → Lead submission: submits request
- Lead submission → Rate limiting and security: rate limits
- Lead submission → Authenticated data access: uses
- Lead submission → Supabase database: reads services; saves lead
- Lead submission → Vehicle photo storage: uploads photos
- Lead submission → Vehicle assessment: assesses photos
- Vehicle assessment → NVIDIA AI API: requests assessment
- Business owner → Business dashboard: manages business
- Business dashboard → Business onboarding: starts setup
- Business dashboard → Business settings: configures profile
- Business dashboard → Service management: manages services
- Business dashboard → Lead management: reviews leads
- Business dashboard → Team management: manages team
- Business dashboard → Analytics: views analytics
- Business dashboard → Quote management: manages quotes
- Business dashboard → Subscription billing: manages subscription
- Business dashboard → Stripe Connect: sets up payouts
- Business dashboard → AI assessment endpoint: requests assessment
- Business onboarding → Authenticated data access: uses
- Business onboarding → Supabase database: creates business and service
- Business settings → Authenticated data access: uses
- Service management → Authenticated data access: uses
- Lead management → Authenticated data access: uses
- Team management → Authenticated data access: uses
- Analytics → Authenticated data access: uses
- Quote management → Authenticated data access: uses
- Quote management → Supabase database: reads lead; saves quote
- Subscription billing → Authenticated data access: uses
- Subscription billing → Stripe: manages billing
- Stripe Connect → Authenticated data access: uses
- Stripe Connect → Stripe: manages connected account
- AI assessment endpoint → Authenticated data access: authenticates user
- AI assessment endpoint → Admin data access: loads lead photos
- AI assessment endpoint → Rate limiting and security: rate limits
- AI assessment endpoint → Vehicle assessment: assesses photos
- AI assessment endpoint → Vehicle photo storage: downloads photos
- AI assessment endpoint → Supabase database: reads and updates lead
- Vehicle assessment → Supabase database: assessment data
- Customer → Customer quote page: opens quote
- Customer quote page → Quote access and checkout: accesses quote
- Quote access and checkout → Admin data access: uses
- Quote access and checkout → Stripe: creates payment checkout
- Stripe → Stripe webhook: sends events
- Stripe webhook → Supabase database: records payment and subscription
- Stripe webhook → Stripe: verifies event