---
title: "Record a security deposit"
method: POST
path: "/leases/{lease_id}/deposit"
tags: ["Security Deposits", "Leases"]
---

# Record a security deposit

`POST /leases/{lease_id}/deposit`

## Request

- Base URL: `https://api.faireplace.com/api`
- URL: `https://api.faireplace.com/api/leases/{lease_id}/deposit`
- Auth: HTTP bearer

Record the collection of a security deposit for a lease.

Only one deposit is allowed per lease. If a deposit already exists, returns a business error.

The deposit amount should match the `deposit_amount` field on the lease, which is validated
against French legal limits per lease type:
- Residential empty: max 1 month rent
- Furnished/student: max 2 months rent
- Commercial: max 3 months rent
- Mobility lease: deposit forbidden (Art. 25-13 ALUR)

**Permissions required:** `leases:write`

## Path parameters

- `lease_id` string, uuid, required

## Request body

- RecordDeposit: Request to record a security deposit collection
  - `amount` number, required: Deposit amount
  - `paid_date` string, date, nullable: Date the deposit was collected

## Response `201`

Deposit recorded successfully

- SecurityDeposit: A security deposit (dépôt de garantie) attached to a lease. Per Art. 22 of Loi 89-462: - Restitution within 1 month (conformity exit inspection) or 2 months (non-conformity) - Maximum retention of 20% for co-ownership charge provisions - Penalty: 10% of monthly rent (HC) per month of delay
  - `id` string, uuid, required
  - `lease_id` string, uuid, required
  - `amount` number, required: Deposit amount collected
  - `paid_date` string, date, nullable: Date the deposit was collected
  - `status` string, required: Current status (COLLECTED, PENDING_RETURN, PARTIALLY_RETURNED, FULLY_RETURNED, DISPUTED)
  - `restitution_due_date` string, date, nullable: Deadline for restitution (1 or 2 months after lease end)
  - `restitution_date` string, date, nullable: Actual date the deposit was returned
  - `amount_returned` number, nullable: Amount returned to the tenant
  - `retained_for_charges` number, nullable: Amount retained for co-ownership charge provisions (max 20% per Art. 22)
  - `retained_for_damages` number, nullable: Amount retained for property damages
  - `retained_for_unpaid_rent` number, nullable: Amount retained for unpaid rent
  - `penalty_amount` number, nullable: Late return penalty (10% of monthly rent HC per month of delay)
  - `exit_inspection_conformity` boolean, required: Whether the exit inspection was conformity-compliant (affects restitution deadline)
  - `copro_accounts_approval_date` string, date, nullable: Date of syndic account approval (triggers release of retained charges)
  - `notes` string, nullable: Additional notes

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/faireplace/apis/faireplace-property-management-api.md) · [All operations](https://skmtc.dev/faireplace/apis/faireplace-property-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/faireplace/apis/faireplace-property-management-api/revisions/69de39762919?raw)
