Ready to Learn?Ex Libris products all provide open APIs

NCIP Based P2P Resource Sharing

Alma supports NCIP (NISO Circulation Interchange Protocol) based Peer to Peer ILL, i.e. the lender and the borrower communicate with NCIP messages in order to update the ILL workflow.
An NCIP partner of "NCIP-P2P" type should be created in Alma for defining institutions that use NCIP messages for P2P communication. For more information regarding partners configuration in Alma, refer to Alma online help.
 
The following diagram illustrates the workflow:
NCIP P2P workflow
 

All NCIP Message Fields

Fields marked with * are defined by Exlibris and are not part of the NCIP protocol
Fields marked with ** are defined as date type in the form of [YYYY-MM-DDThh:mm:ss]
Message FieldValueRequired (R)
or Optional (O)
RequestId.RequestIdentifierValueRequest IdentifierR
InitiationHeader.FromAgencyId.AgencyId
Format: [Institution Code]||[Library Code]
Sending InstitutionR
InitiationHeader.ToAgencyId.AgencyIdReceiving InstitutionR
InitiationHeader.OnBehalfOfAgency.AgencyIdReceiving LibraryR
InitiationHeader.FromSystemId"ALMA_NCIP_ILL"Constant (R)
UserId.UserIdentifierValueUserO
Ext.ItemNoteNoteO
RequestType
(Digital, Physical or Non-Returnable)
Request TypeR (Only for Request Item)
ItemOptionalFields.BibliographicDescription.TitleTitleR (Only for Request Item)
ItemOptionalFields.BibliographicDescription.AuthorAuthorO
ItemOptionalFields.BibliographicDescription
.AuthorOfComponent
Author of ArticleO
ItemOptionalFields.BibliographicDescription.EditionEditionO
ItemOptionalFields.BibliographicDescription.PaginationPaginationO
ItemOptionalFields.BibliographicDescription.PlaceOfPublicationPlace of PublicationO
ItemOptionalFields.BibliographicDescription.PublicationDatePublication DateO
ItemOptionalFields.BibliographicDescription
.PublicationDateOfComponent
Publication Date Of ComponentO
ItemOptionalFields.BibliographicDescription.PublisherPublisherO
ItemOptionalFields.BibliographicDescription.SeriesTitleNumberSeries Title NumberO
ItemOptionalFields.BibliographicDescription.TitleOfComponentTitle Of ArticleO
ItemOptionalFields.ItemDescription.CallNumberCall NumberO
ItemOptionalFields.BibliographicDescription.BibliographicLevel (Book, Journal, Other)Item TypeR (Only for Request Item)
ItemOptionalFields.BibliographicDescription.MediumTypeMedium Type (Any)O
BibliographicId.BibliographicRecordId.BibliographicRecordIdentifier
(When BibliographicRecordIdentifierCode is "ISSN") *
ISSNO
BibliographicId.BibliographicRecordId.BibliographicRecordIdentifier
(When BibliographicRecordIdentifierCode is "ISBN") *
ISBNO
BibliographicId.BibliographicRecordId.BibliographicRecordIdentifier
(When BibliographicRecordIdentifierCode is "LocalID") *
Local IDO
BibliographicId.BibliographicRecordId.BibliographicRecordIdentifier
(When BibliographicRecordIdentifierCode is "EAN") *
EANO

ItemId.ItemIdentifierValue
(When ItemId.ItemIdentifierType is "Barcode") *

Note: If other identifiers beside Barcode are sent, the Barcode should be first. For example Barcode and RFID - 
  ItemIdentifierType: Barcode:RFID
  ItemIdentifierValue: 82sd23457:1234567890

BarcodeR (Only for Recall Item) & O (For other)
ShippingInformation.PhysicalAddress.StructuredAddressDeliveryAddress - Physical

R (For Item Shipped) & O (For other)

ShippingInformation.ElectronicAddress.ElectronicAddressTypeEmail (Constant 'Email Address')

R (For Item Shipped) & O (For other)

ShippingInformation.ElectronicAddress.ElectronicAddressDataDeliveryAddress - Electronic

R (For Item Shipped) & O (For other)

PickupLocationPick-up LocationO
AcknowledgedFeeAmount
with Ext = “Maximum Fee For Requester” *
Maximum CostO
NeedBeforeDate **Needed By DateO
PickupExpiryDate **Expiry DateO

 

Request Item

The borrower requests resource sharing material; the lender creates a resource sharing request.

Message FieldValueRequired (R)
or Optional (O)
Ext.Parts *PartO
Ext.Chapters *ChapterO
Ext.Volumes *VolumeO
Ext.Issues *IssueO
RequestScopeType"Item" *Constant (R)

Example

Cancel Request

The borrower cancels the resource sharing request.

Message FieldValueRequired (R)
or Optional (O)
UserID.UserIdentifierValue 

User ID

R
Ext.NoticeContent

“CancelledByBorrower”
Note: This is needed since the CancelRequestItem is
used for Cancel, Expired & Rejected purpose. This will
enable Alma differentiate between the three.

Constant (R)

Example

Cancel Reply

The lender replies for the borrower's cancellation of the resource sharing request.
 
Message FieldValueRequired (R)
or Optional (O)
Ext.NoticeContent “CancelledByLender”Constant (R)
Ext.AnswerCancel Answer ("True" or "False")Constant (R)

Example

Renew

The borrower renews the resource sharing request.
 
Message FieldValueRequired (R)
or Optional (O)
Ext.DesiredDateDue ** Desired Date DueR

Example

Renew Reply

The lender replies for the borrower's renewal of the resource sharing request.
 
Message FieldValueRequired (R)
or Optional (O)
Ext.AnswerAnswer ("True" or "False")Constant (R)
DateDue **Date DueR
ItemId.ItemIdentifierValueItem Id (where ItemId.ItemIdentifierType is “barcode”)R

 

Example 

Checked-In

The lender check-in the resource sharing material.
 
Message FieldValueRequired (R)
or Optional (O)
DateReceived **Date ReceivedR
Ext.NoticeContent“ReceivedByLender”
Note: This is needed since the ItemRecevied is used for
both CheckedIn and Receive purpose. This will enable
Alma differentiate between the two.
Constant (R)
ItemId.ItemIdentifierValue Item Id (where ItemId.ItemIdentifierType is “barcode”)R

Example 

Receiving

The borrower receives the resource sharing material.
 
Message FieldValueRequired (R)
or Optional (O)
When Non-returnable:
ItemOptionalFields.ItemUseRestrictionType = “Available For Supply Without Return” *
When Digital:
ElectronicResource.ActualResource = "File" *
Shipped FormatR (Only for Non-returnable or Digital item)
DateReceived **Date ReceivedR
Ext.NoticeContent“ReceivedByBorrower
Note: This is needed since the
ItemRecevied is used for both
CheckedIn and Received purpose.
This will enable Alma differentiate
between the two.
Constant (R)
ItemId.ItemIdentifierValueItem Id (where ItemId.ItemIdentifierType is “barcode”)R

Example

Return

The borrower returns the resource sharing material.
 
Message FieldValueRequired (R)
or Optional (O)
DateShipped **Date ShippedR
Ext.NoticeContent“ShippedByBorrower”
Note: This is needed since the ItemShipped is used for both
Shipped and Returned purpose. This will enable Alma differentiate
between the two.
Constant (R)
ItemId.ItemIdentifierValue Item Id (where ItemId.ItemIdentifierType is “barcode”)R

Example

Shipping

The lender ships the resource sharing material.
 
Message FieldValueRequired (R)
or Optional (O)
When Non-returnable:
ItemOptionalFields.ItemUseRestrictionType = “Available For Supply Without Return” * 
When Digital:
ElectronicResource.ActualResource = "File" *
Shipped FormatR (Only for Non-returnable or Digital item)
Ext.DateDue **Due DateO
DateShipped **Date ShippedO
Ext.RequiredFeeAmountCostsO
Ext.NoticeContent“ShippedByLender"
Note: This is needed since the
ItemShipped is used for both
Ship and Return purpose. This will enable Alma differentiate between the two.
Constant (R)
ItemId.ItemIdentifierValueItem Id (where ItemId.ItemIdentifierType is “barcode”)R

Example 

Expire

The lender informs the borrower that the resource sharing request was expired. 
 
Message FieldValueRequired (R)
or Optional (O)
Ext.NoticeContent “ExpiredByLender”
Note: This is needed since the CancelRequestItem
is used for Cancel, Expired Rejected purpose.
This will enable Alma differentiate between the three.
Constant (R)

Example

Rejected/Unfilled

The lender informs the borrower that the resource sharing request was rejected.
 
Message FieldValueRequired (R)
or Optional (O)
Ext.ItemNoteInUseOnLoan = 1,
InProcess = 2,
Lost = 3,
NonCirculating = 4,
NotOwned = 5,
OnOrder = 6,
VolumeIssueNotYetAvailable = 7,
AtBindry = 8,
Lacking = 9,
NotOnShelf = 10,
OnReserve = 11,
PoorCondition = 12,
CostsExceedsLimit = 13,
Charges = 14,
PrepaymentRequired = 15,
LacksCopyrightCompliance = 16,
NotFoundAsCited = 17,
LocationsNotFound = 18,
OnHold = 19,
PolicyProblem = 20,
MandatoryMessagingNotSupported = 21,
ExpiryNotSupported = 22,
RequestedDeliveryServicesNotSupported = 23,
PreferredDeliveryTimeNotPossible = 24,
CriticalExtensionNotSupported = 25,
Other = 27,
ResponderSpecific = 28
R
Ext.NoticeContent“RejectedByLender”
Note: This is needed since the CancelRequestItem
is used for Cancel, Expired and Rejected purpose.
This will enable Alma differentiate between the three.
Constant (R)

Example

Recall

The lender recalls the resource sharing material from the borrower. 
 
Message FieldValueRequired (R)
or Optional (O)
DesiredDateDue **Desired Date Due O
ItemId.ItemIdentifierValue Item Id (where ItemId.ItemIdentifierType is “barcode”)R

Example

In order to enable the Based Peer to Peer Resource Sharing, the following configuration is required:
 
Configuration in Alma 
An NCIP-P2P partner should be defined, representing the ILL system. Refer to Alma online help for more information.
 
Configuration in a non-Alma ILL system
  • The NCIP messages should include the relevant fields and information, as described above.
  • The Alma Institution code and the Alma library code are required (described above in the field       InitiationHeader.FromAgencyId.AgencyId).
  • If exist, the external system institution code should appear in the field InitiationHeader.ToAgencyId.AgencyId       (Receiving Institution) and the external system library code in the field       InitiationHeader.OnBehalfOfAgency.AgencyId (Receiving Library).
  • The Server for which NCIP Peer to Peer messages should be sent to Alma from the external system       is: https://{Alma domain}/view/NcipP2PServlet