Financial Data Exchange (FDX) Account Transactions API

Search and view account transactions

OpenAPI Specification

fdx-account-transactions-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  version: 6.0.0
  title: FDX V6.0.0 Account Information Account Transactions API
  description: "## FDX compliance\n\nThe Core Exchange API specifications are a subset of the Financial Data Exchange (FDX) API specification, the usage thereof (or any part thereof) constitutes acceptance of the FDX API\nLicense Agreement, which can be found at https://financialdataexchange.org/. The FDX API specification is distributed exclusively by FDX. Modifications to eliminate required or\nconditional elements prescribed in the FDX API Certification Use Cases will render any implementations using said modifications non-conformant with the FDX API Certification Use Cases.\nPlease note that building the FDX-compliant Core Exchange API and permitting Plaid to call your build constitutes acceptance of\nthe FDX end user license agreement, which can be found at https://financialdataexchange.org/.\nThe full FDX API standard specification is distributed exclusively by FDX.\n\n## Download the specification\n\nTo view this specification and documentation as an OpenAPI YAML file, see [the public Core Exchange Github repository](https://github.com/plaid/core-exchange/tree/main/versions).\n\n## Endpoints\n\nThis specification contains the following endpoints:\n\n  - `/customers/current`\n\n  - `/accounts`\n\n  - `/accounts/{accountId}`\n\n  - `/accounts/{accountId}/payment-networks`\n\n  - `/accounts/{accountId}/asset-transfer-networks`\n\n  - `/accounts/{accountId}/statements`\n\n  - `/accounts/{accountId}/statements/{statementId}`\n\n  - `/accounts/{accountId}/contact`\n\n  - `/accounts/{accountId}/transactions`\n\n## Error responses\n\nAn error entity which can be used at the API level for error responses or at the account level to indicate a problem specific to a particular account.\nError responses must contain a `code` and `message`, and may optionally include a `debugMessage`.\nSee the descriptions below:\n\n- `code`: The FDX error code: A long-term persistent identifier which can be used to trace error condition back to log information.\n  (**Note:** This code may differ from the HTTP status code.)\n- `message`: End user displayable information which might help the customer diagnose an error\n- `debugMessage`: Message used to debug the root cause of the error. Contents should not be used in consumer's business logic. Can change at any time and should only be used for consumer to communicate with the data provider about an issue. Provider can include an error GUID in message for their use\n\n### Example error\n\nThe following is an example response with an HTTP status code of 409.\n\n```\n{\n  \"code\": 705,\n  \"message\": \"Account is closed\",\n  \"debugMessage\": \"Operation is not supported by the closed account\"\n}\n```\n\nSee the Errors table in each endpoint description for more specific message and debug message examples.\n"
  contact:
    name: Plaid support
    url: https://plaid.com/data-connectivity-core-exchange/
    email: dataconnectivity@plaid.com
servers:
- url: https://api.your-organization.com/fdx/v6
  description: Financial Data Exchange V6.0 Core API
tags:
- name: Account Transactions
  description: Search and view account transactions
paths:
  /accounts/{accountId}/transactions:
    get:
      operationId: searchForAccountTransactions
      tags:
      - Account Transactions
      description: 'List all account transactions. Plaid always queries this endpoint using a `startTime` and an `endTime`, for example, `/accounts/{accountId}/transactions?startTime=2022-01-30&endTime=2022-05-30`, and expects the time filters to be based on the `postedTimestamp`.


        Plaid consumes data from this endpoint only for [loan](#loan-account), [investment](#investment-account), [deposit](#deposit-account), and [line of credit](#line-of-credit-account) accounts.

        '
      summary: Search for account transactions
      security:
      - openIdConnect:
        - Transactions
      - oauth2:
        - Transactions
      parameters:
      - $ref: '#/components/parameters/AccountIdPath'
      - $ref: '#/components/parameters/OffsetQuery'
      - $ref: '#/components/parameters/LimitQuery'
      - $ref: '#/components/parameters/StartTimeQuery'
      - $ref: '#/components/parameters/EndTimeQuery'
      responses:
        '200':
          description: 'Paginated collection of transactions. Plaid consumes the following transaction types: InvestmentTransaction, DepositTransaction, LoanTransaction, or LocTransaction.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transactions'
              example:
                page:
                  nextOffset: B47D80MVP23T
                transactions:
                - accountCategory: DEPOSIT_ACCOUNT
                  checkNumber: 1234
                  payee: ACME LLC
                  transactionId: depositTransaction000000001
                  postedTimestamp: '2022-04-06T00:00:00.000Z'
                  transactionTimestamp: '2022-04-05T00:00:00.000Z'
                  description: check for latest ACME invoice
                  debitCreditMemo: DEBIT
                  status: PENDING
                  amount: 400.0
                - accountCategory: DEPOSIT_ACCOUNT
                  transactionId: depositTransaction000000002
                  postedTimestamp: '2022-04-07T00:00:00.000Z'
                  transactionTimestamp: '2022-04-07T00:00:00.000Z'
                  description: reconciliation/adjustment of bank statement error
                  debitCreditMemo: DEBIT
                  status: POSTED
                  amount: 0.8
                - accountCategory: DEPOSIT_ACCOUNT
                  transactionId: depositTransaction000000003
                  postedTimestamp: '2022-04-08T00:00:00.000Z'
                  transactionTimestamp: '2022-04-08T00:00:00.000Z'
                  description: 'ATM cash deposit location #1234'
                  debitCreditMemo: CREDIT
                  status: POSTED
                  amount: 101.8
components:
  schemas:
    DebitCreditMemo:
      title: DebitCreditMemo
      description: 'The posting type of a transaction. Because the transaction `amount` is an absolute value, this parameter is required to indicate the transaction direction and sign (+/-):

        - `DEBIT`: Money is leaving the account. The transaction amount will be exposed with a **positive** sign (+)

        - `CREDIT`: Money is entering the account. The transaction amount will be exposed with a **negative** sign (-)

        - `MEMO`: The transaction is pending and will be completed at the end of the day. (Plaid handles `MEMO` transaction the same as `DEBIT` transactions.)

        '
      type: string
      enum:
      - CREDIT
      - DEBIT
      - MEMO
    LoanTransaction:
      title: Loan Transaction entity
      description: 'A transaction on a loan account

        '
      type: object
      allOf:
      - $ref: '#/components/schemas/Transaction'
      - type: object
        properties:
          accountCategory:
            type: string
            enum:
            - LOAN_ACCOUNT
          transactionType:
            $ref: '#/components/schemas/LoanTransactionType'
        required:
        - accountCategory
      example:
        accountCategory: LOAN_ACCOUNT
        transactionId: 78RJ3311PLU34300E
        transactionTimestamp: '2024-07-15T14:46:41.375+02:00'
        description: Monthly loan payment-minimum due
        debitCreditMemo: CREDIT
        status: POSTED
        amount: 1638.83
    DateString:
      title: Date String
      description: 'ISO 8601 full-date in format ''YYYY-MM-DD'' according

        to [IETF RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339.html#section-5.6)

        '
      type: string
      format: date
      maxLength: 10
      example: '2021-07-15'
    Iso4217Code:
      title: ISO 4217 Code
      description: 'Currency, fund and precious metal codes as of Jan. 1, 2023 per [ISO 4217 Currency Code Maintenance](https://www.six-group.com/en/products-services/financial-information/data-standards.html)

        '
      type: string
      example: CAD
      enum:
      - 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
      - EUR
      - FJD
      - FKP
      - GBP
      - GEL
      - GHS
      - GIP
      - GMD
      - GNF
      - GTQ
      - GYD
      - HKD
      - HNL
      - 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
      - SHP
      - SLE
      - SLL
      - SOS
      - SRD
      - SSP
      - STN
      - SVC
      - SYP
      - SZL
      - THB
      - TJS
      - TMT
      - TND
      - TOP
      - TRY
      - TTD
      - TWD
      - TZS
      - UAH
      - UGX
      - USD
      - USN
      - UYI
      - UYU
      - UYW
      - UZS
      - VED
      - 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
    DepositTransaction:
      title: Deposit Transaction entity
      description: 'A transaction on a deposit account type

        '
      type: object
      allOf:
      - $ref: '#/components/schemas/Transaction'
      - type: object
        properties:
          accountCategory:
            type: string
            enum:
            - DEPOSIT_ACCOUNT
          payee:
            $ref: '#/components/schemas/String255'
            description: 'Payee name

              '
          checkNumber:
            type: integer
            description: 'Check number. Plaid expects this solely if the transaction involves a check

              '
        required:
        - accountCategory
      example:
        accountCategory: DEPOSIT_ACCOUNT
        transactionId: 78RJ3311PLU34300E
        transactionTimestamp: '2024-07-15T14:46:41.375+02:00'
        description: ATM deposit
        debitCreditMemo: DEBIT
        status: PENDING
        amount: 38.9
    LineOfCreditTransaction:
      title: Line-Of-Credit Transaction entity
      description: 'A line-of-credit transaction

        '
      type: object
      allOf:
      - $ref: '#/components/schemas/Transaction'
      - type: object
        properties:
          accountCategory:
            type: string
            enum:
            - LOC_ACCOUNT
          transactionType:
            $ref: '#/components/schemas/LineOfCreditTransactionType'
          checkNumber:
            type: integer
            description: 'Check number. Plaid expects this solely if the transaction involves a check

              '
        required:
        - accountCategory
      example:
        accountCategory: LOC_ACCOUNT
        transactionId: 78RJ3311PLU34300E
        transactionTimestamp: '2024-07-15T14:46:41.375+02:00'
        description: Recurring payment
        debitCreditMemo: MEMO
        status: AUTHORIZATION
        amount: 38.9
    AccountCategory:
      title: Account Category type
      description: 'The category of account. For example, annuity, commercial, deposit, insurance, investment, loan, or line of credit.

        '
      enum:
      - ANNUITY_ACCOUNT
      - COMMERCIAL_ACCOUNT
      - DEPOSIT_ACCOUNT
      - INSURANCE_ACCOUNT
      - INVESTMENT_ACCOUNT
      - LOAN_ACCOUNT
      - LOC_ACCOUNT
    UnitType:
      title: Unit Type
      description: 'The units of an investment transaction

        '
      type: string
      enum:
      - CURRENCY
      - SHARES
    LineOfCreditTransactionType:
      title: Line-Of-Credit Transaction Type
      description: 'The type of a line of credit (LOC) transaction. Plaid passes through all LOC transaction types

        '
      type: string
      enum:
      - ADJUSTMENT
      - CHECK
      - FEE
      - INTEREST
      - PAYMENT
      - WITHDRAWAL
      - PURCHASE
    InvestmentTransaction:
      title: Investment Transaction entity
      description: 'A transaction on an investment account.

        In addition to the required fields in the base `Transaction` model, Plaid requires the following fields

        for all transactions on an investment account:


        * `fees`

        * `transactionType`


        If the transaction involves a security, Plaid additionally requires the following fields:


        * `unitPrice`

        * `units`

        * `symbol` OR both `securityId` and `securityIdType`

        '
      type: object
      allOf:
      - $ref: '#/components/schemas/Transaction'
      - type: object
        properties:
          accountCategory:
            type: string
            enum:
            - INVESTMENT_ACCOUNT
          transactionType:
            $ref: '#/components/schemas/InvestmentTransactionType'
          securityId:
            type: string
            description: 'If you return the `securityId` for a holding, Plaid uses it to look up the closing price from NYSE Group Security Master.

              If you don''t return `securityId` for a holding that uses security IDs (not recommended), Plaid uses the `unitPrice` as the closing price.


              This field, along with `securityIdType` are **required** unless `symbol` is provided.


              **Note:** If `securityId` is provided, `securityIdType` is required.

              '
          securityIdType:
            $ref: '#/components/schemas/SecurityIdType'
          securityType:
            $ref: '#/components/schemas/SecurityType'
          symbol:
            type: string
            description: 'Ticker / Market symbol

              This field is **required** unless both `securityId` and `securityIdType` are provided

              '
          commission:
            type: number
            description: 'Plaid expects that your organization includes a value for commission if the commission isn''t included in `fees`

              '
          fees:
            type: number
            description: 'Fees applied to the trade. Plaid expects that the `fees` include the commission, unless your organization separately provides a value for `commission`

              '
          unitPrice:
            type: number
            description: 'Unit price. Plaid uses this as the [price](https://plaid.com/docs/api/products/investments/#investments-transactions-get-response-investment-transactions-price). Plaid falls back to using this as the [close price](https://plaid.com/docs/api/products/investments/#investments-transactions-get-response-securities-close-price) if you don''t return `securityId` for transactions involving securities.

              **Note:** This field is required if the transaction involves a security

              '
          units:
            type: number
            description: 'Plaid requires this field for holdings and transactions involving securities.

              For security-based actions other than stock splits, quantity.

              Shares for stocks, mutual funds, and others. Face value for bonds.

              Contracts for options.


              **Note:** This field is required if the transaction involves a security.

              '
          unitType:
            $ref: '#/components/schemas/UnitType'
          fiAttributes:
            type: array
            description: 'Array of financial institution-specific attributes. Plaid recommends including a value for [`is_cash_equivalent`](https://plaid.com/docs/api/products/investments/#investments-transactions-get-response-securities-is-cash-equivalent) property in this array. Plaid accepts `isCashEquivalent` as the attribute name and a string value of `true` or `false`.

              '
            items:
              $ref: '#/components/schemas/FiAttribute'
        required:
        - fees
        - transactionType
        - accountCategory
      example:
        accountCategory: INVESTMENT_ACCOUNT
        transactionId: 78RJ3311PLU34300E
        transactionTimestamp: '2024-07-15T14:46:41.375+02:00'
        description: Share purchase
        debitCreditMemo: DEBIT
        status: PENDING
        amount: 428.08
        fees: 4.28
        transactionType: PURCHASED
    PaginatedArray:
      title: Paginated Array
      description: 'Base class for results that may be paginated

        '
      type: object
      properties:
        page:
          $ref: '#/components/schemas/PageMetadata'
    Transactions:
      title: Transactions entity
      allOf:
      - $ref: '#/components/schemas/PaginatedArray'
      - type: object
        properties:
          transactions:
            type: array
            description: 'An optionally paginated array of transactions.

              May be any of the following: [deposit transaction](#deposit-transaction), [investment transaction](#investment-transaction), [loan transaction](#loan-transaction), [line of credit transaction](#line-of-credit-transaction)

              '
            items:
              discriminator:
                propertyName: accountCategory
                mapping:
                  DEPOSIT_ACCOUNT: '#/components/schemas/DepositTransaction'
                  INVESTMENT_ACCOUNT: '#/components/schemas/InvestmentTransaction'
                  LOAN_ACCOUNT: '#/components/schemas/LoanTransaction'
                  LOC_ACCOUNT: '#/components/schemas/LineOfCreditTransaction'
              oneOf:
              - $ref: '#/components/schemas/DepositTransaction'
              - $ref: '#/components/schemas/InvestmentTransaction'
              - $ref: '#/components/schemas/LineOfCreditTransaction'
              - $ref: '#/components/schemas/LoanTransaction'
        required:
        - transactions
    Identifier:
      title: Identifier
      description: 'Value for a unique identifier

        '
      type: string
      maxLength: 256
      example: someLongTermUniqueIDString
    PageMetadata:
      title: Page Metadata
      description: 'Contains the opaque identifier, `nextOffset`, to indicate a paginated result set.

        '
      type: object
      properties:
        nextOffset:
          type: string
          example: B47D80MVP23T
          description: 'Opaque offset identifier

            '
        totalElements:
          type: integer
          example: 3
          description: 'Total number of elements

            '
    SecurityType:
      title: Security Type
      description: 'The type of a security

        '
      type: string
      enum:
      - BOND
      - DEBT
      - MUTUALFUND
      - DIGITALASSET
      - OPTION
      - OTHER
      - STOCK
      - SWEEP
    InvestmentTransactionType:
      title: Investment Transaction Type
      description: 'The type of an investment transaction.

        Plaid maps these enums to Plaid [investment transaction types](https://plaid.com/docs/api/accounts/#investment-transaction-types-schema).

        Plaid doesn''t map these enums to Plaid-specific transaction subtypes.

        Plaid maps these enums as follows:


        * ADJUSTMENT - fee

        * ATM - cash

        * CASH - cash

        * CHECK - cash

        * CLOSURE - Plaid suggests using SOLDTOCLOSE, PURCHASETOCLOSE, OPTIONEXERCISE or OPTIONEXPIRATION to indicate the specific type of closure, instead of using this enum.

        * CLOSUREOPT - Plaid suggests using SOLDTOCLOSE, PURCHASETOCLOSE, OPTIONEXERCISE or OPTIONEXPIRATION to indicate the specific type of closure, instead of using this enum.

        * CONTRIBUTION - buy (if transaction involves a security) or cash

        * DEP - cash

        * DEPOSIT - cash

        * DIRECTDEBIT - cash

        * DIRECTDEP - cash

        * DIV - cash

        * DIVIDEND - cash

        * DIVIDENDREINVEST - buy

        * EXPENSE - cash

        * FEE - fee

        * INCOME - cash

        * INTEREST - cash

        * INVEXPENSE - cash

        * JRNLFUND - transfer

        * JRNLSEC - transfer

        * MARGININTEREST - cash

        * OPTIONEXERCISE - transfer

        * OPTIONEXPIRATION - transfer

        * OTHER - cash - (unclassified)

        * PAYMENT - cash

        * POS - cash

        * PURCHASED - buy

        * PURCHASEDTOCOVER - buy

        * PURCHASETOCLOSE - buy

        * PURCHASETOOPEN - buy

        * REINVESTOFINCOME - buy

        * REPEATPMT - cash

        * RETURNOFCAPITAL - cash

        * SOLD - sell

        * SOLDTOCLOSE - sell

        * SOLDTOOPEN - sell

        * SPLIT - transfer

        * SRVCHG - fee

        * TRANSFER - transfer

        * XFER - transfer

        '
      type: string
      enum:
      - ADJUSTMENT
      - ATM
      - CASH
      - CHECK
      - CLOSURE
      - CLOSUREOPT
      - CONTRIBUTION
      - DEP
      - DEPOSIT
      - DIRECTDEBIT
      - DIRECTDEP
      - DIV
      - DIVIDEND
      - DIVIDENDREINVEST
      - EXPENSE
      - FEE
      - INCOME
      - INTEREST
      - INVEXPENSE
      - JRNLFUND
      - JRNLSEC
      - MARGININTEREST
      - OPTIONEXERCISE
      - OPTIONEXPIRATION
      - OTHER
      - PAYMENT
      - POS
      - PURCHASED
      - PURCHASEDTOCOVER
      - PURCHASETOCLOSE
      - PURCHASETOOPEN
      - REINVESTOFINCOME
      - REPEATPMT
      - RETURNOFCAPITAL
      - SOLD
      - SOLDTOCLOSE
      - SOLDTOOPEN
      - SPLIT
      - SRVCHG
      - TRANSFER
      - XFER
    FiAttribute:
      title: FI Attribute entity
      description: 'Financial institution-specific attribute.

        '
      type: object
      properties:
        name:
          type: string
          description: 'Name of the financial institution-specific attribute

            '
        value:
          type: string
          description: 'Value of the financial institution-specific attribute

            '
    Transaction:
      title: Transaction
      description: 'Base entity for financial transactions. For monetary amounts, Plaid expects a decimal amount, with two places to represent fractional values of the base currency, for example `101.99`

        '
      type: object
      discriminator:
        propertyName: accountCategory
      properties:
        accountCategory:
          $ref: '#/components/schemas/AccountCategory'
        transactionId:
          description: 'Long term persistent identity of the transaction (unique to account). Plaid expects that `status: PENDING` and `status: POSTED` transactions have different IDs

            '
          $ref: '#/components/schemas/Identifier'
        referenceTransactionId:
          description: 'For reverse postings, the identity of the transaction being

            reversed. For the correction transaction, the identity of the

            reversing post. For credit card posting transactions, the identity

            of the authorization transaction

            '
          $ref: '#/components/schemas/Identifier'
        postedTimestamp:
          description: 'The date and time that the transaction was posted to the account.

            This property is **required** by Plaid when `status=POSTED`. Plaid expects this property to be omitted when `status=PENDING`

            ISO 8601 date-time in format `YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]` according to

            [IETF RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6)

            '
          $ref: '#/components/schemas/Timestamp'
        transactionTimestamp:
          description: 'The date and time that the transaction was added to the server backend systems

            ISO 8601 date-time in format `YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]` according to

            [IETF RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6)

            '
          $ref: '#/components/schemas/Timestamp'
        description:
          type: string
          description: 'Description of the transaction, such as information about a merchant''s

            name or place of business in a manner that is user friendly and accessible to the customer

            '
        debitCreditMemo:
          $ref: '#/components/schemas/DebitCreditMemo'
        category:
          type: string
          description: 'Transaction category, preferably MCC or SIC. Plaid expects your organization to provide MCC, if available and applicable

            '
        subCategory:
          type: string
          description: 'Transaction category detail specifying the standard of the transaction category.

            For example, "MCC"

            '
        status:
          $ref: '#/components/schemas/TransactionStatus'
        amount:
          type: number
          description: 'The amount of money in the account currency. The amount is an absolute value. Plaid relies on the `DebitCreditMemo` enum to determine the direction (and sign) of the transaction

            '
        foreignAmount:
          type: number
          description: 'The amount of money in the foreign currency. If this amount is specified, then Plaid expects that the `foreignCurrency` property is also set

            '
        foreignCurrency:
          $ref: '#/components/schemas/Iso4217Code'
      required:
      - debitCreditMemo
      - description
      - transactionId
      - transactionTimestamp
      - status
      - amount
    TransactionStatus:
      title: Transaction Status
      description: 'The status of a transaction. Plaid consumes solely the `PENDING` and `POSTED` enums,

        and treats `MEMO` and `AUTHORIZATION` as if they were `PENDING`. Plaid expects that pending and posted transactions

        have different `transactionIds`.

        * `AUTHORIZATION`

        * `MEMO` - A pending transaction to be completed at the end of this day

        * `PENDING` - A pending transaction

        * `POSTED` - A posted transaction

        '
      type: string
      enum:
      - AUTHORIZATION
      - MEMO
      - PENDING
      - POSTED
    Timestamp:
      title: Timestamp
      description: 'ISO 8601 date-time in format `YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]` according to

        [IETF RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6)

        '
      type: string
      format: date-time
      example: '2021-07-15T14:46:41.375Z'
    String255:
      title: String 255
      description: 'String with a maximum length of 255 characters

        '
      type: string
      maxLength: 255
    SecurityIdType:
      title: Security ID Type
      description: 'Plaid consumes solely CUSIP, ISIN, and SEDOL.


        This field, along with `securityId` are **required** unless `symbol` is provided.


        **Note:** If `securityIdType` is provided, `securityId` is required.

        '
      type: string
      enum:
      - CINS
      - CMC
      - CME
      - CUSIP
      - ISIN
      - ITSA
      - NASDAQ
      - SEDOL
      - SICC
      - VALOR
      - WKN
    LoanTransactionType:
      title: Loan Transaction Type
      description: 'The type of a loan transaction. Plaid passes through all loan transaction types


        - `ADJUSTMENT`: Adjustment or correction.

        - `FEE`: Fee charge. For example, a late payment fee.

        - `INTEREST`: Interest charge.

        - `PAYMENT`: Required payment that satisfies the minimum payment (e.g. principal + interest for mortgages).

        - `LUMP_SUM_PAYMENT`: A single payment of money, as opposed to a series of payments made over time.

        - `SKIP_PAYMENT`: Payment that satisfies deferral of a required payment.

        - `DOUBLE_UP_PAYMENT`: Additional payment beyond the required payment to reduce the principal.

        - `PAYOFF`: Payment that satisfies the terms of the mortgage loan and completely pays off the debt.

        '
      type: string
      enum:
      - ADJUSTMENT
      - FEE
      - INTEREST
      - PAYMENT
      - LUMP_SUM_PAYMENT
      - SKIP_PAYMENT
      - DOUBLE_UP_PAYMENT
      - PAYOFF
  parameters:
    EndTimeQuery:
      name: endTime
      in: query
      description: 'End time for use in retrieval of elements (ISO 8601). When used with the `/transactions` endpoint, Plaid filters by the `postedTimestamp`.

        '
      schema:
        $ref: '#/components/schemas/DateString'
    LimitQuery:
      name: limit
      in: query
      description: 'The number of elements that the API consumer wishes to receive. Plaid has a default limit of 100 elements. If your organization has a different limit, use the lower limit to determine how many items to send per page. To retrieve multiple pages, Plaid will use the opaque `nextOffset` field to send a subsequent request until the `nextOffset` is no longer included.

        '
      schema:
        type: integer
    StartTimeQuery:
      name: startTime
      in: query
      description: 'Start time for use in retrieval of elements (ISO 8601). When used with the `/transactions` endpoint, Plaid filters by the `postedTimestamp`.

        '
      schema:
        $ref: '#/components/schemas/DateString'
    OffsetQuery:
      name: offset
      in: query
      description: 'An opaque ID that indicates there is at least one more page of data available. This value does not need to be numeric or have any specific pattern. If provided, Plaid will use this value to send a new request and retrieve the next page. Omitting this value indicates that there is no more data to retrieve.

        '
      schema:
        type: string
        example: qwer123454q2f
    AccountIdPath:
      name: accountId
      in: path
      description: 'Account identifier, found in the `GET /accounts` endpoint response.

        Plaid expects the ID to be a different value from the account number


        **Note:** If the status of the `accountId` provided is `RESTRICTED`, you can send a 200 response with an empty body to indicate that no payment networks are available at this time.

        '
      required: true
      schema:
        $ref: '#/components/schemas/Identifier'
  securitySchemes:
    openIdConnect:
      type: openIdConnect
      description: 'This API uses an [OpenID Connect (OIDC) authentication flow](/core-exchange/authentication) and accepts the resulting [access token](/core-exchange/authentication#response-parameters) as a bearer token. For example,  `curl -H ''Authorization: Bearer <ACCESS&#95;TOKEN|''`.

        '
      openIdConnectUrl: https://www.your-organization.com/.well-known/openid-configuration
    oauth2:
      type: oauth2
      description: 'This API uses an [OAuth2.0 authorization code flow](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow) and accepts the resulting access token as a bearer token. For example,  `curl -H ''Authorization: Bearer <ACCESS&#95;TOKEN|''`.

        '
      flows:
        authorizationCode:
          authorizationUrl: https://www.your-organization.com/authorize
          tokenUrl: https://www.your-organization.com/token
          scopes:
            Account: (optional) Read account data
            Customer: (optional) Read customer data
            Transactions: (optional) Read transaction data