Bug 41400 - Support the use of distinct values for record-level types and item-level types
Summary: Support the use of distinct values for record-level types and item-level types
Status: NEW
Alias: None
Product: Koha
Classification: Unclassified
Component: Circulation (show other bugs)
Version: Main
Hardware: All All
: P5 - low enhancement
Assignee: Bugs List
QA Contact: Testopia
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-12-07 14:56 UTC by Mathieu Saby
Modified: 2025-12-08 18:45 UTC (History)
3 users (show)

See Also:
GIT URL:
Initiative type: ---
Sponsorship status: ---
Comma delimited list of Sponsors:
Crowdfunding goal: 0
Patch complexity: ---
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mathieu Saby 2025-12-07 14:56:49 UTC
Following the discussions under Bug 38042, I propose this enhancement : support the use of distinct values for record-level types (biblioitems.itemtype) and item-level types (items.itype).

The way Koha manages item and record type is different from most ILS, and does not allow the flexibility required to manage a library network if it is not made possible to use different values in biblioitems.itemtype and item-level types.

Many libraries, particularly in France, have been using different values for several decades, probably since the introduction of Koha in France. But currently this configuration can cause issues (cf Bug 38042).

Use case :
- Book1 and Book2 are owned by Library1 and Library2.
- circulation rules are based on item-level itemtype
- at the record level, the type for the 2 records is "book"
- Library1 wants to apply the standard circulation rule to Book1 and Book2 (thus using the same value in item-level itemtype, eg. "NORMALLOAN")
- Library2 wants to restrict the use of book1 by applying a specific circulation rule, but agree to apply the standard rule to Book2 (thus using distinct values in item-level itemtype, eg. "NORMALLOAN" and "SHORTLOAN")