Skip to main content
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    Self-Check Machines

    To configure a self-check type of integration profile, you must have the following role:
    • General System Administrator
    To associate a self-check profile with a circulation desk, you must have the following role:
    • Fulfillment Administrator
    Learn about Self-Check machines in the Integration with Self-Service Systems video (23:24 mins).
    Alma receives and acts upon received SIP messages from SIP 2.0 self-check machines and returns responses to these machines. For details on the integration with self check systems, see
    The setup in Alma is only informative and enables the operator to provide a view of the self check machine setup. However, the actual execution is carried out according to actual self-check machine setup. For example, the library can configure the Alma self check profile to not allow check-in\checkout. However, this will only be actually implemented if the self machine is configured to not allow check-in\checkout. 
    To configure the communication between Alma and a self-check machine:
    1. Configure a self-check type of integration profile (see the procedure below).
    2. Associate the self-check profile with a circulation desk (see the procedure below). The self-check machine will be able to provide services only to locations that are serviced by this circulation desk. (Note that a circulation desk, if defined as a primary circulation desk, can service other libraries – see Configuring Fulfillment Services Between Libraries Within an Institution. For general information on circulation desks see Managing Patron Services at a Circulation Desk).
      If your institution is in the implementation phase, you cannot perform this step. Contact your Ex Libris project manager to perform this for you.
    3. Configure a secure transmission between Alma and the self-check machine, following the instructions located in the Ex Libris Developer Network: These procedures should be performed after you configure a self-check integration profile in Alma.
      A separate self-check profile and corresponding certificate (see step 5) are required for each group of self-check machines that have different capabilities (for example, one for machines that support fee payments and another for machines that support only check-in/checkout). A separate profile is also mandatory for each machine that is linked to a separate circulation desk, as each profile can be linked to only one circulation desk. Note that the certificate you obtain is valid as long as the integration profile exists, regardless of any changes made to the profile.
      • The format of dates for self-check machine messages is determined by the system_time_format parameter (Configuration Menu > General > General Configuration > Other Settings). If this parameter contains the z symbol, the time zone is included in the date sent in self-check machine messages.
      • If you want to use a self check machine to handle items from other institutions in your fulfillment network, this may only be done if you are using unique barcodes across the network as defined in the fulfillment_network_unique_barcodes parameter. See Configuring Other Parameters (Fulfillment)
    To configure a self-check type of integration profile:
    1. On the Integration Profiles List page (Configuration Menu > General > External Systems > Integration Profiles), select Add Integration Profile. The first page of the integration profile wizard opens.
    2. Perform the following actions on this page:
      1. In the Code and Name fields, enter a code and name (respectively) for the profile you are defining.
      2. From the Integration type drop-down list, select Self-check.
      3. In the System (for Ex Libris’ informational purposes) field, indicate the type of self-check system with which you are integrating. Note that this is mandatory.
        1. If you select Other from the list of systems, the System Description field appears for further system details.
      4. Optionally, in the Description field, enter a description of the integration you are configuring

        Integration Profile Self Check_newUI.png

        Self-Check Machine Integration Profile Definition – Page 1
    3. Select Next. The second page of the wizard opens.

      Self Check Integration Profile Page 2_newUI.png

      Self-Check Integration Profile Definition – Page 2
    4. Under General Information, perform the following actions:
      • In the SC Identifier field, enter any string.
      • Select whether you want the self-check machine to send the following to Alma:
        • Error correction – Select Yes for Alma to send/receive sequence numbers and checksums as part of the relevant messages. If this capability is enabled on the self-check machine, it must be enabled here as well. If you do not want to use this option, select No and turn it off also on the self-check machine.
        • Alert – Select Yes for Alma to send/receive alert messages.
        • Item transfer – Item transfer messages (not currently supported)
      • SC language – select the language in which Alma and the self-check machine communicate.
      • Retries allowed and Timeout period – enter the number of times you want Alma or the self-check machine to try to send a message following a failure of the first message to reach its destination, and the amount of time, in seconds, between each retry.
        Note that the recommended number of retries allowed is 2-5 and the recommended timeout period is 50-70 seconds.
      • Checkin, Checkout, Renew Policy, Fee Payments, Return Message – Select the actions to be supported (Yes/No) between Alma and the self-check machine. (Note that Return message is not currently supported.)
        • If you are using a 3M self-check machine, the checkin option must be set to Yes, due to a 3M requirement for enabling initial communication. If you do not want the check-in action to be allowed, ensure that you block it when configuring your 3M self-check machine.
        • If Renew Policy is set to No, Primo indicates to the patron that they should not renew the resource, but this setting has no effect on Alma. If the patron requests a renewal in any case, Alma does not block the renewal.
      • Extension type – select Extended fines and fees (Extended check-in is not currently supported) to enhance your self-check messages (SIP2) with additional fields. This option includes the following elements for each open charge in the SIP2 Patron Information Response message and allows self-check users to view this information (if available) when requested:
        Not all self-check machines support this option. This option should not be selected for self-check machines that handle only loans and returns (and not payment).
        • EB - Barcode of the item that is linked to the charge (such as for an overdue/lost item)
        • ET - Title of the item that is linked to the charge
        • EC - Cash transaction type code
        • ED - Cash transaction type description
        • EF - Sum
        • EK - Fee ID
        • BZ - Payment transaction number
      • Item Identifier – select the type of ID—Barcode, Call number, or Item ID—used to match physical items when incoming messages contain item IDs. The Item Identifier drop-down in the self-check integration profile sets whether the self-check machine sends barcodes or PIDs to Alma.
      • Authentication required – select Yes if you want the patron to be required to supply a password. Note that the PIN code can be updated by the patron in Primo only if the use_pincode_for_selfcheck_machine parameter is set to true in the Customer Parameters table (see Configuring Other Settings).
      • Allow Fulfillment Network Users (supported for fully unique identifiers only) – select Yes for Alma to search for the user locally, then in fulfillment network members. The search stops when a match is found and the linked account is created automatically. This is only supported if user identifiers are fully unique across the fulfillment network as defined in the network_users_unique_identifiers parameter. See Configuring User Management. When the field is set to No, Alma searches only local users in response to SIP2 messages.
      • Allow Fulfillment Network Items – for institutions in fulfillment networks that are set up to only allow fully or partially unique barcodes (this option can be set by Ex Libris support), select Yes to allow SIP2 transactions for items from other institutions, or No to limit the SIP2 to items from the local institution. If Yes is selected, when an item from another institution is handled, Alma checks if duplicate barcodes exist in the network. If they do exist, the self-check transaction is refused and the item can only be loaned at the desk. Otherwise, the transaction is completed.
      • The Close Process field defines how Alma handles a currently active work order on the item (if any), or a purchase order line that is waiting to be received. For example, if the item is in acquisition and being received from the vendor, or if the item has an active work order (such as an acquisitions technical worker order). This field enables you to to remove work orders from items by scanning their barcodes at the self check machine or to receive an ordered item at the self check machine.
        • If you select Yes, Alma marks the existing work order as Done. For example, for a purchased item arriving from a vendor, Alma receives the item, just as if the user selected Receive on the Receive New Material page (see Receiving New Physical Material). The item is send to its permanent location (using a transit for reshelving request). If there is a different currently active work order or request on the item, then Alma marks the workflow as Done and continues the item's workflow.
        • If you select No, Alma does not change the status of any existing work order. The default value is No.
      • Prevent Requested Items Check In – select Yes to prevent checking in requested items and instruct the patron to return the item at the circulation desk.
        If you want to enable returns of items from other libraries, this option must be set to No. In addition, in the configuration of the circulation desk (Configuration Menu > Fulfillment > Library Management > Circulation Desks > General Details), Primary must be selected (see Configuring Circulation Desks), and in the configuration of the library (Configuration Menu > General > Libraries > Relationships), the library must have a Circulate for relationship with the owning library (see Configuring Libraries). 
      • For a secure TCP connection, select Download Certificate to download and save the certificate so that it can be used when configuring Stunnel (see step 3 in the introductory section above).
    5. Select Save. The profile you configured appears in the Integration Profile List.
    To associate a self-check profile with a circulation desk:
    1. Open the Circulation Desks List page (Configuration Menu > Fulfillment > (ensure you have selected the correct library in the location drop down list) > Library Management > Circulation Desk).
    2. Select Edit from the row actions list for the circulation desk you want to associate with the previously defined self-check profile, or select the Add Circulation Desk button to create a new circulation desk with which you want to associate the self-check profile.
    3. On the Circulation Desk – General Details page, under Self-Check Information, select the Has self-check check box and select a previously defined self-check profile from the Integration profile drop-down list. The password for the self-check machine is automatically listed in the Terminal password field. (For information on the other fields on this page, see Configuring Circulation Desks.)
      Circulation desk Self Check Information New UI.png
      Self-Check Information Section
      Verify that the Circulation Desk associated with the self-check profile does not have the Reading Room Desk check box selected. Otherwise, items that are checked out via self-check at this desk will not get desensitized.
    4. Select Save to store your changes to the circulation desk.