Product

Mastermind Stripe
Dashboard

A 12+ page enterprise admin platform that bridges Stripe payments with GoHighLevel CRM — featuring a Kanban pipeline, sponsor package builder, invoice management, and role-based permissions.

ClientMaxxed Out
TimelineOngoing
RoleFull-Stack Development
StackNext.js 16 + Drizzle + Neon

The Brief

Build a comprehensive admin dashboard that replaces spreadsheets and manual processes for managing sponsors, payments, contacts, and sales pipeline for a high-ticket mastermind event — all from one interface.

12+
Dashboard pages
<2min
To build a sponsor package
30s
Contact sync interval
11
Database tables

Every Page

12 pages, one powerful dashboard

Dashboard

KPI overview with revenue cards, recent payments, pipeline summary, upcoming payment schedule, and quick actions.

Dashboard screenshot
Total Revenue, Customers, Payment Plans, Tickets, Unread Messages
Recent Payments table with status badges
Pipeline summary by stage with opportunity counts
Upcoming payment due dates chart
Role-based card visibility (admin/sales/viewer)

Contacts

GHL contacts synced every 30 seconds with advanced filtering, search, sorting, and saved view presets.

Contacts screenshot
Real-time 30-second polling sync from GoHighLevel
Search by name, email, phone, or company
Multi-select filters: pipeline, stage, tags, value range
Saved Views — save and switch between filter presets
Contact cards with avatars, stage badges, tags, and deal values

Pipeline

Drag-and-drop Kanban board for sales opportunities with real-time GHL sync and unread message badges.

Pipeline screenshot
dnd-kit powered Kanban with smooth drag animations
Optimistic UI — instant feedback, reverts on API failure
Opportunity cards with contact info, deal value, and message count
Pipeline selector dropdown for switching between GHL pipelines
10-second notification polling for unread message badges

Payments

Complete Stripe transaction history with status tracking and customer details.

Payments screenshot
All transactions synced from Stripe
Status badges: Succeeded, Pending, Failed, Refunded, Disputed
Customer name, email, description, and Stripe ID
Paginated table with date sorting
Webhook-driven sync for real-time updates

Sponsors

Paid sponsor overview with stats cards, tier-colored badges, and drill-down detail pages.

Sponsors screenshot
Stats: Total Sponsors, Sponsor Tickets, Total Revenue, Avg Tickets
Tier-colored badges (Gold, After Hours, VIP, Content, Coffee Bar, Silver, Swag)
Sponsor cards with company, contact, amount, and ticket count
Click-through to sponsor detail pages
Empty state with prompt to create first package

Package Builder

Create and manage sponsor packages with 7 preset tiers, custom pricing, payment plans, and SMS link delivery.

Package Builder screenshot
7 preset tiers ($2.5K–$15K+) with one-click selection
Custom tier support with free-form pricing
Multi-payment plan builder with split-equally calculator
Package items editor (regular + bonus) with ticket allocation
Sticky preview sidebar with live summary
Generate link → Copy or Send via SMS to GHL contact

Payment Plans

Multi-payment sponsor package management with invoice scheduling, auto-charge, and configurable ticket timing.

Payment Plans screenshot
Invoice or Auto-charge payment methods
Configurable ticket timing: first payment or all payments
Payment schedule with date, amount, and status per installment
Progress tracking: paid vs remaining
Next payment date tracking with calendar integration

Invoices

Stripe invoice management grouped by customer with progress bars, due dates, and status tracking.

Invoices screenshot
Stats: Total, Paid, Open, and Overdue invoice counts
Customers grouped with progress bars (paid vs total)
Next due date and total amount per customer
Drill-down to customer invoice detail pages
Hosted invoice URL and PDF download links

Tickets

Ticket allocation tracking across all sponsor packages with type breakdown.

Tickets screenshot
Elite, VIP, and Gold ticket type tracking
Linked to sponsor packages and payment plans
Conditional issuance based on payment completion
Visual ticket type indicators

Webhooks

Full audit trail of every Stripe and GHL webhook event with processing status and error logs.

Webhooks screenshot
Event type, source (Stripe/GHL), and timestamp
Processing status: processed, pending, or failed
Error message capture for debugging
Linked to customer, payment, and invoice records
Full JSON payload storage for replay

Settings

Configuration panel with profile management, sync controls, API status, and Vercel Blob image uploads.

Settings screenshot
Profile editing with Vercel Blob image uploads
Manual Stripe sync trigger
API connection status for Stripe and GHL
GHL location and pipeline configuration

Admin Permissions

Granular permission management with per-user overrides across 14 page routes and 11 dashboard cards.

Admin Permissions screenshot
Role-based defaults: admin, sales, viewer
Per-user permission grants and revocations
14 page-level permissions
11 dashboard card-level permissions
Visual toggle interface for each user

Better Than GHL

Real-time notification engine

A custom-built alerting system that detects when leads reply via SMS or email and instantly notifies the right team member — something GoHighLevel's native notifications can't do well.

Lead Replies
SMS or email detected
GHL Webhook
Fires to dashboard API
User Matching
Finds assigned rep + admins
Notification Created
Per-user isolated records
Instant Alert
Toast + badge + bell dropdown

How it works

SMS & Email Detection
GHL webhook fires when a lead replies. The system detects message type (SMS code 1–2, email code 3) and extracts a 200-character preview.
Smart User Matching
Looks up the lead's assigned rep in GHL, matches to a dashboard user by email or GHL User ID. All admins are always notified too.
Per-User Isolation
Each notification is scoped to a specific user. Sales reps only see their leads. Admins see everything. No cross-user data leakage.
5-Second Polling
Client-side provider polls every 5 seconds. New notifications appear as toast popups, bell badge counts, and unread indicators on pipeline cards.
Conversation History
Click any notification to jump to the customer page with full SMS/email conversation history, auto-refreshing every 7 seconds.

Why it's better than GHL

This Dashboard
Per-user notification isolation
GHL Native
GHL shows all notifications to all users in the location
This Dashboard
Admins see every lead's replies automatically
GHL Native
GHL requires manually checking each conversation
This Dashboard
Toast popups + bell dropdown + badge counts + dashboard card
GHL Native
GHL has a single notification panel
This Dashboard
Click notification → full conversation with reply composer
GHL Native
GHL routes to its own conversation view, not your tools
This Dashboard
Pipeline cards show unread count per opportunity
GHL Native
GHL pipeline has no message indicators
This Dashboard
Notifications stored in your database for audit
GHL Native
GHL notifications disappear after being read
This Dashboard
5-second polling — near-instant delivery
GHL Native
GHL notifications can be delayed or missed

Four layers of alerting

Every reply surfaces in multiple places so nothing gets missed.

Toast Popups

Slide-in notifications at the top of the screen. Max 3 at a time, auto-dismiss after 4 seconds. Only shows once per session.

Bell Dropdown

Header bell icon with red badge count (9+ overflow). Dropdown shows last 10 notifications with message previews and timestamps.

Pipeline Badges

Red unread count badges on Kanban opportunity cards. 10-second polling keeps counts fresh without page reload.

Dashboard Card

Unread Messages widget groups conversations by contact. Shows top 5 contacts with latest message preview and count.

Workflows

How it all connects

Sponsor Package Flow

1Select tier or create custom package
2Configure payment plan + ticket allocation
3Generate short link via API
4Send link via SMS to GHL contact
5Sponsor checks out through Stripe
6Tickets issued based on payment config

Pipeline Management

1Contacts sync from GHL every 30 seconds
2View all contacts with filters and saved views
3Click contact to see full detail + conversation
4Drag opportunity between Kanban stages
5Stage change syncs to GHL API instantly
6Unread message badges update via polling

Payment Sync

1Stripe webhook fires on payment event
2Event stored in webhook_events audit table
3Customer, payment, and invoice records synced
4Dedup logic prevents duplicate processing
5Dashboard updates in real-time
6Full payload stored for debugging and replay

Sponsor Tiers

7 preset tiers with configurable pricing, package items, ticket allocations, and payment plan support. Plus a fully custom tier for one-off negotiations.

Gold
$10K–$15K
After Hours
$10K–$15K
VIP Lounge
$7.5K–$12.5K
Content
$7,500
Coffee Bar
$5K–$7.5K
Silver
$5K–$7.5K
Swag Bag
$2.5K–$5K
Custom
Any price

Database

11 tables in Neon PostgreSQL

//
dashboard_users
Admin accounts with roles
//
dashboard_user_permissions
Granular permission overrides
//
dashboard_customers
Synced Stripe customers
//
dashboard_payments
Transaction records
//
dashboard_payment_plans
Multi-payment schedules
//
dashboard_invoices
Stripe invoice sync
//
dashboard_sponsor_packages
Generated sponsor links
//
dashboard_pipeline_stages
Kanban stage config
//
dashboard_opportunities
Sales deals
//
dashboard_notifications
Real-time alerts
//
dashboard_webhook_events
Webhook audit trail

Technology

Next.js 16React 19TypeScriptDrizzle ORMNeon PostgreSQLStripe APIGoHighLevel APINextAuth.jsRechartsdnd-kitRadix UITailwind CSSVercelVercel Blob

Standout Features

Built for real teams

Drag & Drop Kanban

dnd-kit powered pipeline with optimistic UI. Drag cards between stages, updates GHL instantly, reverts on failure.

Saved Filter Views

Create, name, and switch between custom filter presets. Set a default view that loads automatically.

Real-time Notifications

Unread message badges on pipeline cards. 10-second polling keeps the team aware without refreshing.

SMS Link Delivery

Generate a sponsor package link and send it directly via SMS through GoHighLevel — all from the dashboard.

Granular Permissions

Admin, sales, and viewer roles with per-user overrides. Control access to every page and every dashboard card.

Webhook Audit Trail

Every Stripe and GHL event stored with status, error logs, and full payloads. Debug issues without guessing.

The Challenge

  • 01Replace spreadsheets and manual tracking for a multi-person sales team
  • 02Sync contacts and opportunities across GHL and Stripe in real-time
  • 03Support flexible sponsor packages from $2,500 to $15,000+
  • 04Handle multi-payment plans with invoice or auto-charge options
  • 05Give the sales team a pipeline view without leaving the dashboard
  • 06Ensure different team members only see what they need

The Solution

  • 0112+ page Next.js dashboard with real-time data and intuitive navigation
  • 0230-second contact polling + webhook event processing with dedup logic
  • 03Package builder with 7 preset tiers, custom pricing, and live preview
  • 04Payment plan engine with configurable schedules and ticket timing
  • 05dnd-kit Kanban board with optimistic updates and GHL stage sync
  • 06NextAuth.js with role defaults + per-user permission overrides

Need a CustomDashboard?

Let's build an admin platform tailored to your business workflows.

Available for new projects
Typically responds within 24 hours