About TripQlub Pro (TQPro)¶
TQPro is an enterprise-grade travel and tour management SaaS platform built with Java 17. It's a full-stack B2B/B2C web application for booking tours, flights, hotels, cruises, and managing visa applications.
Key Features¶
- Visa application management with document collection
- Group tour management
- Tour/flight/hotel/cruise search & booking
- Shopping cart with multi-currency support
- Invoice generation & payment processing
- Customer & agent management
- Multi-tenant B2B/B2C portals
Technology Stack¶
Backend:¶
- Java 17 (primary language)
- Jersey 3.1.6 (JAX-RS REST framework)
- Jetty 12 (embedded HTTP server)
- Hibernate 6.5 (ORM)
- PostgreSQL (database)
- Hazelcast 4.2.4 (distributed caching)
Frontend:¶
- HTML5, JavaScript (jQuery), CSS3
- Bootstrap 5 framework
- Custom modules for admin/agent interfaces
Build & Deployment:¶
- Gradle 8.10 (build automation)
- Docker (containerization)
- TeamCity CI/CD
- Nginx/Apache (reverse proxy)
Architecture Highlights¶
- Plugin-Based Architecture: Extensible design with multiple provider integrations
- Multi-Module Gradle Project with 6 modules:
- tqcommon - Core framework & utilities
- tqapp - Business logic & data models
- tqapi - REST API server (main entry point)
- tqodoo - Odoo ERP integration
- tqryb2b - Rayna B2B tour provider integration
- tqamds - Amadeus flight provider integration
- Service Factory Pattern: Dynamic service instantiation
- RESTful API: 100+ endpoints across 20+ API classes
- Security: JWT authentication, OAuth2/Keycloak, role-based access control
Third-Party Integrations¶
- Amadeus: Global flight distribution system (150+ auto-generated models)
- Rayna B2B: Tour provider integration
- NTS: Ticketing/booking system
- Odoo: ERP/CRM for customer & invoice management
- Twilio: SMS notifications
- Telr: Payment gateway
- AWS S3: Document storage