Skip to main content
Version: Next

Rentals (Checkouts & Returns)

The Rentals section manages the entire borrowing lifecycle — from the moment a copy leaves the shelf to when it comes back (and any fees that arise along the way).

Navigate to Operations → Library → Rentals.

Rentals list page showing status tabs (All, Active, Overdue, Returned, Lost), a New Checkout button, and a table with columns: Book, Borrower, Checkout Date, Due Date, Status badge, Days Overdue, Fees. One overdue row is highlighted in amber.

The Rentals list. The Overdue tab is the most important one to monitor daily. Amber rows are overdue — click any row to process a return or send a reminder.


Creating a checkout

New Checkout dialog showing a book selected (The Great Gatsby), the Student tab active with a student search result selected, a copy auto-selected, Condition at Checkout set to Good, Due Date showing 14 days from today, and a Notes field

The New Checkout dialog. The due date is calculated automatically based on the book's rental duration setting. Change it if needed for special circumstances.

  1. Navigate to Operations → Library → Rentals
  2. Click New Checkout
  3. Search and select the book — type the title or ISBN
  4. Select the copy — the system auto-selects the first available copy. To choose a specific copy (e.g. by barcode scan), click the copy field and scan or type the barcode
  5. Select the borrower:
    • Click the Student tab and search by name or student number
    • Click the Teacher tab to lend to a staff member
  6. Record condition at checkout — note the current condition for comparison at return
  7. Confirm the due date — defaults to today + the book's rentalDurationDays. You can override it for special cases
  8. Add notes (optional)
  9. Click Checkout

The copy status changes to checked_out and the rental appears in the Active list.

Checkout blocked?

A checkout will be blocked if:

  • The book has no available copies → check Copies or view the Reservations queue
  • The borrower has reached their maximum active rentals
  • The book's access level doesn't allow this borrower
  • The borrower has unpaid fees exceeding the school's fee limit

See Troubleshooting for solutions.


Processing a return

Process Return dialog showing rental details: The Great Gatsby borrowed by James Mwangi, checked out 14 days ago, 3 days overdue. Condition at Return dropdown shows Fair. Report Damage checkbox unchecked. Fee Summary shows Late Fee $3.50 with a Record Payment toggle enabled.

The Process Return dialog calculates late fees automatically. If the book comes back damaged, check Report Damage to add a damage fee before completing the return.

  1. Find the rental using the search bar (search by borrower name or book title) or scroll to it in the Active / Overdue list
  2. Click Return in the Actions column (or click the row, then click Return)
  3. Select the Condition at Return — if it's worse than at checkout, check Report Damage:
    • Describe the damage in the text field
    • The system adds a damage fee (set on the book record as replacementCost or a custom amount)
  4. Review the Fee Summary:
    • Late Fee = days overdue × late fee per day (from the book record)
    • Damage Fee = amount you entered
    • Total = late + damage
  5. To collect payment now, toggle on Record Payment and select the payment method
  6. Click Process Return

The copy status returns to available (or damaged if damage was reported).


Renewing a loan

Borrowers who need more time can request a renewal before the due date:

  1. Find the active rental
  2. Click Renew in the Actions column
  3. Confirm the new due date (advances by the book's rental duration)
  4. Add a note (optional)
  5. Click Save Renewal

Renewal limits

RuleDefault
Maximum renewals per rental2
Can renew if overdueNo — must return first
Can renew if another patron has a reservationNo — must be returned for the hold

Sending overdue reminders

  1. Go to the Overdue tab
  2. Find the rental
  3. Click Send Reminder — the system sends a notification to the borrower

The reminderSentCount field increments each time a reminder is sent. Check this before sending to avoid excessive contact.


Marking a book as lost

If a borrower reports that they cannot find a borrowed book:

  1. Find the rental in the Active or Overdue list
  2. Click More actions (three-dot) → Mark as Lost
  3. The system:
    • Changes the rental status to lost
    • Changes the copy status to lost
    • Calculates a replacement fee (the book's replacementCost)
  4. Collect the replacement fee from the borrower (use Record Payment)
  5. Once paid, you can add a new copy to restore the title's inventory

Fee management

How fees are calculated

Fee typeCalculationWhere to configure
Late feeDays overdue × lateFeePerDayBook record — Rental Settings
Damage feeManually entered at returnReturn dialog
Lost/replacement feereplacementCost from book recordBook record — Rental Settings

Recording a payment

  1. Find the rental with outstanding fees
  2. Click Record Payment
  3. Enter the amount paid
  4. Select the payment method (cash, transfer, etc.)
  5. Add a note (optional)
  6. Confirm

After payment the rental shows feePaid: true and a feePaidDate timestamp.

Waiving a fee

Only users with library.manage permission can waive fees:

  1. Open the rental
  2. Click Waive Fee
  3. Enter the reason (kept as an internal note)
  4. Confirm

FilterOptions
Status tabsAll · Active · Overdue · Returned · Lost · Damaged
SearchBorrower name, book title, barcode
Overdue onlyToggle to show only past-due rentals
Fee statusUnpaid fees only / All
Borrower typeStudent / Teacher
Date rangeFilter by checkout date range

Rental table columns

ColumnDescription
BookTitle of the borrowed book
BorrowerStudent or teacher name
Checkout DateWhen the copy left the shelf
Due DateWhen it should be returned
StatusActive · Overdue · Returned · Lost · Damaged
Days OverdueNumber of days past due (only shown if isOverdue)
FeesOutstanding fees (0 if no fees or fees paid)
ActionsReturn · Renew · Remind · Lost · Delete

Rental lifecycle