Open Banking

Mastercard payment and fraud detection APIs

developer.mastercard.com ↗
Version
1.16.2
OpenAPI
3.0.3
Endpoints
104
Schemas
514
81
Quality
Updated
3 days ago
Payments payments fintech fraud
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://api.finicity.com

Endpoints

Clear filters

Accountvalidationassistance 1 endpoints

GET /microentry/v1/customers/{customerId}/accounts/{accountId}

Fetch the micro entries details.
customerId and accountId are the identifiers of the customer and account receiving the micro entries.

Supported regions:

operationId: AccountValidationAssistance_getMicroEntriesDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

Micro entries were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /microentry/v1/customers/{customerId}/accounts/{accountId}

Accounts 4 endpoints

GET /aggregation/v1/customers/{customerId}/accounts

Get all accounts owned by the given customer.

Supported regions:

operationId: Accounts_getCustomerAccounts

Parameters

Name In Required Type Description
customerId path optional

A customer ID

status query optional

A filter to fetch account in the given status

account_type query optional string

A filter to fetch accounts for the given type. Currently supported types: “ava”

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts
GET /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts

Get all accounts associated with the given institution login. All accounts returned are accessible by a single set of credentials on a single institution.

Supported regions:

operationId: Accounts_getByInstitutionLogin

Parameters

Name In Required Type Description
customerId path optional

A customer ID

institutionLoginId path optional

The institution login ID

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts
GET /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts

Get all active accounts owned by the given customer at the given institution.

Supported regions:

operationId: Accounts_getCustomerInstitutionAccounts

Parameters

Name In Required Type Description
customerId path optional

A customer ID

institutionId path optional

The institution ID

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts
GET /aggregation/v2/customers/{customerId}/accounts/{accountId}

Get a customer account by ID.

Supported regions:

operationId: Accounts_getById

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The account was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v2/customers/{customerId}/accounts/{accountId}

Accounts(simple) 4 endpoints

GET /aggregation/v1/customers/{customerId}/accounts/simple

This API is a lighter version of Get Customer Accounts, returning only basic information of all active customer accounts.

Supported regions:

operationId: AccountsSimple_getBasicInfo

Parameters

Name In Required Type Description
customerId path optional

A customer ID

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/simple
GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/simple

This API is a lighter version of Get Customer Accounts by ID, returning only basic information of a customer account.

Supported regions:

operationId: AccountsSimple_getBasicInfo

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The account was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/simple
GET /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts/simple

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:

operationId: AccountsSimple_getBasicInfo

Parameters

Name In Required Type Description
customerId path optional

A customer ID

institutionLoginId path optional

The institution login ID

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/institutionLogins/{institutionLoginId}/accounts/simple
GET /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts/simple

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:

operationId: AccountsSimple_getBasicInfo

Parameters

Name In Required Type Description
customerId path optional

A customer ID

institutionId path optional

The institution ID

Responses

200

The account list was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/institutions/{institutionId}/accounts/simple

Appregistration 1 endpoints

GET /aggregation/v2/partners/applications

Get the status of your application registration(s).

Supported regions:

operationId: AppRegistration_getApplicationStatus

Parameters

Name In Required Type Description
preAppId query optional

The application registration tracking ID

applicationId query optional

The application ID

status query optional

Look up app registration requests by status

appName query optional

Look up app registration requests by app name

submittedDate query optional

Look up app registration requests by the date they were submitted

modifiedDate query optional

Look up app registration requests by the date the request was updated. This can be used to determine when a request was updated to “A” or “R”.

page query optional integer

Index of the page of results to return

pageSize query optional integer

Maximum number of results per page

Responses

200

The app registration statuses were returned

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v2/partners/applications

Assets 1 endpoints

GET /aggregation/v1/customers/{customerId}/assets/{assetId}

Retrieve a binary file for the given asset ID.

Supported regions:

operationId: Assets_getBinaryFile

Parameters

Name In Required Type Description
customerId path optional

A customer ID

assetId path optional

The asset ID

Responses

200

The asset was successfully downloaded

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/assets/{assetId}

Balanceanalytics 2 endpoints

GET /analytics/data/v1/{obb_report_id}

Retrieve the report saved by Generate Balance Analytics, Generate Cash Flow Analytics, or Generate Payment History. Requires the report ID generated by the previous call.

Report data can either be retrieved as a JSON document or PDF file.

Supported regions:

operationId: BalanceAnalytics_getReportData

Parameters

Name In Required Type Description
obb_report_id path optional string

Report ID generated and returned by OBB products

Responses

200

OBB Analytics report data as JSON or PDF

401

Unauthorized request

403

Access forbidden

404

The resource doesn’t exist

GET /analytics/data/v1/{obb_report_id}
GET /analytics/data/v1/{obb_report_id}/fcra

Retrieve the report saved by Generate Balance Analytics - FCRA, Generate Cash Flow Analytics - FCRA, or Generate Payment History - FCRA. Requires the report ID generated by the previous call.

Report data can either be retrieved as a JSON document or PDF file.

Note: this is a premium service, billable per every successful API call for non-testing customers.

Supported regions:

operationId: BalanceAnalytics_getReportDataFcra

Parameters

Name In Required Type Description
obb_report_id path optional string

Report ID generated and returned by OBB products

purpose query optional string

2-digit code from Permissible Purpose Codes, specifying the reason for retrieving this report. Required for retrieving some reports.

Responses

200

OBB Analytics FCRA report data as JSON or PDF

401

Unauthorized request

403

Access forbidden

404

The resource doesn’t exist

GET /analytics/data/v1/{obb_report_id}/fcra

Bankstatements 2 endpoints

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/statement

Retrieve the customer’s bank statements in PDF format. Up to 24 months of history is available depending on the financial institution. Since this is a premium service, charges incur per each successful statement retrieved.

For certified financial institutions, statements are available for the following account types:

  • Checking
  • Savings
  • Money market
  • CDs
  • Investments
  • Mortgage
  • Credit cards
  • Loans
  • Line of credit
  • Student Loans

Note: setting the timeout to 180 seconds is recommended to allow enough time for a response.

Supported regions:

operationId: BankStatements_getCustomerStatementInPdf

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

index query optional integer

Request statements from 1-24. By default, 1 is the most recent statement. Increase the index value to count back (by month) and retrieve its most recent statement.

type query optional

The type of statement to retrieve

Responses

200

The statement was successfully downloaded as a PDF file

203

The response contains an MFA challenge in XML or JSON format. Contact your Account Manager or Systems Engineers to determine the best route to handle this error.

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/statement
GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/statement

This endpoint retrieves account statements for a given customer. The maximum number of statements that can be returned is 24.

Supported regions:

operationId: BankStatements_getMultipleStatements

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

index query optional string

Request statements with comma-separated indexes between 1-24. The default value is 1 and it will return the most recent statement. Increasing the index will return older statements, for example, setting the index value to 6 will return the sixth most recent statement.

Responses

200

The account statements were successfully retrieved.

203

The response contains an MFA challenge in XML or JSON format. Contact your Account Manager or Systems Engineers to determine the best route to handle this error.

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/statement

Businessesapi 2 endpoints

GET /business-services/businesses/{business_id}

Retrieve business details.

Supported regions:

operationId: BusinessesApi_getDetailsById

Parameters

Name In Required Type Description
business_id path optional

Unique identifier of the business

Responses

200

The business information was successfully retrieved.

404

The business does not exist

GET /business-services/businesses/{business_id}
GET /business-services/customers/{customer_id}/businesses

Retrieve business details associated with a specific customer. By providing the unique customer identifier, details about the associated business can be accessed.

Supported regions:

operationId: BusinessesApi_getDetailsByCustomerId

Parameters

Name In Required Type Description
customer_id path optional

Unique identifier of the customer

Responses

200

The business information was successfully retrieved.

404

The customer does not exist

GET /business-services/customers/{customer_id}/businesses

Consumers 2 endpoints

GET /decisioning/v1/consumers/{consumerId}

Get the details of a consumer record by consumer ID.

Supported regions:

operationId: Consumers_getById

Parameters

Name In Required Type Description
consumerId path optional

The consumer ID

Responses

200

The consumer was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v1/consumers/{consumerId}
GET /decisioning/v1/customers/{customerId}/consumer

Get the details of a consumer record by customer ID.

Supported regions:

operationId: Consumers_getByCustomerId

Parameters

Name In Required Type Description
customerId path optional

A customer ID

Responses

200

The consumer was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v1/customers/{customerId}/consumer

Customers 3 endpoints

GET /aggregation/v1/customers

Find all customers enrolled by the current partner, where the search text is found in the customer’s username or any combination of firstName and lastName fields. If no search text is provided, all customers will be returned.

Supported regions:

operationId: Customers_findEnrolledUsers

Parameters

Name In Required Type Description
username query optional

Username for exact match (will return 0 or 1 record)

type query optional

“testing” or “active” to return only customers of that type, or leave empty to return all customers

search query optional string

The text you wish to match. Leave this empty if you wish to return all customers. Must be URL-encoded (see: Handling Spaces in Queries).

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

Responses

200

Customers were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

GET /aggregation/v1/customers
GET /aggregation/v1/customers/{customerId}

Retrieve a customer by ID.

Supported regions:

operationId: Customers_getById

Parameters

Name In Required Type Description
customerId path optional

A customer ID

Responses

200

The customer was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}
GET /aggregation/v1/customers/{customerId}/application

Retrieve a customer along with additional details about the OAuth application.

Supported regions:

operationId: Customers_getWithAppDataById

Parameters

Name In Required Type Description
customerId path optional

A customer ID

Responses

200

The customer was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/application

Institutions 5 endpoints

GET /institution/v2/certifiedInstitutions

Search for financial institutions by certified product.

Supported regions:

operationId: Institutions_listCertifiedInstitutions

Parameters

Name In Required Type Description
search query optional string

Search term (financial institution name field). Leave empty for all FIs.

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

type query optional string

A product type: “transAgg”, “ach”, “stateAgg”, “voi”, “voa”, “aha”, “availBalance”, “accountOwner”

supportedCountries query optional array

A list of country codes, ‘*’ for all countries.

Responses

200

Institutions were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

GET /institution/v2/certifiedInstitutions
GET /institution/v2/certifiedInstitutions/rssd

Search for certified financial institutions w/RSSD.

Supported regions:

operationId: Institutions_getCertifiedInstitutionsWithRssd

Parameters

Name In Required Type Description
search query optional string

Search term (financial institution name field). Leave empty for all FIs.

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

type query optional string

A product type: “transAgg”, “ach”, “stateAgg”, “voi”, “voa”, “aha”, “availBalance”, “accountOwner”

supportedCountries query optional array

A list of country codes, ‘*’ for all countries.

Responses

200

Institutions were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

GET /institution/v2/certifiedInstitutions/rssd
GET /institution/v2/institutions

Search for financial institutions.

Supported regions:

operationId: Institutions_searchFinancialInstitutions

Parameters

Name In Required Type Description
search query optional string

Search term (financial institution name field). Leave empty for all FIs.

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

type query optional string

A product type: “transAgg”, “ach”, “stateAgg”, “voi”, “voa”, “aha”, “availBalance”, “accountOwner”

supportedCountries query optional array

A list of country codes, ‘*’ for all countries.

Responses

200

Institutions were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

GET /institution/v2/institutions
GET /institution/v2/institutions/{institutionId}

Get financial institution details by ID.

Supported regions:

operationId: Institutions_getByIdDetails

Parameters

Name In Required Type Description
institutionId path optional

The institution ID

Responses

200

Institution was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /institution/v2/institutions/{institutionId}
GET /institution/v2/institutions/{institutionId}/branding

Return the branding information for a financial institution.

Supported regions:

operationId: Institutions_getBrandingById

Parameters

Name In Required Type Description
institutionId path optional

The institution ID

Responses

200

Institution branding was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /institution/v2/institutions/{institutionId}/branding

Payments 7 endpoints

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/availableBalance

Retrieve the latest cached available and cleared account balances for a customer. Since we update and store balances throughout the day, this is the most accurate balance information available when a connection to a financial institution is unavailable or when a faster response is needed. Only deposit account types are supported: Checking, Savings, Money Market, and CD.

Note: this is a premium service, billable per every successful API call. Enrollment is required.

Supported account types: “checking”, “savings”, “moneyMarket”, “cd”

Supported regions:

operationId: Payments_getLatestCachedBalance

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The balance was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/availableBalance
GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/availableBalance/live

Retrieve the available and cleared account balances for a single account in real-time directly from a financial institution.

Note: this is a premium service, billable per every successful API call.

Supported account types: “checking”, “savings”, “moneyMarket”, “cd”

Supported regions:

operationId: Payments_getAvailableBalanceLive

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The live balance was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/availableBalance/live
GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/details

Return the real account number and routing number details for an ACH payment.

Note: this is a premium service, billable per every successful API call.

Supported account types: “checking”, “savings”, “moneyMarket”, “cd”

Supported regions:

operationId: Payments_getAchDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

Account ACH details were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/details
GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/owner

Retrieve the names and addresses of the account owner from a financial institution.

Note: this is a premium service, billable per every successful API call.

This service retrieves account data from the institution. This usually returns quickly, but in some scenarios may take a few minutes to complete. In the event of a timeout condition, retry the call.

Supported regions:

operationId: Payments_getAccountOwnerDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The account owner was successfully retrieved

203

The response contains an MFA challenge in XML or JSON format. Contact your Account Manager or Systems Engineers to determine the best route to handle this error.

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v1/customers/{customerId}/accounts/{accountId}/owner
GET /aggregation/v2/customers/{customerId}/accounts/{accountId}/loanDetails

Return the loan payment details of the customer for a loan-type account.

Note: this is a premium service, billable per every successful API call.

Supported regions:

operationId: Payments_getLoanPaymentDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

The loan payment details were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v2/customers/{customerId}/accounts/{accountId}/loanDetails
GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/details

Return the real account number and routing number details for an ACH payment along with the supported payment instruction details.

Note: this is a premium service, billable per every successful API call.

Supported account types: “checking”, “savings”, “moneyMarket”, “loan”

Supported regions:

operationId: Payments_getAchAccountDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

Responses

200

Account ACH details were successfully retrieved

400

The request was rejected due to validation failures

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/details
GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/owner

This service retrieves the account details for an account holder from an institution. The following data objects are available.

  • Account holders

  • Addresses

  • Emails

  • Phones

  • Documentations

  • Identity Insights

Note: The data returned varies from institution to institution as not all of them make the same data available. This is a premium service, billable per each successful API call.

Supported regions:

operationId: Payments_getAccountOwnerDetails

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

withInsights query optional

If this parameter is true, Identity Insights data will be returned along with the account owner information

Responses

200

The account owner was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

GET /aggregation/v3/customers/{customerId}/accounts/{accountId}/owner

Portfolios 2 endpoints

GET /decisioning/v1/consumers/{consumerId}/portfolios/{portfolioId}

Return a portfolio of most recently generated reports for each report type for a given consumer. If there are multiple reports that were generated for a report type (VOA, VOI, etc.), only the most recently generated report for the type will be returned.

Supported regions:

operationId: Portfolios_getPortfolioByConsumer

Parameters

Name In Required Type Description
consumerId path optional

The consumer ID

portfolioId path optional

A portfolio ID with the portfolio version number. Using the portfolio number without a version number will return the most recently generated reports.

Responses

200

The portfolio was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v1/consumers/{consumerId}/portfolios/{portfolioId}
GET /decisioning/v1/customers/{customerId}/portfolios/{portfolioId}

Return a portfolio of most recently generated reports for each report type for the given customer. If there are multiple reports that were generated for a report type (VOA, VOI, etc.), only the most recently generated report for the type will be returned.

Supported regions:

operationId: Portfolios_getMostRecentReports

Parameters

Name In Required Type Description
customerId path optional

A customer ID

portfolioId path optional

A portfolio ID with the portfolio version number. Using the portfolio number without a version number will return the most recently generated reports.

Responses

200

The portfolio was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v1/customers/{customerId}/portfolios/{portfolioId}

Reports 4 endpoints

GET /decisioning/v1/consumers/{consumerId}/reports

Get all reports that have been generated by previous calls to Generate Report services for the given consumer.

The status fields in the returned list contain “inProgress”, “failure”, or “success”. If the status shows “inProgress”, the client app should wait 20 seconds and then call this API again.

Supported regions:

operationId: Reports_byConsumerId

Parameters

Name In Required Type Description
purpose query optional

2-digit code from Permissible Purpose Codes, specifying the reason for retrieving this report. Required for retrieving some reports.

consumerId path optional

The consumer ID

Responses

200

The reports summaries were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

429

The service can’t accept more requests or is not available from the Test Drive.

GET /decisioning/v1/consumers/{consumerId}/reports
GET /decisioning/v1/customers/{customerId}/reports

Get all reports that have been generated by previous calls to Generate Report services for the given customer.

The status fields in the returned list contain “inProgress”, “failure”, or “success”. If the status shows “inProgress”, the client app should wait 20 seconds and then call this API again.

Supported regions:

operationId: Reports_byCustomerId

Parameters

Name In Required Type Description
customerId path optional

A customer ID

purpose query optional

2-digit code from Permissible Purpose Codes, specifying the reason for retrieving this report. Required for retrieving some reports.

Responses

200

The reports summaries were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

429

The service can’t accept more requests or is not available from the Test Drive.

GET /decisioning/v1/customers/{customerId}/reports
GET /decisioning/v3/consumers/{consumerId}/reports/{reportId}

Get a report that has been generated by a previous call to one of the Generate Report services.

The report’s status field contains “inProgress”, “failure”, or “success”. If the status shows “inProgress”, the client app should wait 20 seconds and then call this API again.

Report data can either be retrieved as a JSON document or a PDF file. To specify the format required, set the Accept request header to either application/json or application/pdf. If neither is set, the report format will be returned as a JSON document.

Supported regions:

operationId: Reports_getByConsumerAndId

Parameters

Name In Required Type Description
purpose query optional

2-digit code from Permissible Purpose Codes, specifying the reason for retrieving this report. Required for retrieving some reports.

consumerId path optional

The consumer ID

reportId path optional

ID of the report

onBehalfOf query optional string

The name of the entity you are retrieving the report on behalf of

Responses

200

The report was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v3/consumers/{consumerId}/reports/{reportId}
GET /decisioning/v3/customers/{customerId}/reports/{reportId}

Get a report that has been generated by a previous call to one of the Generate Report services.

The report’s status field contains “inProgress”, “failure”, or “success”. If the status shows “inProgress”, the client app should wait 20 seconds and then call this API again.

Report data can either be retrieved as a JSON document or a PDF file. To specify the format required, set the Accept request header to either application/json or application/pdf. If neither is set, the report format will be returned as a JSON document.

Supported regions:

operationId: Reports_getStatus

Parameters

Name In Required Type Description
customerId path optional

A customer ID

reportId path optional

ID of the report

onBehalfOf query optional string

The name of the entity you are retrieving the report on behalf of

purpose query optional

2-digit code from Permissible Purpose Codes, specifying the reason for retrieving this report. Required for retrieving some reports.

Responses

200

The report was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /decisioning/v3/customers/{customerId}/reports/{reportId}

Transactions 3 endpoints

GET /aggregation/v2/customers/{customerId}/transactions/{transactionId}

Get details for the given transaction.

Supported regions:

operationId: Transactions_getById

Parameters

Name In Required Type Description
customerId path optional

A customer ID

transactionId path optional

A transaction ID

Responses

200

The transaction was successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v2/customers/{customerId}/transactions/{transactionId}
GET /aggregation/v3/customers/{customerId}/transactions

Get all transactions available for this customer within the given date range, across all accounts. This service supports paging and sorting by transactionDate (or postedDate if no transaction date is provided), with a maximum of 1000 transactions per request.

Standard consumer aggregation provides up to 180 days of transactions prior to the date each account was added to the Finicity system. To access older transactions, you must first call the service Load Historic Transactions for Account.

There is no limit for the size of the window between fromDate and toDate, however, the maximum number of transactions returned on one page is 1000.

Supported regions:

operationId: Transactions_getAllCustomerTransactions

Parameters

Name In Required Type Description
customerId path optional

A customer ID

fromDate query optional

A start date

toDate query optional

A end date

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

sort query optional string

Date sort order: “asc” for ascending, “desc” for descending

includePending query optional

If pending transactions must be included

Responses

200

The transactions were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v3/customers/{customerId}/transactions
GET /aggregation/v4/customers/{customerId}/accounts/{accountId}/transactions

Get all transactions available for this customer account within the given date range. This service supports paging and sorting by transactionDate (or postedDate if no transaction date is provided), with a maximum of 1000 transactions per request.

Standard consumer aggregation provides up to 180 days of transactions prior to the date each account was added to the Finicity system. To access older transactions, you must first call the Cash Flow Verification service Load Historic Transactions for Account.

There is no limit for the size of the window between fromDate and toDate, however, the maximum number of transactions returned on one page is 1000.

Supported regions:

operationId: Transactions_getCustomerAccountTransactions

Parameters

Name In Required Type Description
customerId path optional

A customer ID

accountId path optional

The account ID

fromDate query optional

A start date

toDate query optional

A end date

start query optional integer

Index of the page of results to return

limit query optional integer

Maximum number of results per page

sort query optional string

Date sort order: “asc” for ascending, “desc” for descending

includePending query optional

If pending transactions must be included

Responses

200

The transactions were successfully retrieved

400

The request was rejected

401

The request lacks valid authentication credentials. Check “Finicity-App-Key” or “Finicity-App-Token”.

404

The resource doesn’t exist

GET /aggregation/v4/customers/{customerId}/accounts/{accountId}/transactions

Schemas

object ACHDetails
{
  "type": "object",
  "required": [
    "routingNumber",
    "realAccountNumber"
  ],
  "properties": {
    "routingNumber": {
      "type": "string",
      "example": "123456789",
      "description": "The routing number of the financial institution for specific customer account"
    },
    "realAccountNumber": {
      "type": "string",
      "example": "002345678901",
      "description": "The account number for initiating ACH transfers for this account"
    }
  },
  "description": "The routing and account number information to initiate ACH transfers"
}
object AFBalanceAnalyticsReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/AnalyticsReportAck"
    },
    {
      "type": "object",
      "properties": {
        "days": {
          "type": "integer",
          "example": 730,
          "description": "Number of days covered by the report"
        },
        "endDate": {
          "$ref": "#/components/schemas/ReportEndDate"
        },
        "seasoned": {
          "type": "boolean",
          "example": true,
          "description": "\"true\" if the report covers more than 365 days"
        },
        "startDate": {
          "$ref": "#/components/schemas/ReportStartDate"
        },
        "institutions": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ReportInstitution"
          },
          "description": "A list of institution records, including information about the individual accounts used in this report"
        },
        "customerAnalytics": {
          "$ref": "#/components/schemas/CustomerAnalytics"
        }
      }
    }
  ],
  "description": "A Balance Analytics Report"
}
object AFBusiness
{
  "type": "object",
  "required": [
    "name",
    "address"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/BusinessName"
    },
    "address": {
      "type": "object",
      "properties": {
        "city": {
          "$ref": "#/components/schemas/City"
        },
        "state": {
          "$ref": "#/components/schemas/State"
        },
        "country": {
          "$ref": "#/components/schemas/Country"
        },
        "postalCode": {
          "$ref": "#/components/schemas/ZipCode"
        },
        "addressLine1": {
          "$ref": "#/components/schemas/AddressLine1"
        },
        "addressLine2": {
          "$ref": "#/components/schemas/AddressLine2"
        }
      }
    }
  }
}
object AFCashFlowAnalyticsReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/AnalyticsReportAck"
    },
    {
      "type": "object",
      "properties": {
        "days": {
          "type": "integer",
          "example": 730,
          "description": "Number of days covered by the report"
        },
        "endDate": {
          "$ref": "#/components/schemas/ReportEndDate"
        },
        "seasoned": {
          "type": "boolean",
          "example": true,
          "description": "\"true\" if the report covers more than 365 days"
        },
        "startDate": {
          "$ref": "#/components/schemas/ReportStartDate"
        },
        "institutions": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ReportInstitution"
          },
          "description": "A list of institution records, including information about the individual accounts used in this report"
        },
        "customerAnalytics": {
          "$ref": "#/components/schemas/CustomerAnalytics"
        }
      }
    }
  ],
  "description": "A Cash Flow Analytics Report"
}
object AccessToken
{
  "type": "object",
  "required": [
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "example": "YBh22Sb9Es6e66Q7lWdt",
      "description": "The access token value"
    }
  },
  "description": "A temporary access token to be passed in the `Finicity-App-Token` HTTP header of all subsequent API requests"
}
object AccountAnalytics
{
  "type": "object",
  "required": [
    "transactionalAttributes",
    "stateAttributes",
    "streams"
  ],
  "properties": {
    "streams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/StreamModel"
      },
      "description": "List of generated streams"
    },
    "stateAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/StateAttribute"
      },
      "description": "List of calculated state attributes"
    },
    "transactionalAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TransactionalAttribute"
      },
      "description": "List of calculated transactional attributes"
    }
  },
  "description": "Analytics calculated for one account in the report."
}
object AccountDetails
{
  "type": "object",
  "properties": {
    "vestedBalance": {
      "type": "number",
      "example": 300000,
      "description": "Only available for investment accounts. Vested amount in account."
    },
    "currentLoanBalance": {
      "type": "number",
      "example": 0,
      "description": "Only available for investment accounts. Current loan balance."
    },
    "availableCashBalance": {
      "type": "number",
      "example": 1500,
      "description": "Only available for investment accounts. Amount available for cash withdrawal."
    },
    "interestMarginBalance": {
      "type": "number",
      "example": -50000,
      "description": "Only available for investment accounts. Net interest earned after deducting interest paid out."
    },
    "availableBalanceAmount": {
      "type": "number",
      "example": 1000,
      "description": "The available balance for the account"
    }
  }
}
object AccountDetailsTxBased
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/AccountDetails"
    },
    {
      "type": "object",
      "properties": {
        "marginBalance": {
          "type": "number",
          "example": 100,
          "description": "Net interest earned after deducting interest paid out"
        },
        "currentBalance": {
          "type": "number",
          "example": 1000,
          "description": "Current balance"
        }
      }
    }
  ]
}
string AccountId
{
  "type": "string",
  "example": "5011648377",
  "description": "An account ID"
}
string AccountNumberDisplay
{
  "type": "string",
  "description": "The account number from a financial institution in truncated format:\n\n  * Last four digits: \"1234\"\n\n  * Last four digits with suffix: \"1234-9\"\n\n  * Full value for string accounts: \"john@gmail.com\"\nexample: '1234-9'"
}
string AccountNumberLast4
{
  "type": "string",
  "example": "5678",
  "description": "The last 4 digits of the ACH account number"
}
object AccountOwner
{
  "type": "object",
  "required": [
    "ownerName",
    "ownerAddress"
  ],
  "properties": {
    "asOfDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "ownerName": {
      "type": "string",
      "example": "John Smith",
      "description": "The name of the account owner. Can be multiple account owners in one string. This is how the source data is returned from the institution."
    },
    "ownerAddress": {
      "$ref": "#/components/schemas/Address"
    }
  },
  "description": "Owner of a customer account"
}
object AccountOwnerAddress
{
  "type": "object",
  "properties": {
    "city": {
      "$ref": "#/components/schemas/City"
    },
    "type": {
      "$ref": "#/components/schemas/AddressType"
    },
    "line1": {
      "$ref": "#/components/schemas/AddressLine1"
    },
    "line2": {
      "$ref": "#/components/schemas/AddressLine2"
    },
    "line3": {
      "$ref": "#/components/schemas/AddressLine3"
    },
    "state": {
      "$ref": "#/components/schemas/State"
    },
    "country": {
      "$ref": "#/components/schemas/Country"
    },
    "postalCode": {
      "$ref": "#/components/schemas/ZipCode"
    },
    "ownerAddress": {
      "$ref": "#/components/schemas/Address"
    }
  },
  "description": "Account owner address"
}
array AccountOwnerAddresses
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/AccountOwnerAddress"
  },
  "description": "List of addresses"
}
object AccountOwnerDetails
{
  "type": "object",
  "required": [
    "ownerName",
    "addresses"
  ],
  "properties": {
    "emails": {
      "$ref": "#/components/schemas/AccountOwnerEmails"
    },
    "phones": {
      "$ref": "#/components/schemas/AccountOwnerPhones"
    },
    "suffix": {
      "$ref": "#/components/schemas/Suffix"
    },
    "lastName": {
      "$ref": "#/components/schemas/LastName"
    },
    "addresses": {
      "$ref": "#/components/schemas/AccountOwnerAddresses"
    },
    "firstName": {
      "$ref": "#/components/schemas/FirstName"
    },
    "ownerName": {
      "$ref": "#/components/schemas/AccountOwnerName"
    },
    "middleName": {
      "$ref": "#/components/schemas/MiddleName"
    },
    "relationship": {
      "$ref": "#/components/schemas/AccountOwnerRelationshipType"
    },
    "documentations": {
      "$ref": "#/components/schemas/AccountOwnerDocumentations"
    },
    "identityInsights": {
      "$ref": "#/components/schemas/AccountOwnerIdentityInsights"
    },
    "nameClassification": {
      "$ref": "#/components/schemas/NameClassificationType"
    },
    "nameClassificationconfidencescore": {
      "$ref": "#/components/schemas/ClassificationConfidenceScore"
    }
  },
  "description": "Owner of a customer account"
}
object AccountOwnerDocumentation
{
  "type": "object",
  "properties": {
    "taxId": {
      "$ref": "#/components/schemas/TaxId"
    },
    "governmentId": {
      "$ref": "#/components/schemas/GovernmentId"
    },
    "taxIdCountry": {
      "$ref": "#/components/schemas/Country"
    }
  },
  "description": "Account owner documentation"
}
array AccountOwnerDocumentations
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/AccountOwnerDocumentation"
  },
  "description": "List of account owner documentation"
}
object AccountOwnerEmail
{
  "type": "object",
  "properties": {
    "email": {
      "$ref": "#/components/schemas/EmailAddress"
    },
    "emailType": {
      "$ref": "#/components/schemas/AccountOwnerEmailType"
    },
    "isPrimary": {
      "$ref": "#/components/schemas/AccountOwnerEmailPrimary"
    }
  },
  "description": "Account owner email"
}
boolean AccountOwnerEmailPrimary
{
  "type": "boolean",
  "example": true,
  "description": "The email is primary."
}
string AccountOwnerEmailType
{
  "type": "string",
  "example": "Personal",
  "description": "The account owner's email type.\n\n* \"Personal\" \n\n* \"Business\""
}
array AccountOwnerEmails
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/AccountOwnerEmail"
  },
  "description": "List of emails"
}
object AccountOwnerHolders
{
  "type": "object",
  "required": [
    "holders"
  ],
  "properties": {
    "holders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AccountOwnerDetails"
      },
      "description": "List of account owners"
    }
  }
}
object AccountOwnerIdentityInsights
{
  "type": "object",
  "properties": {
    "ipRisk": {
      "$ref": "#/components/schemas/IpRisk"
    },
    "warnings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Warnings"
      }
    },
    "emailToName": {
      "$ref": "#/components/schemas/EmailToName"
    },
    "ipRiskScore": {
      "$ref": "#/components/schemas/IpRiskScore"
    },
    "phoneToName": {
      "$ref": "#/components/schemas/PhoneToName"
    },
    "isEmailValid": {
      "$ref": "#/components/schemas/EmailValid"
    },
    "isPhoneValid": {
      "$ref": "#/components/schemas/PhoneValid"
    },
    "phoneCarrier": {
      "$ref": "#/components/schemas/PhoneCarrier"
    },
    "addressToName": {
      "$ref": "#/components/schemas/AddressToName"
    },
    "phoneLineType": {
      "$ref": "#/components/schemas/PhoneLineType"
    },
    "ipLastSeenDays": {
      "$ref": "#/components/schemas/IpLastSeenDays"
    },
    "phoneToAddress": {
      "$ref": "#/components/schemas/PhoneToAddress"
    },
    "ipPhoneDistance": {
      "$ref": "#/components/schemas/IpPhoneDistance"
    },
    "phoneCountryCode": {
      "$ref": "#/components/schemas/PhoneCountryCode"
    },
    "identityRiskScore": {
      "$ref": "#/components/schemas/IdentityRiskScore"
    },
    "ipAddressDistance": {
      "$ref": "#/components/schemas/IpAddressDistance"
    },
    "phoneLastSeenDays": {
      "$ref": "#/components/schemas/PhoneLastSeenDays"
    },
    "emailFirstSeenDays": {
      "$ref": "#/components/schemas/EmailFirstSeenDays"
    },
    "addressValidityLevel": {
      "$ref": "#/components/schemas/AddressValidityLevel"
    },
    "identityNetworkScore": {
      "$ref": "#/components/schemas/IdentityNetworkScore"
    },
    "emailDomainCreationDate": {
      "$ref": "#/components/schemas/EmailDomainCreationDate"
    },
    "phoneEmailFirstSeenDays": {
      "$ref": "#/components/schemas/PhoneEmailFirstSeenDays"
    },
    "ipGeolocationCountryCode": {
      "$ref": "#/components/schemas/IpGeolocationCountryCode"
    },
    "ipGeolocationSubdivision": {
      "$ref": "#/components/schemas/IpGeolocationSubdivision"
    }
  },
  "description": "List of account owner Identity Insights"
}
string AccountOwnerName
{
  "type": "string",
  "example": "John Smith, PhD",
  "description": "The full name of the account owner. Multiple account owners are returned in one string per the source data from the institution."
}
object AccountOwnerPhone
{
  "type": "object",
  "properties": {
    "type": {
      "$ref": "#/components/schemas/AccountOwnerPhoneType"
    },
    "phone": {
      "$ref": "#/components/schemas/PhoneNumber"
    },
    "country": {
      "$ref": "#/components/schemas/PhoneCountry"
    }
  },
  "description": "Consumer phone"
}
string AccountOwnerPhoneType
{
  "type": "string",
  "example": "HOME",
  "description": "The account owner's phone type:   \n\n* \"HOME\"\n\n* \"BUSINESS\"\n\n* \"CELL\"\n\n* \"FAX\""
}
array AccountOwnerPhones
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/AccountOwnerPhone"
  },
  "description": "List of phones"
}
string AccountOwnerRelationshipType
{
  "type": "string",
  "example": "AUTHORIZED_USER",
  "description": "The type of relationship to the account:  \n* \"AUTHORIZED_USER\"  \n\n* \"BUSINESS\"   \n\n* \"FOR_BENEFIT_OF_PRIMARY\"  \n\n* \"FOR_BENEFIT_OF_PRIMARY_JOINT_RESTRICTED\"  \n\n* \"FOR_BENEFIT_OF_SECONDARY\"\n\n* \"FOR_BENEFIT_OF_SECONDARY_JOINT_RESTRICTED\"\n\n* \"FOR_BENEFIT_OF_SOLE_OWNER_RESTRICTED\"\n\n* \"POWER_OF_ATTORNEY\"\n\n* \"PRIMARY_JOINT_TENANTS\"\n\n* \"PRIMARY\"\n\n* \"PRIMARY_BORROWER\"\n\n* \"PRIMARY_JOINT\"\n\n* \"SECONDARY\"\n\n* \"SECONDARY_JOINT_TENANTS\"\n\n* \"SECONDARY_BORROWER\"\n\n* \"SECONDARY_JOINT\"\n\n* \"SOLE_OWNER\"\n\n* \"TRUSTEE\"\n\n* \"UNIFORM_TRANSFER_TO_MINOR\""
}
string AccountStatus
{
  "type": "string",
  "example": "pending",
  "description": "An account status"
}
string AccountType
{
  "type": "string",
  "example": "checking",
  "description": "The list of supported account types.\n* \"checking\": Standard checking\n* \"savings\": Standard savings\n* \"cd\": Certificates of deposit\n* \"moneyMarket\": Money Market\n* \"creditCard\": Standard credit cards\n* \"lineOfCredit\": Home equity, line of credit\n* \"investment\": Generic investment (no details)\n* \"investmentTaxDeferred\": Generic tax-advantaged investment (no details)\n* \"employeeStockPurchasePlan\": ESPP, Employee Stock Ownership Plans (ESOP), Stock Purchase Plans\n* \"ira\": Individual Retirement Account (not Rollover or Roth)\n* \"401k\": 401K Plan\n* \"roth\": Roth IRA, Roth 401K\n* \"403b\": 403B Plan\n* \"529plan\": 529 Plan (True value is 529)\n* \"rollover\": Rollover IRA\n* \"ugma\": Uniform Gifts to Minors Act\n* \"utma\": Uniform Transfers to Minors Act\n* \"keogh\": Keogh Plan\n* \"457plan\": 457 Plan (True value is 457)\n* \"401a\": 401A Plan\n* \"brokerageAccount\": Brokerage Account\n* \"educationSavings\": Education Savings Account that is not a 529\n* \"healthSavingsAccount\": HSA (Health Savings Accounts)\n* \"pension\": Pension\n* \"profitSharingPlan\": Profit Sharing Plan\n* \"roth401k\": Roth 401K\n* \"sepIRA\": Simplified Employee Pension IRA\n* \"simpleIRA\": Simple IRA\n* \"thriftSavingsPlan\": Thrift Savings Plan\n* \"variableAnnuity\": Variable Annuity\n* \"cryptocurrency\": Cryptocurrency Wallet, Cryptocurrency Account\n* \"mortgage\": Standard Mortgages\n* \"loan\": Auto loans, equity loans, other loans\n* \"studentLoan\": Student Loan\n* \"studentLoanGroup\": Student Loan Group\n* \"studentLoanAccount\": Student Loan Account"
}
string ActiveStatus
{
  "type": "string",
  "example": "ACTIVE",
  "description": "Possible values: \"ACTIVE\", \"INACTIVE\""
}
string Address
{
  "type": "string",
  "example": "434 W Ascension Way",
  "description": "A street address"
}
string AddressLine1
{
  "type": "string",
  "example": "434 W Ascension Way",
  "description": "Address line 1"
}
string AddressLine2
{
  "type": "string",
  "example": "Suite #200",
  "description": "Address line 2"
}
string AddressLine3
{
  "type": "string",
  "example": "UT 84123",
  "description": "Address line 3"
}
string AddressToName
{
  "type": "string",
  "example": "match",
  "description": "The match status between the input name and the queried entity.\n* not-found\n* match\n* no-match"
}
string AddressType
{
  "type": "string",
  "example": "Home",
  "description": "The type of address location:\n* \"Business\"\n* \"Home\"\n* \"Mailing\""
}
number AddressValidityLevel
{
  "type": "number",
  "example": null,
  "description": "The most granular level to which the address could be validated. Ex. If the address was only valid to the city level (but not to the house level), it would return “valid_to_city”.\n  * missing_address - An input address was not provided.\n\n  * invalid - The input address is not valid.\n\n  * valid - The input address is valid.\n\n  * valid_to_country - The input address could only be validated to the\ncountry level. This means the country of the input address is valid, but the other elements of the input address were unable to be confirmed as valid or invalid.\n\n  * valid_to_city - The input address was validated to the city level.\nThis means the country, state, city, and postal code of the input address are valid, but the street, house number, and subpremise of the input address were unable to be confirmed as valid or invalid.\n\n  * valid_to_street - The input address was validated to the street\nlevel. This means the country, state, city, postal code, and street of the input address are valid, but the house number and subpremise of the input address were unable to be confirmed as valid or invalid.\n\n    * valid_to_house_number - The input address was validated to the\nstreet and house number level. This means the country, state, city, postal code, street, and house number of the input address are valid, but the subpremise of the input address was unable to be confirmed as valid or invalid. \n\n    * valid_to_house_number_missing_apt - The input address was\nvalidated to the street and house number level. This means the country, state, city, postal code, street, and house number of the input address are valid, but the subpremise of the input address was missing and thus unable to be confirmed as valid or invalid."
}
string AggregationStatus
{
  "type": "string",
  "example": "active",
  "description": "\"pending\" during account discovery, always \"active\" following\n  successful account activation"
}
integer AggregationStatusCode
{
  "type": "integer",
  "description": "The status of the most recent aggregation attempt (see [Aggregation Status Codes](https://developer.mastercard.com/open-banking-us/documentation/products/manage/account-aggregation/#aggregation-status-codes)). Won't be present until you have run your first aggregation for the account."
}
object AnalyticsReportAck
{
  "allOf": [
    {
      "$ref": "#/components/schemas/BaseReportAck"
    },
    {
      "type": "object",
      "properties": {
        "reportPin": {
          "$ref": "#/components/schemas/ReportPin"
        },
        "constraints": {
          "$ref": "#/components/schemas/AnalyticsReportConstraintsOut"
        },
        "businessDetails": {
          "$ref": "#/components/schemas/BusinessDetails"
        }
      }
    }
  ],
  "required": [
    "id",
    "customerType",
    "customerId",
    "requestId",
    "requesterName",
    "createdDate",
    "title",
    "type",
    "status",
    "constraints"
  ]
}
object AnalyticsReportConstraints
{
  "type": "object",
  "properties": {
    "fromDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "accountIds": {
      "$ref": "#/components/schemas/ReportAccountIdsString"
    },
    "reportCustomFields": {
      "$ref": "#/components/schemas/ReportCustomFields"
    },
    "analyticsReportData": {
      "$ref": "#/components/schemas/AnalyticsReportData"
    }
  }
}
object AnalyticsReportConstraintsOut
{
  "type": "object",
  "properties": {
    "fromDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "accountIds": {
      "$ref": "#/components/schemas/ReportAccountIds"
    },
    "reportCustomFields": {
      "$ref": "#/components/schemas/ReportCustomFields"
    },
    "analyticsReportData": {
      "$ref": "#/components/schemas/AnalyticsReportData"
    }
  }
}
object AnalyticsReportData
{
  "type": "object",
  "required": [
    "forCraPurpose"
  ],
  "properties": {
    "forCraPurpose": {
      "type": "boolean",
      "example": true,
      "description": "Field to indicate if the requested report is for CRA or NONCRA. For small business lending or other similar business use cases, pass the value as “true” for purposes of this field."
    },
    "timeIntervalTypes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TimeIntervalType"
      },
      "example": [
        "MONTHLY_CALENDAR"
      ],
      "maxItems": 2,
      "description": "Requested time interval for attribute values."
    },
    "applicantIsPersonalGuarantor": {
      "type": "boolean",
      "example": true,
      "description": "Field to indicate if the business owner will personally guarantee the loan. If true, a consumer record will be required."
    }
  },
  "description": "Parameters supplied by the client requesting the analytics."
}
object AnalyticsReportsAccount
{
  "type": "object",
  "required": [
    "id",
    "name",
    "number",
    "type",
    "currency",
    "transactions"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64",
      "example": 1000023996,
      "description": "The ID of the account"
    },
    "name": {
      "type": "string",
      "example": "Checking",
      "description": "The account name from the institution"
    },
    "type": {
      "type": "string",
      "example": "checking",
      "description": "One of the values from account types"
    },
    "number": {
      "type": "string",
      "example": "XX1111",
      "description": "The account number from the institution (obfuscated)"
    },
    "details": {
      "$ref": "#/components/schemas/AccountDetails"
    },
    "ownerName": {
      "$ref": "#/components/schemas/ReportAccountOwnerName"
    },
    "balanceDate": {
      "type": "integer",
      "format": "int64",
      "example": 1614880526,
      "description": "A timestamp showing when the `balance` was captured"
    },
    "ownerAddress": {
      "$ref": "#/components/schemas/ReportAccountOwnerAddress"
    },
    "transactions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ReportTransaction"
      },
      "description": "a list of transaction records"
    },
    "currentBalance": {
      "type": "number",
      "example": 100000,
      "description": "The cleared balance of the account as-of `balanceDate`"
    },
    "accountAnalytics": {
      "$ref": "#/components/schemas/AccountAnalytics"
    },
    "availableBalance": {
      "type": "number",
      "example": 1000,
      "description": "Available balance"
    },
    "aggregationStatusCode": {
      "type": "integer",
      "format": "int32",
      "example": 0,
      "description": "The status of the most recent aggregation attempt"
    }
  }
}
object AnnualIncome
{
  "type": "object",
  "required": [
    "year",
    "grossPayAmountYTD"
  ],
  "properties": {
    "year": {
      "type": "string",
      "example": 2022,
      "description": "The year for the amounts given in YTD totals for an employer"
    },
    "netPayAmountYTD": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) net pay amount for the indicated year"
    },
    "basePayAmountYTD": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) base pay amount for the year indicated"
    },
    "grossPayAmountYTD": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) gross pay amount for the indicated year"
    },
    "otherPayAmountYTD": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) other pay amount for the indicated year. Other pay is pay that is not categorized into one of the other categories."
    },
    "commissionPayAmount": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) commission pay amount for the indicated year"
    },
    "overtimePayAmountYTD": {
      "type": "number",
      "example": 123.45,
      "description": "Year to date (YTD) overtime pay amount for the year indicated"
    }
  }
}
object AppFinancialInstitutionStatus
{
  "type": "object",
  "required": [
    "id",
    "decryptionKeyActivated",
    "createdDate",
    "lastModifiedDate",
    "status"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/NumericInstitutionId"
    },
    "status": {
      "type": "boolean",
      "example": true,
      "description": "\"false\" indicates registration is still pending"
    },
    "logoUrl": {
      "type": "string",
      "example": "https://prod-direct-integration-client.s3.us-west-2.amazonaws.com/976521f99-7b36-4b3b-a3e0-faff9545836d/102224/90x90.png",
      "description": "An URL to a logo file"
    },
    "abbrvName": {
      "type": "string",
      "example": "VAEJ",
      "description": "The application's abbreviated name"
    },
    "createdDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "lastModifiedDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "decryptionKeyActivated": {
      "type": "boolean",
      "example": false,
      "description": "Status of decryption keys for financial institution app registration"
    }
  },
  "description": "The registration status fields for each specific OAuth financial institution"
}
string AppRegistrationStatus
{
  "type": "string",
  "example": "P",
  "description": "The status of an app registration request. \"A\" means approved. \"P\" means pending which is the status when initially submitted or when the app is modified and awaiting approval. \"R\" means rejected. If it is rejected there will be a note with the rejected reason."
}
object AppStatus
{
  "type": "object",
  "required": [
    "partnerId",
    "preAppId",
    "appName",
    "submittedDate",
    "modifiedDate",
    "status"
  ],
  "properties": {
    "note": {
      "type": "string",
      "example": "Approved",
      "description": "A note on the registration. Typically used to indicate reasons for rejected apps."
    },
    "scopes": {
      "type": "string",
      "example": "Account Info",
      "description": "Indicates scopes of data accessible to the app"
    },
    "status": {
      "$ref": "#/components/schemas/AppRegistrationStatus"
    },
    "appName": {
      "$ref": "#/components/schemas/ApplicationName"
    },
    "preAppId": {
      "$ref": "#/components/schemas/PreAppId"
    },
    "partnerId": {
      "$ref": "#/components/schemas/PartnerId"
    },
    "modifiedDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "applicationId": {
      "$ref": "#/components/schemas/ApplicationId"
    },
    "submittedDate": {
      "$ref": "#/components/schemas/UnixDate"
    },
    "institutionDetails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AppFinancialInstitutionStatus"
      },
      "description": "A list of the registration status for each FI for the application"
    }
  },
  "description": "Registration status details for the application"
}
object AppStatuses
{
  "type": "object",
  "required": [
    "totalRecords",
    "totalPages",
    "pageNumber",
    "numberOfRecordsPerPage",
    "applications"
  ],
  "properties": {
    "pageNumber": {
      "type": "integer",
      "format": "int64",
      "example": 2,
      "description": "The current page number"
    },
    "totalPages": {
      "type": "integer",
      "format": "int64",
      "example": 5,
      "description": "The total number of pages"
    },
    "applications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AppStatus"
      },
      "description": "A list of applications with their statuses"
    },
    "totalRecords": {
      "type": "integer",
      "format": "int64",
      "example": 50,
      "description": "The total number of results"
    },
    "numberOfRecordsPerPage": {
      "type": "integer",
      "format": "int64",
      "example": 10,
      "description": "The number of results per page"
    }
  },
  "description": "The response for the Get App Registration Status API which returns an array of status objects"
}

Versions

Version Endpoints Schemas Ingested Status
1.16.2 104 514 2026-05-11 current
1.16.2 104 514 2026-04-20
1.16.2 104 514 2026-04-16