iBanFirst · Schema

ExternalBankAccountVOP

CompanyFintech InsurtechCross-Border PaymentsForeign ExchangeB2B PaymentsTreasurymulti-currency-accountsSEPAPSD2Open Bankingcurrency-risk-managementWebhookMCPBelgiumEuropeSWIFT

Properties

Name Type Description
id object
currency object
tag string Custom reference of the account.
accountNumber string The code specifying the account (can be either an Iban or an account number).
correspondentBank object
holderBank object
holder object
contactEmail object
payeeVerification object Verification of payee result. **Note** : check default error response if the verification failed for more details.
View JSON Schema on GitHub

JSON Schema

ibanfirst-external-bank-account-vop-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/ibanfirst/main/json-schema/ibanfirst-external-bank-account-vop-schema.json",
  "title": "ExternalBankAccountVOP",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/ibanfirst-beneficiaries-api-openapi.yml#/components/schemas/ExternalBankAccountVOP",
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/$defs/ID"
    },
    "currency": {
      "$ref": "#/$defs/Currency"
    },
    "tag": {
      "type": "string",
      "maxLength": 50,
      "description": "Custom reference of the account.\n"
    },
    "accountNumber": {
      "type": "string",
      "maxLength": 40,
      "description": "The code specifying the account (can be either an Iban or an account number).\n"
    },
    "correspondentBank": {
      "$ref": "#/$defs/CorrespondantBank"
    },
    "holderBank": {
      "$ref": "#/$defs/HolderBank"
    },
    "holder": {
      "$ref": "#/$defs/Holder"
    },
    "contactEmail": {
      "$ref": "#/$defs/Email"
    },
    "payeeVerification": {
      "type": "object",
      "description": "Verification of payee result. \n\n **Note** : check default error response if the verification failed for more details.\n",
      "properties": {
        "status": {
          "type": "string",
          "description": "`SUCCESS` if the beneficiary IBAN and name are verified."
        },
        "message": {
          "type": "string",
          "description": "`Match` if the beneficiary IBAN and name are a perfect match."
        }
      }
    }
  },
  "$defs": {
    "Address": {
      "type": "object",
      "description": "Representation of an address\n",
      "required": [
        "country"
      ],
      "properties": {
        "street": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255,
          "description": "The street and street number for the address described.\n"
        },
        "postCode": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 15,
          "description": "The ZIP/Post code for the address described.\n"
        },
        "city": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 35,
          "description": "The city for the address described.\n"
        },
        "province": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 2,
          "description": "The province code for the address described. This field could be required if the country use a province system, like United States or Canada. To see a full list of province code, please refer to http://www.mapability.com/ei8ic/contest/states.php.\n"
        },
        "country": {
          "type": "string",
          "maxLength": 8,
          "description": "The two-letters abbreviation for the country, following the ISO-3166 for the address described.\n"
        }
      }
    },
    "CorrespondantBank": {
      "type": [
        "object",
        "null"
      ],
      "description": "Representation of a correspondant bank.\n",
      "properties": {
        "bic": {
          "type": "string",
          "maxLength": 11,
          "description": "Eight or eleven-digit ISO 9362 Business Identifier Code specifying the Recipient Bank.\n"
        },
        "name": {
          "type": "string",
          "maxLength": 120,
          "description": "The beneficiary bank name.\n"
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      }
    },
    "Currency": {
      "type": "string",
      "pattern": "^[A-Z]{3}$",
      "format": "^[A-Z]{3}$",
      "description": "A String representing the Three-digit ISO 4217 Currency Code of a currency. This String only contains capitalized letters.\n"
    },
    "Email": {
      "type": "string",
      "description": "Beneficiary email address",
      "pattern": "^[A-Za-z0-9._-]+@[A-Za-z0-9._-]+\\.[A-Za-z]{2,}$"
    },
    "Holder": {
      "type": "object",
      "description": "What we call a Holder can be either an Individual or an Organisation that own the account.\nMay also be referred to as: Beneficiary/Supplier/Vendor/Payee/Recipient.\n\nIn the beneficiary address, only the Country is mandatory, but you can specify all fields to be more precise.\n",
      "required": [
        "name",
        "type"
      ],
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 100,
          "description": "The name of the account owner.\n"
        },
        "type": {
          "type": "string",
          "maxLength": 10,
          "description": "The code identifying the type of account owner.\n",
          "enum": [
            "Individual",
            "Corporate"
          ]
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      }
    },
    "HolderBank": {
      "type": "object",
      "description": "Representation of a beneficiary bank.\n",
      "properties": {
        "bic": {
          "type": "string",
          "maxLength": 11,
          "description": "Eight or eleven-digit ISO 9362 Business Identifier Code specifying the Recipient Bank.\nThis field is optional only when the account number does not have an Iban format."
        },
        "clearingCodeType": {
          "type": "string",
          "maxLength": 2,
          "description": "The two-digit code specifying the local clearing network.\nIf you does not have a bic, this field is required."
        },
        "clearingCode": {
          "type": "string",
          "maxLength": 15,
          "description": "The code identifying the branch number on the local clearing network.\nIf you does not have a bic, this field is required."
        },
        "name": {
          "type": "string",
          "maxLength": 120,
          "description": "The beneficiary bank name.\n"
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      }
    },
    "ID": {
      "type": "string",
      "pattern": "^[A-Za-z0-9]+$",
      "format": "^[A-Za-z0-9]+$",
      "description": "A String representing the id of an object. This string contains alpha-numeric characters, including the capital ones.\n"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/ibanfirst-external-bank-account-vop"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.