MageTech Lead Intelligence
MageTech Lead Intelligence
Brand: MageTech Solutions
SKU: MTS-LEAD-INTEL-001
Turn leads into revenue — faster and smarter with AI. One elegant workspace to import, enrich, score, engage and convert your leads: AI fit scoring, automated campaigns, reply detection, CRM pipeline, ABM and a grounded knowledge base — so your team sells, not scrolls.
MageTech Lead Intelligence
Turn leads into revenue — faster and smarter with AI.
What is MageTech Lead Intelligence?
One elegant workspace to import, enrich, score, engage and convert your leads. It replaces the messy stack of spreadsheets + CRM + email tools with one clean, AI-assisted workspace — validating emails, scoring leads 0–100, orchestrating campaigns and closing deals inside a single corporate-grade, multi-tenant platform.
Positioning: so your team sells, not scrolls.
Key Capabilities
Import Pipeline
5-stage wizard (upload → map → preview → duplicates → confirm). Parses xlsx/csv (≤50 MB, ≤200k rows), auto-suggests mapping, produces a complete audit trail of imported / merged / ignored / errored rows.
AI Intelligence
Per-lead 0–100 fit score with signals, risk notes, suggested angle and recommended services. LLM path (gpt-4o-mini, strict JSON) with a deterministic rule fallback so scoring always works — even without an API key.
Campaign Engine
Multi-step email campaigns with template sequences and wait days. A 60-second scheduled poll advances each active campaign's due pending leads — start, pause, resume or complete anytime.
Email & Replies
Outbound sends via a provider abstraction (SIMULATED by default). Inbound replies and open/bounce events arrive by webhook: reply → suppress sender, mark campaign/lead REPLIED, optionally auto-create an opportunity.
Knowledge Base (RAG)
Documents embedded (1536-dim, PGVector) with cosine similarity search. “Ask” retrieves top-4 docs and returns a grounded answer with sources — always traceable.
CRM & ABM
Full pipeline: opportunities with stages/value/probability, meetings, proposals with line items, events. ABM tiers target accounts with budgets and AI-ranked suggestions. Win/loss syncs back to the lead.
Technology Stack
| Layer | Technology | Notes |
|---|---|---|
| Presentation | Next.js 16 · React 19 · TypeScript 5 (strict) | SPA on App Router (port 3000), dark corporate theme, ⌘K command palette, pure-CSS charts, 21 routes, 26+ UI primitives (shadcn/Base UI) |
| Application | Java 21 · Spring Boot 3 | REST under /api/v1 (port 8081), JWT security, RBAC in services, Flyway migrations, 24+ controllers, OpenAPI + Actuator |
| Data | PostgreSQL + PGVector | Transactional core (JPA/Hibernate), 1536-dim embeddings, JSONB analysis & step payloads, multi-tenant via organization_id |
| Security | Stateless JWT · BCrypt · RBAC | 60-min access token, 7-day refresh, 5 roles × 14 permission constants (ROLE_ + PERM_ authorities) |
| Import parsing | Apache POI + Commons CSV | xlsx/csv up to 50 MB and 200k rows per file |
| AI | OpenAI gpt-4o-mini · text-embedding-3-small | Optional; deterministic rule fallback guarantees a score without keys |
| Campaign engine | Spring @Scheduled | 60 s poll (app.campaign.poll-millis), initial delay 15 s, advances due pending enrollees |
System Architecture

Three clean tiers. The browser talks only to the Spring Boot API; the API owns all rules; PostgreSQL (with PGVector for AI search) is the single source of truth. Every record belongs to an organization (tenant).
Browser (Next.js SPA, port 3000)
│ GET /api/v1/* + Authorization: Bearer <accessToken>
▼
Spring Security filter chain (stateless, CSRF off, /auth|/webhooks public)
│ JwtAuthenticationFilter: signature + expiry + authorities (ROLE_/PERM_)
▼
@RestController → routing + DTO validation (thin controllers)
▼
Service layer → explicit permission checks + domain rules
▼
Spring Data JPA repositories, scoped by organization_id → PostgreSQL
On a 401, the frontend fetch client (lib/api.ts) transparently refreshes and retries once. The 7-step request lifecycle keeps one end-to-end round trip: browser → security → JWT → controller → service → repository → response DTO.
Business Flows
- Import pipeline: UPLOADED → PARSED → MAPPED → VALIDATED → DUPLICATE_REVIEW → CONFIRMED → COMPLETED (or FAILED / CANCELLED). Duplicate detection order: email → LinkedIn URL → company domain → company + contact.
- Lead lifecycle: IMPORTED → NEW → VALIDATED → CONTACTED → REPLIED → QUALIFIED → MEETING → PROPOSAL → NEGOTIATION → WON / LOST (ARCHIVED). Campaign send → CONTACTED; reply → REPLIED; CRM stages sync QUALIFIED / PROPOSAL / NEGOTIATION / WON / LOST back.
- Campaign pump: every 60 s scan ACTIVE campaigns → due pending enrollees (nextStepAt <= now) → send current step (SENT / FAILED / SKIPPED) → step + 1, nextStepAt = now + waitDays·86400. Missing template/email → FAILED; suppressed/empty recipient → SKIPPED.
- Reply processing: webhook / manually created reply → match outbound message → create Reply → suppress sender → CampaignLead REPLIED → Lead REPLIED → (optional) auto-create Opportunity when no open opportunity exists and auto-create flag is enabled.
- AI scoring: LLM configured → gpt-4o-mini strict JSON parse; else rules (valid email +30, website +10, employees +10, industry +10, country +10, tech +10, SEO +10, commerce tech +10) → score 0–100 → persist AiAnalysis (JSONB) → return result.
- CRM stage → lead sync: NEW 10% → — · QUALIFIED 20% → lead QUALIFIED · PROPOSAL_SENT 40% → lead PROPOSAL · NEGOTIATION 60% → lead NEGOTIATION · WON 100% → lead WON · LOST 0% → lead LOST.
Security & Multi-tenancy
- Stateless JWT (60-min access, 7-day refresh), BCrypt (strength 12) password hashing, deactivated users cannot sign in.
- RBAC enforced in services: 5 roles × 14 permission constants. Only the Owner creates/promotes Owner/Admin; no self-deactivation; the last active owner is always protected.
- Every table carries organization_id (BaseOrgEntity) — records are never shared across tenants.
- One error shape everywhere:
{ error, message, timestamp, status }; responses are DTOs, never entities.
Reference — Status Enums
| Enum | Values |
|---|---|
| LeadStatus | IMPORTED · NEW · VALIDATED · CONTACTED · REPLIED · QUALIFIED · MEETING · PROPOSAL · NEGOTIATION · WON · LOST · ARCHIVED |
| EmailStatus | UNKNOWN · VALID · INVALID · RISK · SUPPRESSED · DUPLICATE · BOUNCED · UNSUBSCRIBED |
| CampaignStatus | DRAFT · ACTIVE · PAUSED · COMPLETED |
| CampaignLeadStatus | PENDING · SENT · OPENED · REPLIED · BOUNCED · UNSUBSCRIBED · FAILED · SKIPPED |
| MessageStatus | SENT · DELIVERED · OPENED · CLICKED · BOUNCED · FAILED |
| ImportStatus | UPLOADED · PARSED · MAPPED · VALIDATED · DUPLICATE_REVIEW · CONFIRMED · COMPLETED · FAILED · CANCELLED |
| OpportunityStage | NEW · QUALIFIED · PROPOSAL_SENT · NEGOTIATION · WON · LOST |
| ProposalStatus | DRAFT · SENT · ACCEPTED · REJECTED |
| MeetingStatus | PENDING · CONFIRMED · CANCELLED · DONE |
| SuppressionSource | MANUAL · BOUNCE · COMPLAINT · UNSUBSCRIBE · IMPORT |
| AbmTier | TARGET · KEY · STRATEGIC |
| Role | OWNER · ADMIN · SALES_MANAGER · SALES_USER · VIEWER |
Roles & Permissions
| Role | Granted permissions |
|---|---|
| OWNER | All (incl. USERS_WRITE, ORG_WRITE, promotes admins) |
| ADMIN | All permissions |
| SALES_MANAGER | LEADS_R/W/D · IMPORTS_R/W · COMPANIES_R/W · SEGMENTS_R/W · USERS_READ · ORG_READ |
| SALES_USER | LEADS_R/W · IMPORTS_READ · COMPANIES_READ · SEGMENTS_R/W · USERS_READ |
| VIEWER | LEADS_READ · IMPORTS_READ · COMPANIES_READ · SEGMENTS_READ · USERS_READ · ORG_READ |
Permission constants: LEADS_READ · LEADS_WRITE · LEADS_DELETE · IMPORTS_READ · IMPORTS_WRITE · COMPANIES_READ · COMPANIES_WRITE · SEGMENTS_READ · SEGMENTS_WRITE · USERS_READ · USERS_WRITE · ORG_READ · ORG_WRITE · AUDIO_READ.
Pricing & Billing Model
Usage-aware workspace plans that bundle capacity — leads, AI analyses, enrichment and campaign contacts — rather than purely per-seat licensing. 14-day free trial (no credit card), add-ons available in three tiers for usage spikes (no forced upgrades).
| Plan | USD / INR monthly | USD / INR annual | Highlights |
|---|---|---|---|
| Starter | $49 / ₹3,999 | $39 / ₹39,990 per year | 2 users · 2.5K leads · 250 AI/mo · import + limited enrichment |
| Growth | $149 / ₹11,999 | $119 / ₹119,990 per year | 5 users · 15K leads · full AI outreach + campaigns + CRM + HubSpot sync |
| Professional | $399 / ₹31,999 | $319 / ₹319,990 per year | 15 users · 50K leads · + Salesforce, API access, ABM |
| Enterprise | Custom | Custom | SSO · dedicated tenant · SLA · custom limits |
Billing module is proposed (subscriptions + usage meter + invoices + hard/soft limit enforcement surfacing as QUOTA_EXCEEDED). Prices in INR subject to GST.
| Platform Type | Multi-tenant SaaS — Lead Data, AI Scoring & Sales Engagement |
| Version | 1.0 (V1) |
| License | Subscription SaaS (usage-aware plans) |
| Backend Runtime | Java 21 · Spring Boot 3 (REST under /api/v1, port 8081) |
| Frontend | Next.js 16 App Router · React 19.2.8 · TypeScript ^5 (strict) · Tailwind CSS v4 |
| UI Primitives | shadcn/ui + @base-ui/react · lucide-react · cmdk (⌘K palette) |
| Database | PostgreSQL + PGVector(1536) · Spring Data JPA (Hibernate) · Flyway V1–V6 · JSONB payloads |
| Multi-tenancy | organization_id on every table (BaseOrgEntity ← BaseEntity) |
| Security | Stateless JWT (60-min access, 7-day refresh) · BCrypt · RBAC enforced in services |
| Roles & Permissions | 5 roles × 14 permission constants (ROLE_ + PERM_ authorities) |
| API Reference | 80+ REST endpoints · OpenAPI / Swagger UI · Actuator |
| Import Parsing | Apache POI (xlsx) + Commons CSV · ≤50 MB · ≤200k rows |
| AI | OpenAI gpt-4o-mini (temperature 0.3, strict JSON) · text-embedding-3-small (1536-dim) · rule fallback |
| Campaign Engine | @Scheduled poll (60s, initial delay 15s) · template sequences · wait days |
| Email Delivery | Provider abstraction (SIMULATED default) · webhooks: emails, emails/open, emails/bounce |
| Integrations | HubSpot · Salesforce · SIMULATED (SPI CrmConnector) · one-click sync |
| Error Contract | { error, message, timestamp, status } · 401 auto token-refresh + retry once |
| Runtime | Backend :8081 (SERVER_PORT) · Frontend dev :3000 · Apache httpd :8080 |
| Configuration | DB_PASSWORD · JWT_SECRET (≥32 bytes) · NEXT_PUBLIC_API_URL · ai.* · app.campaign.poll-millis |
| Pricing | Starter $49 · Growth $149 · Professional $399 · Enterprise custom (+ INR local pricing & add-ons) |
Lead Intelligence — Demo Document
View the complete product documentation below.
Related Products
You May Also Like
MTS AI Commerce Assistant
MTS AI WhatsApp CRM
₹4,999.00 /mo after trial
MTS Laravel RBAC Package
Need Help Choosing?
Our team is ready to help you find the perfect solution for your business.
Get a Free Quote