Home Library Contracts General Information

General Information

Documentation for managing property rental contracts

Overview

The contracts module allows you to track the history of rental relationships for each property. The system ensures that only one contract can be active at any given time.

Key Features

  • Track contract history per property
  • Manage signing, start and end dates
  • Automatic contract date overlap validation
  • Link tenant to contract
  • Specify rental type (long-term, short-term)

Access Permissions

Access to contracts depends on the user's role in the property.

Role View Add Edit Delete
Landlord Yes Yes Yes Yes
Landlord Agent Yes Yes Yes Yes
Tenant Yes No No No
Tenant Agent Yes No No No
Maintenance Staff No No No No

Contract Fields

Each contract contains the following fields:

Field Required Description
Name Optional Contract name. If not specified - will be "-"
Tenant Required Tenant user from the system
Rental Type Required Rental type from reference
Signing Date Required Contract signing date
Start Date Required Contract start date
End Date Optional End date. Empty = open-ended contract

Date Overlap Control

Important!

The system strictly ensures that contract dates do not overlap. Only one contract can be active for a property at any given time. An error will be shown when trying to create or edit a contract with dates that overlap with an existing one.

Example:

  • Contract A: 01.01.2025 - 31.12.2025
  • Contract B with start date 01.06.2025 will be blocked because this date falls within Contract A period

Contract Statuses

Contract status is determined automatically based on dates:

Active

Current date is between start and end dates (or no end date)

Expired

Contract end date is in the past

Future

Contract start date is in the future

Rental Types

When creating a contract, you need to specify the rental type:

Type Description
Long-term rental Rental for a period of 1 month or more
Short-term rental Rental for a period of less than 1 month (daily, weekly)

How to Add a Contract

1

Go to Property

Open the property card where you want to create a contract.

2

Select "Contracts"

In the property menu, click the "Contracts" button to go to the contracts list.

3

Click "Add"

Click the "Add Contract" button to open the creation form.

4

Fill the Form

Select tenant, rental type, specify dates and click "Save".

Contract Documents

You can attach scanned copies of documents to each contract: main agreement, addendums, acts, etc.

Allowed formats

  • PDF, JPG, JPEG, PNG
  • Maximum file size: 10 MB

Document access permissions

Role View Upload Delete
Landlord Yes Yes Yes
Landlord Agent Yes Yes Yes
Tenant Yes Yes No
Tenant Agent Yes Yes No

Deletion restriction

Only the property owner and their agent can delete documents. Tenants and their agents can only view and upload documents.

REST API

Contracts can be managed via API:

Service layer note

API Endpoints
GET    /api/v1/properties/{id}/contracts         # List property contracts
POST   /api/v1/properties/{id}/contracts         # Create contract
GET    /api/v1/contracts/{id}                    # Get contract
PUT    /api/v1/contracts/{id}                    # Update contract
DELETE /api/v1/contracts/{id}                    # Delete contract
GET    /api/v1/properties/{id}/contracts/active  # Active contract

Contract Documents API

Document endpoints
GET    /api/v1/contracts/{id}/documents         # List contract documents
POST   /api/v1/contracts/{id}/documents         # Upload document
DELETE /api/v1/contracts/{id}/documents/{docId} # Delete document (owner only)

Full API documentation is available in Swagger:

Open API Documentation

Related Sections