Examples

Address types

Below is an example description of the address types for Indonesia. Please note the following:

  • id would be automatically generated by the database. (In this example, human-readable IDs are given based on the country code and address type.)

  • code defines the address type code

  • displayOrder describes the order in which the relevant Proxy Directory Operator (PDO) recommends listing the address types when they are shown to the Sender

    • Typically mobile phone number would be listed first, as it is the most common and user-friendly proxy type and the more obscure proxy types at the end of the list)

  • For the ACCT address types, “clearingSystemId” links to the ISO 20022 External Clearing System Identification Code of the instant payment system which accepts that address type. (Example values are given below.)

  • For proxy address types, ”proxyDirectoryId” links to the ID of the proxy scheme that a proxy type belongs to.

The ISO 20022 external code set does not have a code type for proxy directory or proxy scheme. It may be necessary to register a new code type for this purpose.

{
  "addressTypes": [
    {
      "id": "IDACCT",
      "countries": [
        "ID"
      ],
      "code": "ACCT",
      "clearingSystemId": "BIFST",
      "displayOrder": 3
    },
    {
      "id": "IDEMAL",
      "countries": [
        "ID"
      ],
      "code": "EMAL",
      "proxyDirectoryId": "IDPROXY",
      "displayOrder": 2
    },
    {
      "id": "IDMBNO",
      "countries": [
        "ID"
      ],
      "code": "MBNO",
      "proxyDirectoryId": "IDPROXY",
      "displayOrder": 1
    }
  ]
}

Example address inputs

Below are three example descriptions of the address types. Firstly for a mobile phone proxy registered in Singapore, secondly for a Singaporean Account Identification, and third, for an IBAN registered in the UK.

Example mobile proxy

Note there are two inputs for a mobile proxy:

  • The first is the text input field where the Sender will provide the mobile number of the Recipient. (This input starts with the “{“ prior to the first “attributes:”).

  • The second is a hidden field which includes the MBNO address type (and proxy type) code. This addressTypeCode information will be required by the PSP to prepare the acmt.023 proxy resolution request.

{
  "id": "SGMBNO",
  "inputs": [
    {
      "attributes": {
        "name": "accountOrProxyId",
        "type": "tel",
        "pattern": "^\\+(?:[0-9] ?){6,14}[0-9]$",
        "placeholder": "+6581234567",
        "required": true
      },
      "iso20022Path": {
        "acmt023": "/Document/IdVrfctnReq/Vrfctn/PtyAndAcctId/Acct/Prxy/Id",
        "pacs008": null
      },
      "label": {
        "code": "MBNO",
        "title": {
          "en": "Mobile phone number, including the country code",
          "de": "Mobiltelefonnummer, einschließlich der Landesvorwahl"
        }
      }
    },
    {
      "attributes": {
        "name": "addressTypeCode",
        "type": "hidden",
        "value": "MBNO",
        "required": true
      },
      "iso20022Path": {
        "acmt023": "/Document/IdVrfctnReq/Vrfctn/PtyAndAcctId/Acct/Prxy/Tp/Cd",
        "pacs008": null
      }
    }
  ]
}

Account Identification

Note that there are three inputs for an Account Identification:

  • The first input is the text input field where the Sender can input the Account Identification (accountOrProxyId)

  • The second input is the text input where the Sender can input the Financial Institution Identification (finInstId)

  • The third is a hidden field which includes the code of the address type (“addressTypeCode”), which in this case is ACCC.

{
  "id": "SGACCT",
  "inputs": [
    {
      "attributes": {
        "name": "accountOrProxyId",
        "type": "number",
        "pattern": "^\\+\\d{9,10}$",
        "placeholder": "1234567890",
        "required": true
      },
      "iso20022Path": {
        "acmt023": "/Document/IdVrfctnReq/Vrfctn/PtyAndAcctId/Acct/Id/Othr/Id",
        "pacs008": "/Document/FIToFICstmrCdtTrf/CdtTrfTxInf/CrtrAcct/Id/Othr/Id"
      },
      "label": {
        "code": "ACCT",
        "title": {
          "en": "Account number, 9-10 digits",
          "de": "Kontonummer, 9-10 Ziffern"
        }
      }
    },
    {
      "attributes": {
        "name": "finInstId",
        "type": "text",
        "pattern": "^[A-Z]{6}[0-9A-Z]{2}([0-9A-Z]{3})?",
        "placeholder": "AAAASGAA or AAAASGAA123",
        "required": true
      },
      "iso20022Path": {
        "acmt023": "/Document/IdVrfctnReq/Vrfctn/PtyAndAcctId/Agt/FinInstnId/BICFI",
        "pacs008": "/Document/FIToFICstmrCdtTrf/CdtTrfTxInf/CdtrAgt/FinInstnId/BICFI"
      },
      "label": {
        "code": "BICFI",
        "title": {
          "en": "BIC of the Creditor's Bank or Payment Service Provider",
          "de": "BIC der Kreditorbank des Payment Service Providers"
        }
      }
    },
    {
      "attributes": {
        "name": "addressTypeCode",
        "type": "hidden",
        "value": "ACCT",
        "required": true
      },
      "iso20022Path": {
        "acmt023": null,
        "pacs008": null
      }
    }
  ]
}

Example IBAN

For IBAN, only one text input is required, plus the hidden field addressTypeCode set to “IBAN”. The following example is for an IBAN to the United Kingdom (GB).

{
  "id": "GBIBAN",
  "inputs": [
    {
      "attributes": {
        "name": "accountOrProxyId",
        "type": "number",
        "pattern": "^GB[0-9]{2}[A-Z]{4}[0-9]{14}$",
        "placeholder": "GB29 NWBK 6016 1331 9268 19",
        "required": true
      },
      "iso20022Path": {
        "acmt023": "/Document/IdVrfctnReq/Vrfctn/PtyAndAcctId/Acct/Id/IBAN",
        "pacs008": "/Document/FIToFICstmrCdtTrf/CdtTrfTxInf/CrtrAcct/Id/IBAN"
      },
      "label": {
        "code": "IBAN",
        "title": [
          {
            "en": "International Bank Account Number",
            "de": "Internationale Bankkontonummer"
          }
        ]
      }
    },
    {
      "attributes": {
        "name": "addressTypeCode",
        "type": "hidden",
        "value": "IBAN",
        "required": true
      },
      "iso20022Path": {
        "acmt023": null,
        "pacs008": null
      }
    }
  ]
}

Last updated