# Rental Manager V2.1

V2.1 improves monthly cash collection and receipt printing without changing existing accounting data.

## New features

- Bulk cash collection for any selected unpaid apartments in a finalized month.
- Select-all control, selected-apartment counter, and clear visual row selection.
- One downloadable PDF containing every active receipt for the selected building and month.
- Exactly four full-width receipts per A4 page, including receipts with all 11 charge items.
- The old left receipt-number stub has been removed.
- Receipt amounts have additional spacing from borders for easier reading.
- The printed footer always uses the first day of the accounting month.
- The actual payment date is still stored separately in the database for accounting history.

## Safety and integrity

- Bulk collection accepts only unpaid accounts belonging to the selected finalized month.
- The full bulk operation runs in one database transaction and rolls back if any receipt fails.
- Receipt numbering remains sequential and unique within each building.
- `php artisan rental:verify` now checks paid-account/receipt consistency and receipt totals.
- No database migration is required for V2.1.

## Upgrade commands

After uploading and extracting the V2.1 package over the Laravel project, run:

```bash
cd ~/public_html/rental-manager
php artisan optimize:clear
php artisan rental:verify
php artisan optimize
```
