I often take bikes from local rental shops and see that most of them don't have any accounting system at all. Sometimes it's a paper journal or a spreadsheet, filled from memory at the end of the day or week. CRM is just chat records. There are no records of maintenance, and no track of expenses. Most owners don't have a laptop or a PC, so I used Flutter to create a user-friendly, mobile-first system to track their business and have at least some statistics to understand what is happening. Now it is only a web app, but with Flutter, native apps can be generated in one click.
I keep it simple, without fluff. Only essential information. The main working screen, Garage, allows you to filter inventory and rent out or return a bike.
Reports give an overview of what's going on - how much we got and spent.
A list of all rentals, both ongoing and historical, is accessible from its own screen.
Maintenances, Customers, and Bikes give us an overview of these entities and provide the opportunity to create new ones.
For the database and main hosting, I chose Firebase. For simplicity, since it is just a proof of concept, I used a Realtime Database. It is enough for keeping these records. Authentication is also provided by Google.