Contract Penalties
Track and document financial penalties for contract violations.
Overview
The Agreement Penalties module allows property owners to track and document financial penalties imposed on tenants for violations of rental contract terms.
Penalty Tracking
Record financial penalties with date, amount, currency, and detailed description.
Contract Block References
Link penalties to specific contract blocks (terms) that were violated.
Document Attachments
Attach photos and documents as evidence for the penalty.
Payment linking
Penalties can be linked to specific overdue payments for tracking
Multi-Currency Support
Record penalties in different currencies with automatic symbol display.
Workflow
The typical workflow for documenting penalties:
Document Penalty
Owner records the penalty with date, amount, currency and description.
Select Contract Blocks
Link the penalty to specific contract terms that were violated.
Attach Evidence
Upload photos and documents as supporting evidence.
Track History
Build a penalty history for the tenant/contract for future reference.
Permissions
Access rights for contract penalties:
| Action | Who Can |
|---|---|
| Create | Property owners and their agents |
| View | Owners, tenants, and their agents (can view penalties against them) |
| Edit | Property owners and their agents |
| Delete | Property owners and their agents |
| Attach Documents | Property owners and their agents |
REST API
Access contract penalties via REST API (requires JWT authentication):
Service layer note
GET /api/v1/properties/{id}/penalties - List penalties
POST /api/v1/properties/{id}/penalties - Create penalty
GET /api/v1/properties/{id}/penalties/{pid} - Get details
PUT /api/v1/properties/{id}/penalties/{pid} - Update penalty
DELETE /api/v1/properties/{id}/penalties/{pid} - Delete penalty
POST /api/v1/properties/{id}/penalties/{pid}/documents - Attach document
DELETE /api/v1/properties/{id}/penalties/{pid}/documents/{did} - Detach document
Example Response
{
"data": [
{
"id": 1,
"property_id": 5,
"contract_id": 12,
"penalty_date": "2026-01-10",
"amount": 500.00,
"paid_amount": 250.00,
"remaining_amount": 250.00,
"is_paid": false,
"currency": {
"id": 3,
"code": "UAH",
"symbol": "₴"
},
"description": "Late rent payment penalty for December 2025",
"violator": {
"id": 15,
"name": "John Tenant"
},
"documents_count": 2,
"blocks_count": 1,
"created_at": "2026-01-10T14:30:00+00:00"
}
],
"total": 1,
"page": 1,
"totalPages": 1
}
Swagger / OpenAPI
Full API documentation with interactive testing is available in Swagger UI: /api/v1/doc