Modulr Accounts API

Operations on Accounts

Operations 9

GET /accounts/{accountId} Get an account #
PUT /accounts/{accountId} Edit an account #
PUT /accounts/{accountId}/secured-funding Set the secured funding limit for an account #
GET /customers/{customerId}/accounts Get accounts by customer #
POST /customers/{customerId}/accounts Create account by customer #
POST /accounts/{accountId}/unblock Unblock a specific account #
POST /accounts/{accountId}/close Close an account #
POST /accounts/{accountId}/block Block a specific account #
GET /accounts Get accounts using filter #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/modulr-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

modulr-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Modulr Accounts API
  description: Modulr API
  license:
    name: © Modulr Finance
    url: https://www.modulrfinance.com
  version: '1.0'
servers:
- url: https://api-sandbox.modulrfinance.com/api-sandbox-token
security:
- modulo_security: []
tags:
- name: Accounts
  description: Operations on Accounts
paths:
  /accounts/{accountId}:
    get:
      tags:
      - Accounts
      summary: Get an account
      description: Retrieve details of a particular account using its ID as a reference
      operationId: getAccount
      parameters:
      - name: accountId
        in: path
        description: ID of account to fetch
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: statuses
        in: query
        description: Account statuses allowed when fetching the account
        required: false
        style: form
        explode: true
        schema:
          type: array
          default:
          - ACTIVE
          items:
            type: string
            enum:
            - ACTIVE
            - BLOCKED
            - CLOSED
            - CLIENT_BLOCKED
      - name: includePendingTransactions
        in: query
        description: Include all pending transactions in 'balance' field
        required: false
        style: form
        explode: true
        schema:
          type: boolean
          default: false
      - name: showAvailableBalance
        in: query
        description: Show available balance
        required: false
        style: form
        explode: true
        schema:
          type: boolean
          default: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account.AccountResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
    put:
      tags:
      - Accounts
      summary: Edit an account
      description: "Edit details of a particular account using its ID as a reference\nCurrently editable fields:\n  1. for accounts of all customer types, externalReference can be edited\n  2. for accounts of PCM_INDIVIDUAL & PCM_BUSINESS customer types, name can additionally be edited"
      operationId: editAccount
      parameters:
      - name: accountId
        in: path
        description: ID of account to be edited
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/account.UpdateAccountRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account.AccountResponse'
        '400':
          description: Validation errors
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /accounts/{accountId}/secured-funding:
    put:
      tags:
      - Accounts
      summary: Set the secured funding limit for an account
      operationId: updateSecuredFundingLimit
      parameters:
      - name: accountId
        in: path
        description: ID of account to set the secured funding limit
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/account.AccountSecuredFundingRequest'
        required: true
      responses:
        '200':
          description: OK
        '400':
          description: Validation errors
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /customers/{customerId}/accounts:
    get:
      tags:
      - Accounts
      summary: Get accounts by customer
      description: Get details of accounts belonging to a particular customer using the customer’s ID as a reference
      operationId: getAccountsByCustomer
      parameters:
      - name: customerId
        in: path
        description: ID of customer to fetch accounts for
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: customerStatuses
        in: query
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/account.customerStatuses'
      - name: statuses
        in: query
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/account.statuses'
      - name: minBalance
        in: query
        description: Accounts with balance equal or more than this amount
        required: false
        style: form
        explode: true
        schema:
          type: number
          description: Accounts with balance equal or more than this amount
          minimum: 0
      - name: maxBalance
        in: query
        description: Accounts with balance equal or less than this amount
        required: false
        style: form
        explode: true
        schema:
          type: number
          description: Accounts with balance equal or less than this amount
          minimum: 0.01
      - name: fromCreatedDate
        in: query
        description: Accounts created after and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Accounts created after and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
          example: 2017-01-28T01:01:01+0000
        example: 2017-01-28T01:01:01+0000
      - name: toCreatedDate
        in: query
        description: Accounts created before and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Accounts created before and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
          example: 2017-01-28T01:01:01+0000
        example: 2017-01-28T01:01:01+0000
      - name: page
        in: query
        description: Page to fetch (0 indexed)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          description: Page to fetch (0 indexed)
      - name: size
        in: query
        description: Size of Page to fetch
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          description: Size of Page to fetch
          maximum: 500
      - name: sortField
        in: query
        description: Sort by field
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Sort by field
          pattern: (id|name|balance|externalReference|createdDate)
      - name: sortOrder
        in: query
        description: Sorting order
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Sorting order
          pattern: (asc|desc)
      - name: currency
        in: query
        description: The currency for getting account by currency. Expected ISO Standard currency name i.e. GBP, EUR etc
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: The currency for getting account by currency. Expected ISO Standard currency name i.e. GBP, EUR etc
          enum:
          - GBP
          - EUR
          - AED
          - AFN
          - ALL
          - AMD
          - ANG
          - AOA
          - ARS
          - AUD
          - AWG
          - AZN
          - BAM
          - BBD
          - BDT
          - BGN
          - BHD
          - BIF
          - BMD
          - BND
          - BOB
          - BOV
          - BRL
          - BSD
          - BTN
          - BWP
          - BYN
          - BZD
          - CAD
          - CDF
          - CHE
          - CHF
          - CHW
          - CLF
          - CLP
          - CNY
          - COP
          - COU
          - CRC
          - CUC
          - CUP
          - CVE
          - CZK
          - DJF
          - DKK
          - DOP
          - DZD
          - EGP
          - ERN
          - ETB
          - FJD
          - FKP
          - GEL
          - GHS
          - GIP
          - GMD
          - GNF
          - GTQ
          - GYD
          - HKD
          - HNL
          - HRK
          - HTG
          - HUF
          - IDR
          - ILS
          - INR
          - IQD
          - IRR
          - ISK
          - JMD
          - JOD
          - JPY
          - KES
          - KGS
          - KHR
          - KMF
          - KPW
          - KRW
          - KWD
          - KYD
          - KZT
          - LAK
          - LBP
          - LKR
          - LRD
          - LSL
          - LYD
          - MAD
          - MDL
          - MGA
          - MKD
          - MMK
          - MNT
          - MOP
          - MRU
          - MUR
          - MVR
          - MWK
          - MXN
          - MXV
          - MYR
          - MZN
          - NAD
          - NGN
          - NIO
          - NOK
          - NPR
          - NZD
          - OMR
          - PAB
          - PEN
          - PGK
          - PHP
          - PKR
          - PLN
          - PYG
          - QAR
          - RON
          - RSD
          - RUB
          - RWF
          - SAR
          - SBD
          - SCR
          - SDG
          - SEK
          - SGD
          - SLE
          - SLL
          - SOS
          - SRD
          - SSP
          - STN
          - SVC
          - SYP
          - SZL
          - SHP
          - THB
          - TJS
          - TMT
          - TND
          - TOP
          - TRY
          - TTD
          - TWD
          - TZS
          - UAH
          - UGX
          - USD
          - USN
          - UYI
          - UYU
          - UYW
          - UZS
          - VES
          - VND
          - VUV
          - WST
          - XAF
          - XAG
          - XAU
          - XBA
          - XBB
          - XBC
          - XBD
          - XCD
          - XDR
          - XOF
          - XPD
          - XPF
          - XPT
          - XSU
          - XTS
          - XUA
          - XXX
          - YER
          - ZAR
          - ZMW
          - ZWL
          example: GBP
        example: GBP
      - name: showAvailableBalance
        in: query
        description: Show available balance
        required: false
        style: form
        explode: true
        schema:
          type: boolean
          description: Show available balance
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account.AccountPageResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
    post:
      tags:
      - Accounts
      summary: Create account by customer
      description: Creates an account for a particular customer using the customer’s ID as a reference
      operationId: createAccount
      parameters:
      - name: customerId
        in: path
        description: ID of customer to create account for
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/account.CreateAccountRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account.AccountResponse'
        '400':
          description: Validation errors
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /accounts/{accountId}/unblock:
    post:
      tags:
      - Accounts
      summary: Unblock a specific account
      description: Using a unique reference (account ID) you can unblock an account
      operationId: unblockAccount
      parameters:
      - name: accountId
        in: path
        description: ID of account to unblock
        required: true
        style: simple
        explode: false
        schema:
          type: string
      responses:
        '200':
          description: OK
        '400':
          description: Validation errors
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /accounts/{accountId}/close:
    post:
      tags:
      - Accounts
      summary: Close an account
      description: Accounts with a zero balance can be closed. The account must have a status of ACTIVE or CLIENT_BLOCKED.
      operationId: closeAccount
      parameters:
      - name: accountId
        in: path
        description: ID of account to close
        required: true
        style: simple
        explode: false
        schema:
          type: string
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /accounts/{accountId}/block:
    post:
      tags:
      - Accounts
      summary: Block a specific account
      description: Using a unique reference (account ID) you can block an account
      operationId: blockAccount
      parameters:
      - name: accountId
        in: path
        description: ID of account to block
        required: true
        style: simple
        explode: false
        schema:
          type: string
      responses:
        '200':
          description: OK
        '400':
          description: Validation errors
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /accounts:
    get:
      tags:
      - Accounts
      summary: Get accounts using filter
      description: Gives the ability to find accounts and get their details using filters
      operationId: getAccounts
      parameters:
      - name: id
        in: query
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/account.id'
      - name: q
        in: query
        description: ID or name of the account to search for
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: ID or name of the account to search for
      - name: identifierType
        in: query
        description: Accounts that contain this identifier type
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Accounts that contain this identifier type
          enum:
          - SCAN
          - IBAN
          - DD
          - INTL
          example: SCAN
        example: SCAN
      - name: name.type
        in: query
        description: 'WORD_MATCH - using word boundaries,

          WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

          PREFIX - same case prefix,

          SUFFIX - same case suffix,

          CONTAINS - same case contains

          EXACT - same case exact

          '
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: 'WORD_MATCH - using word boundaries,

            WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

            PREFIX - same case prefix,

            SUFFIX - same case suffix,

            CONTAINS - same case contains

            EXACT - same case exact

            '
          enum:
          - WORD_MATCH
          - WORD_MATCH_ALPHANUMERIC
          - PREFIX
          - SUFFIX
          - CONTAINS
          - EXACT
      - name: name.value
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          minLength: 1
      - name: externalReference.type
        in: query
        description: 'WORD_MATCH - using word boundaries,

          WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

          PREFIX - same case prefix,

          SUFFIX - same case suffix,

          CONTAINS - same case contains

          EXACT - same case exact

          '
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: 'WORD_MATCH - using word boundaries,

            WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

            PREFIX - same case prefix,

            SUFFIX - same case suffix,

            CONTAINS - same case contains

            EXACT - same case exact

            '
          enum:
          - WORD_MATCH
          - WORD_MATCH_ALPHANUMERIC
          - PREFIX
          - SUFFIX
          - CONTAINS
          - EXACT
      - name: externalReference.value
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          minLength: 1
      - name: customerId
        in: query
        description: The customer ID for getting account by customer ID
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/account.customerId'
        example: C1234567
      - name: accountNumber.type
        in: query
        description: 'WORD_MATCH - using word boundaries,

          WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

          PREFIX - same case prefix,

          SUFFIX - same case suffix,

          CONTAINS - same case contains

          EXACT - same case exact

          '
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: 'WORD_MATCH - using word boundaries,

            WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

            PREFIX - same case prefix,

            SUFFIX - same case suffix,

            CONTAINS - same case contains

            EXACT - same case exact

            '
          enum:
          - WORD_MATCH
          - WORD_MATCH_ALPHANUMERIC
          - PREFIX
          - SUFFIX
          - CONTAINS
          - EXACT
      - name: accountNumber.value
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          minLength: 1
      - name: iban.type
        in: query
        description: 'WORD_MATCH - using word boundaries,

          WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

          PREFIX - same case prefix,

          SUFFIX - same case suffix,

          CONTAINS - same case contains

          EXACT - same case exact

          '
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: 'WORD_MATCH - using word boundaries,

            WORD_MATCH_ALPHANUMERIC - using word boundaries, but replaces non-alphanumeric characters in the search with a word boundary match,

            PREFIX - same case prefix,

            SUFFIX - same case suffix,

            CONTAINS - same case contains

            EXACT - same case exact

            '
          enum:
          - WORD_MATCH
          - WORD_MATCH_ALPHANUMERIC
          - PREFIX
          - SUFFIX
          - CONTAINS
          - EXACT
      - name: iban.value
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          minLength: 1
      - name: statuses
        in: query
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/account.statuses'
      - name: minBalance
        in: query
        description: Accounts with balance equal or more than this amount
        required: false
        style: form
        explode: true
        schema:
          type: number
          description: Accounts with balance equal or more than this amount
          minimum: 0
      - name: maxBalance
        in: query
        description: Accounts with balance equal or less than this amount
        required: false
        style: form
        explode: true
        schema:
          type: number
          description: Accounts with balance equal or less than this amount
          minimum: 0.01
      - name: fromCreatedDate
        in: query
        description: Accounts created after and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Accounts created after and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
          example: 2017-01-28T01:01:01+0000
        example: 2017-01-28T01:01:01+0000
      - name: toCreatedDate
        in: query
        description: Accounts created before and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Accounts created before and on this date. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
          example: 2017-01-28T01:01:01+0000
        example: 2017-01-28T01:01:01+0000
      - name: page
        in: query
        description: Page to fetch (0 indexed)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          description: Page to fetch (0 indexed)
      - name: size
        in: query
        description: Size of Page to fetch
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          description: Size of Page to fetch
          maximum: 500
      - name: sortField
        in: query
        description: Sort by field
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Sort by field
          pattern: (id|name|balance|externalReference|createdDate)
      - name: sortOrder
        in: query
        description: Sorting order
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Sorting order
          pattern: (asc|desc)
      - name: currency
        in: query
        description: The currency for getting account by currency. Expected ISO Standard currency name i.e. GBP, EUR etc
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: The currency for getting account by currency. Expected ISO Standard currency name i.e. GBP, EUR etc
          enum:
          - GBP
          - EUR
          - AED
          - AFN
          - ALL
          - AMD
          - ANG
          - AOA
          - ARS
          - AUD
          - AWG
          - AZN
          - BAM
          - BBD
          - BDT
          - BGN
          - BHD
          - BIF
          - BMD
          - BND
          - BOB
          - BOV
          - BRL
          - BSD
          - BTN
          - BWP
          - BYN
          - BZD
          - CAD
          - CDF
          - CHE
          - CHF
          - CHW
          - CLF
          - CLP
          - CNY
          - COP
          - COU
          - CRC
          - CUC
          - CUP
          - CVE
          - CZK
          - DJF
          - DKK
          - DOP
          - DZD
          - EGP
          - ERN
          - ETB
          - FJD
          - FKP
          - GEL
          - GHS
          - GIP
          - GMD
          - GNF
          - GTQ
          - GYD
          - HKD
          - HNL
          - HRK
          - HTG
          - HUF
          - IDR
          - ILS
          - INR
          - IQD
          - IRR
          - ISK
          - JMD
          - JOD
          - JPY
          - KES
          - KGS
          - KHR
          - KMF
          - KPW
          - KRW
          - KWD
          - KYD
          - KZT
          - LAK
          - LBP
          - LKR
          - LRD
          - LSL
          - LYD
          - MAD
          - MDL
          - MGA
          - MKD
          - MMK
          - MNT
          - MOP
          - MRU
          - MUR
          - MVR
          - MWK
          - MXN
          - MXV
          - MYR
          - MZN
          - NAD
          - NGN
          - NIO
          - NOK
          - NPR
          - NZD
          - OMR
          - PAB
          - PEN
          - PGK
          - PHP
          - PKR
          - PLN
          - PYG
          - QAR
          - RON
          - RSD
          - RUB
          - RWF
          - SAR
          - SBD
          - SCR
          - SDG
          - SEK
          - SGD
          - SLE
          - SLL
          - SOS
          - SRD
          - SSP
          - STN
          - SVC
          - SYP
          - SZL
          - SHP
          - THB
          - TJS
          - TMT
          - TND
          - TOP
          - TRY
          - TTD
          - TWD
          - TZS
          - UAH
          - UGX
          - USD
          - USN
          - UYI
          - UYU
          - UYW
          - UZS
          - VES
          - VND
          - VUV
          - WST
          - XAF
          - XAG
          - XAU
          - XBA
          - XBB
          - XBC
          - XBD
          - XCD
          - XDR
          - XOF
          - XPD
          - XPF
          - XPT
          - XSU
          - XTS
          - XUA
          - XXX
          - YER
          - ZAR
          - ZMW
          - ZWL
          example: GBP
        example: GBP
      - name: showAvailableBalance
        in: query
        description: Show available balance
        required: false
        style: form
        explode: true
        schema:
          type: boolean
          description: Show available balance
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account.AccountPageResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
components:
  schemas:
    account.customerId:
      type: array
      description: The customer ID for getting account by customer ID
      example: C1234567
      items:
        type: string
        description: The customer ID for getting account by customer ID
        example: C1234567
    account.id:
      type: array
      description: ID of Customer(s) to fetch
      items:
        type: string
        description: ID of Customer(s) to fetch
    account.AccountSecuredFundingRequest:
      type: object
      properties:
        limit:
          type: number
          description: Secured funding limit
          minimum: 0
      required:
      - limit
    account.UpdateAccountRequest:
      type: object
      description: Details of account to edit
      properties:
        externalReference:
          type: string
          description: External Reference can only have alphanumeric characters plus underscore, hyphen and space up to 50 characters long
          maxLength: 50
          minLength: 0
          pattern: '[\w \-]*'
        name:
          type: string
          description: Name for the account, only applicable for 'PCM_INDIVIDUAL' and 'PCM_BUSINESS' customer types
          maxLength: 40
          minLength: 0
    account.AccountResponse:
      type: object
      description: Account
      properties:
        id:
          type: string
          description: Unique id for the account
          example: A0000001
        name:
          type: string
          description: Name for the account
        balance:
          type: string
          description: Balance of the account in format 'NN.NN'
          example: '10000.00'
        availableBalance:
          type: string
          description: The current available balance of the Account. Calculated by subtracting any pending payments from the current balance
          example: '10000.00'
        currency:
          type: string
          description: Currency of the account in ISO 4217 format
          example: GBP
        status:
          type: string
          description: 'Status of the account. Accounts must be ''ACTIVE'' to make and receive payments. Can be one of '
          example: ACTIVE
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/account.IdentifierResponse'
        customerId:
          type: string
          description: Unique id of the Customer
          example: C0000001
        customerName:
          type: string
          description: Customer Name
        externalReference:
          type: string
          description: Your reference for an account
          example: aReference_00001
        accessGroups:
          type: array
          description: Ids of Access Groups this account belongs to
          items:
            type: string
        createdDate:
          type: string
          format: date-time
          description: Datetime when the account was created. Format is 'yyyy-MM-dd'T'HH:mm:ssZ' where Z is UTC offset. e.g 2017-01-28T01:01:01+0000
          example: 2017-01-28T01:01:01+0000
        directDebit:
          type: boolean
          description: Direct Debit Enabled
        securedFundingLimit:
          type: string
          description: Limit of funds available below a balance of zero
    account.customerStatuses:
      type: array
      items:
        type: string
        default: ACTIVE
        description: Customer statuses
        enum:
        - ACTIVE
        - CLOSED
        - BLOCKED
    account.IdentifierCountrySpecificDetailsResponse:
      type: object
      properties:
        bankName:
          type: string
          description: The name of the destination bank.
          example: Apple Bank
        bankAddress:
          type: string
          description: The address of the destination bank.
          example: 2100 Broadway
       

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/modulr/refs/heads/main/openapi/modulr-accounts-api-openapi.yml