A prototype is only useful if you can tell what is real. This is the honest version: the problem, what we changed, what actually works, what is simulated, and how it could run at scale.
Anyone buying or selling a second-hand vehicle in India — roughly one in every two vehicle sales. The buyer is usually spending several months of income on a machine whose history they cannot see, guided by a seller who has every reason to leave things out.
The public lookup returns about ten fields with the owner's name masked, and it is capped at three lookups a day. Loan status is a bare yes/no with no bank named. There is no ownership count, no accident history, no challan history.
Form 29/30 on Vahan, Form 35 for the loan, a separate ePayment app, a separate slot-booking app. Each has its own design, its own login model, and its own captcha.
Every journey restarts at a state dropdown and is tracked only by an application number you must not lose. Your applications, payments and documents are never in one place. The four logins on the portal's own menu are all for staff and dealers.
Form 35 decides whether a bank still owns a claim on your car, but nowhere in the flow does anything explain that in plain words, in your language.
Every claim above comes from reading the live public pages of parivahan.gov.in and its portals, plus MoRTH notifications and the National Transport Repository data-sharing policy. No government system was accessed, tested or scraped.
Replaces four staff logins, per-portal accounts, and per-application number lookups. Your vehicles, applications, payments and receipts live in one garage.
Ownership timeline, the financier's actual name, challans, accident flag and a fair-price band — the things that decide whether to buy. Consent is what makes it lawful to show more than the masked public view.
Form 35 is detected and bundled automatically when a loan is live, so a buyer cannot accidentally pay for a car the bank still has a claim on.
Answers 'what is Form 35?' in Hindi, Gujarati or English, in four sentences, at the moment the question occurs.
112, cashless golden-hour treatment worth ₹1.5 lakh, and Good Samaritan protections — all real 2025 entitlements that appear nowhere in the current citizen interface.
The unlock is modelled on the consent framework in MoRTH's own National Transport Repository data-sharing policy: the current owner authorises the release, the buyer sees the fuller record, and the release is logged. No page of any government site was scraped to build this; the research behind it used public pages read by hand.
Vahan and Sarathi stay the source of truth. This is a citizen-facing read-and-submit layer over consented APIs, so nothing here has to be reconciled with the RTO's records later.
A small report fee funds the consent infrastructure and gives buyers a lawful alternative to the private data resellers who exist precisely because the official record is thin.
The vehicle record — vehicles, owners and challans — lives in Postgres (Supabase), with row-level security so the public can read the vehicle record but only an admin role can write it. Signing in is not authorisation on its own: authority comes from a role row the database checks on every query. Underneath that, the app keeps the synthetic fleet as a fallback and serves it whenever the database is unset, asleep or unreachable — a free-tier project pauses when idle, and this demo has to survive a judge opening it weeks after submission. The admin panel says which source it is reading so nobody is misled. Your own applications and payments are deliberately NOT sent to the server yet: they stay in your browser, so each reviewer gets a clean sandbox instead of sharing one pile of test records. Persisting them per-citizen is the next step, and needs a real identity to attach them to.
Every dependency here has a fallback: the AI falls back to rules, the data layer falls back to local state. A public service should stay usable when a downstream system is down — which, on the current portals, it frequently is.
Mobile-first layouts, no blocking third-party scripts, and the whole interface in Hindi and Gujarati as well as English, because the citizens who lose most to this problem are not on a desktop with fast broadband.
You can walk each of these now under All services, but every one is a preview on synthetic data, not a live government service. The research behind them was walked with Gujarat selected, so every number below is a Gujarat number, and Gujarat is where they would ship first. See all services
Gujarat has 65 automated testing stations, more than any other state, out of 309 nationally — and national permits alone move ₹193 crore a year here. A commercial operator books fitness, pays MV tax and renews a permit on three separate portals today. Same account, same stage tracker, one queue.
Gujarat already runs about 28 licence services contactless through Aadhaar eKYC, and its learner-licence flow is seven stages — the same shape as our transfer wizard. The gap is the front end: a captcha stands between a citizen and merely viewing slot availability. Renewals after 40 also need a Form 1A doctor, so the wizard would carry an empanelled-doctor finder.
Auction cycles run in all 40 Gujarat RTO codes and the calendar is already public, yet the portal asks for a login before it shows you a single number. Browsing first and signing in only to bid is the whole change.
Gujarat has 12 registered scrapping facilities. A vehicle that reaches the end of its life should hand its owner a Certificate of Deposit, and that certificate should turn into a discount on the next registration inside the same account — the buying journey run backwards.
Grievances are spread across four systems today, and Sarathi's asks for a mobile number, a captcha and an OTP before it will even show you the form. Every failure in a unified account should raise one ticket, visible next to the application it came from.