VBooking was refactored from a legacy system into a modern, decoupled modular architecture using Express.js and React. The platform handles end-to-end travel management, supporting dynamic product fields, automated itinerary pricing, supplier synchronization, and an isolated payment abstraction engine.
Dynamic Product & Package Engine
Supports Flights, Accommodations (TBO/TAG), Transfers, and Experiences under a unified schema with custom fields and automated bundle pricing.
Modular Payment Engine
Decoupled payment abstraction built with Factory and Strategy patterns supporting Tabby, Tamara, Stripe, PayTabs, NGenius, and UTAP.
Quotation & Lifecycle Tracking
Manages transition from quotation to confirmed reservation with parent-child booking relations, passenger passport tracking, and price snapshotting.
Secure Webhook Guard Pipeline
Processes asynchronous payment events using HMAC-SHA256 signature verification, IP whitelisting, and bearer token filters.
- Decoupled Express.js REST API with React frontend to separate UI rendering from core travel domain logic.
- Dynamic EERD schema utilizing JSONB column structures for flexible custom fields and historical booking data snapshotting.
- Factory & Strategy design patterns in the payment domain to normalize external provider responses into unified status states.
- Multi-Tenant Gateway Configuration (CompanyPaymentGateway) isolating sandbox and production environments per organization.
To handle multiple travel services under a single roof, the relational data model was designed to combine strict relational integrity with flexibility. The schema leverages JSONB for dynamic custom fields while enforcing strict transactional guarantees for passenger details and pricing snapshots.
To prevent external vendor lock-in and streamline local compliance, the payment module was completely isolated from booking state machine routines. Payments map to unified internal states (Pending, Authorized, Captured, Refunded) regardless of the downstream provider.
Third-party APIs such as Akbar and TBO feed directly into standardized Accommodations and Flights schemas, normalizing heterogeneous vendor payloads for rendering on the React client.
- 6Integrated Gateways
- Flights+Core Services
- B2BPayment Model
- ModularArchitecture
- Abstracting payment gateways behind Strategy patterns makes adding BNPL providers like Tabby and Tamara virtually zero-friction for core booking logic.
- Data snapshotting at point-of-sale is essential in travel systems to shield historical customer transactions from external supplier price variations.