Core User Journeys
End-to-end user flows across MASARUK platform
1. B2C User Journeys (Web + Mobile)
These journeys represent typical actions for travelers using the MASARUK platform.
1.1 Browse and Discover Trips
Actors: End User (Web + Mobile)
Related Screens: Home, Trips, Trip Details
Journey Steps:
- User opens the app or website
- Lands on 'Home' with: welcome, search bar, promo banners, company logos, recommended destinations
- User filters trips: Tourism / Umrah / All Trips
- User views trip cards: image, duration, location, old/new price, 'Book Trip' button
- User selects a trip → opens Trip Details
Business Rules:
- Displayed prices are always 'Starting from' per person
- Trip type determines filter categories (Umrah / Tourism)
1.2 View Trip Details
Trip Details Tabs: Trip Overview / Details / Daily Program
Journey Steps:
- User opens trip details
- Reads general info: duration, hotel category, trip type, status: Available
- Navigates to Details: what's included, accommodation details, transportation, rest stops, terms
- Navigates to Daily Program (Timeline): Day 1, Day 2, etc.
- User clicks 'Book Now'
1.3 Trip Booking Flow (Web + Mobile)
Screens: Booking Path (3 steps), Passenger Data Entry, Payment, Booking Confirmation
Step 1 — Contact & Traveler Info (Slice 3 SSOT)
- • Contact info (ONCE): Email, Phone, Emergency number
- • Select number of passengers
- • Fill traveler forms (fields differ by trip type — see bookings-module.md §5.2.4)
- • Optional: Special requests
- • Click 'Continue'
Step 2 — Payment
- • Select method: Credit Card/Mada, STC Pay, SADAD
- • Enter: Card number, Expiry date, CVV, Name on card
- • Click 'Pay'
Step 3 — Confirmation
- • Success screen: 'Your booking has been confirmed!'
- • Booking number
- • Amount paid
- • Payment method
- • Download payment receipt button
Business Rules:
- Document type + number required (National ID/Iqama/Passport)
- Payment required before booking confirmation
- Booking number generated on successful payment
- Email receipt is sent
1.4 Manage 'My Bookings'
Journey Steps:
- User opens 'My Bookings'
- Tabs: All Bookings / Upcoming Trips / Completed Trips
- Each card shows: Trip image, Status (Completed / Cancelled / Upcoming), Booking number, Duration
- User clicks on booking → opens details
Business Rules:
- Booking status is read-only for users
- Users cannot delete bookings
- Cancellation flow exists and follows refund policy
1.5 Booking Cancellation Flow (B2C)
Journey Steps:
- User opens 'My Bookings' and selects a booking with status Upcoming or Confirmed
- User views booking details
- User initiates cancellation request (if policy allows)
- System displays refund amount based on policy
- User confirms cancellation
- System updates: Booking status → Cancelled
Refund Policy:
90%
Before 30 days
70%
Before 15 days
50%
Before 7 days
0%
Less than 7 days
1.6 Trip Rating Flow
Screens: How was your trip?, Rate Details, Thank you
Journey Steps:
- User sees popup after trip completion
- Rates the trip overall (5 stars)
- Next screen shows detailed rating for: Program, Hotel, Bus, Driver, Rest stops
- Optional notes: 'Enter any notes'
- Final confirmation: 'Your rating has been submitted successfully'
Business Rules:
- User can only rate Completed trips
- Rating stored per category + optional general note
- Ratings appear in provider resources (Hotels, Buses, Rest stops)
2. Provider (B2B) Journeys
These journeys represent actions performed in the Provider Portal (tourism company).
2.1 Create and Manage Trips
Journey Steps:
- Provider opens 'Trips Management'
- Views list: Program name, Code, Type, Duration, Price, Status
- Adds new trip: Details, Program, Images, Accommodation, Transportation, Rest stops
- Saves → Trip becomes available in B2C apps
2.2 Manage Buses, Hotels, and Rest Stops
Journey Steps:
- Provider adds resources (Bus, Hotel, Rest stop)
- Fills detailed forms: Images, Phone, Services, Seat capacity, Rating, Location
- These resources become selectable in 'Add New Trip'
2.3 Manage Ad Campaigns
Journey Steps:
- Provider opens 'Ad Management'
- Views campaign list
- Creates new campaign: Select trip, Set budget, Choose dates, Preview ad, Complete payment
- Campaign status updates: Active / Scheduled / Paused / Ended
Warning
Tax shows as 20% in UI (documented for clarification).
Info
Note: Provider onboarding journey not observed in current UI analysis. See future-expansion-and-roadmap.md for proposed flow.
3. Admin Journeys
These journeys represent Super Admin / Admin flows.
3.1 Manage Bookings (Admin)
Journey Steps:
- Admin opens bookings table: Booking number, Customer name, Trip name, Price, Passengers, Status
- Opens details modal
- Views: Booking summary, Passenger data, Payment data
- Sends message to customer if needed
- Prints booking invoice
3.2 Financial Reports
Journey Steps:
- Opens report: Total sales, Platform commission, Total ad revenue, Net profit
- Views transactions table: Transaction number, Total amount, Platform commission, Date, Details, Net amount, Status
- Exports data: 'File exported successfully to your files'
Info
Note: Provider approval, admin user management, and refund processing journeys not fully observed in current UI analysis.
4. Authentication Journeys (Mobile + Web)
4.1 Sign Up
- User opens 'Create Account'
- Fills: Full name, Email, Phone number, Password, Confirm password
- Or signs up using Google / Facebook
4.2 Login
- Opens 'Login'
- Enters: Email or phone, Password
- Optional: 'Forgot password?'
4.3 Password Reset
- User clicks 'Forgot password?'
- System requests email or phone
- User receives OTP or reset link
- Enters new password
- Confirms and redirected to login
Warning
Some UI mockups show 'Full Name' as login field label, likely a UI inconsistency. Expected data is email or phone + password.
5. Cross-Module Interactions (Summary)
| Journey | Participating Modules |
|---|---|
| Booking | Trips, Bookings, Payments & Financials, Passengers |
| Booking Cancellation | Bookings, Payments & Financials, Notifications |
| Rating | Trips, Ratings, Hotels, Buses, Rest Stops |
| Provider Trip Creation | Trips, Hotels, Buses, Rest Stops |
| Ad Campaign | Ad Campaigns, Payments & Financials, Trips |
| Financial Reports | Payments & Financials, Bookings, Ad Campaigns |
| Authentication | Users |
6. Notes & Clarifications
- Tax discrepancy (15% vs 20%) documented and tracked in open-questions-and-assumptions.md
- Currency discrepancy (SAR vs $) documented and tracked
- Arabic UI labels preserved exactly as they appear in raw UI analysis