LC User Registration

Submitted

Feb 15, 2024

Approved

 

Status

Draft

Impact

medium

Arch Ticket

https://folio-org.atlassian.net/browse/UXPROD-4663

Prod ticket

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

Context

Patron registration data flows to FOLIO from a web-based patron registration form into the Users app to create new User records. These Users will be considered distance patrons and will have no or limited circulation privileges. When these patrons come onsite, their patron group may change, enabling access to circulation privileges, Reading Rooms, and physical card issuing that features a profile picture.

Getting a library account starts with "reader registration".  The first step is filling out online form (current form). FOLIO needs to collect the data from pre-registration form and create limited User records for new patrons. Many people (from researchers to tourists) want a physical Library of Congress library card.  A card is not required to visit the Library, but it is needed to enter the public reading rooms and is a souvenir.

Library of Congress need this feature but it will likely be useful for other libraries (especially public and national).  The solution should be designed in such a way that it would be useful to any library with this need.

Requirements

Functional Requirements

As described in prod ticket: https://folio-org.atlassian.net/browse/UXPROD-4663

Workflow diagram

Swimlane diagram (V2)

The process of remote registration for LC is based on the interaction of a patron with a pre-registration form through Locate UI. To support the flow Locate should be able to verify the patron’s email address.

Non-functional Requirements

  1. Manageability

    1. The solution should provide the ability to configure specific LoC fields without affecting other Libraries

  2. Interoperability

    1. The solution should provide external API for 3rd party applications to create patrons in FOLIO

  3. Security

    1. The solution should provide an authorization mechanism through FOLIO edge module API keys mechanism

Assumptions

  • Locate verifies the patron’s email address before starting pre-registration in FOLIO

  • Locate can define and represent in UI the current status of patron’s registration in FOLIO (expired or not)

Target Architecture

Context Diagram

Container Diagram

The solution should be imlemented as new edge-API in edge-patron module to provide access for external application.

 

  1. Edge API Contract

  1. Configuration Settings

    1. The solution should provide a UI screen to map values for externally created patron accounts to correct FOLIO values:

      1. Patron group: FOLIO User should be able to select existing patron group for new patrons

      2. Expiration date: FOLIO User should be able to select the existing patron group for new patrons

      3. For user type and status the solution should provide related defaults described in prod ticket

    2. The solution should provide a UI setting for the one-time operation to create LoC-required custom fields. The list of custom fields is attached to