Taxi Platform: Real-Time Dispatch & Payment System
A comprehensive operational mobility platform featuring real-time matching, backend processes, payment systems, dispatch logic, and administrative tools. Developed using Python FastAPI, PostgreSQL, Redis, and an Android client. Authentication is managed through phone OTP with role-based access for clients, drivers, and admins. Driver profiles include verification, documents, images, and vehicle information with S3-compatible file storage. The ride lifecycle encompasses all statuses (created, accepted, en route, arrived, started, cancelled, completed) along with complete audit logging. Real-time matching via WebSocket allows order distribution to appropriate drivers based on document verification, vehicle classification, online status, geolocation, and distance criteria. Drivers provide estimated time of arrival (ETA) and suggested pricing, from which clients can choose a driver. Features include a strict order state machine with role-based transitions, T-Bank integration for acquiring with idempotent payments and webhook reconciliation, server-side fare calculations with versioned tariffs, PDF receipt generation with signed URLs, push notifications (Firebase), in-app alerts, WebSocket-based chat with typing indicators and message history, driver ratings and reviews with average score calculations, actual fare reconciliation with anomaly detection, and commission logic. An admin panel supports user management, ride oversight, reference data, driver management, and document moderation. Deployed on a VPS with continuous maintenance, testing, and documentation.