Asset Lending Manager is an open-source WordPress plugin that helps any organization manage shared physical assets and internal lending workflows.
Designed for clubs, associations, schools, public bodies, libraries, laboratories, makerspaces, and any group that loans equipment or materials to its members.
Members can browse available assets and submit loan requests, while operators and administrators can manage assignments and loan history.
Born within an association of amateur astronomers to manage telescopes and equipment, it is published as a general-purpose tool usable by any organization.
Requires the Advanced Custom Fields (ACF) plugin (free version) to store and manage asset details.
Features
- Asset and kit management (a kit is a group of items lent together as a set)
- Public browsing page with search and taxonomy filters
- QR code generation and printable label from the asset detail page
- QR scanner from the asset list (camera-based quick lookup)
- Loan request workflow: members submit requests, the current asset owner approves or rejects
- Direct assignment by operators and admins (when enabled; a reason is always required)
- By default, when an asset is assigned, all other pending requests for it are automatically canceled (configurable)
- Email notifications for all loan workflow events (request, approval, rejection, cancellation, direct assignment, forced return), when notifications are enabled
- Asset state management from the frontend: operators can set assets to maintenance or retired, or force-return on-loan assets directly to available; a location is required on every state change
- Full loan history for each asset
- Two user roles included: Member (can browse and request loans) and Operator (can manage assignments, states, and history)
- Read-only JSON REST API at
/wp-json/almgr/v1/ for asset list, asset detail, member list, and member assets; authentication via WordPress core (cookie session, REST nonce, Application Passwords)
- Back-office Tools page (ALM → Tools) with Import, Export, and Utilities tabs
- Users CSV import from the Tools page (admin only)
- Users CSV export from the Tools page (admin and operator)
- Assets CSV import from the Tools page (admin and operator)
- Assets CSV export from the Tools page (admin and operator)
- Translation-ready
Requirements
This plugin requires the Advanced Custom Fields plugin (free version is sufficient).
You can install it for free from the WordPress plugin directory: https://wordpress.org/plugins/advanced-custom-fields/
ACF is used to store and retrieve all custom asset fields (manufacturer, model, location, serial number, etc.).
The plugin registers the ACF field group automatically — no manual configuration of ACF fields is needed.
Loan Workflow
- A member browses the available assets.
- A loan request is submitted for a selected asset.
- Notification emails are sent to the requester and, when applicable, to the current owner.
- The current owner can approve or reject the request.
- On approval, the asset is marked as on loan and the new borrower is recorded.
- Operators and admins can also directly assign any asset that is not retired or under maintenance, without a prior request (when direct assignment is enabled).
- All decisions and assignments are recorded in loan history.
Credits
This plugin bundles the following third-party JavaScript libraries:
- qrcode-generator by Kazuhiko Arase (http://www.d-project.com/), MIT License
- jsQR by cozmo (https://github.com/cozmo/jsQR), Apache License 2.0
Both licenses are compatible with GPLv2 or later. License files are included in assets/js/vendor/.