πŸ”

Internal Document

Enter access code to continue

Internal Estimation Document Β· Confidential
Cab Platform
Build Estimation & Budget
Complete hour-by-hour breakdown of what Ridy base app covers, what needs custom work, and the full budget β€” using 2 devs at β‚Ή1,000/hr working in parallel.
Base App
Ridy Β· CodeCanyon
Base App Cost
β‚Ή33,500
Total Dev Hours
310–340 hrs
Total Budget
β‚Ή3.2L – β‚Ή3.8L
Timeline
5–6 Weeks
Executive Summary

Budget & Hours at a Glance

All figures use β‚Ή1,000/hr flat rate. Both devs work in parallel β€” Flutter dev handles apps, Node.js dev handles backend.

Flutter Dev (Rider + Driver Apps)
130–145
Hours total
β‚Ή1,30,000 – β‚Ή1,45,000
Node.js Dev (Backend + Admin)
165–185
Hours total
β‚Ή1,65,000 – β‚Ή1,85,000
Both Devs Together
20–22
Hours shared (QA + integration)
β‚Ή20,000 – β‚Ή22,000
Ridy Base App Purchase
β‚Ή33,500
One-time, CodeCanyon
Full source code included
Total Dev Cost (hours only)
β‚Ή3.15L–₹3.52L
315–352 hrs Γ— β‚Ή1,000
Excluding base app purchase
All-Inclusive Grand Total
β‚Ή3.5L
Midpoint estimate
Range: β‚Ή3.2L – β‚Ή3.8L

AI tools cost covered by devs' company β€” not included in this budget. Client pays only dev hours + base app.

Client pays separately (not in this budget): Google Maps API, Razorpay fees, MSG91 SMS credits, cloud hosting, Apple/Play Store accounts.

Ridy Base App

What Ridy Includes Out of the Box

Purchased from CodeCanyon at $399 (β‚Ή33,500). Full NestJS + Flutter + React Admin source code. Stack: Flutter 3.29 + NestJS (TypeScript) + PostgreSQL + GraphQL + WebSockets + Docker.

Stack confirmation: Flutter 3.29 (Android + iOS) Β· NestJS microservices (TypeScript) Β· PostgreSQL Β· GraphQL API (not REST) Β· graphql-ws subscriptions for real-time Β· Docker one-command deploy Β· 22 payment gateways Β· 8 SMS providers Β· 5 map providers incl. MapMyIndia

πŸ“¦

Ridy β€” What's Already Built

Features confirmed from official documentation at docs.bettersuite.io

FeatureStatus in RidyNotes
Rider (Customer) App
Multi-step booking wizard (pickup/drop)βœ“ IncludedElegant UX, map-based
Real-time driver tracking on mapβœ“ IncludedGraphQL subscriptions + WebSocket
Multiple service types (Economy, Premium, SUV)βœ“ IncludedConfigurable in admin
In-app wallet + top-up + online paymentβœ“ Included22 gateways β€” Razorpay likely included
In-app chat (rider ↔ driver)βœ“ IncludedDirect messaging
In-app call to driverβœ“ IncludedVoIP or native call
Trip history + fare estimatesβœ“ IncludedWith live pricing display
Coupons + promo codesβœ“ IncludedAdmin-configured
Gift cards / creditsβœ“ IncludedSend + redeem
Ratings & reviews post-tripβœ“ IncludedBoth sides rate
Push notificationsβœ“ IncludedFirebase FCM
SMS OTP loginβœ“ Included8 SMS providers β€” MSG91 likely included
Cash + Card + Wallet payment modesβœ“ IncludedAll three modes
Driver App
Online / Offline toggleβœ“ IncludedWith availability control
Ride request accept / declineβœ“ IncludedPush + in-app notification
Full trip flow (pickup β†’ nav β†’ drop)βœ“ IncludedStep-by-step navigation
Earnings (daily / weekly / monthly)βœ“ IncludedFull dashboard
Wallet + payouts + transaction historyβœ“ IncludedLedger view
In-app chat + call to riderβœ“ IncludedBoth directions
Admin Panel
Live driver map + stats overviewβœ“ IncludedReact panel (beta) + Angular (stable)
Rider & driver management + KYC verificationβœ“ IncludedFull CRUD + status control
Fleet / company management + commissionβœ“ IncludedMulti-fleet support
Region-based pricing + geofencingβœ“ IncludedZone price override
Trip monitoring + advanced filteringβœ“ IncludedReal-time + historical
Coupon + campaign managementβœ“ IncludedAdmin-configured discounts
Complaints + dispute handlingβœ“ IncludedTicket-based
System announcements (driver + rider)βœ“ IncludedPush + in-app
Branding customisation (logo, colors, name)βœ“ IncludedNo-code in admin
Rider App

Custom Work β€” Rider (Customer) App

Flutter dev handles all items below. Hours are additional work on top of Ridy base.

πŸ“±

Flutter Dev β€” Rider App

UI skinning to Figma + India-specific features + missing flows

Feature / TaskHours RangeWhoNotes
UI / Figma Skinning
Onboarding + login screens (Figma skin)4–6 hrsFlutterReplace Ridy UI with Figma design
Home + map booking screen (Figma skin)8–10 hrsFlutterMost complex screen
Ride type selector UI (Economy/Premium/SUV/Outstation)4–5 hrsFlutterAdd outstation card
Live trip tracking screen (Figma skin)5–7 hrsFlutterDriver pin, ETA, status bar
Trip history + receipt screens (Figma skin)4–5 hrsFlutterIncludes GST invoice download button
Profile + settings screens (Figma skin)3–4 hrsFlutterSaved addresses, preferences
Wallet + payment screens (Figma skin)4–5 hrsFlutterUPI QR display, saved cards view
India-Specific Features (Missing from Ridy)
Dynamic UPI QR at trip end8–12 hrsFlutter + NodeRazorpay QR API Β· Flutter shows QR, Node generates it
Airport fixed-fare route cards5–8 hrsFlutter + NodePredefined routes with fixed price display
Outstation full flow (night halt, allowance, return time)18–25 hrsFlutter + NodeComplex β€” booking form, pricing display, driver schedule
GST invoice download from trip history3–4 hrsFlutterPDF viewer + download button (PDF generated on Node)
Missing Features from PRD
Trip OTP display (4-digit code on rider screen)3–4 hrsFlutterShows code, confirm when driver enters it
Multiple stops (add waypoints)6–9 hrsFlutter + NodeAdd/remove stops, re-price on add
Post-trip tip driver3–5 hrsFlutter + NodeTip screen after rating, Razorpay charge
Payment retry window (5-min after failure)3–4 hrsFlutter + NodeRetry banner, debt flag if expired
Save payment methods (Razorpay tokenisation)5–7 hrsFlutter + NodeList saved cards/UPI, default selection
In-app chat β€” Rider ↔ Support channel4–6 hrsFlutterSecond chat channel (Ridy has rider↔driver, need rider↔support)

Rider App Flutter subtotal: 91–116 hrs Β· Midpoint ~100 hrs Β· Cost range: β‚Ή91,000 – β‚Ή1,16,000

Driver App

Custom Work β€” Driver App

Flutter dev handles all UI. Some features need Node.js backend support (marked).

πŸš—

Flutter Dev β€” Driver App

UI skinning to Figma + safety features + India-specific flows

Feature / TaskHours RangeWhoNotes
UI / Figma Skinning
Driver onboarding + KYC screens (Figma skin)5–7 hrsFlutterDocument upload, selfie, status screens
Home / availability screen (Figma skin)4–6 hrsFlutterOnline toggle, earnings widget, map
Ride request popup + accept/decline (Figma skin)3–4 hrsFlutterTimer, fare, distance display
Active trip screen (Figma skin)4–6 hrsFlutterNavigation, OTP entry, trip controls
Earnings + wallet screens (Figma skin)3–4 hrsFlutterDaily/weekly/monthly breakdown
India-Specific + Safety Features (Missing from Ridy)
Trip OTP verify (driver enters 4-digit code)3–4 hrsFlutter + NodeInput field, server validation before trip starts
Auto go-offline after inactivity (configurable)3–4 hrsFlutter + NodeBackground timer, push reminder before offline
Cash collection tracker (payable-to-company balance)6–8 hrsFlutter + NodeRunning balance on home screen, settlement flow
Document expiry alerts (30/15/7 days)4–6 hrsFlutter + NodePush notification scheduler + in-app banner + block on expiry
SOS button (emergency)4–5 hrsFlutter + NodeLong press β†’ alert to admin + live location share
Driver profile edit restrictions post-activation2–3 hrsFlutter + NodeLock name/phone/email fields, show "contact support"
Outstation mode (rates, night halt, return schedule)6–8 hrsFlutter + NodeSeparate trip flow UI for outstation rides
In-app chat β€” Driver ↔ Support channel3–5 hrsFlutterSecond chat channel alongside driver↔rider

Driver App Flutter subtotal: 50–70 hrs Β· Midpoint ~60 hrs Β· Cost range: β‚Ή50,000 – β‚Ή70,000

Backend

Custom Work β€” Node.js / NestJS Backend

Node.js dev handles all items. Backend powers both apps + admin panel. GraphQL API extensions throughout.

βš™οΈ

Node.js Dev β€” Backend (NestJS + PostgreSQL)

India payments Β· fare engine Β· new modules Β· migration Β· deploy

Feature / TaskHours RangeNotes
Setup & Verification
Codebase study + architecture mapping8–10 hrsGraphQL schema, microservice boundaries, Docker setup
Verify Razorpay in 22 gateways + activate + test3–5 hrsConfig, webhook, test transactions
Verify MSG91 in 8 SMS providers + activate + test2–3 hrsOTP flow end-to-end test
Remove license validation code3–5 hrsFind call-home in NestJS source, remove, test cold start
India-Specific Payment Features
Dynamic UPI QR generation (Razorpay API)6–10 hrsGenerate per-trip QR, poll payment status, expire after 5 min
Save payment methods (Razorpay tokenisation)4–6 hrsToken vault, list/delete saved methods, charge on token
Payment retry window (5-min debt flag logic)3–4 hrsTrip completion gate, debt flag, retry API
Post-trip tip β€” backend charge + driver credit3–4 hrs100% to driver, excluded from commission calc
Fare Engine (27 Parameters)
Extended fare engine (27 params β€” surge, night, peak, tolls)15–20 hrsRidy has basic fare engine β€” extend to full 27-param spec
Airport fixed-fare backend (route + price config)4–6 hrsAdmin-configurable route table, geofence trigger
Outstation pricing logic (night halt, allowance, return)10–14 hrsMulti-day trip pricing, per-night charge, driver payout rules
New Modules
Trip OTP β€” generate, store, verify API3–5 hrs4-digit code, server-side verify before trip start mutation
Multiple stops β€” waypoint pricing API5–8 hrsSequential stops, per-stop wait time, re-price API
GST invoice PDF generator8–12 hrsPDFKit/Puppeteer, GSTIN, auto-email + download endpoint
Document expiry alert scheduler3–5 hrsCron job, 30/15/7 day push notifications, block flag
Cash collection tracker API4–6 hrsRunning balance, settlement endpoint, admin view
SOS alert backend (admin push + location)3–4 hrsEmergency alert mutation, admin notification
Support chat backend (rider↔support + driver↔support)6–8 hrsNew chat namespace/room, admin console APIs
Data migration scripts (from SaaS CSV/JSON export)12–18 hrsRiders, drivers, trip history, bookings. Range depends on export quality.
Admin Extensions
Dispatcher Panel APIs (manual booking, override, CTI)18–25 hrsBiggest custom module β€” new service + GraphQL schema
Admin 2FA (TOTP + SMS)5–7 hrsAuthenticator app + SMS fallback, mandatory for all roles
Customer dues management + booking block6–8 hrsDebt flag, block ride booking, admin override
Manual refunds (original method or wallet)5–7 hrsReason log, Razorpay refund API, wallet credit path
Driver wallet ledger (per-driver drill-down)4–6 hrsFull transaction history, export CSV
GST reports (GSTR-1 / GSTR-3B export)6–9 hrsDate-range query, CSV/Excel export in GSTN format
Referral code management (per city)4–6 hrsGenerate, assign, track usage, credit wallet on success
Multi-city independent pricing (extend Ridy zones)6–9 hrsPer-city fare tables, surge rules, service availability

Backend Node.js subtotal: 158–208 hrs Β· Midpoint ~180 hrs Β· Cost range: β‚Ή1,58,000 – β‚Ή2,08,000

Admin + Dispatcher

Admin Panel + Dispatcher Panel UI

React/Angular frontend work for new modules. Node.js dev handles these alongside backend (same dev, APIs + UI).

πŸ–₯️

Node.js Dev β€” Admin Panel + Dispatcher UI

Extending Ridy's React admin panel with new sections

UI ModuleHours RangeNotes
Dispatcher Panel (Full New Module β€” biggest UI task)
Live map view + driver pins + SOS console8–10 hrsReact + Google Maps, real-time driver positions
Manual booking form (city/rental/outstation)6–8 hrsFull booking form, fare override, assign driver
Call workflow + CTI integration UI5–7 hrsAuto-pull customer info on incoming call
Issue resolution + coupon issue + refund UI4–6 hrsPer-trip actions panel
Scheduled ride board3–4 hrsTable view of upcoming scheduled rides, assign driver
Admin Panel Extensions
Support chat console (unified rider + driver inbox)5–7 hrsAdmin-side chat UI, assign to agent, mark resolved
GST reports page (GSTR-1/3B download)3–4 hrsDate picker + download button
Driver wallet ledger page2–3 hrsTable + filter + CSV export
Customer dues page + block/unblock2–3 hrsFlag view, admin override toggle
Referral code management page2–3 hrsCreate/assign/track per city

Admin/Dispatcher UI subtotal: 40–55 hrs (included within Node.js dev total above) Β· Cost range: β‚Ή40,000 – β‚Ή55,000

Shared Work

Integration, QA & Deployment

Both devs together for final sync, testing, and production deployment.

TaskHours RangeWhoNotes
Day 1 β€” GraphQL API contract agreement3–4 hrsBothDefine all new mutations/queries before parallel work starts
Integration testing (apps ↔ backend)8–12 hrsBothEnd-to-end ride flows, payment, OTP, outstation
Bug fixes post-integration6–10 hrsBothShared buffer for cross-dev bugs
Staging deploy + client UAT support4–5 hrsNodeDocker on staging VPS, test accounts
Production deploy + SSL + domain config3–4 hrsNodeDocker prod, nginx, SSL cert
App Store + Play Store submission4–6 hrsFlutterBuild signing, metadata, screenshots, submit

Shared/QA subtotal: 28–41 hrs Β· Midpoint ~34 hrs Β· Cost range: β‚Ή28,000 – β‚Ή41,000

Timeline

Week-by-Week Delivery Plan

Both devs work in parallel from Week 1. Only 2 sync points: Day 1 (API contracts) and Week 5 (integration).

Assumption: 6–7 productive hours/day per dev. 5-day work week. 2 devs in parallel = ~12–14 combined hours/day.

1

Week 1 β€” Setup + API Contracts + Verification

Days 1–5 Β· ~55–65 combined hrs

Both devs study Ridy codebase together (Day 1–2). Define all new GraphQL mutations/queries on Day 1. Flutter dev sets up dev environment, builds, runs apps. Node.js dev: verify Razorpay + MSG91 in existing gateways, remove license validator, set up Docker local dev, study NestJS microservice structure.

Codebase studyAPI contract docLicense validator removedRazorpay verifiedMSG91 verifiedDev environment ready
2

Week 2 β€” Rider App UI + Core Backend Extensions

Days 6–10 Β· ~55–65 combined hrs

Flutter: Onboarding, home/map screen, ride type selector Figma skin. Node: Fare engine extension (27 params), Trip OTP generate/verify API, dynamic UPI QR generation API, airport fixed-fare backend.

Rider onboarding UIHome map screenFare engine extendedTrip OTP APIUPI QR APIAirport fare API
3

Week 3 β€” Rider App Complete + Outstation Backend

Days 11–15 Β· ~55–65 combined hrs

Flutter: Live trip screen, trip history/receipt, wallet/payment screens, UPI QR display, GST invoice download button, multiple stops UI, tip screen, payment retry banner. Node: Outstation pricing logic, multiple stops API, tip backend, payment retry/debt flag, save payment methods (Razorpay tokenisation).

Rider App UI completeMultiple stopsTip flowOutstation backendSaved payments
4

Week 4 β€” Driver App Complete + Admin/Dispatcher

Days 16–20 Β· ~55–65 combined hrs

Flutter: All driver app Figma screens, OTP verify input, cash tracker UI, document expiry banners, SOS button, auto-offline logic, outstation driver UI, profile edit lock. Node: Dispatcher Panel APIs, GST invoice PDF generator, document expiry scheduler, cash tracker API, SOS alert backend, support chat backend.

Driver App UI completeDispatcher APIsGST invoice PDFDoc expiry schedulerSOS backend
5

Week 5 β€” Admin UI + Data Migration + Integration Testing

Days 21–25 Β· ~55–65 combined hrs

Flutter: App Store + Play Store builds preparation. Node: Dispatcher Panel UI (React), support chat console, GST reports page, driver ledger, customer dues, referral codes, admin 2FA. Data migration scripts from SaaS export. Both devs: integration testing together.

Dispatcher Panel UIAdmin extensionsData migrationIntegration testingBug fixes
6

Week 6 β€” UAT, Staging, Production Deploy + Store Submission

Days 26–30 Β· ~30–40 combined hrs (lighter week)

Staging deploy on client's VPS, client UAT testing, bug fixes from UAT feedback. Production deploy with SSL + domain config. Play Store + App Store submission. Final handover documentation.

Staging deployClient UATProduction deployPlay Store submitApp Store submitHandover

Note on migration complexity: Timeline assumes the existing SaaS platform exports clean CSV/JSON. If export is messy or requires manual cleanup, migration can add 3–5 days. Plan for this buffer.

Budget Breakdown

Complete Budget Breakdown

All figures in INR. Dev rate β‚Ή1,000/hr flat. AI tool costs covered by devs' company β€” not billed to client.

ItemHours / QtyRateMin (β‚Ή)Max (β‚Ή)
Base App
Ridy β€” Full Source Code (CodeCanyon)1 licenseFixed33,50033,500
Flutter Dev β€” Rider App
UI Figma skinning (all screens)24–36 hrsβ‚Ή1,00024,00036,000
India-specific features (QR, airport, outstation UI)27–38 hrsβ‚Ή1,00027,00038,000
Missing PRD features (OTP, stops, tip, retry, chat)18–26 hrsβ‚Ή1,00018,00026,000
Flutter Dev β€” Driver App
UI Figma skinning (all screens)19–27 hrsβ‚Ή1,00019,00027,000
Safety + India features (OTP, SOS, cash tracker, doc expiry)21–30 hrsβ‚Ή1,00021,00030,000
App Store + Play Store submission4–6 hrsβ‚Ή1,0004,0006,000
Node.js Dev β€” Backend
Setup, verification, license validator removal16–23 hrsβ‚Ή1,00016,00023,000
India payments (UPI QR, tokenisation, retry, tip)16–24 hrsβ‚Ή1,00016,00024,000
Fare engine extension (27 params + airport + outstation)29–40 hrsβ‚Ή1,00029,00040,000
New modules (OTP, stops, GST invoice, doc expiry, SOS, chat)32–47 hrsβ‚Ή1,00032,00047,000
Admin extensions (2FA, dues, refunds, ledger, GST reports, referral)27–38 hrsβ‚Ή1,00027,00038,000
Dispatcher Panel β€” APIs + React UI44–59 hrsβ‚Ή1,00044,00059,000
Data migration scripts (SaaS export)12–18 hrsβ‚Ή1,00012,00018,000
Shared β€” Integration + QA + Deploy
API contract sync (Day 1)3–4 hrsβ‚Ή1,0003,0004,000
Integration testing + bug fixes14–22 hrsβ‚Ή1,00014,00022,000
Staging + production deploy7–9 hrsβ‚Ή1,0007,0009,000
GRAND TOTAL 315–352 dev hrs + base app β‚Ή3,46,500 β‚Ή4,06,000
Recommended Quote
β‚Ή3.5L
Flat midpoint β€” clean number to quote
Timeline
5–6 Wks
2 devs in parallel, 6–7 hrs/day each
Client Infra Budget (separate)
Not incl.
Maps, hosting, SMS, store accounts β€” client pays directly
Key Assumptions
  • βœ“ Razorpay already in Ridy's 22 gateways β€” saves ~12 hrs build time
  • βœ“ MSG91 already in Ridy's 8 SMS providers β€” saves ~6 hrs build time
  • βœ“ Devs bring their own AI tools (DeepSeek/Windsurf) β€” not billed
  • ⚠ Migration hours (12–18 hrs) assume clean CSV/JSON export from current SaaS. Messy export adds 3–5 days.
  • ⚠ GraphQL learning curve β€” if devs know GraphQL, no impact. If REST-only, add ~15–20 hrs (1.5 days) at start.
  • ⚠ Outstation is the most complex single feature β€” 18–25 hrs backend + 6–8 hrs Flutter = 24–33 hrs total

Internal Estimation Document Β· Cab Platform Rebuild Β· June 2026
Confidential β€” Not for distribution

Base App: Ridy (CodeCanyon) Β· Stack: Flutter + NestJS + PostgreSQL
Rate: β‚Ή1,000/hr Β· 2 Devs Parallel Β· 5–6 Weeks