Plaid logo
Docs
ALL DOCS

Transactions

  • Introduction to Transactions
  • Add Transactions to your app
  • Transactions webhooks
  • Transaction states
  • Transactions Sync migration guide
  • Troubleshooting
Plaid logo
Docs
Plaid.com
Get API keys
Open nav

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

API Reference

View Transactions requests, responses, and example code

View Transactions API

Quickstart

Learn about Plaid's key concepts and run starter code

Get started

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 for depository type accounts such as checking and savings accounts, credit type accounts such as credit cards, and student loan accounts. For transaction history from investment accounts, use Plaid's Investments product.

Transactions data available via /transactions/sync 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.


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

Transactions updates

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 notify you of any changes so you can keep your app up to date. For more detail on how to listen and respond to transaction update webhooks, see Transaction webhooks.

The frequency of transactions update checks will depend on the institution. To learn when an Item was last checked for updates, you can view the Item in the Item Debugger. If you would like to display this information in your app's UI to help users understand the freshness of their data, it can also be retrieved via API, using the /item/get endpoint.

You can also request an update on-demand via the /transactions/refresh endpoint, which is available as an add-on for Transactions customers. To request access to this endpoint, submit a product access request or contact your Plaid account manager.

Recurring transactions

If your app involves personal financial management functionality, you may want to view a summary of a user's inflows and outflows. The /transactions/recurring/get endpoint provides a summary of the recurring outflow and inflow streams and includes insights about each recurring stream including the category, merchant, last amount, and more. /transactions/recurring/get is available as an add-on for Transactions customers in the US, Canada, and UK. To request access to this endpoint, submit a product access request or contact your Plaid account manager.

Sample app demo and code

Try out the Pattern Demo for a demonstration of a sample app that uses Plaid's Transactions product for the personal financial management use case to calculate and display a customer's net worth and spending habits and allows them to link multiple financial institutions.

For a more robust example of an app that incorporates transactions, along with sample code for transactions reconciliation, see the Node-based Plaid Pattern sample app.

Updating your app

If you've already built an app using Plaid's /transactions/get endpoint, see the Transactions Sync migration guide to learn about Plaid's latest Transactions API and how to simplify your integration by migrating to /transactions/sync.

Next steps

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

If you're ready to launch to Production, see the Launch checklist.

Launch checklist

Recommended steps to take before launching in Production

Launch
Was this helpful?
Developer community
GitHub
GitHub
Stack Overflow
Stack Overflow
YouTube
YouTube
Twitter
Twitter
Discord
Discord