transactionsGet
The /transactions/get endpoint allows developers to receive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype student; coverage may be limited). For transaction history from investments accounts, use the Investments endpoint instead. Transaction data is standardized across financial institutions, and in many cases transactions are linked to a clean name, entity type, location, and category. Similarly, account data is standardized and returned with a clean name, number, balance, and other meta information where available.
Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Transactions are not immutable and can also be removed altogether by the institution; a removed transaction will no longer appear in /transactions/get. For more details, see Pending and posted transactions.
Due to the potentially large number of transactions associated with an Item, results are paginated. Manipulate the count and offset parameters in conjunction with the total_transactions response body field to fetch all available transactions.
Data returned by /transactions/get will be the data available for the Item as of the most recent successful check for new transactions. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. An Item's status.transactions.last_successful_update field will show the timestamp of the most recent successful update. To force Plaid to check for new transactions, you can use the /transactions/refresh endpoint.
Note that data may not be immediately available to /transactions/get. Plaid will begin to prepare transactions data upon Item link, if Link was initialized with transactions, or upon the first call to /transactions/get, if it wasn't. To be alerted when transaction data is ready to be fetched, listen for the INITIAL_UPDATE and HISTORICAL_UPDATE webhooks. If no transaction history is ready when /transactions/get is called, it will return a PRODUCT_NOT_READY error.
Authorization
PLAID-CLIENT-ID PLAID-SECRET Plaid-Version In: header
In: header
In: header
Request Body
application/json
TransactionsGetRequest defines the request schema for /transactions/get
Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.
An optional object to be used with the request. If specified, options must not be null.
The access token associated with the Item data is being requested for.
Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.
The earliest date for which data should be returned. Dates should be formatted as YYYY-MM-DD.
dateThe latest date for which data should be returned. Dates should be formatted as YYYY-MM-DD.
dateResponse Body
application/json
application/json
curl -X POST "https://example.com/transactions/get" \ -H "Content-Type: application/json" \ -d '{ "access_token": "string", "start_date": "2019-08-24", "end_date": "2019-08-24" }'{ "accounts": [ { "account_id": "BxBXxLj1m4HMXBm9WZZmCWVbPjX16EHwv99vp", "balances": { "available": 110, "current": 110, "iso_currency_code": "USD", "limit": null, "unofficial_currency_code": null }, "mask": "0000", "name": "Plaid Checking", "official_name": "Plaid Gold Standard 0% Interest Checking", "subtype": "checking", "type": "depository" } ], "transactions": [ { "account_id": "BxBXxLj1m4HMXBm9WZZmCWVbPjX16EHwv99vp", "amount": 2307.21, "iso_currency_code": "USD", "unofficial_currency_code": null, "category": [ "Shops", "Computers and Electronics" ], "category_id": "19013000", "check_number": null, "date": "2017-01-29", "datetime": null, "authorized_date": "2017-01-27", "authorized_datetime": null, "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" } ], "item": { "available_products": [ "balance", "identity", "investments" ], "billed_products": [ "assets", "auth", "liabilities", "transactions" ], "consent_expiration_time": null, "error": null, "institution_id": "ins_3", "item_id": "eVBnVMp7zdTJLkRNr33Rs6zr7KNJqBFL9DrE6", "update_type": "background", "webhook": "https://www.genericwebhookurl.com/webhook" }, "total_transactions": 1, "request_id": "45QSn"}transactionsRefresh POST
`/transactions/refresh` is an optional endpoint for users of the Transactions product. It initiates an on-demand extraction to fetch the newest transactions for an Item. This on-demand extraction takes place in addition to the periodic extractions that automatically occur multiple times a day for any Transactions-enabled Item. If changes to transactions are discovered after calling `/transactions/refresh`, Plaid will fire a webhook: [`TRANSACTIONS_REMOVED`](https://plaid.com/docs/api/webhooks#deleted-transactions-detected) will be fired if any removed transactions are detected, and [`DEFAULT_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling `/transactions/get`. Access to `/transactions/refresh` in Production is specific to certain pricing plans. If you cannot access `/transactions/refresh` in Production, [contact Sales](https://www.plaid.com/contact) for assistance.
categoriesGet POST
Send a request to the `/categories/get` endpoint to get detailed information on categories returned by Plaid. This endpoint does not require authentication.

