Icon Solutions Logo

IPF Developer Documentation

Core
Orchestration System Connectivity Application Builder Processing Data Processing & Persistence Payments Operations GUI APIs Icon Languages
Services
Operational Data Store (ODS) Operational Dashboard CSM Services CSM Reachability Working Days Service Identity Resolution Notification Service Verification Of Payee Services
Business Functions
Duplicate Check Human Task Manager Debulker
Guides
Concepts Architecture Best Practices Learn IPF Test Platform Payment Solutions
Reference
Releases Reason Codes Glossary FAQ

Core

    • Orchestration
      • Concepts
        • Icon Payments DSL
          • Flows
          • States & Events
          • Domain Operations
          • Behaviours
          • Data & Mapping
        • Generation
        • Reuse
        • Extensions
          • Behaviour Extensions
          • Error Extensions
          • Meta Extensions
      • Getting Started
      • How to guides…​
        • Use generated code
        • Build a Model Domain
        • Register an Adapter
        • Reply to the Domain
        • Pass EventIds
        • Add an extension override
        • Make a model reusable
        • Add data at action time
        • Add meta data
        • Handle Timeouts
        • Apply idempotency
        • Passivate a flow
        • Purge events
        • Migrate existing data
        • Increase build memory
        • Allocate memory for graphs
        • Change initial event name
        • Publish state events
        • Restrict initiation data
        • Add Labels
        • Call Other Flows
        • Set Global States
        • Default Behaviours
        • Use Core Functions
        • Add Custom Data
        • Customize Default States
    • System Connectivity
      • Concepts
        • Receiving Connector
        • Sending Connector
        • Connector Transports
      • Features
        • Backpressure
        • Message Throttling
        • Message Encryption
        • Message Validation
        • Message Association
        • Message Logging
        • Checkpoints
        • Error Handling
        • Resilience
        • Metrics
      • Getting Started
        • Connector Operations Quickstart
        • Receiving Connector Quickstart
        • Sending Connector Quickstart
        • HTTP Receiving Flow Quickstart
        • Connector Configuration
        • Kafka Quickstart
        • JMS Quickstart
        • HTTP Quickstart
        • File Connector Quickstart
        • Bearer Authentication
      • Persistence
        • Correlation Data Model
      • How to guides…​
        • How to add headers to outbound messages
        • How to implement asynchronous request reply
        • How to chain request-reply Connectors
        • How to get Connector metrics
        • How to filter messages
        • How to accept PascalCase messages
        • How to register dynamically generated connectors as beans
    • Application Builder
      • Flo Starter
        • Concepts
          • Flo Starter Projects
          • Understanding Passivation, Remembering Entities, and Schedulers
          • Domain Operations
        • Features
          • Application Configuration
          • Transaction Caching
          • Application Health Indicators
          • Flow Scheduling
          • Context-Based Flow Version Selection
          • Automated Retries
          • Monitoring and Observability
        • Getting Started
          • Create a new IPF Application Project
          • Defining The Read Side
        • Persistence
          • Mongo Offset Data Model
          • Transaction Cache Data Model
        • How to guides…​
          • How to handle schema evolution in IPF events
          • When to flow version
          • How to troubleshoot error messages
          • How to secure IPF HTTP Endpoints
          • How to use the persistent scheduler with a flow
          • How to implement a duplicate check function
          • How to get aggregate data for use in an external domain request
          • How to handle retries across non-completing requests
          • How to implement a payment scheduler
          • Synchronous Flow Execution
          • Dynamic Log Level Configuration
          • Tracing and Other Telemetry With OpenTelemetry
      • Application Scaffolder
        • Concepts
        • Features
        • Getting Started
        • How to guides
          • How do you build a project without docker dependencies?
          • How do you use your own parent dependency?
          • How do you create a reusable flow module?
      • Akka Lease MongoDB
        • Getting Started
          • Set up Akka Lease MongoDB
        • How to guides…​
      • Akka Discovery MongoDB
        • Getting Started
          • Set up Cluster Bootstrap with MongoDB discovery
        • How to guides…​
          • Multiple Applications, One Database
          • Multiple DC Active - Passive (Warm Stand-By), One Database
          • The Updater: Handling Dangling Nodes
    • Processing
      • IPF Cache
        • Concepts
        • Features
          • Caffeine
          • InfiniSpan
        • Getting Started
      • Persistent Scheduler
        • Concepts
          • The Scheduling Helper
          • Calendars
          • Failed and Late Executions
          • Job Specification and Status
          • Scheduling Module
          • Scheduling Status
          • Job Rehydration
        • Features
          • Scheduling Metrics
          • Standalone Scheduler
        • Getting Started
          • Embedded Implementation
            • Scheduling Your First Job (Embedded Implementation)
          • Expose HTTP Controller
          • Client Library
            • Scheduling Your First Job (via HTTP Client Library)
      • Dynamic Processing Settings
        • Dynamic Processing Settings v1
          • Concepts
          • Features
            • Settings Model
            • Data Ingestion System Events
          • How to guides
            • Create a Project Based on Dynamic Settings Workflow
            • Create Settings
        • Dynamic Processing Settings v2
          • Concepts
            • Dynamic Processing Settings Overview
          • Features
            • DPS v2 Swagger OpenAPI spec generation
            • CRUD Settings
            • Approvals
            • Scheduled Settings
            • Search
            • History
          • Getting Started
            • Integration
              • Dynamic Processing Settings API
              • Settings Schemas
              • DPS v1 Database Compatibility
              • DPS Notification Service
              • DPS Client Notification
            • Database Settings
              • Database setup
              • Settings Model
              • Maintaining Settings Consistency Across Collections
              • DPS Index Creation
            • How to guides
              • Create Settings
              • Use Client Library
              • Customizing OpenAPI Specification
              • Migration guide from DPS v1 to DPS v2
      • Bulk File Processing
        • Bulker
          • Concepts
          • Features
          • Interacting With the Bulker
            • Bulk Aggregate
              • Akka Bulk Aggregate
            • Automatic Finalisation of a Bulk
            • Insertion Point Finder
            • Joiner
            • Bulk Producer
            • Bulk Notifications
            • Bulk Archiver
            • Supported Messages
          • Getting Started
          • List of System Events
        • Debulker
          • Concepts
          • Features
            • Debulking Configuration
            • New File Notification
            • Polling For New Files
            • Duplicate check
            • Schema Validation
            • Splitter
              • JSON Splitter
              • XML Splitter
              • CSV Splitter
            • Client Processing
              • Client Processing Kafka
            • File Archiver
            • Access Components
            • Housekeeping Component Remover
            • Housekeeping - Scheduler
          • Getting started
            • Debulker in Your Application
            • Use the Debulker Client Library
            • Configuring Debulker
            • Sending File Notifications
            • Process Debulked Components
          • Debulker System Events
        • File Component Store
          • Concepts
          • Features
          • Configs
            • MongoComponentStore
          • Getting started
      • Message Logger
        • Concepts
        • Features
          • Kafka MessageLogger
          • Mongo MessageLogger
        • Getting Started
      • IPF File Manager
        • Features
          • API Reference
          • Local File Manager
          • S3 File Manager
      • IPF File Poller
        • Concepts
          • File Poller Scheduler
          • File Poller Scheduled Job Execution Handler
          • File Poller Adapter
          • File Entity
          • Scheduler Job Entity
        • Getting Started
          • Scheduling a File Polling Job
      • Payment Releaser
        • Concepts
          • Payment Datasource
          • Handling Payment Information
        • Features
          • Request Processor
          • Aggregating Payment Information
          • Processing Request Creator
          • Processing Strategy
          • Storing Execution Information
          • Payment Entries Processor Execution Data Purging
        • How To Guides
          • How to trigger the Releaser from Persistent Scheduler via Kafka
        • Getting Started
          • Implementation
          • Configuration
          • Release Your First Instruction/Batch (Embedded Implementation)
          • Expose HTTP Controller
          • Client Library
    • Data Processing & Persistence
      • Identifiers in IPF
      • Processing Data
        • Concepts
        • Features
          • Egress Processing Data
          • Ingress Processing Data
        • How to guides…​
          • How to Consume IPF processing data
          • How to Configure a Process Flow Application for Egress of Data
          • Configuring Kafka Topics
        • Data Model Specifications
      • System Events
        • Concepts
          • List of System Events
        • How to guides
          • Subscribing to - then logging - all WARN and ERROR events
          • Logging all events of a specific type
          • IPF System Event Exporter Spring Boot starter packs
          • Manually exporting events via a SendConnector
      • System Event Catalogue
        • Core
        • AOMs
          • CSM Service
      • Operational Data Store (ODS)
      • Akka Persistence
        • Features
          • Akka Persistence Plugin for MongoDB
        • Persistence
          • Akka Persistence Data Model
      • Data Models
        • ISO20022 Model
          • Concepts
            • ISO20022 Concepts
            • Core Classes
          • Features
            • Normalised Types
            • Fluent API
            • Validation
            • Json serialisation
            • XML Serialisation
            • Future Enhancements
          • Getting Started
          • How to guides…​
            • Migrating from the legacy IPF Payment Model
            • Creating an Example Message
            • Validating an Example Message
        • ISO20022 Meta-Model Generator
          • Concepts
          • Getting Started
          • How-to Guides
            • Analysing an EMF repo
        • ODS Data Model
        • Mongo Offset Data Model
        • Transaction Cache Data Model
        • Correlation Data Model
        • Journal & Snapshot Data Model
      • Serialization
      • Payment Warehouse
        • Concepts
          • Housekeeping
        • Features
          • Payment Entry Purging
        • Getting Started
          • Implementation
          • Save Your First Payment Entry
          • Expose HTTP Controller
          • Client Library
          • Configuration
          • Indexes
    • Payments
      • Mapping Framework
        • Concepts
        • Features
        • Getting Started
          • Defining the Mapping Relationships
          • Code Generation and use
          • Orika Transformation Implementation - Direct Usage
      • Bank Filtering
        • Concepts
          • Why Bank Filtering?
        • Features
          • Bank Filtering Rules
          • Bank Filtering Service API
            • Endpoint - Bank Filtering BIC
            • Endpoint - Bank Filtering Check Payment Risk
          • Bank Filtering Behaviour
            • Common Filtering
            • Filtering By BIC
            • Filtering by NCC
            • Filtering By Currency
        • Getting Started
          • Database settings
            • Indexes
            • Cache
            • Rule
          • Deployments
            • Configurations
          • Integration
            • Client Library
            • DPS connectors
            • Bank Filtering Setting Management API
            • Bank Filtering Service API
      • Payment Adjustment
        • Features
          • Validation
        • Getting Started
          • Setting up the Sending Application
          • Setting up the Receiving Application
    • Operations
      • Human Task Manager
        • Getting Started
        • Concepts
        • Features
        • Bulk Task Actions
        • HTM Server Deployment Configuration
        • API
        • How to guides…​
          • Kubernetes Deployment
      • Operational Dashboard
    • GUI
      • How to build your own Operational Dashboard
        • npm Packages
          • @iconsolutions/common
            • Access Management Module
            • Common State Module
            • Language Module
            • Cards Module
            • Common Components Module
            • Dynamic Form Module
            • Dialog Module
            • Text Diff Module
            • Active User Service
            • App Audit Service
            • Config Service
            • Navigation Service
            • Snackbar Service
            • Unique ID Service
          • @iconsolutions/cluster-health
          • @iconsolutions/metrics
          • @iconsolutions/audit
          • @iconsolutions/version-info
          • @iconsolutions/permissions
          • @iconsolutions/htm
          • @iconsolutions/ods
          • @iconsolutions/processing-settings
      • IPF Grafana Dashboards
    • APIs
      • CSM Reachability
        • CSM Reachability Service Setting Management API
        • CSM Reachability Service API
      • CSM Recalls Returns ROI API
      • Recalls Returns ROI API
      • Credit Transfer API
      • Clear and Settle API
      • Direct Debit API
      • Direct Debit Validation API
      • Validation API
      • Payment Initiation API
      • Payment Status API
      • Payment Adjustment OpenAPI Specification
      • Payment Adjustment API
      • Payment Warehouse OpenAPI Specification
      • Persistent Scheduler OpenAPI Specification
      • IPF Payment Releaser OpenAPI Specification
      • Connector Operations OpenAPI Specification
      • Transaction Operations OpenAPI Specification
    • Icon Languages
      • Business Rules Framework
        • Getting Started
        • Concepts
          • Decision
          • Validation
          • Function
          • Private Functions
          • Function Library
          • Data Table
          • Value Library
        • How To
          • Use The Rules Framework
            • Creating a Decision
            • Creating a Validation
            • Creating a Function
            • Creating a Private Function
            • Creating a Function Library
            • Creating a Data Table
            • Creating a Value Library
            • Useful Expressions
          • Integrate with Flo-lang
            • Using Decisions in Flo-lang
            • Using Functions in Flo-Lang
            • Using Validations in Flo-lang
        • Rules Library
          • Importing The Rules Library
          • Using the Rules Library
          • Using the Rules Library Functions in Java
Core IPF_RELEASE_2025.3.0
  • Business Functions
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Core
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Guides
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Home
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Reference
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Services
    • IPF_RELEASE_2025.3.0
    • IPF_RELEASE_2025.2.0
    • IPF_RELEASE_2025.1.0
    • IPF_RELEASE_2024.4.0
    • IPF_RELEASE_2024.3.0
  • Core
  • Data Processing & Persistence
  • Data Models
  • ISO20022 Model
  • Concepts
English EspaƱol
IPF_RELEASE_2025.3.0 IPF_RELEASE_2025.2.0 IPF_RELEASE_2025.1.0 IPF_RELEASE_2024.4.0 IPF_RELEASE_2024.3.0

Concepts

  • ISO20022 Concepts

  • Core Classes

ISO20022 Model ISO20022 Concepts
Icon Solutions Logo

© Copyright 2025 | | Privacy Policy | Terms