1. System Overview & Technology Stack
Travel Navigator is an enterprise-grade multi-tenant B2B & B2C enterprise resource planning (ERP) platform tailored specifically for tour operators, travel agencies, and Destination Management Companies (DMCs).
Technology Architecture
- Backend Core: PHP 8.2+ with PDO database abstractions and prepared statements.
- Database Tier: MySQL 8.0+ relational storage with 83 ACID-compliant tables and foreign key constraints.
- PDF Microservice: Node.js with Headless Puppeteer Chrome for 300 DPI vector proposal and tax invoice exports.
- Communications Microservice: Node.js Baileys WebSocket server for multi-device WhatsApp QR code pairing.
- Frontend Layer: Responsive HTML5, Vanilla CSS Design System with WCAG AA compliance, and modular JavaScript.
2. Multi-Tenancy & Workspace Scoping
Every travel agency tenant operates inside an isolated sandbox identified by a unique workspace_id. All relational queries across leads, packages, clients, suppliers, bookings, and financial invoices are strictly scoped:
SELECT * FROM leads WHERE workspace_id = :current_workspace_id AND is_deleted = 0;
Session tokens are segmented into three distinct namespaces:
-
master_admin_session: Super-Admin SaaS hub with tenant impersonation capabilities. -
PHPSESSID: Standard tenant agency workspace for directors, managers, and sales reps. -
agent_session: Dedicated B2B partner reseller portal (`/agent/`) for external wholesale agents.
3. Role-Based Access Control (RBAC) Matrix
Travel Navigator provides a granular permission matrix dividing operational authority across 5 default roles:
| Functional Domain | Admin / Director | Branch Manager | Sales Consultant | Operations Staff |
|---|---|---|---|---|
| Leads & Inquiries | Full Control | Branch View / Edit | Own Assigned Leads | Read-Only (Arrivals) |
| Tour Packages & Pricing | Full Control | Full Control | Create / Clone Quotes | View Itinerary Only |
| Supplier Net Rates | View & Edit | View & Edit | Hidden (Masked) | Hidden (Masked) |
| Daily Dispatch & Drivers | Full Control | Full Control | View Flight Status | Assign Driver & Cab |
| GST Tax Invoicing | Full Control | Generate Invoices | Deposit Receipts | No Access |
4. Omnichannel CRM & Inbound Webhooks
Leads are ingested via the Inbound Webhook Bridge located at modules/webhooks/. Supported payload providers include Meta Lead Ads, Google Performance Max forms, Webflow forms, and custom embeddable HTML lead capture widgets.
Inbound payloads are sanitized, assigned a lead temperature (Hot, Warm, Cold), linked to an UTM attribution log, and distributed via configured round-robin rules to available sales reps.
5. AI Tour Generator & Proposal Themes
The itinerary engine located at create_ai.php interfaces with OpenAI GPT-4 and Google Gemini APIs. The engine accepts destination IDs, duration (nights/days), passenger profile (adults, children, infants), and trip style.
Generated proposals are rendered dynamically into 5 distinct presentation themes or serialized via the Puppeteer microservice into 300 DPI vector PDFs.
6. B2B Wholesale Engine & Reseller Portal
The wholesale module allows DMCs to establish commercial tiers:
- Standard Tier: Base wholesale rates with standard catalog access.
- Silver Tier: 5% automated discount on hotel and fleet allocations.
- Gold Tier: 8% automated discount with approved 15-day credit settlement.
- Platinum Tier: 12% wholesale margin with priority fleet dispatch and approved credit lines up to ₹10,00,000.
7. Indian GST Invoicing & Dynamic UPI QR
The tax engine automatically calculates GST compliance under Tour Operator Services (SAC Code 998555):
// Intra-State Billing:
CGST (2.5%) = round(taxable_amount * 0.025, 2);
SGST (2.5%) = round(taxable_amount * 0.025, 2);
total_invoice = taxable_amount + CGST + SGST;
// Dynamic UPI QR String (NPCI Format):
upi://pay?pa=agency@bank&pn=AgencyName&am=TotalAmount&tr=INV-2026-001&cu=INR
8. 83-Table Database Schema Index
The platform database encompasses 83 optimized tables. Key relational clusters include:
workspaces: Tenant accounts & settingsleads&lead_notes: CRM pipeline recordstour_packages&itineraries: Day-wise toursbookings&booking_arrivals: Ground dispatch
b2b_agents&b2b_tier_rules: Reseller networkb2b_agent_ledger: Partner running balanceinvoices&invoice_payments: GST tax recordssupplier_ledger: Accounts payable for hotels & cabs