# Mastercard Open Finance

The old Finicity API under Mastercard's name, with holdings on the account object.

*https://stockmarketstack.com/tools/mastercard-open-finance · Brokerage Account Aggregation APIs*

## Facts

### At a glance

| Field | Value |
| --- | --- |
| Vendor | Mastercard |
| Category | Brokerage Account Aggregation APIs |
| Job | aggregation |
| Website | https://developer.mastercard.com/product/open-finance/ |
| Pricing model | usage |
| Free tier | false |
| Open source | false |
| Licence | none |
| Self-hosted | false |
| Tested hands-on | false |
| Last updated | 2026-09-19 |

### Pricing

| Tier | USD | Period |
| --- | --- | --- |
| Tier 1 — Account Simple Details | 0 USD | month |
| Tier 2 — Account Full Details | on request | month |
| Tier 3 — Account & Transaction Details | on request | month |
| Standalone services | on request | month |

### Coverage

| Field | Value |
| --- | --- |
| Asset classes | stocks, etf, mutual_funds, bonds, options |
| Markets | us |
| Works outside the US | false |
| Data latency | eod |
| Platforms | web |
| AI features | none |

### Interfaces

| Field | Value |
| --- | --- |
| API | true |
| Webhooks | true |
| Scripting | none |
| Python | false |
| Spreadsheet add-in | false |
| MCP server | false |
| Export | json |

### Capabilities

Yes: broker_import

No: charting, screening, scanning, backtesting, automation, live_trading, paper_trading, portfolio_tracking, tax_reporting, alerts, news, options_analysis

*Verified: pricing 2026-09-19; capabilities 2026-09-19; coverage 2026-09-19.*

## What it is

Mastercard bought Finicity in 2020, and the naming is worth spelling out because three versions
are in circulation. The product is Mastercard Open Finance. The company providing it is "Finicity,
a Mastercard company", which is how the docs put it. The URLs and several GitHub repositories
still say open-banking, and every authenticated request carries a `Finicity-App-Token` header. One
API, three names; a reader arriving with any of them is in the right place.

The shape is conventional: Mastercard Data Connect is the hosted link flow, and your server
exchanges a partner authentication for a two-hour token and reads accounts and transactions.
Investment accounts are not a separate product — holdings arrive as a `position` array on the
account object, so whatever call returns full account detail returns positions with it.

This card is the US API. Australia and Europe are separate Open Finance offerings on separate
documentation, and nothing here transfers to them.

## Pricing

No figure is published, but the billing model is, which is more than most of this category
manages.

Account and transaction data bill one of two ways. Data Access Tiers is pay-per-use per customer
per month: Tier 1, Account Simple Details, is name, type, status and currency at no additional
cost and exists so you can check a permissioned account is live before paying for it; Tier 2 adds
balances and the position array; Tier 3 adds transactions, and if you touch both in one month only
Tier 3 is charged. The alternative is the older standalone subscriptions, Account Limited
Aggregation and Transaction Aggregation. Decisioning reports — Balance Analytics, Cash Flow
Analytics, verification of assets and income — are billed per successful call on top.

The sandbox is genuinely self-serve. Sign up, create a project, select Open Finance, and you get a
Partner ID, Secret and App Key with test customer profiles behind them. That is the cheapest way
in this category to find out whether the payload has what you need before anyone quotes you.

## Data & coverage

A position carries `symbol`, `securityName`, `units`, `currentPrice` with a `currentPriceDate`,
`marketValue`, `costBasis`, `costBasisPerShare`, `paidPrice`, `dailyChange`, `totalGLDollar` and
`totalGLPercent`, `posType` for long or short, `transactionType` for cash versus margin, an
FI-defined `fiAssetClass` and a normalised `assetClass`, and for options `optionType`,
`optionStrikePrice`, `optionSharesPerContract` and `optionExpireDate`. A `securityId` with a
`securityIdType` beside it is how a CUSIP reaches you.

Account types run wide — investment, investment tax deferred, brokerage, non-taxable brokerage,
IRA, Roth 401k, SEP and Simple IRA, 403b, 457, 401a, Keogh, Thrift Savings Plan, 529, UGMA, UTMA,
ESPP, pension, profit sharing and variable annuity.

The first aggregation pulls up to six months of transactions for a traditional account and the
docs recommend pulling daily thereafter; TxPUSH pushes changes to a webhook instead, and a Load
Historic Transactions call extends the window to 24 months where the institution has the history.
Mastercard claims connectivity to 95% of US deposit accounts — a claim about deposits that says
nothing about brokerage reach. Unlike the rest of this category, though, there is a Get
Institutions endpoint, so a sandbox key lets you check coverage yourself.

## Integrations

REST and JSON. No first-party client libraries in any language: the vendor publishes an OpenAPI
specification, a Postman collection, bash and PowerShell setup scripts and a ReactJS reference app
and tells you to generate a client. `github.com/Mastercard/finicity-openapi` redirects to
`open-banking-us-openapi`, which is Java and was last pushed on 14 September 2026. Data Connect
ships web, iOS and Android SDKs. Webhooks cover Data Connect events, TxPUSH and report generation.

## Limitations

- No published price at any tier, and which billing model suits you is explicitly a question for
  a sales representative.
- API requests must originate from an IP in the United States, United Kingdom, Canada or
  Australia.
- Fidelity carries a warning of its own: Mastercard notifies clients that third-party data
  providers may require a separate market-data licence to receive holdings, market values,
  vestings and symbols over the Fidelity OAuth connection. That is a licence between you and
  somebody who is not Mastercard.
- OAuth institutions need per-application registration, and when an institution moves off a
  legacy connection your customers lose theirs and have to reauthenticate.
- Six months of transaction history on first aggregation for a traditional account; 24 months
  needs a separate Load Historic Transactions call and depends on the institution.
- TxPUSH and Data Access Tiers are mutually exclusive — the tiers page says partners using TxPUSH
  are not eligible for them, so the billing model the docs explain best is the one you lose by
  taking the push option.
- Holdings are institution-reported and dated by `currentPriceDate`; refresh is a daily pull and
  nothing here is a market feed.
- Read-only. No orders.

## Alternatives

[Plaid Investments](https://stockmarketstack.com/tools/plaid-investments) has the better-documented investments product, a
published coverage file and a Trial plan that reaches real data. [Akoya](https://stockmarketstack.com/tools/akoya) is API-only
by design and narrower. [MX](https://stockmarketstack.com/tools/mx) is the comparison if you are a bank already running its
platform. [SnapTrade](https://stockmarketstack.com/tools/snaptrade) is where to go if the deal size is small. Mastercard's
argument is the institution relationships and a sandbox you can reach this afternoon.

## FAQ

### Is this still called Finicity?

Not on anything customer-facing. Mastercard acquired Finicity in 2020, rebranded the product to Mastercard Open Banking and then to Mastercard Open Finance, which is what the developer portal says today. Finicity survives as the legal entity — the docs state that "Open Finance solutions in the United States are provided by Finicity, a Mastercard company" — and in the wire protocol, where every request still carries a Finicity-App-Token header.

### Can I get a key without talking to sales?

A sandbox key, yes, and it is the fastest of the enterprise aggregators to reach. Sign up on Mastercard Developers, create a project, pick Open Finance and a commercial country, and you are issued a Partner ID, Secret and App Key; the vendor budgets 30 minutes for the quick start and provides test customer profiles. Production is a commercial agreement.

### How do I get investment holdings out of it?

There is no holdings endpoint. Holdings come back as a position array on the full account object, so any call that returns Account Full Details returns positions for investment accounts. Each position carries symbol, units, current price, market value, cost basis, price paid, total gain and loss, asset class, option strike, type and expiry, and a securityId with a securityIdType alongside it.

### What does it cost?

No figure is published. Account and transaction data are billed either through Data Access Tiers, a per-customer-per-month model where Tier 1 is free inside a contract and Tiers 2 and 3 are paid, or through the older standalone subscriptions. Reports such as Balance Analytics and Cash Flow Analytics are billed per successful call. The docs tell you to ask your sales representative which tier fits.

## Also worth comparing

- [SnapTrade](https://stockmarketstack.com/tools/snaptrade.md) — One API for reading brokerage holdings and placing orders at supported brokers.
- [Akoya](https://stockmarketstack.com/tools/akoya.md) — Bank-owned API network for consumer-permissioned account and holdings data. No scraping.
- [MX](https://stockmarketstack.com/tools/mx.md) — Bank-grade aggregation API with investment holdings billed as its own product.
- [Plaid Investments](https://stockmarketstack.com/tools/plaid-investments.md) — Read-only holdings, cost basis and investment transactions from 3,200 brokerages.
- [Wealthica Business](https://stockmarketstack.com/tools/wealthica-business.md) — Canadian wealth aggregation — 125 published providers, positions, transactions, CUSIP.
- [Yodlee](https://stockmarketstack.com/tools/yodlee.md) — Long-running aggregation platform whose holdings carry CUSIP, ISIN and SEDOL.
