Finicity Accounts (Simple) API

Fetch simple customer accounts

Operations 4

GET /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts/simple Get Customer Accounts by Institution ID (Simple) #
GET /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts/simple Get Customer Accounts by Institution Login ID (Simple) #
GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/simple Get Customer Account by ID (Simple) #
GET /aggregation/v1/customers/{customerId}/accounts/simple Get Customer Accounts (Simple) #

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/finicity-accounts-simple-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

finicity-accounts-simple-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Open Finance Accounts (Simple) API
  description: 'OpenAPI specification for Finicity APIs.


    Open Finance (formerly Open Banking) solutions in the US are provided by

    Finicity, a Mastercard company.'
  contact:
    name: API Support
    email: apisupport@mastercard.com
    url: https://developer.mastercard.com/open-finance-us/documentation/support/
  version: 1.43.0
servers:
- url: https://api.finicity.com
  description: Production
security:
- FinicityAppKey: []
  FinicityAppToken: []
tags:
- name: Accounts (Simple)
  description: Fetch simple customer accounts
paths:
  /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts/simple:
    get:
      tags:
      - Accounts (Simple)
      summary: Get Customer Accounts by Institution ID (Simple)
      description: 'This API is a lighter version of Get Customer Accounts by Institution ID, returning only basic information of active accounts owned by the given customer at the given institution.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetCustomerAccountsByInstitutionSimple
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      - $ref: '#/components/parameters/InstitutionIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetCustomerAccountsSimpleResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts/simple:
    get:
      tags:
      - Accounts (Simple)
      summary: Get Customer Accounts by Institution Login ID (Simple)
      description: 'This API is a lighter version of Get Customer Accounts by Institution Login ID, returning only basic information of all active accounts owned by the given customer at the given institution login ID.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetCustomerAccountsByInstitutionLoginSimple
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      - $ref: '#/components/parameters/InstitutionLoginIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetCustomerAccountsSimpleResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /aggregation/v1/customers/{customerId}/accounts/{accountId}/simple:
    get:
      tags:
      - Accounts (Simple)
      summary: Get Customer Account by ID (Simple)
      description: 'This API is a lighter version of Get Customer Accounts by ID, returning only basic information of a customer account.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetCustomerAccountSimple
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      - $ref: '#/components/parameters/AccountIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetCustomerAccountSimpleResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /aggregation/v1/customers/{customerId}/accounts/simple:
    get:
      tags:
      - Accounts (Simple)
      summary: Get Customer Accounts (Simple)
      description: 'This API is a lighter version of Get Customer Accounts, returning only basic information of all active customer accounts.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetCustomerAccountsSimple
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetCustomerAccountsSimpleResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
components:
  examples:
    MissingFinicityAppKeyExample:
      value:
        code: '10026'
        message: Missing parameter (Finicity-App-Key)
    InvalidForesightReportRequestExample:
      value:
        code: '10100'
        message: At least one of customerId or externalCustomerId must be provided; both are also allowed.
    ResellerInvalidDateRangeGreaterThan31DaysExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - It is more than 31 days'
    ResellerNoReportForPartnerExample:
      value:
        code: '10100'
        message: Cannot find resellerBilling reports with id 2445581559892.
    ResellerInvalidDateRangeGreaterThanEndDateExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - startDate is greaterThan endDate'
    BothCraAndFtcPurposeTrueExample:
      value:
        code: '10100'
        status: '400'
        message: forCRAPurpose and forFTCPurpose may not both be TRUE.
    ResellerPartnerNotAuthorizedExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Partner is not authorized to access resellerBilling reports for partnerId 2445583947903'
    InvalidConsumerPhoneExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.phone.
    MissingFieldExample:
      value:
        code: '10005'
        message: Missing parameter (partnerId)
    NoRegisteredApplicationExample:
      value:
        code: '50051'
        message: No registered partner applications found.
    ExpiredFinicityAppTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    InvalidFieldExample:
      value:
        code: '10010'
        status: '400'
        message: Customer ID does not exist or does not belong to this partner
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    InvalidValueExample:
      value:
        code: '1618'
        message: Negative or invalid value entered. Please use positive numbers only.
    InvalidConsumerSSNExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.ssn.  Required format is 9 digits.
    InvalidFinicityAppTokenExample:
      value:
        code: '10022'
        message: Invalid (Finicity-App-Token)
    ResellerInvalidDateRangeLessThanZeroExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date less than or equal to zero'
    CustomerReportLimitExceedExample:
      value:
        code: '20400'
        message: The max report generation limit was exceeded for this customer.
    NoAccountForInstitutionLoginIdExample:
      value:
        code: '38007'
        message: Customer does not have any accounts associated with institutionLoginId.
    CustomerNotFoundExample:
      value:
        code: '14001'
        message: Customer not found.
    ResellerNoDataForPartnerExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Reports not found 2445583947903 resellerBilling reports'
    InvalidConsumerEmailExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.email.
    ResellerInvalidDateRangeExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date is empty or null'
    ExpiredTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    AccountTypeNotSupportedExample:
      value:
        code: '14020'
        message: Bad request. (Account type not supported).
    PermissiblePurposeCodeExample:
      value:
        code: '10100'
        status: '400'
        message: Permissible Purpose Code is required
    ResourceNotFoundExample:
      value:
        code: '14001'
        message: Resource not found.
    ConsumerNotFoundExample:
      value:
        code: '10100'
        message: Cannot find consumer with id 1234.
    InvalidExperienceFieldExample:
      value:
        code: '10010'
        status: '400'
        message: '"experience" must be a valid GUID'
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    GenericBadRequestExample:
      value:
        code: '14020'
        message: Bad request.
    BadCredentialsExample:
      value:
        code: '24302'
        message: Bad credentials
    NoConsumerForCustomerExample:
      value:
        code: '10100'
        message: Cannot find consumer for customer with id 5011115315."
    MissingFinicityAppTokenExample:
      value:
        code: '10024'
        message: Missing parameter (Finicity-App-Token)
  schemas:
    LinkedAccountDate:
      type: integer
      description: 'A timestamp showing when the customer first linked the account via Data Connect. A date in Unix epoch time (in seconds). See: [Handling Epoch Dates and Times](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/).'
      format: int64
      example: 1607450357
    Currency:
      type: string
      description: A currency code
      example: USD
    AuthorizationExpires:
      type: boolean
      description: A Boolean flag that indicates whether the customer’s authorization period has a defined authorization end date.
      example: true
      default: false
    AuthorizationEndDate:
      type: integer
      format: int64
      description: Authorization end date and time in epoch format (not used if AuthorizationExpires is false).
      example: 1641030399
    ErrorMessage:
      required:
      - code
      type: object
      properties:
        code:
          type: object
          description: 'An error code (can be returned as a number or a string). Useful links: [Common API Status Codes](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/#common-api-status-codes), [Aggregation Status Codes](https://developer.mastercard.com/open-finance-us/documentation/products/manage/account-aggregation/#aggregation-status-codes).'
          example: '10001'
        status:
          type: string
          description: A status code
          example: '401'
        title:
          type: string
          description: A title for the error
          example: Connecting accounts error
        level:
          type: string
          description: An error level
          example: error
        message:
          type: string
          description: An error message
          example: Invalid authorization credentials
        user_message:
          type: string
          description: Some more details about the error
          example: The session has expired or is invalid
        assetId:
          $ref: '#/components/schemas/AssetId'
        accountId:
          $ref: '#/components/schemas/AccountId'
        externalTransactionId:
          type: string
          description: A unique identifier for the transaction that assists in linking data back to your systems.
          example: MAC1005061234
          minLength: 1
          maxLength: 100
        tags:
          type: string
          description: Categories that the error belongs to
          example: AGG
    AccountId:
      type: string
      description: An account ID
      example: '5011648377'
    CustomerAccountSimple:
      description: An account represents a bank account such as a checking or savings that the customer has added via the Connect interface.
      required:
      - id
      - accountNumberDisplay
      - name
      - type
      - status
      - customerId
      - institutionId
      - createdDate
      - currency
      - institutionLoginId
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AccountId'
        accountNumberDisplay:
          $ref: '#/components/schemas/AccountNumberDisplay'
        name:
          $ref: '#/components/schemas/Name'
        type:
          $ref: '#/components/schemas/AccountType'
        aggregationStatusCode:
          $ref: '#/components/schemas/AggregationStatusCode'
        status:
          $ref: '#/components/schemas/AggregationStatus'
        customerId:
          $ref: '#/components/schemas/CustomerId'
        institutionId:
          $ref: '#/components/schemas/InstitutionId'
        aggregationSuccessDate:
          $ref: '#/components/schemas/UnixDate'
        aggregationAttemptDate:
          $ref: '#/components/schemas/UnixDate'
        createdDate:
          $ref: '#/components/schemas/UnixDate'
        currency:
          $ref: '#/components/schemas/Currency'
        institutionLoginId:
          $ref: '#/components/schemas/NumericInstitutionLoginId'
        authorizationStartDate:
          $ref: '#/components/schemas/AuthorizationStartDate'
        authorizationEndDate:
          $ref: '#/components/schemas/AuthorizationEndDate'
        authorizationExpires:
          $ref: '#/components/schemas/AuthorizationExpires'
        displayPosition:
          $ref: '#/components/schemas/DisplayPosition'
        parentAccount:
          $ref: '#/components/schemas/AccountId'
        linkedAccountDate:
          $ref: '#/components/schemas/LinkedAccountDate'
    NumericInstitutionId:
      description: The ID of a financial institution, represented as a number
      type: integer
      format: int64
      example: 4222
    NumericInstitutionLoginId:
      type: integer
      format: int64
      description: An institution login ID (from the account record), represented as a number
      example: 1007302745
    CustomerAccountsSimple:
      description: A list of accounts with basic information of a customer
      required:
      - accounts
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/CustomerAccountSimple'
          description: A list of accounts with basic information of a customer
    InstitutionId:
      description: The ID of a financial institution
      type: string
      example: '4222'
    AggregationStatus:
      type: string
      description: "\"pending\" during account discovery, always \"active\" following\n  successful account activation"
      example: active
    Name:
      type: string
      description: The account name from the institution
      example: Super Checking
    AssetId:
      type: string
      description: An asset ID. Generated by Data Connect or by using the Store Customer Pay Statement API.
      example: 097545c5-1c2a-4f20-a5ef-77f0820344c9-2018601178
    AggregationStatusCode:
      type: integer
      description: The status of the most recent aggregation attempt (see [Aggregation Status Codes](https://developer.mastercard.com/open-finance-us/documentation/products/manage/account-aggregation/#aggregation-status-codes)). Won't be present until you have run your first aggregation for the account.
    CustomerId:
      type: string
      description: A customer ID. See Add Customer API for how to create a customer ID.
      example: '1005061234'
    UnixDate:
      type: integer
      description: 'A date in Unix epoch time (in seconds). See: [Handling Epoch Dates and Times](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/).'
      format: int64
      example: 1607450357
    AuthorizationStartDate:
      type: integer
      format: int64
      description: Authorization start date and time in epoch format.
      example: 1541030399
    InstitutionLoginId:
      type: string
      description: An institution login ID (from the account record)
      example: '1007302745'
    DisplayPosition:
      type: integer
      description: "Display position of the account at the financial institution, \"1\"\n    being the top listed account"
      format: int32
      example: 2
    AccountType:
      type: string
      description: 'The list of supported account types.

        * "checking": Standard checking

        * "savings": Standard savings

        * "cd": Certificates of deposit

        * "moneyMarket": Money Market

        * "creditCard": Standard credit cards

        * "lineOfCredit": Home equity, line of credit

        * "investment": Generic investment (no details)

        * "investmentTaxDeferred": Generic tax-advantaged investment (no details)

        * "employeeStockPurchasePlan": ESPP, Employee Stock Ownership Plans (ESOP), Stock Purchase Plans

        * "ira": Individual Retirement Account (not Rollover or Roth)

        * "401k": 401K Plan

        * "roth": Roth IRA, Roth 401K

        * "403b": 403B Plan

        * "529plan": 529 Plan (True value is 529)

        * "rollover": Rollover IRA

        * "ugma": Uniform Gifts to Minors Act

        * "utma": Uniform Transfers to Minors Act

        * "keogh": Keogh Plan

        * "457plan": 457 Plan (True value is 457)

        * "401a": 401A Plan

        * "brokerageAccount": Brokerage Account

        * "educationSavings": Education Savings Account that is not a 529

        * "healthSavingsAccount": HSA (Health Savings Accounts)

        * "pension": Pension

        * "profitSharingPlan": Profit Sharing Plan

        * "roth401k": Roth 401K

        * "sepIRA": Simplified Employee Pension IRA

        * "simpleIRA": Simple IRA

        * "thriftSavingsPlan": Thrift Savings Plan

        * "variableAnnuity": Variable Annuity

        * "cryptocurrency": Cryptocurrency Wallet, Cryptocurrency Account

        * "mortgage": Standard Mortgages

        * "loan": Auto loans, equity loans, other loans

        * "studentLoan": Student Loan

        * "studentLoanGroup": Student Loan Group

        * "studentLoanAccount": Student Loan Account'
      example: checking
    AccountNumberDisplay:
      type: string
      description: 'Account identifier derived by Mastercard from the account number provided by the financial institution. The format varies depending on the institution. We recommend using this to identify accounts if available.

        Below is a non-exhaustive list of examples for the `accountNumberDisplay` field.

        * 5720

        * 3539-259

        * 1500-1

        * 0824-S0050'
      example: '7528'
  parameters:
    CustomerIdParameter:
      description: A customer ID
      name: customerId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/CustomerId'
      example: '1005061234'
    InstitutionIdParameter:
      description: The institution ID
      name: institutionId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/NumericInstitutionId'
      example: 4222
    InstitutionLoginIdParameter:
      description: The institution login ID
      name: institutionLoginId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/InstitutionLoginId'
      example: '1007302745'
    AccountIdParameter:
      description: The account ID
      name: accountId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/AccountId'
      example: '5011648377'
  responses:
    BadRequestErrorResponse:
      description: The request was rejected
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            PermissiblePurposeCodeExample:
              $ref: '#/components/examples/PermissiblePurposeCodeExample'
            InvalidForesightReportRequestExample:
              $ref: '#/components/examples/InvalidForesightReportRequestExample'
            BothCraAndFtcPurposeTrueExample:
              $ref: '#/components/examples/BothCraAndFtcPurposeTrueExample'
            MissingFieldExample:
              $ref: '#/components/examples/MissingFieldExample'
            InvalidFieldExample:
              $ref: '#/components/examples/InvalidFieldExample'
            InvalidExperienceFieldExample:
              $ref: '#/components/examples/InvalidExperienceFieldExample'
            GenericBadRequestExample:
              $ref: '#/components/examples/GenericBadRequestExample'
            AccountTypeNotSupportedExample:
              $ref: '#/components/examples/AccountTypeNotSupportedExample'
            ResellerPartnerNotAuthorizedExample:
              $ref: '#/components/examples/ResellerPartnerNotAuthorizedExample'
            ResellerInvalidDateRangeExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeExample'
            ResellerInvalidDateRangeLessThanZeroExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeLessThanZeroExample'
            ResellerInvalidDateRangeGreaterThanEndDateExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeGreaterThanEndDateExample'
            ResellerInvalidDateRangeGreaterThan31DaysExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeGreaterThan31DaysExample'
            CustomerReportLimitExceedExample:
              $ref: '#/components/examples/CustomerReportLimitExceedExample'
            InvalidConsumerSSNExample:
              $ref: '#/components/examples/InvalidConsumerSSNExample'
            InvalidConsumerPhoneExample:
              $ref: '#/components/examples/InvalidConsumerPhoneExample'
            InvalidConsumerEmailExample:
              $ref: '#/components/examples/InvalidConsumerEmailExample'
            InvalidValue:
              $ref: '#/components/examples/InvalidValueExample'
    GetCustomerAccountsSimpleResponse:
      description: The account list was successfully retrieved
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerAccountsSimple'
    GetCustomerAccountSimpleResponse:
      description: The account was successfully retrieved
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerAccountSimple'
    ResourceNotFoundErrorResponse:
      description: The resource doesn't exist
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            ConsumerNotFoundExample:
              $ref: '#/components/examples/ConsumerNotFoundExample'
            NoAccountForInstitutionLoginIdExample:
              $ref: '#/components/examples/NoAccountForInstitutionLoginIdExample'
            CustomerNotFoundExample:
              $ref: '#/components/examples/CustomerNotFoundExample'
            NoConsumerForCustomerExample:
              $ref: '#/components/examples/NoConsumerForCustomerExample'
            ResourceNotFoundExample:
              $ref: '#/components/examples/ResourceNotFoundExample'
            NoRegisteredApplicationExample:
              $ref: '#/components/examples/NoRegisteredApplicationExample'
            ResellerNoDataForPartnerExample:
              $ref: '#/components/examples/ResellerNoDataForPartnerExample'
            ResellerNoReportForPartnerExample:
              $ref: '#/components/examples/ResellerNoReportForPartnerExample'
    UnauthorizedErrorResponse:
      description: The request lacks valid authentication credentials. Check "Finicity-App-Key" or "Finicity-App-Token".
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            ExpiredTokenExample:
              $ref: '#/components/examples/ExpiredTokenExample'
            MissingFinicityAppKeyExample:
              $ref: '#/components/examples/MissingFinicityAppKeyExample'
            MissingFinicityAppTokenExample:
              $ref: '#/components/examples/MissingFinicityAppTokenExample'
            InvalidFinicityAppTokenExample:
              $ref: '#/components/examples/InvalidFinicityAppTokenExample'
            ExpiredFinicityAppTokenExample:
              $ref: '#/components/examples/ExpiredFinicityAppTokenExample'
            BadCredentialsExample:
              $ref: '#/components/examples/BadCredentialsExample'
        text/plain:
          schema:
            type: string
            example: Invalid (Finicity-App-Key)
  securitySchemes:
    FinicityAppKey:
      name: Finicity-App-Key
      type: apiKey
      in: header
      description: The "Finicity-App-Key" from the developer dashboard
    FinicityAppToken:
      name: Finicity-App-Token
      type: apiKey
      in: header
      description: A token returned by the `/authentication` API