# BharathTrucks — User Stories & Epics **Version:** 1.0 **Date:** 2026-05-31 --- ## Epic 1: Authentication & Onboarding | ID | Story | Role | Priority | |----|-------|------|----------| | AUTH-1 | As a user, I can register with my phone number and OTP so I don't need to remember passwords | All | P0 | | AUTH-2 | As a user, I can select my role (Driver/Shipper/Broker) during registration | All | P0 | | AUTH-3 | As a driver, I can complete my profile with truck details, license, and routes | Driver | P0 | | AUTH-4 | As a shipper, I can complete my profile with business name, GST, and shipping frequency | Shipper | P0 | | AUTH-5 | As a broker, I can complete my profile with experience, network size, and operating regions | Broker | P0 | | AUTH-6 | As a user, I can log in with phone + OTP on any device | All | P0 | | AUTH-7 | As a user, I can switch language (Hindi/English) during onboarding | All | P1 | | AUTH-8 | As a user, I see a role-appropriate dashboard after login | All | P0 | --- ## Epic 2: Load Board (Marketplace) | ID | Story | Role | Priority | |----|-------|------|----------| | LOAD-1 | As a shipper, I can post a load with origin, destination, weight, truck type, and budget | Shipper | P0 | | LOAD-2 | As a driver, I can browse available loads filtered by route, truck type, and date | Driver | P0 | | LOAD-3 | As a driver, I can view load details including shipper rating and payment terms | Driver | P0 | | LOAD-4 | As a broker, I can post loads on behalf of my shipper clients | Broker | P0 | | LOAD-5 | As a shipper, I can edit or cancel my posted load before bids are accepted | Shipper | P1 | | LOAD-6 | As a user, I can search loads by city name or pincode | All | P1 | | LOAD-7 | As a driver, I can save/bookmark loads to bid on later | Driver | P2 | | LOAD-8 | As a user, I can see load count and recent activity on the board | All | P1 | | LOAD-9 | As a shipper, I can mark a load as urgent for higher visibility | Shipper | P2 | --- ## Epic 3: Bidding System | ID | Story | Role | Priority | |----|-------|------|----------| | BID-1 | As a driver, I can submit a bid with my price and estimated delivery time | Driver | P0 | | BID-2 | As a shipper, I can view all bids on my load sorted by price/rating | Shipper | P0 | | BID-3 | As a shipper, I can accept a bid and confirm booking | Shipper | P0 | | BID-4 | As a shipper, I can reject bids with optional reason | Shipper | P1 | | BID-5 | As a driver, I get notified when my bid is accepted/rejected | Driver | P0 | | BID-6 | As a shipper, I can counter-offer a bid with a different price | Shipper | P2 | | BID-7 | As a driver, I can see my bid history and success rate | Driver | P1 | | BID-8 | As a free user, I can place up to 5 bids per day | Driver | P0 | --- ## Epic 4: Driver Dashboard & Tools | ID | Story | Role | Priority | |----|-------|------|----------| | DRV-1 | As a driver, I can see personalized load recommendations based on my location and truck type | Driver | P1 | | DRV-2 | As a driver, I can view my active trips and their status | Driver | P0 | | DRV-3 | As a driver, I can mark trip milestones (picked up, in transit, delivered) | Driver | P0 | | DRV-4 | As a driver, I can view my earnings summary (weekly/monthly) | Driver | P1 | | DRV-5 | As a driver, I can manage my documents (license, RC, insurance) | Driver | P1 | | DRV-6 | As a driver, I can update my availability status | Driver | P1 | --- ## Epic 5: Shipper Dashboard & Tools | ID | Story | Role | Priority | |----|-------|------|----------| | SHP-1 | As a shipper, I can see all my posted loads and their bid status | Shipper | P0 | | SHP-2 | As a shipper, I can track active shipments with status updates | Shipper | P0 | | SHP-3 | As a shipper, I can view payment history and pending amounts | Shipper | P1 | | SHP-4 | As a shipper, I can rate and review drivers after delivery | Shipper | P1 | | SHP-5 | As a shipper, I can save preferred drivers for future loads | Shipper | P2 | | SHP-6 | As a shipper, I can re-post a previous load with one click | Shipper | P2 | --- ## Epic 6: Broker Dashboard & CRM | ID | Story | Role | Priority | |----|-------|------|----------| | BRK-1 | As a broker, I can manage my driver network (add, view, contact) | Broker | P0 | | BRK-2 | As a broker, I can manage my shipper clients | Broker | P0 | | BRK-3 | As a broker, I can track commissions per load with proof | Broker | P0 | | BRK-4 | As a broker, I can quick-post loads using templates | Broker | P1 | | BRK-5 | As a broker, I can see which drivers are available and where | Broker | P1 | | BRK-6 | As a broker, I can share load details via WhatsApp to my network | Broker | P1 | | BRK-7 | As a broker, I can view my monthly earnings report | Broker | P1 | --- ## Epic 7: Communication & Notifications | ID | Story | Role | Priority | |----|-------|------|----------| | COM-1 | As a user, I can message another user about a specific load | All | P0 | | COM-2 | As a user, I receive push notifications for bid updates | All | P0 | | COM-3 | As a user, I can share load details via WhatsApp | All | P1 | | COM-4 | As a user, I receive SMS notifications for critical updates (bid accepted) | All | P2 | --- ## Epic 8: Payments & Ledger | ID | Story | Role | Priority | |----|-------|------|----------| | PAY-1 | As a shipper, I can generate a UPI payment link for the driver | Shipper | P1 | | PAY-2 | As a driver, I can mark payment as received | Driver | P1 | | PAY-3 | As a user, I can view my transaction ledger | All | P1 | | PAY-4 | As a broker, I can record commission received per transaction | Broker | P1 | --- ## Epic 9: Marketing Website | ID | Story | Role | Priority | |----|-------|------|----------| | WEB-1 | As a visitor, I can understand what BharathTrucks does from the landing page | Visitor | P0 | | WEB-2 | As a visitor, I can see trust signals (user count, loads moved) | Visitor | P0 | | WEB-3 | As a visitor, I can register directly from the landing page | Visitor | P0 | | WEB-4 | As a visitor, I can view the load board without registering (read-only) | Visitor | P1 | --- ## Epic 10: Admin Panel | ID | Story | Role | Priority | |----|-------|------|----------| | ADM-1 | As an admin, I can view all users and their roles | Admin | P0 | | ADM-2 | As an admin, I can view platform metrics (users, loads, bids) | Admin | P0 | | ADM-3 | As an admin, I can suspend/ban users | Admin | P1 | | ADM-4 | As an admin, I can manage feature flags (free/premium) | Admin | P1 | | ADM-5 | As an admin, I can broadcast announcements to all users | Admin | P2 | --- ## Priority Legend | Priority | Meaning | Sprint Target | |----------|---------|---------------| | P0 | Must have for launch | Sprint 1-2 | | P1 | Important, needed soon after launch | Sprint 3-4 | | P2 | Nice to have, can wait | Sprint 5+ | --- ## MVP Scope Summary **Launch with:** AUTH (all), LOAD (1-4), BID (1-5, 8), DRV (2-3), SHP (1-2), BRK (1-3), COM (1-2), WEB (1-3), ADM (1-2) **Total MVP stories:** ~30 stories across 10 epics --- *Stories will be refined and estimated during sprint planning.*