Skip to content
  • There are no suggestions because the search field is empty.

Add your Perlego catalogue to Ex Libris Alma

Learn how to export your Perlego MARC records and import them into Ex Libris Alma via SFTP.


Included: Essential (self-serviced), Enhanced (self-serviced), Ultimate (serviced)
Add-on required: Yes, if you are Essential or Enhanced tier and you require Perlego to manage the SFTP delivery

Table of contents

  1. Overview
  2. Before you start
  3. Step 1: Configure SFTP access in Alma
  4. Step 2: Create the import profile
  5. Step 3: Get the MARC file into your SFTP directory
  6. Step 4: Test, then schedule or run
  7. Step 5: Configure linking and access guidance for users
  8. Step 6: Handling deletions
  9. Keeping your catalogue up to date
  10. Troubleshooting

Overview

Connecting Perlego to Alma lets your exact collection appear as discoverable, searchable inventory in your catalogue and Primo/Primo VE, without any manual cataloguing.

Perlego offers two ways to get the MARC file into Alma:

  • Managed delivery (Ultimate tier): Perlego's team uploads the file into your Alma SFTP directory each month, so your catalogue refreshes automatically as Perlego adds new titles.
  • Self-service (any tier): Download the file yourself via Perlego's Catalogue Export feature and upload it into your SFTP directory — see Step 3. This isn't automatic, so you'll need to repeat the export and upload each month to keep your catalogue current.

The Alma import profile configuration (Step 2 onwards) is identical either way.


Before you start

Make sure you have:

  • Alma access with the Catalog Administrator or Repository Administrator role (needed to create and edit import profiles)
  • Clarity on which route you'll use to get the file: Perlego-managed upload (Ultimate tier only) or self-service via Catalogue Export (available on any tier) — see Overview
  • Create a local Electronic Collection (e.g. named "Perlego") to hold the portfolios
  • Access to your Alma Sandbox environment, separate from Production, for testing
  • A member of your Perlego account team you can share SFTP delivery details with

Note: The full Perlego collection is a single file that can exceed 1GB and contain over 1 million records. Always test with a small file in your sandbox first — see Step 4.


Step 1: Configure SFTP access in Alma

Alma includes a built-in, out-of-the-box connection called the Ex Libris Secure FTP Service, so you don't need to stand up or maintain your own SFTP server for this integration.

Full Ex Libris documentation: Configuring Ex Libris Secure FTP Service

  1. In Alma, go to Configuration Menu > General > External Systems > S/FTP Definitions. The Ex Libris Secure FTP Service section is enabled by default — you don't need to enter a server, port, or username, as these are already provided.
  2. Select Regenerate private key to download the RSA private key. This is what's used to log in to the service (via FileZilla or a similar client).

    Note: Store this key securely, and don't select Regenerate private key again once you're connected — doing so resets the connection.

  3. Your institution's Ex Libris Secure FTP directory has two sub-directories: Sandbox and Production. It has a 4GB storage limit and a 30-day data retention period.
  4. Share the SFTP host details and credentials with your Perlego account contact, so their team can place the monthly MARC file directly into the correct sub-directory.

Step 2: Create the import profile

Full Ex Libris documentation: Managing Import Profiles

Go to Resources > Import > Manage Import Profiles > Add New Profile, and select Repository as the profile type — this is the type used for loading bibliographic MARC records directly into the catalogue.

The settings below reflect a configuration successfully used by partners for their live Perlego import. Use them as your starting point, and adjust anything specific to your cataloguing conventions with your systems/cataloguing team.

2.1 Profile Details

Field Recommended value
Profile name Perlego
Profile description Perlego eBook subscription
Originating system Other
Import Protocol FTP
Physical source format Binary
Encoding format UTF-8
Source format MARC21 Bibliographic
Target format MARC21 Bibliographic
Cross walk No
Status Active
Files to import New
Scheduler status Inactive while building and testing the profile — see the note below
Scheduling Monthly, at a quiet time — e.g. last Thursday of the month at 02:00
Email Notifications Add your systems team so failures are flagged
S/FTP Connection Type Select from Configured FTP → Ex Libris Secure FTP Service
File name patterns *.mrc

Note: Leave Scheduler status set to Inactive while you're building and testing the profile. Trigger your sandbox and first production test runs manually instead, using Run Import from the Import Profiles page row actions (see Step 4) — this keeps every test run under your control rather than tied to a calendar. Only switch Scheduler status to Active with the monthly Scheduling value once you're happy with the test results and have agreed a delivery cadence with your Perlego contact.

2.2 Normalization & Validation

Field Recommended value
Filter out the data using None required
Correct the data for matching and cataloging using A normalization process suited to your e-resource cataloguing standards. Work with your cataloguing team to build an equivalent if you don't already have one
Change the data for PO Line and Inventory using Not used
Handle invalid data using MarcXML Bib Import (Ex Libris' standard recommendation)
Skip records with validation issues Recommended on for the full production load, so a handful of malformed records don't stop a 1M+ record job. Leave off for your small sandbox test, so you can see any issues directly

2.3 Match Profile

Field Recommended value
Match by Serial/Non-Serial Yes
Serial match method ISSN (exact subfield match) / 024 / 035
Non-serial match method ISBN (exact subfield match) / 024 / 035
Select an Electronic Collection to match against Your Perlego collection (from "Before you start")
Handling method Automatic
Upon match Overlay
Select Action ✓ Disregard matches for bibliographic CZ-linked records <br> ✓ Single match — match only record with the same inventory type (electronic/physical) <br> ✓ Match on title type
Merge rule applied on overlay A rule that retains the 506 (access restriction) note for single-title eBooks — build this with your cataloguing team if needed
Allow bibliographic record deletion Enabled
Do not override/merge a record with lower brief version Enabled
Do not override Originating System Enabled
Community Zone linked records handling Update Community Zone record with local extensions
Do not override/merge record with an older version Disabled

Automatic Multi-Match Handling

Field Recommended value
Select Action Disregard matches for bibliographic CZ-linked records; Disregard invalid/canceled system control number identifiers; Prefer record with the same inventory type (electronic/physical)
Conclusive action for remaining multiple matches Skip and do not import unresolved records
Merge & Combine — Preferred record Record with the most items
Merge & Combine — Secondary record Delete
Merge & Combine — Merge method Overlay all fields but local
Merge & Combine — Update holdings call number No
Record Redirection — Canceled record Delete
Record Redirection — Merge method Overlay all fields but local
Record Redirection — Update holdings call number No
No Match — Upon no match Import

2.4 Inventory Information

Field Recommended value
Inventory Operations Electronic
Delete/deactivate portfolios No
Use Community Zone portfolios No
Portfolio type Part of an electronic collection
Electronic Collection Your Perlego collection
Service Full Text
Material type Book
Portfolio Single portfolio
Create inventory only for new bibliographic records Yes
Extract access URL from field 856, subfield u
Extract public note from field Leave the field blank; set the Default Value to: "View this book online, via Perlego, both on- and off-campus"
Activate resource Yes

Note: The Set Management Tags tab can usually be left at its defaults unless your institution applies specific management tags to imported sets.

Select Save once all tabs are complete.


Step 3: Get the MARC file into your SFTP directory

How the file gets to Alma depends on your tier:

3.1 Managed delivery (Ultimate tier)

Once your SFTP details are shared and the import profile is saved, this is handled by Perlego:

  • Perlego's team uploads the full MARC record file to the Sandbox sub-directory first, for your initial test
  • Once you confirm the test import worked, they upload to the Production sub-directory on the agreed monthly schedule

You don't need to manually retrieve or move the file — it's placed directly where your import profile expects it.

3.2 Self-service download (any tier)

You can download the MARC file yourself using Perlego's Catalogue Export feature — available on Essential, Enhanced, and Ultimate tiers — then upload it to your Alma SFTP directory:

  1. Log in to your Perlego admin account and go to the Subscription Manager.
  2. Select the Catalogues tab in the left sidebar.
  3. Click Export Catalogue.
  4. Choose All topics (for the full collection) or select specific topics for a subset.
  5. Choose MARC as the format (not KBART — Alma's import profile expects MARC21).
  6. Wait for the export to process — large MARC downloads (like the full collection) can take around an hour.
  7. Once ready, find it in the catalogue requests table and click Download.
  8. Using an SFTP client (e.g. FileZilla) and the RSA key/credentials from Step 1, connect to your Ex Libris Secure FTP directory.
  9. Upload the file to the Sandbox sub-directory first for testing, then to Production once you're ready to go live.

Since there's no managed monthly delivery on this route, you'll need to repeat the export and upload yourself each month — see Keeping your catalogue up to date. Full instructions for the export step: Export your catalogue.

Note: Whichever route you're on, the import profile configuration in Step 2 works the same way — Alma just picks up whatever file matching *.mrc lands in the directory.


Step 4: Test, then schedule or run

Note: Always test with a small file before the full collection. The complete Perlego catalogue can exceed 1GB and 1 million records — testing catches configuration issues (matching, inventory mapping, normalization) on a manageable dataset before they multiply across the full run.

  1. Get a small test file — either ask Perlego for a small sample (managed delivery) or export a small subset yourself via Catalogue Export (self-service).
  2. Run the import profile manually against your Sandbox environment: from the Import Profiles page, select Run Import from the row actions.
  3. Check the job report and spot-check a few resulting bibliographic records and portfolios in the sandbox catalogue.
  4. Once you're happy with the test results, either:
    • Let the monthly schedule run automatically against Production, or
    • Trigger it manually via Run Import the first time, to confirm the production load behaves as expected

Step 5: Configure linking and access guidance for users

Both of the settings below live on the same Electronic Service Editor page — go to Resources > Electronic Resource Management > Electronic Collections > select your Perlego collection > Edit Service. Neither is part of the import profile, so this is a one-time setup that applies to every Perlego title automatically.

5.1 Make sure no proxy is applied to Perlego links

Perlego handles its own authentication — users register once and log in with their institutional email address — rather than authenticating by IP address the way most journal databases do. Because of this, Perlego URLs should not be routed through your EZproxy, OpenAthens, or other proxy server.

Open the Linking tab and check:

Field Recommended value
Proxy Enabled No
Proxy Selected Leave blank

Note: Alma normally inherits a proxy setting from your institution's defaults, so it's worth checking this explicitly rather than assuming it's already off — otherwise Perlego links can end up wrapped in a proxy redirect that Perlego's own login flow doesn't expect, breaking the link or creating a confusing double authentication step.

Note: This is best set once at the Service level (as above) rather than per portfolio — portfolios inherit the service-level proxy setting unless you deliberately override it.

5.2 Add access & authentication guidance

Beyond the "View this book online" note built into the import profile, it's worth adding fuller guidance text so users understand how to access Perlego content before they click through from Primo VE.

Open the Notes tab. There are two fields available here:

Field What it's for Example wording
Authentication Note Displays with guidance about accessing/authenticating into the resource. Can hold more than one paragraph. "To access Perlego content, you first need to register on their website and then log in with your [your institution] email address. Perlego content is only available for staff and students at [your institution]. For details about this platform's accessibility, visit the Library's Ebook suppliers accessibility features page (your library's own accessibility page URL). Perlego titles are read-only on desktop. For more information about downloading Perlego titles on mobile, visit the Perlego Help Centre."
Public Note General information about the service. "View this book online, via Perlego, both on- and off-campus"

Note: Swap in your own institution name, your own accessibility page link, and a link to the Perlego Help Centre rather than reusing this wording as-is.

Note: If Group Settings are enabled on this Electronic Collection, set these notes on the Collection Editor's Notes tab (or the service-level Group Settings Profile) instead — a Public Note set at the Service Editor level won't trickle down to individual portfolios when Group Settings are in use.


Step 6: Handling deletions

Title removals work differently to the main catalogue feed, and it's worth understanding the mechanics before you need them.

Perlego does not currently code deletions using a "d" in the MARC Leader position 05, which is the convention some other vendor feeds use to trigger an automatic delete on import. Instead, when you need titles removed, Perlego sends a CSV listing the Book IDs to be removed — this isn't self-serve today (unlike the main Catalogue Export), so request it through your Perlego account contact when you need it.


Keeping your catalogue up to date

  • Managed delivery (Ultimate tier): Perlego delivers a full refreshed file on a monthly cadence, adding newly published titles — no action needed from you.
  • Self-service (other tiers): You'll need to repeat the Catalogue Export download and SFTP upload each month yourself to keep pace with new titles.
  • Title removals use a separate process — see Step 6: Handling deletions.

Troubleshooting

Problem Fix
Import job runs for a very long time or times out Large files (1GB+, 1M+ records) can take significant processing time — this is expected for the full production load. Confirm the job is still progressing via Monitor Jobs before assuming it's stuck.
Records are skipped or land as "multi-match" Check the job report's Bibliographic Record Matches section. Review your Match Profile's inventory-type and title-type matching options if you're seeing unexpected duplicate matches.
Portfolios aren't appearing, or link to the wrong collection Confirm the Electronic Collection selected in both the Match Profile and Inventory Information tabs matches the collection you set up for Perlego.
Job completes with validation errors Check whether "Skip records with validation issues" is enabled as expected for your load size, and review the flagged records in the job report.
Removed/discontinued titles still show as available Title removals aren't part of the monthly feed — see Step 6: Handling deletions.
Perlego links fail, loop, or ask users to log in twice Check the Proxy Enabled setting on the Electronic Service's Linking tab — it should be No. A proxy prefix on the URL conflicts with Perlego's own login flow.