Skip to main content

Interface Message Management APIs

Last updated on Apr 10, 2026 at 10:35 PM

Within the Common APIs, the Interface Management section provides access to inbound and outbound messages exchanged between ImPAI and connected systems.

These APIs expose the original external message formats (e.g., ISO 20022 or other bank-specific formats) together with additional technical and processing metadata. The scope includes communication with internal bank systems as well as external counterparties and service providers.

The Interface Message APIs are read-only and are intended for transparency, operational monitoring, and troubleshooting purposes.


1️⃣ List Messages​

The Interface Message List API is to be used to retrieve detailed information about specific messages, or request a list of existing messages.

Request Structure

❢  Query Parameters

The following request parameters can be used to filter for specific interface messages:

FieldTypeRequiredDescriptionConstraints
creationDateFromStringNoStart date for filtering by transaction creation date.ISO 8601 format
creationDateToStringNoEnd date for filtering by transaction creation date.ISO 8601 format
creditorAccountStringNoFiter for Creditor International Bank Account Number (IBAN).–
creditorAgentStringNoFilter for Creditor's Agent BIC.–
creditorNameStringNoFilter for Creditor name.1-255 chars
currentPageStringNoFilter for Page number for pagination results.Default: 1
Starts from 1
debtorAccountStringNoFiter for Debitor International Bank Account Number (IBAN).–
debtorAgentStringNoFilter for Debtor's Agent BIC.–
debtorNameStringNoFilter for Debtor name.1-255 chars
endToendIdStringNoFilter for End-to-End Identification.1-36 chars
externalIdStringNoFilter for External Identification.1-36 chars
globalIdStringNoFilter for Global Identification.1-36 chars
instructionIdStringNoFilter for Instruction Identification.1-36 chars
internalIdStringNoFilter for Internal Identification.1-36 chars
messageIdStringNoFilter for Message Identification.1-36 chars
messageTypeStringNoFilter for Message Type.Enum: Confirmation Credit CustomerStatus Instruction Recall Resolution Return StatusReport StatusRequest
messageVersionStringNoFilter for Message Version.Enum: camt.029 camt.056 pacs.002 pacs.004 pacs.008 pacs.028 pain.001 pain.002
orderByStringNoField name to sort results by (e.g., creationDateFrom, transactionId).Default: "startedAt"
pageSizeStringNoNumber of transaction records to display per page.Decimal chars >= 1
Default: 15
receivedAtFromStringNoStart date for filtering by transaction received date.ISO 8601 format
receivedAtToStringNoEnd date for filtering by transaction received date.ISO 8601 format
requestExecutionDateFromStringNoStart date for filtering by requested execution date.ISO 8601 format
requestExecutionDateToStringNoEnd date for filtering by requested execution date.ISO 8601 format
requestIdStringNoFilter for Request Identification.1-36 chars
settlementDateFromStringNoStart date for filtering by transaction settlement date.ISO 8601 format
settlementDateToStringNoEnd date for filtering by transaction settlement date.ISO 8601 format
sortOrderStringNoDirection to sort results (ascending or descending).Default: desc
Enum: asc desc
statusStringNoFilter for Transaction status.Enum: Booked Error Pending Received Rejected Released Sent
transactionAmountFromStringNoMinimum transaction amount for filtering.Decimal chars
transactionAmountToStringNoMaximum transaction amount for filtering.Decimal chars
transactionIdStringNoFilter for Transaction Identification.Defau1-36 chars
typeStringNoFilter for Type of Interface which will be also used as a partition key.1-16 chars
Response Structure
🟒 Success β€” HTTP 200

HTTP 200 – OK responses for successfully processed messages include:

GroupDescription
headerA group containing responseId, originalRequestId, responseTime
metaDataAn object containing meta information about pagination and the actual request represented by pagination.currentPage, pagination.pageSize, pagination.totalPages, pagination.totalRecords, sort.sortBy, sort.sortOrder, filters, message, and timeStamp
resultsAn array of objects, each one containing detail information about 1 account: category, entity, id, internalCode, internalId, isoCode, message, objectReference, objectReferenceType, objectType, service, severity, status, timestamp, and type

Example(s)

{
"header": {
"responseId": "0a816627-7899-49e4-ae47-c118d5e3cf50",
"origRequestId": "ReqId-419578",
"responseTime": "2025-04-14T07:30:00Z"
},
"metaData": {
"pagination": {
"currentPage": 1,
"pageSize": 10,
"totalPages": 1,
"totalRecords": 2
},
"sort": {
"orderBy": [
"CRTDAT"
],
"sortOrder": [
" desc"
]
},
"filters": { },
"message": "Successfully retrieved 2 transactions"
},
"results": [
{
"category": "errauthentication",
"entity": "PaymentService",
"id": "a6172436-4431-4dac-bad0-a943396ccb75",
"internalCode": "00T00015",
"internalId": "1d6f5c3a-02e6-4080-995a-8a81327830f6",
"isoCode": "EUR",
"message": "Transaction could not completed successfully.",
"objectReference": "PAI1500003534333",
"objectReferenceType": "GlobalId",
"objectType": "directory",
"service": "common_proc",
"severity": "fatal",
"status": "New",
"timestamp": "2025-06-12T15:04:05Z",
"type": "Technical"
}
]
}
πŸ”΄ Error β€” HTTP 400

Responses for HTTP 400 – Bad Request errors are returned if validation or logical checks fail and include:

GroupDescription
headerResponse metadata containing responseId, originalRequestId, responseTime
errorAn object with a human-readable description in message

Example(s)

{
"header": {
"originalRequestId": "ReqId-419578",
"responseId": "0a00f05f-c688-44db-b49a-af9aeed1a7ef",
"responseTime": "2025-04-14T07:30:00Z"
},
"error": {
"message": "Invalid query parameters provided"
}
}
🟑 Error β€” HTTP 500

Responses for HTTP 500 β€” Server Error errors are returned on unexpected server-side failures and contain:

GroupDescription
errorCodeApplication-level error identifier (e.g. 500_INTERNAL_ERROR)
messageBrief description such as "Time-out" or "Something went wrong"

Example(s)

{
"errorCode": "500_INTERNAL_ERROR",
"message": "Something went wrong"
}
GET/api/common/v1/get-interfacesList available Interface Messages

2️⃣ Message Details​

The Interface Message Details API is to be used to retrieve detailed information about a single specific error.

Request Structure

❢  Query Parameters

The following request parameter must be used to request a message's details:

FieldTypeRequiredDescriptionConstraints
idUUIDNoUnique identifier of the error.–
Response Structure
🟒 Success β€” HTTP 200

HTTP 200 – OK responses for successfully processed messages include:

GroupDescription
headerA group containing responseId, originalRequestId, responseTime
resultsAn array of objects, each one containing detail information about 1 account: category, entity, id, internalCode, internalId, isoCode, message, objectReference, objectReferenceType, objectType, service, severity, status, timestamp, and type

Example(s)

{
"header": {
"responseId": "0a816627-7899-49e4-ae47-c118d5e3cf50",
"origRequestId": "ReqId-419578",
"responseTime": "2025-04-14T07:30:00Z"
},
"results": [
{
"category": "errauthentication",
"entity": "PaymentService",
"id": "a6172436-4431-4dac-bad0-a943396ccb75",
"internalCode": "00T00015",
"internalId": "1d6f5c3a-02e6-4080-995a-8a81327830f6",
"isoCode": "EUR",
"message": "Transaction could not completed successfully.",
"objectReference": "PAI1500003534333",
"objectReferenceType": "GlobalId",
"objectType": "directory",
"service": "common_proc",
"severity": "fatal",
"status": "New",
"timestamp": "2025-06-12T15:04:05Z",
"type": "Technical"
}
]
}
πŸ”΄ Error β€” HTTP 400

Responses for HTTP 400 – Bad Request errors are returned if validation or logical checks fail and include:

GroupDescription
headerResponse metadata containing responseId, originalRequestId, responseTime
errorAn object with a human-readable description in message

Example(s)

{
"header": {
"originalRequestId": "ReqId-419578",
"responseId": "0a00f05f-c688-44db-b49a-af9aeed1a7ef",
"responseTime": "2025-04-14T07:30:00Z"
},
"error": {
"message": "Invalid query parameters provided"
}
}
🟑 Error β€” HTTP 500

Responses for HTTP 500 β€” Server Error errors are returned on unexpected server-side failures and contain:

GroupDescription
errorCodeApplication-level error identifier (e.g. 500_INTERNAL_ERROR)
messageBrief description such as "Time-out" or "Something went wrong"

Example(s)

{
"errorCode": "500_INTERNAL_ERROR",
"message": "Something went wrong"
}

Summary β€” Interface Message Management​

The Interface Message Management section exposes two complementary endpoints:

  • Interface Message List API β€” Retrieve a list of inbound and outbound interface messages, with filtering options based on identifiers, direction, status, or time range.
  • Interface Message Details API β€” Retrieve the full external message payload and associated metadata for a specific interface message.

Together, these APIs provide:

  • Visibility into the technical message exchange layer between ImPAI and connected systems,
  • Access to the original external message formats as transmitted or received,
  • Contextual metadata such as direction, timestamps, processing status, and correlation identifiers,
  • A consistent basis for investigating integration flows and message-level issues.

The functionality is purely informational and does not alter message content, processing state, or transaction data.