Scheme Membership

Overview

Scheme Membership is a key component of the Verification of Payee (VoP) Requester Service that enables the service to interact with different payment schemes. Each payment scheme requires specific membership identifiers to authenticate and route verification requests.

How It Works

The Scheme Membership functionality allows the VoP Requester Service to:

  1. Map scheme names to membership IDs

  2. Support different membership IDs for different processing entities within the same scheme

  3. Route verification requests to the appropriate scheme with the correct membership ID

Default Processing Entity

Every scheme needs a default processing entity, marked with processing-entity-code = default. This ensures that if a request doesn’t specify a processing entity, the system automatically falls back to this default.

Configuration

This component loads scheme membership IDs from the configuration file under the ipf.verification-of-payee.requester path. It creates a mapping between scheme names, processing entity codes, and scheme membership IDs.

Example Configuration

Scheme membership IDs are configured as follows:

Property Grouping: ipf.verification-of-payee.requester

Key Description Example Value

ipf.verification-of-payee.requester.available-schemes

Currently only supported scheme is EPC. Note that a scheme can only be listed once in available-schemes. This configuration contains all the valid scheme/rvm combinations, including those schemes which have no associated rvm.

[
    {
        "rvm" : FPAD,
        "scheme" : "EPC"
    }

]

ipf.verification-of-payee.requester.scheme-processing-entities

Scheme membership id’s are configured per scheme and processing-entity-code. See Example Value for structure

[
    {
        "processing-entities" : [
            {
                "processing-entity-code" : "default",
                "scheme-membership-id" : "H2J2ZA0A"
            },
            {
                "processing-entity-code" : "001",
                "scheme-membership-id" : "ICONUK03XXX"
            }
        ],
        "scheme" : "EPC"
    }

]

Additional Details

Further details of fields underneath ipf.verification-of-payee.requester.available-schemes are below:

Field Name Description

scheme

The name of the supported scheme. Supported value: EPC (Default)

rvm

The name of the supported rvm. Supported value: FPAD (Default)

The above configuration properties allow for clients to specify their own available schemes. But if clients wish to use the defaults specified above, the configuration under ipf.verification-of-payee.requester.available-schemes can be omitted entirely and the defaults will apply.

Further details of fields underneath ipf.verification-of-payee.requester.scheme-processing-entities are below:

Field Name Description

scheme

The scheme for which the processing entity to scheme membership ID mapping is applicable. Supported value: EPC

processing-entities

A list of processing entity/scheme membership ID mappings for the scheme

processing-entities.processing-entity-code

The code of the processing entity, this in addition to scheme is used to lookup the scheme-membership-id

processing-entities.scheme-membership-id

The membership ID to use for the scheme and processing entity. In the message out to the scheme this represents the sender/requesting agent BIC

Error Handling

Startup Errors

Scheme membership performs startup validations and adopts a fail-fast strategy halting application startup if any of the following configuration validations fail:

  • Validates that each scheme has at least one processing entity

  • Ensures that each scheme has a default processing entity (processing-entity-code = default)

  • Validates there are no duplicate schemes and processing entities

  • Validates that only supported schemes are defined in the configuration

  • Validates that only supported RVM’s are defined in the configuration

  • Validates that ipf.verification-of-payee.requester.available-schemes contains valid values for scheme (at least one scheme must be defined)

  • Validates that ipf.verification-of-payee.requester.scheme-processing-entities contains valid values for scheme (at least one scheme must be defined)

  • Validates that ipf.verification-of-payee.requester.responder-scheme is a valid scheme

Runtime Errors

The following errors may occur at runtime. When an error occurs, the service responds with the corresponding HTTP error code, as outlined in the table below.

Error HTTP Return Code

When a scheme membership ID cannot be found for a given scheme name and processing entity. This typically happens when a request specifies a scheme and processing entity combination that is not defined in the configuration. Error message: Selected scheme '{scheme}' with processing entity '{processingEntity}' not found in config

500

When an adapter for a specified scheme cannot be found. This typically happens when the system is configured to use a scheme that does not have a corresponding adapter implementation. Error message: No scheme adapter was found for scheme: {scheme}

500