Introduction to Transactions

Retrieve up to 24 months of transaction data and stay up-to-date with webhooks.

Link an account
Fetch transactions
Show transactions

Explore API

Overview

Transactions data can be useful for many different applications, including personal finance management, expense reporting, cash flow modeling, risk analysis, and more. Plaid's Transactions product allows you to access a user's transaction history via the /transactions/get endpoint, which can provide transaction history for both depository type accounts such as checking and savings accounts, and credit type accounts, such as credit cards, as well as for student loan accounts. For Transaction history from investment accounts, use Plaid's Investments product.

Transactions data includes transaction date, amount, category, merchant, location, and more. Transaction data is lightly cleaned to populate the name field, and more thoroughly processed to populate the merchant_name field.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{
"account_id": "BxBXxLj1m4HMXBm9WZZmCWVbPjX16EHwv99vp",
"amount": 2307.21,
"iso_currency_code": "USD",
"unofficial_currency_code": null,
"category": ["Shops", "Computers and Electronics"],
"category_id": "19013000",
"date": "2017-01-29",
"authorized_date": "2017-01-27",
"location": {
"address": "300 Post St",
"city": "San Francisco",
"region": "CA",
"postal_code": "94108",
"country": "US",
"lat": 40.740352,
"lon": -74.001761,
"store_number": "1235"
},
"name": "Apple Store",
"merchant_name": "Apple",
"payment_meta": {
"by_order_of": null,
"payee": null,
"payer": null,
"payment_method": null,
"payment_processor": null,
"ppd_id": null,
"reason": null,
"reference_number": null
},
"payment_channel": "in store",
"pending": false,
"pending_transaction_id": null,
"account_owner": null,
"transaction_id": "lPNjeW1nR6CDn5okmGQ6hEpMo4lLNoSrzqDje",
"transaction_code": null,
"transaction_type": "place"
}

By default, up to 500 transactions can be fetched in a single request. To learn how to request more records, see Paginate transactions.

Keeping up to date with Transactions

Transactions data is not static. As time passes, your users will make new transactions, and transactions they made in the past will change as they are processed by the financial institution. To learn more about how transactions are processed and can change, see Transaction states.

Plaid checks for updated Transactions data multiple times per day and uses webhooks to inform you of any changes so you can keep your app up to date. For more detail on how to listen and respond to these webhooks, see Transaction webhooks.

Next steps

To get started building with Transactions, see Add Transactions to your App.