A Blockchain Framework for Connecting Tenants and Landlords in Commercial Real Estate

Author: Waqas Javaid
Abstract:
We propose a management system that helps upcoming business owners locate rental properties, therefore, connecting with landlords. Our blockchain system helps tenants connect with landlords and gives access to both landlords and tenants to all their transactions. Blockchain technology allows commercial real estate deals to be finalized quickly and with minimal paperwork. Blockchain facilitates paperless asset transfers, eliminating the need for physical contracts and other documentation. It’s possible to complete any task electronically, drastically reducing the time required. Blockchain enables private information exchange, expedites payments to landlords, and improves portfolio-wide due diligence. Thus, productivity is boosted, and both time and money are saved in the process.
Keywords—Blockchain, Business Unit, Landlord, Tenant.
I. Introduction
As people return to normalcy following the pandemic, business space leasing is expected to reach an all-time high. Some commercial rental estates (CREs) companies manage more than fifty properties. However, most managers still use outdated software such as Excel, meaning that information is not automated and decentralized [1] There is also a problem with managing the space size and vacancies. Space distribution is constantly changing. There is a need for a solution that efficiently manages the spaces, and lease history to save time and resources for both the landlord and the tenant. There has also been an increase in rental fraud cases. According to TransUnion, a credit reporting organization, fraud triggers increased by approximately thirty percent from March to August [2]. The cases include faking a tenant’s identity or stealing someone’s social security number to develop a new identity.
Everything around us is accessible in today’s busy world without needing us to look around physically. Many businesses have trouble finding a space to rent in order to launch their business. As for today, it takes up to 6 months to a year to find a suitable location which takes up a lot of effort and energy. In order to make it simpler for new businesses to identify the ideal location quickly, our approach is to build a platform that gathers multiple rental spaces in one place.
II. BACKGROUND
Blockchain is a promising technology that can be used as the core solution for developing a trusted and efficient platform for providers offering rental spaces. Using Blockchain technology allows them to track the rental process and ensure that both the vendor owners and the business space provider have the most up-to-date information on the properties, ownership, availability, closed deals, and tenants. Content is consistently updated so that users can obtain the most current, available information wherever they are. The main system participants are the tenants, regulators, and landlords. Tenants will be able to access property listings from one decentralized database. The property managers will have better data control because there will be no third-party interference. The two market participants can find lost cost reliable data on renting spaces. The tenants and landlords will use the blockchain-based application for free. In terms of financial evaluation and due diligence, the entire procedure may be performed online securely utilizing digital identities on the blockchain. This will increase efficiency, minimize costs, improve data security, and decrease the possibility of manual errors [3]. In commercial rental estate, for instance, a landlord and renter could electronically sign a smart contract specifying details on the tenant, property, rental price, and payment schedule.
A. Blockchain Overview
Blockchain refers to distributed ledger network accessible to everyone or a group of nodes. It was first idealized in 1991 but came into a concrete implementation by Satoshi in the creation of the Bitcoin network. Blockchain is made up of a chain of blocks, where each block has data, the hash of the block, and the previous block’s hash (Hughes et al., 2019). For instance, the Bitcoin block has data that stores information concerning the sender, receiver, and the amount sent. The hash is like the fingerprint, and it is created when a block is created. A hash is very useful whenever one wants to detect changes to the block because changing anything in the block would result in a change in its hash. The previous block’s hash helps to create the chain of connected nodes
- Figure 1: The above diagram shows that each block has a hash and a hash of the previous block. The first block is referred to as the Genesis block. The rest of the block has the hash that points to the previous block.
B. Characteristics
a) Secure: Once data is saved in the blockchain, it is difficult to change it. Hence, it is becoming more secure and hard to hack. For instance, in the diagram of Figure 1, if one changes the content of the second block, then its hash will change. This means block three will have a hash that does not point to the second block [4]. The scenario is the same for the other proceeding blocks after block 3. It will make all the following blocks to be invalid.
b) Proof of work: However, since computers nowadays are very powerful, the use of hashing is not secure enough. With such a capacity, it is possible to tamper with one hash and then recalculate those for the rest of the blocks to make the tampered blockchain valid again. Therefore, blockchain uses a consensus approach to harden security. It entails implementing a proof-of-work approach. The approach delays the creation of each block which reduces the chances of tampering with all the blocks [5].
c) Smart contract: Blockchain technology is evolving to include the use of Smart Contracts which are programs being stored on the blockchain that executes whenever a predetermined condition is met. It helps in the automation of agreements with no need for intermediary involvement and time. Smart contracts emulate traditional arrangements but are digital and more efficient.
C. Consensus Implementation
Consensus implementation is done through a p2p network where everyone can join and download the entire blockchain. It involves the implementation of the proof-of-work to validate transactions. Proof-of-work is an approach that slows down the creation of new blocks. With such mechanisms, it is possible to prevent tampering with the block. A p2p network is used for consensus instead of a centralized infrastructure. When one creates a new block, it is sent to everyone in the network. Each node then validates the block to ensure it is not tampered with. And when everything is okay, each node adds the block to its blockchain. In such a case, all the nodes create a consensus where the nodes agree on what blocks are valid and which are not valid. Any block that is tampered with gets rejected by all the nodes in the network [6]. So to successfully tamper a block, one has to tamper all the blockchains in the network, read the set proof-of-work for each block and take control of the 50% of the p2p network, which is an impossible thing to achieve.
III. Problem Statement
Traditionally, once an individual has found their rental space of choice, the property manager must draft a time-consuming contract. The tenant will also have to meet with the property manager to discuss contract terms, which is time-consuming for both entities [8]. The tenants will also have to pay the agreed amount of money on time and manually. Ultimately, the tenant may go through lawyers, insurance, and brokers. The downside is that these third parties attest to contract authenticity but must also make a profit, thus increasing expenditures [7]. Smart contracts will be introduced by designing and implementing a renting business application using blockchain. Contrary to classic contracts, smart contracts eliminate the need for intermediaries and work through a peer-to-peer approach. The commercial rental estate will benefit from faster, cheaper, and more secure smart contract-based transactions [7]. It will allow the renters to set up their businesses faster and save them episodes of headaches. The landlord and the tenant will agree on the contract before making payments.
IV. System Model
a) Network Participants: Our blockchain is composed of four main participants with the following main roles:
- Tenant: Views the list of properties with their descriptions and rent prices.
- Landlord: Provides location spaces for tenants as well as manages tenant contracts.
- Regulator: Handle all the governmental processes and ensure all the processes follow regulations.
- Ministry of Justice: Provide the deed for the landlord’s property
b) Asset: The asset in a blockchain represents the electronic files of data that the participants can own and transfer. It can be tangible or intangible. In our system, we only have one tangible asset and one intangible asset which is the contract. the assets are transferred between the network participants (landlord, tenant, government institute, and regulator).
c) Operation Flow: Figure 2 demonstrates the operational flow in the sequence of events in our system as follows: the landlord is responsible for requesting commercial records from the regulator to authenticate the records. Once the regulator confirms the commercial records, it is transferred back to the landlord. The regulator confirms the records from the government. After commercial records have been authenticated, the tenant will be able to request payment methods from the landlord, and once the payment is requested, the landlord returns the payment method to the tenant. Finally, each transaction will be saved on the blockchain to create the sales records of the unit.
- Figure 2: Operational Flow
d) Network Architecture: Our system is structured in three layers. The three levels and their individual components are depicted in Figure 3. The user launches a website in the display layer using the application layer, which is made up of a web server SDK that communicates with the data layer (the Hyperledger Fabric). The web server SDK abstracts away any endorsement flow complexities. The participant is chosen from the website, the gateway connection is made, the network channel is accessed, the smart contract is chosen, the transaction is submitted, and the response or notification is processed once it has been accepted. All of these tasks are handled by the SDK. The Hyperledger Fabric is part of the data layer, which is the bottom layer. The Hyperledger Fabric’s newly constructed channel, C1, has the Regulator, landlord, and tenants as the participants. The consensus implementation takes place in this layer.
- Figure 3: Network Architecture
e) Data Management: Our approach makes use of cloud storage. The database that will be used by us makes use of MySQL and is in charge of storing each user’s login and registration information. We will have Two sections of the ledger:
- World state: is a changeable database that can be removed, Tenants can read this data.
- Blockchain: blocks of hashed linked lists containing immutable data that cannot be changed and is only accessible by network members.
f) Smart Contracts & Chain code: Smart contracts are a revolutionary component of blockchain technology that serves as a “robotic middleman” to facilitate interactions between users. A smart contract is a set of predetermined instructions that, once set in motion, carry out the agreed-upon actions without any further human intervention. Owners can use smart contracts to automate the collection of rent, management fees, and other lease-related payments by having a new contract pre-populated with this information. The occupant analyzes the terms of the lease via the platform and then digitally signs the smart contract after an agreement is reached.
You can download the Project files here: Download files now. (You must be logged in).
Pseudo code
i. add property transaction:
function addPropertyTransaction(propertyDetails, clientDetails, transactionDetails) {
// Validate input parameters
if (propertyDetails is invalid or clientDetails is invalid or transactionDetails is invalid) {
return error;
}
// Create a new property transaction object
var newTransaction = createTransactionObject(propertyDetails, clientDetails, transactionDetails);
// Save the new transaction to the database or storage
if (saveTransactionToDatabase(newTransaction)) {
return success;
} else {
return error;
}
}
// Helper functions for creating objects and saving to database
function createTransactionObject(propertyDetails, clientDetails, transactionDetails) {
// Create a new transaction object and assign property, client, and transaction details
// …
return transaction;
}
ii. add tenant
function addTenant(tenantDetails) {
// Validate input parameters
if (tenantDetails is invalid) {
return error;
}
// Create a new tenant object
var newTenant = createTenantObject(tenantDetails);
// Save the new tenant to the database or storage
if (saveTenantToDatabase(newTenant)) {
return success;
} else {
return error;
}
}
iii. add landlord
function addLandlord(landlordDetails) {
// Validate input parameters
if (landlordDetails is invalid) {
return error;
}
// Create a new landlord object
var newLandlord = createLandlordObject(landlordDetails);
// Save the new landlord to the database or storage
if (saveLandlordToDatabase(newLandlord)) {
return success;
} else {
return error;
}
}
// Helper functions for creating objects and saving to database
function createLandlordObject(landlordDetails) {
// Create a new landlord object and assign landlord details
// …
return landlord;
}
iv. property for rent
function addPropertyForRent(propertyDetails) {
// Validate input parameters
if (propertyDetails is invalid) {
return error;
}
// Create a new property object
var newProperty = createPropertyObject(propertyDetails);
// Save the new property for rent to the database or storage
if (savePropertyToDatabase(newProperty)) {
return success;
} else {
return error;
}
}
// Helper functions for creating objects and saving to database
function createTenantObject(tenantDetails) {
// Create a new tenant object and assign tenant details
// …
return tenant;
}
v. query properties
function queryProperties() {
// Connect to the database or storage
// Execute the query to retrieve properties
var properties = databaseQuery(‘SELECT * FROM properties_table’);
return properties;
}
// Helper functions for creating objects and saving to database
function createPropertyObject(propertyDetails) {
// Create a new property object and assign property details
// …
return property;
}
function saveTransactionToDatabase(transaction) {
// Connect to the database or storage
// Execute the query to save the transaction
// …
return true; // or false if there was an error
}
vi. query tenants
function queryTenants() {
// Connect to the database or storage
// Execute the query to retrieve tenants
var tenants = databaseQuery(‘SELECT * FROM tenants_table’);
return tenants;
}
// Helper functions for creating objects and saving to database
function saveTenantToDatabase(tenant) {
// Connect to the database or storage
// Execute the query to save the tenant
// …
return true; // or false if there was an error
}
You can download the Project files here: Download files now. (You must be logged in).
vii. query landlords
function queryLandlords() {
// Connect to the database or storage
// Execute the query to retrieve landlords
var landlords = databaseQuery(‘SELECT * FROM landlords_table’);
return landlords;
}
// Helper functions for creating objects and saving to database
function saveLandlordToDatabase(landlord) {
// Connect to the database or storage
// Execute the query to save the landlord
// …
return true; // or false if there was an error
}
viii. property rented
function propertyRented(propertyID, tenantID) {
// Validate input parameters
if (propertyID is invalid or tenantID is invalid) {
return error;
}
// Update the property record with the tenant ID
if (updatePropertyRentedStatus(propertyID, tenantID)) {
return success;
} else {
return error;
}
}
// Helper functions for creating objects and saving to database
function savePropertyToDatabase(property) {
// Connect to the database or storage
// Execute the query to save the property
// …
return true; // or false if there was an error
}
function updatePropertyRentedStatus(propertyID, tenantID) {
// Connect to the database or storage
// Execute the query to update the property’s rented status with the tenant ID
// …
return true; // or false if there was an error
}
Explanation of Pseudo code:
The pseudocode consists of several functions to perform different operations related to property transactions. The “addPropertyTransaction” function validates input parameters and creates a new transaction object, which is then saved to the database. Similarly, the “addTenant” and “addLandlord” functions validate input parameters, create corresponding objects, and save them to the database. The “addPropertyForRent” function validates input parameters, creates a property object, and saves it as a rental property. The “queryProperties,” “queryTenants,” and “queryLandlords” functions connect to the database and retrieve the respective data from their respective tables. Lastly, the “propertyRented” function validates input parameters, updates the rented status of a property by associating it with a tenant, and returns the corresponding status. These functions collectively handle adding property transactions, tenants, landlords, rental properties, querying property-related information, and marking a property as rented.
g) Client Application: The application will be made available through a website. Each participant will have a unique login portal. Each website will have different functionalities that can be implemented; by creating individual features for each participant, it will be easier to add more functionalities in the future without affecting other groups of participants.
A. Manufacturer:
As a manufacturer of a property management website, we provide a comprehensive and user-friendly platform for efficient property management. Our website offers a range of features to simplify tasks such as property listing, tenant management, rent collection, maintenance requests, and financial reporting. With our intuitive user interface, property owners and managers can easily add and update property listings, track rental payments, communicate with tenants, and handle maintenance issues. Our website also includes robust reporting tools to generate financial statements, monitor property performance, and analyze trends. With our property management website, we empower property owners and managers to streamline their operations, enhance tenant satisfaction, and maximize their investment returns.
V. Implementation
Implementing a web application for property management involves multiple components and functionalities. Here’s a high-level overview of the implementation steps for the specified features:
- Design and Front-End Development:
- – Create an intuitive and user-friendly interface using HTML, CSS, and JavaScript frameworks like React, Angular, or Vue.js.
- – Design and implement the necessary forms and views for adding property transactions, tenants, landlords, and rental properties.
- – Implement client-side form validation to ensure data integrity and accuracy.
- – Create interactive components for querying and displaying properties, tenants, and landlords.
- Figure 4: home page where tenant and users check the different properties and its details
- Back-End Development:
- – Set up a server-side framework like Node.js, Python Django, or Ruby on Rails to handle the back-end logic.
- – Design and create the necessary database schema to store property, tenant, and landlord information.
- – Develop RESTful APIs or GraphQL endpoints for handling CRUD operations for adding property transactions, tenants, landlords, and rental properties.
- – Implement server-side validation and error handling for data submitted by the client.
- Database Management:
- – Choose a suitable database system like MySQL, PostgreSQL, or MongoDB to store and manage property and user-related data.
- – Design the database schema based on the requirements and create the necessary tables and relationships.
- – Implement database queries and transactions to retrieve, insert, update, and delete property, tenant, and landlord records.
You can download the Project files here: Download files now. (You must be logged in).
- Authentication and Authorization:
- Implement user authentication and authorization mechanisms to ensure secure access to the application.
- Set up user roles and permissions to restrict access to certain functionalities based on user type (Figure 5 shows the regulator, landlord, tenant authorization).
- Figure 5: Authentication and Authorization of web application where client can sign up as regulator, landlord, tenant
- Figure 6: Sign up as landlord
- Integration with External Services:
- – Integrate with third-party services for features like payment processing, geolocation services, or document signing.
- Figure 7:A detail page of property where tenant will saw the property information and click on contract deed and contract will be registered on hyper ledger fabric and also tenant has an option to send message to landlord for any query as well
- – Implement APIs or SDKs provided by these services to seamlessly incorporate their functionalities into the web application.
- Testing and Quality Assurance:
- – Develop and execute unit tests and integration tests to validate the functionality and correctness of the implemented features.
- – Perform thorough testing of different scenarios, edge cases, and user interactions.
- Figure 8: Here is the list of all blocks which are confirmed on hyper ledger blockchain ID is the unique key of transaction , Transaction type show its type and status show its conferment
- – Use tools like automated testing frameworks, linting tools, and code reviews to maintain code quality and minimize bugs.
- Deployment and Maintenance:
- – Set up a hosting environment using cloud-based services like AWS, Azure, or deploy on-premises servers.
- – Deploy the web application to the production environment and configure necessary server settings.
- – Implement logging and monitoring mechanisms to track system health, user activities, and errors.
- – Regularly update and maintain the application by applying security patches, fixing bugs, and adding new features based on user feedback.
- Figure 9: Regulator check all the data and modify his status of Landlord List, Property Contract List , Approval list
It’s important to note that the specific implementation details, technologies, and frameworks may vary based on your preferences, project requirements, and the chosen tech stack for your web application.
VI. Conclusion
This paper employs blockchain to facilitate processes for all participants. The tenant and landlord are the primary participants who govern blockchain transactions. The landlord makes a property available to the public, and any interested tenant can view it and make an offer. Furthermore, the logic of our application can be applied to a variety of industries, such as serving aspiring business owners in a variety of fields such as restaurant management, pharmaceutical or cosmetics, and supplies to combat counterfeit locations.
References
- Xue, Q., Hou, Z., Ma, H., Zhu, H., Ju, X., & Sun, Y. (2021, June). Housing rental system based on blockchain Technology. In Journal of Physics: Conference Series (Vol. 1948, No. 1, p. 012058). IOP Publishing.
- Olick, D. (2020). Rental fraud warnings jump 30% due to coronavirus pandemic. CNBC. https://www.cnbc.com/2020/11/10/rental-fraud-warnings-jump-30percent-due-to-coronavirus-pandemic.html
- Qi-Long, C., Rong-Hua, Y., & Fei-Long, L. (2019). A Blockchain-based Housing Rental System. https://www.scitepress.org/Papers/2019/80972/80972.pdf
- Zhang, R., Xue, R., & Liu, L. (2019). Security and privacy on blockchain. ACM Computing Surveys (CSUR), 52(3), 1-34.
- Kiayias, A., & Zindros, D. (2020). Proof-of-work sidechains. In International Conference on Financial Cryptography and Data Security (pp. 21-34). Springer, Cham.
- Bach, L. M., Mihaljevic, B., & Zagar, M. (2018, May). Comparative analysis of blockchain consensus algorithms. In 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO)(pp. 1545-1550). Ieee.
- Varfolomeev, A. A., Alfarhani, L. H., & Oleiwi, Z. C. (2021). Secure-reliable smart contract applications based blockchain technology in smart cities environment. Procedia Computer Science, 186, 669-676.
- Shanker, M. (2019). Use Case: Smart Contract for Lease Agreements using Blockchain Technology. International Journal of Scientific Research in Computer Science and Engineering, 7(6), 1-09.
You can download the Project files here: Download files now. (You must be logged in).
Keywords: Blockchain, Business Unit, Landlord, Tenant.
Responses