RentOne Platform Documentation
Overview
RentOne is a multi-tenant rental commerce platform built for businesses that offer furniture, appliances, electronics, fitness equipment, and other products on a rental basis. Customers interact through web and mobile applications, while tenant administrators manage their operations through a dedicated admin console.
The platform is built on a microservices architecture using Spring Boot and Spring Cloud, with each tenant operating in complete isolation — separate databases, separate authentication contexts, and independent data access. Core capabilities include tenant onboarding, customer and inventory management, order lifecycle tracking, payment processing, maintenance operations, push and SMS notifications, and customer feedback management.
Technology Stack
| Component | Technology |
|---|---|
| Backend | Spring Boot |
| Architecture | Microservices |
| API Gateway | Spring Cloud Gateway |
| Service Discovery | Eureka |
| Database | MongoDB 7 |
| Reverse Proxy | Nginx |
| Service Manager | systemd |
| CI/CD | Jenkins |
| Authentication | JWT |
| Hosting | Akamai Linode |
| SMS | MSG91 |
| Push Notifications | Firebase Cloud Messaging |
| Maps | Google Maps API |
| Frontend Web | React |
| Admin Panel | React + Vite |
| Mobile App(s) | React Native |
Domains
| Service | URL |
|---|---|
| Customer Website | https://rentone.co.in |
| Admin Console | https://console.admin.rentone.co.in |
| Backend APIs | https://cloud.rentone.co.in |
| Jenkins | https://jenkins.rentone.co.in |
| CDN | https://cdn.rentone.co.in |
Multi-Tenant Architecture
The platform supports multiple tenants through the request header:
X-Tenant-Header
Current tenants:
| Tenant | Purpose |
|---|---|
RENTONE |
Production |
DEVMINDS |
Testing |
Microservices
| Service | Port | Description |
|---|---|---|
| Service Registry | 6001 | Eureka-based service discovery. All microservices register here on startup and use it to locate each other by name. |
| API Gateway | 6002 | Single entry point for all client traffic. Handles JWT validation, tenant resolution, rate limiting, CORS, security headers, and routes requests to the correct downstream service. |
| Tenants Service | 6003 | Manages tenant registration, tenant administrator accounts, authentication, and JWT issuance. Resolves the per-tenant MongoDB connection string used by all other services. |
| Cloud App Service | 6004 | Platform configuration service. Provides default Access Control Group (ACG) permission maps by user type, invoice templates, delivery zone management, and Google Maps integration for address and geocoding operations. |
| Users Service | 6005 | Manages end-user (customer) accounts, KYC verification, and user authentication via OTP (MSG91). Issues JWTs for mobile and web customers. |
| Product Catalog Service | 6006 | Manages the full product catalog including categories, products, variants, rental packages, and variant-level statistics. |
| Inventory System | 6007 | Tracks physical inventory units across warehouses. Manages stock levels, item conditions, warehouse locations, and all inventory movement transactions. |
| Commerce Service | 6008 | Handles the customer purchase lifecycle — shopping cart, order drafting, order placement, delivery assignment, wishlists, address management, and invoice generation. |
| Payment Gateway Service | 6009 | Integrates with Razorpay for payment initiation, verification, and webhook processing. Credentials are injected via systemd environment variables and never stored in source code. |
| File Management Service | 6010 | Handles file uploads and serves static assets. Files are stored on the server and delivered through the CDN domain cdn.rentone.co.in. |
| Notification Service | 6011 | Centralised notification hub. Handles Firebase push notifications, device token management, in-app notifications, and production error reporting to Slack. |
| Commerce Feedback Service | 6012 | Manages post-rental customer feedback including product reviews and issue category classification. |
| Operation Service | 6013 | Handles post-delivery operations including return requests, maintenance requests, delivery partner management, and partner task assignment. |
Documentation Structure
- Architecture
- Infrastructure
- Services
- Deployment
- Operations Runbook