Documentation for a newer release is available. View Latest

Scheme Pack Functions

Below is a list of functions covered by every Scheme Pack in IPF.

Outbound Flow

Outbound Flow

Scheme Pack Component

Receipt of outbound payment request from flows in IPF canonical format (a standardised ISO model)

- Clear & Settle API / Collect & Settle API

- Clear and Settle Connectors

Business / data validation of received canonical payment messages according to scheme rules, to minimise the possibility of scheme rejections

Scheme and CSM specific validators

Mapping from IPF canonical to scheme / CSM specific formats and generation of outbound payment messages in scheme-specific format ensuring compliance with scheme rules

IPF Canonical to CSM mappers using IPF mapping framework

Transmission of outbound payment message to scheme via IPF Connectors or via client systems

- CSM API

- CSM sending connector

- File sending connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Receipt of incoming ACK / NACK responses from scheme

- CSM API

- CSM Receiving Connector

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of the bank specific implementation.

Validation of ACK / NACK

Scheme and CSM specific validators

Correlation of ACK / NACK with original payment message

Correlation Cache

Storage of ACK / NACK response in DB

Message Logging

Receipt of incoming functional response from scheme

- From a number of different sources

- CSM API

- CSM Receiving Connector

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Validation of incoming functional response from scheme to ensure it is safe to process

Scheme and CSM specific validators

Correlation of incoming functional response to outbound message

Correlation Cache

Storage of functional response in DB

Message Logging

Translation of inbound functional response into canonical format

CSM to IPF Canonical mappers using IPF mapping framework

Receipt of outbound R-messages from client

- Recalls Returns ROI API

- CSM Receiving Connector

- Bank Gateway API

- Bank Gateway Receiving Connector (if extended by the bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Validation of outbound R-messages and associated necessary enrichment

Scheme and CSM specific validators

Generation of outbound R-message in scheme-specific format

IPF Canonical to CSM mappers using IPF mapping framework

Transmission of outbound R-message to scheme via IPF connectors or client systems

- CSM API

- CSM Sending Connector

- Bank Gateway API

- Bank Gateway Send Connector

- File Sending Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Receipt of incoming ACK / NACK response from scheme (R-message)

- CSM Receiving Connector

- Bank Gateway API

- Bank Gayeway Receiving Connector (if extended by the bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Validation of ACK / NACK (R-message)

Scheme and CSM specific validators

Correlation of ACK / NACK with original message (R-message)

Correlation Cache

Translation of incoming functional response from scheme to canonical format

CSM to IPF Canonical mappers using IPF mapping framework

Necessary notifications back to bank specific payment processing application

- Clear & Settle API

- Clear and Settle Sending Connectors

- Recalls Returns ROI API

- Recalls Returns ROI Sending connectors

Generation of implicit outcome messages per scheme rules (bulk schemes only)

- CSM Specific Processing Flows

- Synthetic pacs.002 generator

Aggregation of messages into bulk files (bulk schemes only)

- CSM Specific Processing Flows

- Bulker

Splitting of bulk files into messages (bulk schemes only)

- CSM Specific Processing Flows

- Debulker

Archiving a copy of each message exchanged with the scheme to file storage (bulk schemes only)

- Bulker

Periodic transmission of files to scheme (bulk schemes only)

Bulker

Inbound Flow

Inbound Flow

Scheme Pack Component

Receipt of incoming payment messages from the scheme

- CSM API

- CSM Receiving Connector

- Bank Gateway API

- Bank Gateway Receiving Connector (if extended by the bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Syntax / schema validation of messages received from the scheme

Schema validators

Translation of inbound messages into internal canonical format

CSM to IPF Canonical mappers using IPF mapping framework

Appropriate business validation of the incoming messages

Scheme and CSM specific validators

Verification of "our customer" as recipient

- Our BIC configuration

- Our BIC validation

Generation of ACK / NACK to scheme - compliant with scheme rules

IPF Canonical to CSM mappers using IPF mapping framework

Make incoming message available to bank specific payment processing application

- Credit Transfer API

- Sending connector

- Recalls Returns ROI API

- Recalls Returns ROI sending connector

Receive business response from bank specific payment processing application

- Credit Transfer API

- Receiving Connector

- Recalls Returns ROI API

- Recalls Returns ROI connectors

Validate business response

Scheme and CSM specific technical validators

Convert business response to scheme specific functional response - compliant with scheme rules

IPF Canonical to CSM mappers using IPF mapping framework

Transmission of scheme message to scheme via IPF Connector or client systems

- CSM API

- CSM Sending Connector

- Bank Gateway API

- Bank Gateway Sending Connector (if extended by the bank)

- File Sending Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation. See 'Extend a generic IPF service with client specific adapters' below.

Receipt of incoming ACK / NACK from scheme

- CSM API

- CSM Receiving Connector

- Bank Gateway API

- Bank Gayeway Receiving Connector (if extended by the bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Technical validation of ACK / NACK

Scheme and CSM specific validators

Correlation of ACK / NACK to original message

Correlation Cache

Receipt of incoming confirmation response from scheme (where applicable to the scheme)

- CSM API

- CSM Receiving Connector

- Bank Gateway API

- Bank Gateway Receiving Connector (if extended by bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Technical validation of confirmation response from the scheme

- Schema validators

- Scheme and CSM specific validators

Correlation of response and original message

Correlation Cache

Translation of scheme messages to IPF canonical format

CSM to IPF Canonical mappers using IPF mapping framework

Receipt of incoming R messages from scheme

- CSM API

- CSM Receiving Connector

- Bank Gateway API

- Bank Gateway Receiving Connector (if extended by bank)

- File Receiving Connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Syntax / schema validation of messages from the scheme

- Schema validators

- Scheme and CSM specific validators

Conversion of scheme messages to canonical format

CSM to IPF Canonical mappers using IPF mapping framework

Generation of ACK /NACK to scheme - compliant with scheme rules

IPF Canonical to CSM mappers using IPF mapping framework

Make inbound message available to bank specific payment processing application

- Credit Transfer API

- Sending Connectors

- Recalls Returns ROI API

- Recalls Returns ROI connectors

Receive response from bank specific payment processing application

- Credit Transfer API

- Clear and Settle Connectors

- Recalls Returns ROI API

- Recalls Returns ROI connectors

Generate response to scheme - compliant with scheme rules

IPF Canonical to CSM mappers using IPF mapping framework

Transmission of response to scheme

- CSM API

- CSM sending connector

- Bank Gateway API

- Bank Gateway sending connector (if extended by bank)

- File sending connector (i.e. write to file storage for transmission to scheme by some other system)

Note that Bank GW API and Connector are part of bank specific implementation.

Necessary notifications back to bank specific payment processing application

- Credit Transfer API

- Sending connectors

- Recalls Returns ROI API

- Recalls Returns ROI sending connectors

Generation of implicit outcome messages per scheme rules (bulk schemes only)

- CSM Specific Processing Flows

- Synthetic pacs.002 generator

Aggregation of messages into bulk files (bulk schemes only)

- CSM Specific Processing Flows

- Bulker

Splitting of bulk files into messages (bulk schemes only)

- CSM Specific Processing Flows

- Debulker

Periodic transmission of files to scheme (bulk schemes only)

Bulker

Archiving a copy of each message exchanged with the scheme to file storage (bulk schemes only)

Bulker

Other Functions

Other

Scheme Pack Component

Duplicate checking

Duplicate checking

Scheme technical and business rules validation

- Validate Scheme Rules API

- Validate Scheme Rules Connectors

Handling of business and technical failure scenarios specific to the scheme

- CSM specific processing flows using IPF orchestration framework (optional) or

- handcrafted CSM specific domain logic

Handling of all scheme specific error scenarios

- CSM specific processing flows using IPF orchestration framework (optional)

- handcrafted CSM specific domain logic

Error code mappings

Error code mappings

Retry mechanisms (in line with scheme rules)

IPF Connector Framework

Scheme compliant enquiry / status request handling

- Payment Status API

- Sending / receiving connectors

- IPF canonical to CSM mappings with error code mappings.

Notifying of technical issues with different severity levels

IPF system events

Generation of all associated events for each processing step associated with the scheme

IPF domain events ( where IPF orchestration is used)

Where required, extension points within Scheme Packs can be used to retrieve messages exchanged with the scheme / CSM, so that clients have access to the raw scheme messages for their records.

IPF GUI Integration

Publish system events to notify consumers of various events that take place in the IPF ecosystem (or any system related to IPF).

System Events catalogue and publishing

Publish business and technical metrics

- Open telemetry API

- Connector metrics

-Application metrics

- Akka cinnamon library : Prometheus exporter

Health check endpoint

- Spring Actuator health check endpoint

- Connector endpoints

- Akka cluster management endpoint ( for the scheme packs where Akka cluster is setup)

These functions are related to Scheme Packs, may be used in Scheme Packs (or separately), but are not contained within the actual Scheme Pack module itself and are packaged separately.

  • CSM Reachability Service Business functions:

    • Get CSM Reachability

    • Validate Reachability

    • Select CSM Agent The Reachability Service is extended for each specific Scheme Pack which IPF supports. It is separate from the Scheme Pack itself and may be called from anywhere in the client flow and / or from within the Scheme Pack itself.

  • Data validators / enrichers Business functions:

    • Determine BIC from IBAN

    • Validate BIC

    • Validate IBAN

    • Validate Instructing / Instructed Agent

    • Manage execution & value dates

    • Warehousing & Payment Scheduler to support handling of Future Dated Payments

  • Bulker

    • Creates bulk submissions / files from available data

    • Provides message structure configurations, for each scheme file type

    • Supports recurring bulk configurations (standard names, timings, size limits)

  • Debulker

    • Decomposes files / bulk submissions into induvial components for onward processing

    • Supervises processing of bulks / batches to ensure completion

    • Message structure configurations, for each scheme file type

  • Connectors

    • JMS

    • Kafka