/
Support DCB virtual item renewal in FOLIO

Support DCB virtual item renewal in FOLIO

Submitted

Jan 28, 2025

Approved

 

Status

draft

Impact

medium

Arch Ticket

https://folio-org.atlassian.net/browse/ARCH-305

Prod ticket

UXPROD-5116: Support DCB virtual item renewal in FOLIOOpen

Problem Statement

Currently, the renewal of a DCB virtual item by the borrowing library is not detected by DCB. The requirement for DCB is to detect virtual item renewals initiated in the borrowing library and trigger a corresponding renewal of the item in the supplier library. When a renewal occurs, the due date will change in accordance with the loan/circ rules that govern the loan.

OpenRS will detect a DCB virtual item renewal at the borrowing library and initiate the corresponding item renewal at the supplying library.

Requirements

See: UXPROD-5116: Support DCB virtual item renewal in FOLIOOpen

 

Assumptions

Baseline Solution

See: DCB Integration

Target Solution

Key aspects:

  • The GET status API should be extended with renewal count and renewal maximum number in the borrowing or borrowing-pickup role.

  • The renewal status should be available only when the transaction status is ITEM_CHECKED_OUT

  • The GET status API should have a new optional section (renewalPolicy) in Response:

{ "item": { "id": "^aaaaaaaa-aaaa-1aaa-8aaa-aaaaaaaaaaaa$", "title": "string", "barcode": "string", "materialType": "string", "lendingLibraryCode": "string" "renewalPolicy": { "renewalMaxCount": "integer", "renewalCount": "integer" } }, "patron": { "id": "^aaaaaaaa-aaaa-1aaa-8aaa-aaaaaaaaaaaa$", "group": "string", "barcode": "string", "borrowingLibraryCode": "string" }, "pickup": { "libraryName": "string", "libraryCode": "string", "servicePointId": "string", "servicePointName": "string" }, "role": "BORROWER" }

Sequence Diagram

The DCB Hub polls the status of the DCB transaction:

  • the transaction is in ITEM_CHECKED_OUT and role is borrowing or borrowing-pickup

  • mod-dcb gets renewal counts from mod-circulation

  • the DCB hub should receive information on renewal counts

The patron requests renewal:

  • the transaction is in ITEM_CHECKED_OUT and the DCB hub has information on renewal counts

  • the DCB hub renews the loan through the edge-patron API of the lending institution

  • the loan is renewed in the lending institution