Pickup workflow for Folio interaction

Description

To integrate 3 legged requesting for Folio, DCB will need to use the Folio DCB integration Pickup flow. The details of this flow can be found here. To ensure that the request has the correct information, the payload fields will be presented and explained below.

Item Section (item)

  • id: A UUID constructed from the supplying agency code and the supplying local item id with a colon in between. The colon will have no spaces before or after.

  • title: The title from the virtual bib that was created in the pickup agency by DCB.

  • barcode: The barcode from the item in the supplying agency. Consistent with the Borrowing_Pickup flow.

  • materialType: Derived from the local item type mapping.

  • lendingLibraryCode: Supplying agency code.

Patron Section (patron)

  • id: The local patron id from the patron that was found or created in the pickup agency.

  • group: The determined patron type from the home identity in DCB. Virtual identity values are not trusted to be correct.

  • barcode: The home identity barcode in DCB. The virtual identity values are not trusted to be correct.

Pickup Section (pickup)

  • servicePointId: Resolved pickup location local id.

Role Field (role)

  • role: A string value of “PICKUP“.

Gantt Predecessor

Activity

Show:

Alex Scott March 11, 2025 at 9:14 AM

What code review is intended for this work (or is this is a holding status before this work can be closed / go to QA)?

Yes, it can go into QA now that the release of DCB Service has been made.

Marc Johnson March 10, 2025 at 6:08 PM

What code review is intended for this work (or is this is a holding status before this work can be closed / go to QA)?

Marc Johnson March 4, 2025 at 7:52 AM
Edited

I wonder if DCB Service may need to also integrate the Borrowing flow to enable pick up anywhere in folio. DCB Service currently uses the Borrowing_PickUp flow for all borrowing requests and this may not be sufficient for pickup anywhere requesting. Can we confirm this change will be needed?

Yes, my understanding is that the role for the request at the borrowing library needs to vary depending upon the workflow

Could you review and let me know if any changes or corrections are needed?

I think this is broadly good, only a few minor thoughts below

A UUID constructed from the supplying agency code and the supplying local item id with a colon in between. The colon will have no spaces before or after

IIUC the UUID generation for this is consistent (in that it generates the same UUID for the same parameters). That may mean that if both the borrowing and pickup libraries local systems are FOLIO, the same item UUID is used for both. I don’t know if consortial FOLIO or mod-dcb will tolerate duplicate item UUID across two tenants / concurrent transactions

This might be one for and the Volaris folks

I don’t think this question should hold up development work, as it’s probably ok

The local patron id from the patron that was found or created in the pickup agency

IIRC for FOLIO, no virtual patron is found or created prior to the use of the transaction API for placing in the supplying library. Instead this is just a UUID generated within dcb-service. I imagine it will be similar for the pickup library

Derived from the local item type mapping

 

The determined patron type from the home identity in DCB

IIRC both of these will be mapped from canonical to local, I think from your description you’ve already considered that

Alex Scott March 3, 2025 at 2:43 PM
Edited

I wonder if DCB Service may need to also integrate the Borrowing flow to enable pick up anywhere in folio. DCB Service currently uses the Borrowing_PickUp flow for all borrowing requests and this may not be sufficient for pickup anywhere requesting. Can we confirm this change will be needed?

Alex Scott March 3, 2025 at 2:34 PM
Edited

Hey I’ve put together my understanding of the values that the DCB Service will need to pass to Folio’s DCB integration pickup flow. To do this, I referenced the values used in the Lending and Borrowing_Pickup flows, as they are already integrated into the DCB Service and seemed like a logical starting point.

Could you review and let me know if any changes or corrections are needed? I’d appreciate your thoughts!

Details

Assignee

Reporter

Components

Priority

Created February 27, 2025 at 10:26 AM
Updated March 11, 2025 at 9:14 AM