---
Software Requirements Specification (SRS)
Project: VimaanSafar – Online Travel Booking System
Version: 1.0
---
1. Introduction
1.1 Purpose
The purpose of this Software Requirements Specification (SRS) is to define the functional and
non-functional requirements for VimaanSafar, an online travel booking system that allows
users to search and book flights, hotels, buses and holiday packages, apply coupons, view
offers, manage bookings, and receive customer support through web and mobile platforms.
This document will be used by:
Developers and designers (for implementation and UI/UX)
Testers (for test case design and validation)
Project managers (for planning and tracking)
Business and client stakeholders (for understanding system capabilities and limitations)
It serves as a baseline for future enhancements and integrations with other travel services or
partner platforms.
---
1.2 Scope
System Name: VimaanSafar Online Travel Booking System
Generated with [Link]
VimaanSafar is a B2C travel portal and mobile app that enables users to:
Search and book domestic and international flights
Search and book hotels
Search and book bus tickets
Browse and purchase holiday packages (domestic & international)
View and use offers/coupons
Manage existing bookings (view, cancel, print itinerary, etc.)
Receive live assistance / customer support
Make online payments through multiple payment modes
The system will support:
Web application (responsive website)
Android and iOS mobile apps
Back-office admin panel for managing content, bookings, payments, and customer support
---
1.3 Definitions, Acronyms and Abbreviations
SRS – Software Requirements Specification
OTA – Online Travel Agency
PNR – Passenger Name Record
API – Application Programming Interface
Generated with [Link]
UI – User Interface
UX – User Experience
OTP – One Time Password
FR – Functional Requirement
NFR – Non-Functional Requirement
Domain Terms:
Flight Search Engine – Module that fetches flights from GDS/airline APIs based on user
criteria
Holiday Package – Pre-designed combination of flights, hotels, transfers, sightseeing, etc. sold
at a package price
Coupon / Promo Code – Code entered by user to get discount on bookings
Live Assistance – Real-time support through call/chat/WhatsApp
---
1.4 References
VimaanSafar official website.
Travelsees Disclaimer – VimaanSafar as a brand under TRVS Travelsees India Pvt. Ltd.
IEEE Std 830-1998 – Recommended Practice for Software Requirements Specifications
PCI-DSS, RBI & card network security guidelines for payment processing
OWASP Top 10 – Web application security risks
---
Generated with [Link]
1.5 Overview
The rest of this SRS is organized as:
Section 2 – Overall Description: Product perspective, functions, users, constraints and
assumptions.
Section 3 – Specific Requirements: Detailed functional requirements.
Section 4 – External Interface Requirements: UI, hardware, software, communication.
Section 5 – Other Non-Functional Requirements: Performance, security, usability, scalability,
etc.
Section 6 – Appendices: Architecture, use cases, ER diagram, sample emails/alerts.
---
2. Overall Description
2.1 Product Perspective
VimaanSafar is an online travel booking platform operating as one of the brands under
Travelsees (TRVS Travelsees India Pvt. Ltd.).
It is a multi-tier client–server system with:
Presentation Layer:
Web portal (responsive site)
Android & iOS mobile apps (linked from the home page)
Application Layer / Backend APIs:
Flight search & booking engine
Hotel search & booking engine
Generated with [Link]
Bus booking engine
Holiday package catalog and booking
Offer / coupon engine
Booking management, user management
Payment gateway integration
Data Layer:
Relational database for users, bookings, payments, packages, coupons, destinations, etc.
The system integrates with:
Airline / GDS APIs for real-time flight availability and pricing
Hotel supplier / aggregator APIs
Bus operator / aggregator APIs
Payment gateways / banks / wallets / UPI
Email and SMS gateways, and optional WhatsApp/Push notifications
---
2.2 Product Functions
High-level functions are:
1. User Account & Authentication
Sign up, login, logout
Generated with [Link]
Social login (optional)
Profile management (name, contact, preferences)
Saved passengers, saved cards (tokenized), saved searches
2. Flight Booking
One-way, round trip search
Filter by airline, stops, time, price, cabin class
Fare rules & baggage info display
Booking creation, PNR generation, email/SMS confirmation
3. Hotel Booking
Search by city, date, guests, rooms
Filter by price range, star rating, amenities
Room selection, price breakdown, booking confirmation
4. Bus Booking
Search buses by source–destination & date
Seat layout, seat selection
Boarding & drop points selection
5. Holiday Packages
Generated with [Link]
Browse packages (Goa, Kashmir, Himachal, Kerala, Dubai, etc.)
Package details (itinerary, inclusions, exclusions, price)
Enquiry & booking flow
6. Special Offers & Coupons
View ongoing deals on flights, hotels, packages
Apply coupon code at checkout, validate and calculate discount
Social-media based offers (e.g., follow on Instagram/YouTubeto unlock coupon)
7. Booking Management (My Bookings / Find Your Booking)
View current and past bookings
Download/print e-ticket and invoice
Cancel / modify where allowed by policy
View refund status
8. Customer Support / Live Assistance
Display contact numbers and emails
Request callback / raise support ticket
Chat/WhatsApp integration (optional)
9. Admin & Back-Office
Generated with [Link]
Manage users, bookings, refunds
Manage holiday packages, offers and banners
Manage coupons, markups, convenience fees
Generate reports (sales, destinations, revenue, etc.)
---
2.3 User Characteristics
End Customers / Travelers
Age: 18–65+
Basic to moderate computer/mobile skills
Looking for quick and cheap travel bookings
Admin / Operations Staff
Travel industry knowledge
Trained for using admin panel and handling customer queries
Corporate / Agent Users (optional future scope)
Frequent travel
Need GST invoices, corporate rates
The UI must be simple, intuitive and mobile-friendly to accommodate users with low technical
expertise.
Generated with [Link]
---
2.4 Constraints
1. Must comply with Indian regulations, tax laws and GST, and payment security standards
(PCI-DSS, RBI).
2. Real-time data depends on third-party APIs (airlines, hotels, buses). Any downtime there
can affect availability.
3. Payment success/failure depends on payment gateway and banks.
4. System should be capable of supporting peak loads during sale periods and festival
seasons.
5. Legal and business constraints as defined by Travelsees for all its brands.
---
2.5 Assumptions and Dependencies
Users have a stable internet connection and a modern browser or smartphone.
Third-party APIs for flights, hotels, buses and payment gateways are available and
documented.
Airline/hotel/bus inventory and pricing logic are maintained by suppliers; VimaanSafar acts as
a booking intermediary.
Email/SMS gateways are functional for OTPs, tickets and alerts.
Business rules (refunds, markups, cancellation charges) are provided by stakeholders and can
change over time.
Generated with [Link]
---
3. Specific Requirements
3.1 Functional Requirements
FR-1: User Registration & Authentication
FR-1.1 The system shall allow users to sign up using email, mobile number and password.
FR-1.2 The system shall verify mobile/email using OTP/verification link.
FR-1.3 The system shall allow users to log in using registered email/mobile and password.
FR-1.4 The system shall provide “Forgot Password” functionality using OTP/email link.
FR-1.5 The system shall allow users to update profile details, including name, gender, date of
birth, contact number and address.
FR-1.6 The system shall maintain user session securely and auto-logout after inactivity
(configurable).
---
FR-2: Flight Search & Booking
FR-2.1 The system shall allow search for One-Way and Round Trip flights.
FR-2.2 User shall be able to input: origin, destination, departure date, optional return date,
number of adults, children, infants and cabin class.
FR-2.3 The system shall call flight supplier/GDS APIs and display a list of available flights with
airline, departure/arrival time, duration, stops and price.
FR-2.4 User shall be able to filter and sort flights by price, duration, departure time, airline and
stops.
Generated with [Link]
FR-2.5 On selecting a flight, the system shall show detailed fare rules, refundability, baggage
allowance and total fare.
FR-2.6 The system shall allow user to enter passenger details (name, gender, age, contact,
GST details if applicable).
FR-2.7 The system shall calculate total fare including basic fare, taxes, convenience fee,
markup, and discounts/coupons.
FR-2.8 After payment success, the system shall generate a booking record and store PNR
and ticket details received from supplier API.
FR-2.9 The system shall send e-ticket and invoice to the registered email and SMS
confirmation to the mobile number.
---
FR-3: Hotel Search & Booking
FR-3.1 The system shall allow hotel search by city/area, check-in and check-out dates,
number of rooms and guests.
FR-3.2 Search results shall show hotel name, star rating, location, thumbnail image, starting
price and key amenities.
FR-3.3 User shall be able to filter by price, star rating, property type, and amenities.
FR-3.4 On selecting a hotel, the system shall display room types, occupancy, cancellation
policies, inclusions (breakfast, Wi-Fi, etc.) and final price.
FR-3.5 The user shall enter guest details and proceed to payment similar to flight booking.
FR-3.6 On successful payment, booking confirmation voucher shall be generated and sent via
email/SMS.
---
FR-4: Bus Search & Booking
Generated with [Link]
FR-4.1 The system shall allow bus search by source, destination and travel date.
FR-4.2 Search results shall show operators, bus type (AC/Non-AC, sleeper/seat),
departure/arrival times, duration and fare.
FR-4.3 The system shall allow users to view seat layout and select desired seats.
FR-4.4 Boarding and dropping points shall be selectable.
FR-4.5 Ticket booking, payment and confirmation shall follow a flow similar to flights/hotels.
---
FR-5: Holiday Packages
FR-5.1 The system shall display popular packages (Goa, Kashmir, Himachal, Kerala, Dubai,
etc.) with images, starting prices and highlights.
FR-5.2 Each package page shall include detailed itinerary, inclusions/exclusions, pricing,
hotel/flight details, booking terms and cancellation rules.
FR-5.3 The system shall provide two flows:
FR-5.3.1 Enquiry (user submits contact details; sales team calls back).
FR-5.3.2 Instant Online Booking (if product supports it).
FR-5.4 The system shall record all package enquiries for follow-up in CRM/admin.
---
FR-6: Offers, Coupons and Promotions
FR-6.1 The system shall have an Offers section listing current deals (e.g., city-specific or
airline-specific discounts).
Generated with [Link]
FR-6.2 The system shall allow entry of coupon codes at checkout.
FR-6.3 Coupon validation shall check: date validity, usage limits, min/max amount, applicable
product (flight/hotel/bus/package), user eligibility, etc.
FR-6.4 On successful validation, discount shall be applied and reflected in fare summary.
FR-6.5 The system shall support promotional pop-ups (e.g., “Follow us on
Instagram/Subscribe on YouTubeto unlock your coupon code”).
---
FR-7: Booking Management (My Bookings / Find Your Booking)
FR-7.1 Logged-in users shall have a My Bookings section listing all their bookings.
FR-7.2 Non-logged-in users shall be able to use Find Your Booking using booking reference
and email/mobile.
FR-7.3 User shall be able to view booking details, download/print tickets and invoices.
FR-7.4 Where supplier rules allow, users shall be able to cancel bookings online; system shall
show applicable cancellation charges and refundable amount.
FR-7.5 Cancellation requests shall be sent to supplier APIs and status updated in database.
FR-7.6 Refund information shall be stored and made visible to support/admin.
---
FR-8: Payments
FR-8.1 The system shall integrate with one or more payment gateways (cards, net-banking,
UPI, wallets).
FR-8.2 The system shall redirect or open a secure payment page to collect payment
information.
Generated with [Link]
FR-8.3 On payment success/failure, the system shall receive callback/webhook and update
booking status accordingly.
FR-8.4 Payment transactions shall be logged with gateway reference IDs.
FR-8.5 Partial payments or pay-later options (if enabled by business) shall be handled with
appropriate status and due amount tracking.
---
FR-9: Customer Support / Live Assistance
FR-9.1 The system shall display Live Assistance contact numbers prominently (e.g.,
header/footer).
FR-9.2 Users shall be able to submit support queries via contact form (subject, message,
booking ID, attachments).
FR-9.3 The system shall assign a unique ticket ID to each support query.
FR-9.4 Admin shall be able to view, update status and respond to support tickets.
FR-9.5 Optional: integrate chat widget/WhatsApp API for live chat.
---
FR-10: Admin & Back-Office
FR-10.1 Admin login with role-based access control (Super Admin, Operations, Finance,
Content Manager, etc.).
FR-10.2 Dashboard showing summary of bookings, revenue, top routes, etc.
FR-10.3 Manage users (view, deactivate, reset password).
FR-10.4 Manage holiday packages, banners, promotional images and texts on homepage
(e.g., destination cards like Bangkok, Dubai, etc.).
Generated with [Link]
FR-10.5 Manage offers and coupon codes (create, update, deactivate).
FR-10.6 View and manage all bookings, cancellations and refunds.
FR-10.7 Manage content pages (About Us, Privacy Policy, Terms & Conditions, Disclaimer).
FR-10.8 Export reports to CSV/Excel (bookings, revenue, customer data as per policy).
---
3.2 Performance Requirements
PR-1 Search results (flights/hotels/buses) should be displayed within 3–7 seconds under
normal network conditions.
PR-2 Confirmation page after payment should be shown within 10 seconds of success
callback.
PR-3 The system should support at least 10,000 concurrent users during peak sale events.
PR-4 Home page and static pages (offers, packages) should load within 3 seconds on a
standard 4G connection.
---
3.3 Design Constraints
The system shall be developed using modern web technologies (e.g., React/Angular/Vue for
frontend; Java/.NET/[Link]/Python, etc. for backend – as decided by team).
Database shall be a relational DBMS like MySQL/PostgreSQL.
UI must be fully responsive (mobile, tablet, desktop).
Codebase should be modular and support microservices or service-oriented architecture to
scale different modules independently.
Generated with [Link]
---
3.4 Quality Attributes
Reliability: High uptime, robust error handling, retries for transient API failures.
Security: Strong authentication, input validation, secure payment, protection against OWASP
Top 10 risks.
Usability: Clean layout, minimal data entry, simple flows, clear error messages.
Maintainability: Modular design, proper documentation, logging and monitoring.
Scalability: Horizontal scaling of application and database tiers, load balancing.
---
4. External Interface Requirements
4.1 User Interfaces
4.1.1 Web UI
Header: logo, navigation links (Flights, Hotels, Bus, Packages, Offers, Find Your Booking,
Login/Sign Up, Live Assistance).
Home Section:
Flight search widget (From, To, dates, trip type, passengers, class).
Tabs or separate sections for Hotel and Bus search.
Carousel of Exciting Offers and Exclusive Deals with images.
Footer: Contact details, quick links, packages list, support links, payment logos, social media
icons.
Generated with [Link]
4.1.2 Mobile App UI
Native Android and iOS apps with:
Bottom navigation/tab bar for Home, Bookings, Offers, Support, Profile.
Simple booking widgets for flights/hotels/buses.
In-app notifications for booking updates and offers.
4.1.3 Admin Panel UI
Side navigation for modules (Bookings, Users, Packages, Offers, Coupons, Reports, CMS).
Table views with filters, search and export.
Form-based screens for adding/editing content and configuration.
---
4.2 Hardware Interfaces
Runs on standard web servers / cloud infrastructure (e.g., AWS/Azure/GCP or equivalent).
End-user devices: smartphones (Android/iOS), tablets and desktops/laptops with modern
browsers.
No special hardware required beyond servers, network devices and storage used by hosting
provider.
---
4.3 Software Interfaces
Flight / Hotel / Bus Supplier APIs – For search, availability, booking, cancellation, booking
retrieval.
Generated with [Link]
Payment Gateway APIs – For payment processing, refunds and reconciliation.
Email & SMS Gateway APIs – For OTP and transaction notifications.
Analytics Tools (e.g., Google Analytics) – For tracking usage and conversions.
CRM or Ticketing System (optional) – For managing customer support tickets.
Data formats primarily JSON over REST APIs; XML support where required by some
suppliers.
---
4.4 Communication Interfaces
All communication between frontend and backend over HTTPS only.
All external API calls to suppliers/payment gateways over secure HTTPS.
Webhooks from payment gateways and some suppliers for asynchronous updates.
Optional WebSocket channels for real-time updates (e.g., live chat).
---
5. Other Non-Functional Requirements
5.1 Security Requirements
All sensitive data in transit must use TLS/HTTPS encryption.
Passwords stored using salted, one-way hashing.
Role-based access control for admin and back-office users.
Protection against SQL injection, XSS, CSRF, brute-force login, etc.
Generated with [Link]
Card details must not be stored on VimaanSafar servers (handled by PCI-DSS compliant
gateway).
Regular backups and secure storage of database snapshots.
---
5.2 Reliability Requirements
Target system uptime: 99.5% or better.
Automatic retries for transient API failures (configurable).
Graceful handling of supplier or payment downtime with clear error messages.
Daily automated backup of databases; option for point-in-time recovery.
---
5.3 Usability Requirements
Simple, consistent design following standard UX patterns.
Key actions (Search, Book, My Bookings, Support) accessible within 1–2 clicks from home.
Support for accessibility features like larger fonts and high contrast modes.
Clear labels, tooltips and validation messages on forms.
---
5.4 Maintainability Requirements
Code should follow clean coding guidelines and layered architecture.
Configuration (API keys, markups, fees) should be externalized (config files / DB) so changes
Generated with [Link]
don’t require code deployment.
Logging and monitoring for key modules (search, booking, payment).
CI/CD pipeline for automated build, test and deployment.
---
5.5 Scalability Requirements
System should support scaling horizontally (multiple app servers behind load balancer).
Database should support partitioning or read replicas when traffic grows.
Static resources (images, JS, CSS) should be served via CDN.
---
5.6 Safety & Legal Requirements
Proper disclaimers and terms & conditions clearly visible to users (as currently done on
Travelsees sites).
Clear presentation of refund, cancellation and change policies before booking.
Appropriate message that VimaanSafar is a booking facilitator and not responsible for
airline/hotel operational issues, subject to company legal text.
---
6. Appendices
6.1 Appendix A – High Level Architecture (Conceptual)
Components:
Generated with [Link]
Web Frontend (React/Angular/Vue)
Mobile Apps (Android, iOS)
API Gateway / Backend Services (Flights, Hotels, Buses, Packages, Offers, User
Generated with [Link]