AD.
INITIALIZING_SYSTEM
000%
AD.
PROJECT 02Enterprise CRM / ERP · 2025

Tesca Visa Workflow CRM

An enterprise multi-role visa workflow and case management CRM featuring master university catalogs, stage-driven applicant pipelines, and automated communications.

RoleFull-Stack Architect
Timeline8 weeks
Core StackNext.js, React 19, PostgreSQL
Live Site ↗GitHub ↗
Tesca Visa Workflow CRM - Screenshot and interface preview
1000+

Courses cataloged

227

Partner universities

4×

Faster case handling

// The Objective

Problem & Context

Tesca Visa Consultancy handles hundreds of international immigration and study-abroad applications simultaneously across 12+ countries. To eliminate spreadsheet bottlenecks, missed follow-ups, and fragmented team coordination, this custom enterprise CRM was engineered to orchestrate the entire student lifecycle—from initial lead intake and counseling to university shortlisting and embassy visa filing.

The Core Bottleneck:

Coordinating multiple operational tiers (Receptionists, Senior Counselors, Head Counselors, and Visa Filing Officers) required strict Role-Based Access Control (RBAC), multi-stage state machines, real-time auditory lead notifications, and zero data leakage across sensitive student dossiers.

// The Solution

Engineering Strategy

Engineered a full-stack Next.js and PostgreSQL (Neon/Supabase) enterprise portal. Implemented a 1,000+ course & 227 partner university master catalog with Excel imports, a 5-tier RBAC system, webhook inquiry ingestion from the marketing site, automated stage-change emails via Nodemailer, and hardened session security.

Built with Next.js App Router, React 19, and Tailwind CSS. The data layer utilizes Neon serverless PostgreSQL with Supabase SSR for authenticated sessions and Row-Level Security (RLS). TanStack Query manages optimistic server-state synchronization. Automated email triggers are dispatched via server-side Nodemailer pipelines.

// Decisions

Architectural & Technical Choices

DECISION 01

Designed a unified Case State Machine (Inquiry → Counseling → Admission → Visa Filing → Outcome) preventing invalid status leaps.

DECISION 02

Built a high-capacity University & Course Master Catalog supporting 1,000+ degree programs with faceted country/IELTS filtering and bulk Excel ingestion.

DECISION 03

Implemented real-time audio chime alerts and storage listeners for instant counselor reaction to new submissions.

DECISION 04

Executed a comprehensive security audit removing hardcoded secrets, parameterizing queries, adding timing-safe OTP verification, and enforcing rate limiting.

// Problem Solving

Engineering Challenges Overcome

⚠️ Challenge: Managing massive university course catalogs with frequent updates without UI sluggishness.

✓ Solution: Implemented client-side TanStack Query pagination, indexed PostgreSQL searches, and asynchronous bulk Excel parsing with xlsx.

⚠️ Challenge: Preventing unauthorized data modification and privilege escalation among diverse staff roles.

✓ Solution: Enforced server-authoritative RBAC middleware validating session tokens and verifying permissions at every API route and database query.

// Capabilities

Shipped Product Features

University & Course Master Catalog with 1,000+ verified degree programs and 227 partner universities
Multi-role access tiers for Receptionist, Head Counselor, Senior Counselor, and Students
Real-time lead inquiry webhook pipeline connected directly to tescavisa.com
Automated status change email dispatch via Nodemailer and custom SMTP templates
Real-time audio chime notifications for newly arrived consultations
Interactive appointment timers, task follow-up scheduling, and audit logs
Technologies & Frameworks
Next.jsReact 19PostgreSQLSupabaseTanStack QueryRBACNodemailerTailwind CSS
← Previous Case StudyBodyBarrelNext Case Study →Water Reminder App