# Library & circulation

Maintain titles and copies, lend books, manage reservations and handle fines.

Category: Campus
Guide: https://avkul.in/docs/guides/module-library/
Guided sample demo: https://avkul.in/docs/demo/module-library/
Snapshot: 11 October 2026

## Features

- Book catalogue
- Copy availability
- Issue and return
- Renewal
- Reservations
- Library policy
- Fine collection and waiver

## Access and setup

Intended access: Super Admin, School Admin, Principal, Vice Principal, Management, Librarian
- An assigned school account with the required permissions.
- The academic, student or staff setup used by this workflow.

Permission keys: library:view, library:create, library:update, library:delete, library:manage

## Workflow

1. Create a title and its physical copies.
2. Check borrower eligibility and issue an available copy.
3. Return or renew the loan and review reservations.
4. Review overdue items and any permitted fine action.

## Fields and controls

- title (string, declared required)
- author (string, optional)
- publisher (string, optional)
- isbn (string, optional)
- category (string, optional)
- edition (string, optional)
- rackNo (string, optional)
- price (number, optional)
- id (string, optional)
- version (string, optional)
- reason (string, optional)
- bookId (string, declared required)
- barcode (string, declared required)
- status (string, optional)
- copyId (string, declared required)
- dueDate (string, optional)
- condition (string, declared required)
- additionalCharge (number, optional)
- loanDays (number, optional)
- finePerDay (number, optional)
- graceDays (number, optional)
- maxBooksPerBorrower (number, optional)
- maxFinePerIssue (number, optional)
- blockIssueOverDues (number, optional)

## Current limits

- Availability, borrower policy and reservation rules affect issue/renewal. A fine record is distinct from a fee gateway payment.

## Actual application access

- https://avkul.in/en/school/library

## API reference

- GET /api/v1/library/workspace — Workspace; library:view
- GET /api/v1/library/books — Books; library:view
- GET /api/v1/library/copies — Copies; library:view
- GET /api/v1/library/issues — Issues; library:view
- GET /api/v1/library/overdue — Overdue; library:view
- POST /api/v1/library/books — Book; library:create
- PATCH /api/v1/library/books/:id — Edit Book; library:update
- DELETE /api/v1/library/books/:id — Delete Book; library:delete
- POST /api/v1/library/copies — Copy; library:create
- PATCH /api/v1/library/copies/:id — Edit Copy; library:update
- DELETE /api/v1/library/copies/:id — Delete Copy; library:delete
- POST /api/v1/library/issues — Issue; library:create
- POST /api/v1/library/issues/:id/return — Return Book; library:update
- POST /api/v1/library/issues/:id/renew — Renew; library:update
- POST /api/v1/library/issues/:id/remind — Remind; library:update
- POST /api/v1/library/reservations — Reserve; library:create
- POST /api/v1/library/reservations/:id/cancel — Cancel; library:update
- GET /api/v1/library/policy — Policy; library:view
- PATCH /api/v1/library/policy — Set Policy; library:manage
- GET /api/v1/library/fines/outstanding — Outstanding; library:view
- GET /api/v1/library/issues/:id/fine — Summary; library:view
- POST /api/v1/library/issues/:id/fine/collect — Collect; library:update
- POST /api/v1/library/issues/:id/fine/waive — Waive; library:manage
- POST /api/v1/library/fines/:id/void — Void; library:manage

## Demo access

No login is required for the guided sample demo. Its fictional records and actions stay in this browser tab; they do not modify ERP records or send messages/payments. An assigned account is required for the actual ERP links.

Source inventory checked on 11 October 2026. This source inventory is not a certification of every external provider or device flow.
