Tenancy management software

Tenancy management software

Itransition developed a subscription service for web and mobile allowing tenants to rent property without paying an upfront deposit while also guaranteeing financial protection for landlords.

Context

The customer, Hamilton Fraser, is a UK-based company that has been providing solutions for property and medical indemnity sectors for more than two decades. One of their key products is a government-authorized tenancy deposit protection solution for landlords, agents, and tenants, which is used by 150,000+ landlords and agents and has successfully protected 1.5+ million deposits.

Aiming to grow their market share, the customer considered offering an alternative to traditional tenancy deposit management solutions. They had an idea for a subscription-based service that would allow tenants to rent property and pay a fixed monthly fee instead of a large upfront deposit. The non-refundable fee would correspond to one-hundredth of the traditional deposit. 

The customer wanted to build both web and mobile applications for the new service and allow landlords and real estate agencies to seamlessly integrate their systems with them. The customer has already partnered with Itransition for the development of their unified tenancy deposit solution and was well-acquainted with our expertise in custom software development, so they entrusted this project to us. Our team was responsible for full-cycle web and mobile application development, including business analysis, UX/UI design, development, testing, and DevOps.

Solution

Business analysis

The customer provided us with the documentation describing their overall vision for the solution and its features, which our business analysts studied carefully and further elaborated. Our specialists defined the scope of key features for an MVP release that included landing pages, landlord, agency and tenant portals, and integrations with payment, email, and SMS services. 

For the final version of the product, we planned to expand the MVP functionality with additional features like end-of-tenancy and resolution management and implement an admin panel for the web application as well as an API for the integration with end clients’ systems.

Also, since landlords and agents are mainly corporate users and are likely to use a web solution during their working hours, the customer decided the mobile app should only support tenant-oriented features. 

UX/UI design

Having some ideas about the application’s design before the project started, the customer prepared design mockups together with the apps’ color schemes, styles, and workflow diagrams. As they needed full-cycle UX/UI design services, we allocated our UX and UI designers to the project.

The landlord sign-up page mockup vs the final design
The end-of-tenancy interface mockup vs the final design

The customer’s team was actively involved in the design stage, clarifying their requirements to our designers, reviewing wireframes and prototypes we prepared, and leaving their comments. After the customer approved all of the application prototypes, they were sent to the development team. 

The feature set

Itransition developed Ome, an insurance-backed deposit replacement membership service, available as web and mobile applications, allowing tenants to rent property from landlords or real estate agents without the need to pay an upfront deposit. 

The MVP version of the application that we delivered facilitated monthly subscription payments from tenants, automatic email notifications, communication between tenants and property managers, and customer service for all types of users. 

The final application version has an API allowing real estate agencies and software providers to integrate it with their internal software such as CRM systems and synchronize various types of data between the systems. 

Tenancy initiation

The initial rental process, including searching for property, applying for it, and paying the fee, happens outside the app via third-party systems. To register a tenancy and add it to their portfolio, agents first need to add or invite the landlord and assign the property to them. 

There are the following tenancy statuses:

  • Live – the property has confirmed tenants and no actions are required from tenants or landlords.
  • Vacant – no tenants are associated with a given property.
  • Pending tenant action – invitations are sent, but one of the tenants hasn't confirmed them yet. This status is also assigned when any action from the tenant is required.
The tenants invitation screen

When both parties agree on using the deposit replacement scheme, the landlord or the agent appointed by the landlord adds the property to the system and sends an invite to the tenant. Having accepted the invite, the tenant creates an account and considers the proposed monthly subscription fee, calculated from the traditional deposit amount for the given property. Alternatively, tenants can register on their own with no access to tenancies. After a tenant makes a confirmed payment, the agent or landlord receives the confirmation about their membership, and the tenant can move into the property.

Tenant membership confirmation

Payment and billing

Tenants are expected to pay a one-time registration fee and monthly non-refundable membership fees after their tenancy starts. The system generates a standard membership agreement in the PDF format containing all the terms and automatically fills in the membership fee amount and the household composition. The agreement is attached to the created tenancy, available for all parties to view.

The tenant membership and billing screen, web and mobile

If several tenants are living in one household, the lead tenant can make payments on everyone’s behalf. Otherwise, tenants can pay separately, with the rent payments and membership fees equally divided among them.

When there are changes in the household, the system generates a new agreement and sends the notification to all parties involved. This is also the time when the property owner can change the lead tenant or the payment scheme.

End of tenancy

End of tenancy takes place when tenants leave the property and can be initiated by either tenants or the property manager, with its progress visible to all parties involved. The process can follow three different scenarios:

  • Swapping, when a new tenant replaces the existing one.
  • Splitting, when one tenant leaves and no new tenants move in.
End of tenancy, the split scenario
  • Exiting, when all the tenants leave.
End of tenancy, the exit scenario

Damage claims settlement

The settlement feature allows owners and property managers to raise a dispute in case there is some damage to their property. The initiator can attach images or documents to the claim as evidence, add comments, and indicate the sum to be refunded. The tenant linked to the claim should accept or decline the settlement, and if the tenant and landlord can’t settle the dispute amicably, they need to do it outside the system. 

Adding settlements

DevOps automation

We set up the development, testing and production environments using Azure Cloud, Azure DevOps, Azure Portal, Azure App Service, and other Azure tools and configuring the services to ensure they communicated seamlessly with each other. We also integrated the environments with GitHub to prevent code mergers that might disrupt the build.

Apart from this, we set up CI/CD processes, which allowed us to frequently change merging code and carry out unit tests in Azure DevOps, while also contributing to high code quality and delivery process automation in the long run. 

Quality assurance

Itransition involved our independent QA department in the project, with the specialists carrying out new feature testing, performance testing, API testing, and regression testing. The tests were performed on both desktop and mobile devices, ensuring accurate, efficient, and user-specific testing in a real environment. Testing with real devices also helped us check for a wide range of issues that end users may face, such as usability problems, battery drainage or overheating, etc., and assess the app’s operation during interruptions like push notifications, messages, or calls.

After the application development was complete, user stories were sent for testing. If a story wasn’t compliant with the requirements, a bug was recorded and fixed by the development team, with the fixes subsequently verified during defect validation. As soon as a certain set of stories passed the validation, they were planned for delivery, with the QA team carrying out regression testing afterward. 

Since the developed solution allows for connecting with other systems via APIs, a separate set of tests was carried out to check the API data. All test cases were described in the TestRail test case management tool.

Technologies and tools

We built the solution’s server-side part using the ASP.NET Core framework, to which the frontend part of the web app and mobile apps were connected. The web app was developed as a PWA using the JavaScript React library and supports the responsive design, which we created using the Material UI library. We built the cross-platform mobile app using the React Native framework. 

The communication between the backend part and the web app’s frontend along with the mobile app is facilitated by HTTPS requests, while the Identity server verification framework is applied for user and apps authentication.

We hosted the web and mobile solutions on Microsoft Azure App Service and utilized Azure SQL Database for user and company data, Azure Blob Storage for file storage, and Azure Storage for files uploaded by users. To monitor the apps’ performance, we employed Azure Application Insights.

For the solution’s quality assurance, we employed the following tools:

  • JMeter for performance testing 
  • Fiddler for inspecting network traffic between test computers and the web server during performance testing
  • BrowserStack for cross-browser testing and testing on real mobile devices
  • Azure SQL App Service for data migration and functional testing
  • Postman for REST API testing 

We also integrated the system with a range of third-party services:

  • Twilio for SMS messaging
  • Stripe for payments and product subscription 
  • Sendgrid for email notifications 

Results

We delivered a deposit replacement membership solution for Hamilton Fraser, to serve as an alternative to the traditional tenancy deposit services and cater to the individual preferences of tenants. 

As a result, the service benefits both tenants, who can pay a small and manageable fee instead of an upfront deposit, and landlords and agents, who get smaller deposit protection fees and a lower risk of deposit-related fines.  

After launching their new solution, Hamilton Fraser has already met the first-year target of 12,000 transactions, all carried out with little to no human interaction.