Managing Check-ins for Koha

Managing Check-ins

Koha has a number of ways to manage check-ins.

System Preferences for Checking in Items

  1. FineNotifyAtCheckin - should staff be alerted at check-in if the patron has fines
  2. ShowAllCheckins - should all items in the "Checked-in items" list, even items that were not checked out.
  3. WaitingNotifyAtCheckin - should staff be alerted at check-in if the patron has holds waiting for them
  4. SpecifyReturnDate - can staff specify a return date for a check-in.
  5. numReturnedItemsToShow - how many last returned items should show on the check-in screen.

Checking In Items

There are two main ways to check-in material from a patron. Choosing "Check-In" from the top green bar on the staff interface, a barcode can be scanned right into that box. Alternatively, going to the Circulation Module, staff can choose the 'Check In' option.


Circulation Settings

From this screen, check-in settings can also be adjusted, such as: specify return date, forgive overdue charges, and book drop mode. Specifying Return Date will allow staff to alter what date this item/s is recorded as being returned. For example, if the library had to close early unexpectedly due to a power outage or snowstorm. Forgive Overdue Charges will allow staff to forgive all overdue charges for items that are getting checked in. Book Drop Mode will allow staff to check-in items with the last date the library was opened according to the Library's Koha Calendar.


How to Back Date Check-ins

There are times when patron should not be charged for fines that aren't their responsibility (last night's book drop, hourly checkouts, busy staff can't get to check-ins right away, finding items around the library, etc.) and I want to make sure we can back date the check-ins. How do we do this?

You can control the time that you check in materials in Koha. Instead of using the check-in tab at the top of the screen, go to the Circulation module and click the 'Check in' box. Drop down the 'Check-in settings' option, and change the date or slide the time bars as needed to adjust the check-in time. This gives your patrons the benefit and does not add unnecessary fines you will have to void later. It also empowers library staff.


Changing Status and Location Upon Checkin

Koha offers several options on how materials, both new and existing, can be handled. The two familiar system preferences that control this are UpdateItemLocationOnCheckin and UpdateNotForLoanStatusOnCheckin, along with TrapHoldsOnOrder.

A key part of understanding how these all work is remembering the order Koha processes these changes. When an item is checked in, Koha will first UpdateItemLocationOnCheckin, then UpdateNotForLoanStatusOnCheckin, and finally, check for holds. It’s also important to not confuse Not for Loan/availability with Shelving Location.

Example Scenario

In the system preferences, I have the following:

UpdateNotForLoanStatusOnCheckin:
  1. -1: 0 (Ordered to Available)
  2. 0: -5 (Available to Quarantine)
  3. -5: 0 (Quarantine to Available)
So basically, if an item is checked out, when it is returned, it will go to Quarantine. If an item is Ordered, it will move to Available when it is checked in. If an item in is Quarantine, and I check it in, it will move to Available.

UpdateItemLocationOnCheckin:
  1. ALL: CART
Every item that is checked in will be moved to a shelving location of CART (this is the CART to SHELF cron job process that moves recently returned items from a temporary location to their permanent shelving location after a specified number of hours).

TrapHoldsOnOrder: Don’t trap

OK. Now on to the implementation.

I work in Acquisitions. I’ve just added a copy of the latest bestseller to its bib record. When entering my item record, I select the “New Fiction” shelving location where this item will live. I add the book jacket, stamp it, etc, and check the item in. The Not for Loan status changes from -1 to 0. Shelving location is set to CART. Any holds are triggered. Patron checks the book out and returns it. When the book is checked in, the Not for Loan status changes to -5 Quarantine, and shelving location changes to CART.

After 48 hours, when I have the CART to SHELF cron set to run, that shelving location will be updated to its permanent location. However, the Not for Loan status will not clear until it is checked in again, at which time the next hold would trigger.

Clear a Damaged Status on Checkin

'Damaged' is one status that libraries often use to mean different things. One library may use 'damaged' to indicate that they are aware a material is showing some wear and tear but will continue to circulate. Others may use it in conjunction with withdrawing an item, removing it from circulation altogether. And other libraries want to use a damaged status that is more temporary until the item can be repaired and returned to circulation.

A frequent question for libraries who use a damage status in this third way is then: Can we have that status clear on check-in once the item is repaired? The answer is currently, no, Koha does not have a mechanism to clear a damage status on return, though there is an enhancement request for this functionality in the Koha community.

In the meantime, a slight workaround can still make this functionality possible. If a library wants to have a damaged status that can clear on check-in, it is possible by creating a 'damaged' not for loan status. The important decision for librarians is whether items should be holdable when they're in this status. If an item should be allowed to be placed on hold while in this status, a negative not for loan value (Administration -> Authorized Values -> NOT_LOAN) will allow the item to be held; it can also be checked out in that status, but it will still need an override. Otherwise, a positive value not for loan status will render the item un-holdable without an override.

Once that value has been set up, make note of the numerical value associated with it, and hop over to Administration to set the values in the UpdateNotForLoanStatusOnCheckin preference.


This preference can accept multiple values, so what this example mapping means is that both a -2 In Processing not for loan value and a -5 Damaged not for loan value will set back to 0, or once again be available for loan, when an item is checked in.

Automatic Check-in

Automatic check-ins remove the need for staff to manually check in an item when it's due. This can be helpful for unique materials such as State Park Passes, Museum Passes, Seed Libraries, and more. 

Enabling Automatic Check-in 

This process allows libraries to identify an item type or multiple item types to be enabled as 'automatic check-in' 
  1. Navigate to Administration and select Item types.
  2. Click edit in the actions column to enable the item type of choice.
  3. Scroll down to Automatic check-in. If checked, items will be automatically checked in once they've reached their due date.

  1. Scroll to the bottom and click Save Changes.

Cron Job for Automatic Check-ins

This action requires the cronjob, Automatic_Checkin.pl to run. For ByWater Solutions partners, please submit a ticket to enable this cron job or if you are self-hosted run cronjob misc/cronjobs/automatic_checkin.pl

For more information about this cron job, see the Koha Manual.

Filling Holds

In addition to Koha automatically checking in an item (done via specific item types), Koha can also fill the next hold on that item and sends a notification to the patron. To enable this feature, set the system preference, AutomaticCheckinAutoFill, to 'Do' for a hold to be filled when the item is set to automatically be checked in. 

Here is an outline of the process:
  1. Have an Item Type set to automatically check in by selecting the box next to 'Automatic check-in'
  2. Set the system preference, AutomaticCheckinAutoFill, to 'Do'
  3. Check out an item in that item type that is set to automatically check in
  4. Place a hold on that item for another patron 
  5. Once the item's due date has past, the item will automatcally check in (via the cron) 
  6. The patron who was on hold for the item will receive a notice that their item is ready for pick up

Item Bundles at Check-in


When item bundles are checked-in, staff members first scan in the master barcode for the bundle, which will be followed with an additional options:



Staff can scan the barcodes of the individual items in the bundle or hit the confirm button and not have to scan each barcode.

How To Setup Self Check-in

The Self Check-in module has been available since Koha version 18.05. This will allow libraries to have a computer in the library dedicated to allowing users to check back in their items.

System Preferences

These system preferences are very similar to the Koha Self Check-out Module, which is handy to keep them somewhat consistent.

The system preferences for the self check-in module are:
  1. SelfCheckinModule: Enable/Disable the standalone self check-in module (available at: /cgi-bin/koha/sci/sci-main.pl). This will allow the library to use this module and also gives the end part of the URL needed to access the page.
  2. SelfCheckInTimeout: Reset the current self check-in screen after X secs. This allows the library to set up a time period when the self check-in screen will reset.
  3. SelfCheckInUserCSS: For custom CSS on the self check-in screen.
  4. SelfCheckinUserJS: For custom JavaScript on the self check-in screen.
A great advantage to have these specific customization tools, it will allow the library to customize the look of this module for their branding.

After this the self check-in module is enabled, ensure that the URL combined with the library’s OPAC url will link to the self checkin screen. It should look similar to the screenshot below:



For example if your library URL was library.bywatersolutions.com, you would add this to a browser page and then include /cgi-bin/koha/sci/sci-main.pl to the end of the URL. The combined URL would look like library.bywatersolutions.com/cgi-bin/koha/sci/sci-main.pl

There are two options for logging into this module, either with a super librarian user or with a staff patron with the Self Checkin Module permissions. Here are the permissions that can be added to a staff member. It does note that if this permission is enabled, this account will not have other OPAC functionality.


Tutorial Video


Use Batch Item Modification

Staff have the option to check-in items through batch item modification. These items will end the checkout but will not remove any fines or update any other statuses.
  1. Navigate to the Cataloging Module and select Batch Item Modification under the Batch editing column
  2. Upload a barcode or item number file or scan items one by one in the barcode list (free test form)
  3. Select the continue button
  4. On the next screen users will see a "Check in Items" option at the bottom of the screen.
    1. This option checks in items to remove them from patron accounts.
    2. Items are not marked found, nor do damaged/withdrawn statuses prevent this return, nor are item locations updated. This feature is intended to allow removal of checkouts from patron accounts without affecting fines or other statuses.
  5. Select the requested fields in the item modifications and click save
  6. On the Details of the job screen, staff will now see an option under the detailed messages to view the items that were modified and export the file as needed.
    • Related Articles

    • Koha Offline Circulation Tool

      The Koha Offline Circulation Tool that was created by Kyle Hall for Windows. The offline circulation tool for Windows will generate a KOC (koha offline circulation) file that you can upload into Koha once your system comes back up. This tool works ...
    • Holds in Koha

      This article discusses the holds lifecycle, including system settings, placing, filling, and modifying holds, holds-related notices, working with hold logs, and more. We encourage you to use the Table of Contents to jump to a specific section or ...
    • Changing Circulation Rules

      Let's take a look at what happens when you change your circulation and fine rules and discuss how Koha receives the data and processes a circulation transaction. At checkout When you scan a barcode into the checkout box, Koha zips through a lot of ...
    • Managing Checkouts

      What are Batch Checkouts? In Koha, there is a workflow that would allow libraries to batch checkout items. To set this feature up, the system preference, BatchCheckouts, will need to be turned on. The other system preference, ...
    • Circulation Rules Default Policies

      In addition to the circulation and fine matrix, the Default Policies control other aspects of circulation. Koha reads the Default Policies from the bottom of the page to the top. Default checkout, hold, and return policy You can set a default maximum ...