Plaid logo
Docs
ALL DOCS

API

  • Overview
  • Libraries
  • API versioning
  • Postman Collection
  • Webhooks
Payments and Funding
  • Auth
  • Balance
  • Identity
  • Signal
  • Transfer
  • Investments Move
  • Payment Initiation
  • Virtual Accounts
Financial Insights
  • Transactions
  • Investments
  • Liabilities
  • Enrich
KYC/AML and anti-fraud
  • Look up Dashboard users
  • Identity Verification
  • Monitor
  • Beacon (beta)
Instant Onboarding
  • Layer
Credit and Underwriting
  • Consumer Report (by Plaid Check)
  • Assets
  • Statements
  • Income
Fundamentals
  • Items
  • Accounts
  • Institutions
  • Sandbox
  • Link
  • Users
  • Consent
  • Network
Partnerships
  • Processor tokens
  • Processor partners
  • Reseller partners
Plaid logo
Docs
Close search modal
Ask Bill!
Ask Bill!
Hi! I'm Bill! You can ask me all about the Plaid API. Try asking questions like:
  • What's the difference between Plaid Identity and IDV?
  • How do I set up a webhook for IDV?
  • Can you show code for getting transactions in Python?
Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might treat any other answer on the internet. This chat may be logged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy.
Plaid.com
Log in
Get API Keys
Open nav

Plaid Check

API reference for Plaid Check endpoints and webhooks

Endpoints
/cra/check_report/createGenerate a new Consumer Report for your user with the latest data
/cra/check_report/base_report/getRetrieve the base Consumer Report for your user
/cra/check_report/income_insights/getRetrieve cash flow insights from your user's banks
/cra/check_report/network_insights/getRetrieve connection insights from the Plaid network (beta)
/cra/check_report/partner_insights/getRetrieve cash flow insights from our partners
/cra/check_report/pdf/getRetrieve Consumer Reports in PDF format
/cra/monitoring_insights/getGet Cash Flow Updates (beta)
/cra/monitoring_insights/subscribeSubscribe to Cash Flow Updates (beta)
/cra/monitoring_insights/unsubscribeUnsubscribe from Cash Flow Updates (beta)
See also
/link/token/createCreate a token for initializing a Link session with Plaid Check
/user/createCreate a user ID and token for use with Plaid Check
/user/updateUpdate an existing user token to work with Plaid Check, or change user details
/user/removeRemoves the user and their relevant data
/user/items/getReturns Items associated with a user along with their corresponding statuses
/sandbox/cra/cashflow_updates/updateManually trigger a cashflow insights update for a user (Sandbox only)
Webhooks
CHECK_REPORT_READYA Consumer Report is ready to be retrieved
CHECK_REPORT_FAILEDPlaid Check failed to create a report
Cash Flow Updates (beta) webhooks
INSIGHTS_UPDATEDInsights have been refreshed
LARGE_DEPOSIT_DETECTEDA large deposit over $5000 has been detected
LOW_BALANCE_DETECTEDCurrent balance has crossed below $100
NEW_LOAN_PAYMENT_DETECTEDA new loan payment has been detected
NSF_OVERDRAFT_DETECTEDAn overdraft transaction has been detected

/cra/check_report/create

Create a Consumer Report

/cra/check_report/create creates a Consumer Report powered by Plaid Check. You can call this endpoint to create a new report if consumer_report_permissible_purpose was omitted during Link token creation. If you did provide a consumer_report_permissible_purpose during Link token creation, then Plaid Check will automatically begin creating a Consumer Report once the user completes the Link process, and it is not necessary to call /cra/check_report/create before retrieving the report.
/cra/check_report/create can also be used to refresh data in an existing report. A Consumer Report will last for 24 hours before expiring; you should call any /get endpoints on the report before it expires. If a report expires, you can call /cra/check_report/create again to re-generate it. Note that refreshing or regenerating a report is a billable event.

cra/check_report/create

Request fields

client_id
string
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.
secret
string
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.
user_token
requiredstring
The user token associated with the User data is being requested for.
webhook
requiredstring
The destination URL to which webhooks will be sent
days_requested
requiredinteger
The number of days of data to request for the report. Default value is 365; maximum is 731; minimum is 180. If a value lower than 180 is provided, a minimum of 180 days of history will be requested.

Maximum: 731
days_required
integer
The minimum number of days of data required for the report to be successfully generated.
client_report_id
string
Client-generated identifier, which can be used by lenders to track loan applications.
products
[string]
Specifies a list of products that will be eagerly generated when creating the report (in addition to the Base Report, which is always eagerly generated). These products will be made available before a success webhook is sent. Use this option to minimize response latency for product /get endpoints. Note that specifying cra_partner_insights in this field will trigger a billable event. Other products are not billed until the respective reports are fetched via product-specific /get endpoints.

Min items: 1
Possible values: cra_income_insights, cra_cashflow_insights, cra_partner_insights, cra_network_insights
base_report
object
Defines configuration options to generate a Base Report
client_report_id
deprecatedstring
Client-generated identifier, which can be used by lenders to track loan applications. This field is deprecated. Use the client_report_id field at the top level of the request instead.
cashflow_insights
object
Defines configuration options to generate Cashflow Insights
attributes_version
string
The version of cashflow attributes

Possible values: v1.0
partner_insights
object
Defines configuration options to generate Partner Insights
prism_products
[string]
The specific Prism Data products to return. If none are passed in, then all products will be returned.

Possible values: insights, scores
prism_versions
object
The versions of Prism products to evaluate
firstdetect
string
The version of Prism FirstDetect. If not specified, will default to v3.

Possible values: 3, null
cashscore
string
The version of Prism CashScore. If not specified, will default to v3.

Possible values: 3_lite, 3, null
insights
string
The version of Prism Insights. If not specified, will default to v3.

Possible values: 3, null
consumer_report_permissible_purpose
requiredstring
Describes the reason you are generating a Consumer Report for this user.
ACCOUNT_REVIEW_CREDIT: In connection with a consumer credit transaction for the review or collection of an account pursuant to FCRA Section 604(a)(3)(A).
ACCOUNT_REVIEW_NON_CREDIT: For a legitimate business need of the information to review a non-credit account provided primarily for personal, family, or household purposes to determine whether the consumer continues to meet the terms of the account pursuant to FCRA Section 604(a)(3)(F)(2).
EMPLOYMENT: For employment purposes pursuant to FCRA 604(a)(3)(B), including hiring, retention and promotion purposes.
EXTENSION_OF_CREDIT: In connection with a credit transaction initiated by and involving the consumer pursuant to FCRA Section 604(a)(3)(A).
LEGITIMATE_BUSINESS_NEED_TENANT_SCREENING: For a legitimate business need in connection with a business transaction initiated by the consumer primarily for personal, family, or household purposes in connection with a property rental assessment pursuant to FCRA Section 604(a)(3)(F)(i).
LEGITIMATE_BUSINESS_NEED_OTHER: For a legitimate business need in connection with a business transaction made primarily for personal, family, or household initiated by the consumer pursuant to FCRA Section 604(a)(3)(F)(i).
WRITTEN_INSTRUCTION_PREQUALIFICATION: In accordance with the written instructions of the consumer pursuant to FCRA Section 604(a)(2), to evaluate an application’s profile to make an offer to the consumer.
WRITTEN_INSTRUCTION_OTHER: In accordance with the written instructions of the consumer pursuant to FCRA Section 604(a)(2), such as when an individual agrees to act as a guarantor or assumes personal liability for a consumer, business, or commercial loan.


Possible values: ACCOUNT_REVIEW_CREDIT, ACCOUNT_REVIEW_NON_CREDIT, EMPLOYMENT, EXTENSION_OF_CREDIT, LEGITIMATE_BUSINESS_NEED_TENANT_SCREENING, LEGITIMATE_BUSINESS_NEED_OTHER, WRITTEN_INSTRUCTION_PREQUALIFICATION, WRITTEN_INSTRUCTION_OTHER
Select Language
1try {
2 const response = await client.craCheckReportCreate({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 webhook: 'https://sample-web-hook.com',
5 days_requested: 365,
6 consumer_report_permissible_purpose: 'LEGITIMATE_BUSINESS_NEED_OTHER',
7 });
8} catch (error) {
9 // handle error
10}
cra/check_report/create

Response fields and example

request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
1{
2 "request_id": "LhQf0THi8SH1yJm"
3}
Was this helpful?

/cra/check_report/base_report/get

Retrieve a Base Report

This endpoint allows you to retrieve the Base Report for your user, allowing you to receive comprehensive bank account and cash flow data. You should call this endpoint after you've received a CHECK_REPORT_READY webhook, either after the Link session for the user or after calling /cra/check_report/create. If the most recent consumer report for the user doesn't have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling /cra/check_report/create.

cra/check_report/base_report/get

Request fields

client_id
string
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.
secret
string
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.
user_token
string
The user token associated with the User data is being requested for.
Select Language
1try {
2 const response = await client.craCheckReportBaseReportGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 });
5} catch (error) {
6 // handle error
7}
cra/check_report/base_report/get

Response fields and example

report
object
An object representing a Base Report
report_id
string
A unique ID identifying an Base Report. Like all Plaid identifiers, this ID is case sensitive.
date_generated
string
The date and time when the Base Report was created, in ISO 8601 format (e.g. "2018-04-12T03:32:11Z").

Format: date-time
days_requested
number
The number of days of transaction history requested.
client_report_id
nullablestring
Client-generated identifier, which can be used by lenders to track loan applications.
items
[object]
Data returned by Plaid about each of the Items included in the Base Report.
institution_name
string
The full financial institution name associated with the Item.
institution_id
string
The id of the financial institution associated with the Item.
date_last_updated
string
The date and time when this Item’s data was last retrieved from the financial institution, in ISO 8601 format.

Format: date-time
item_id
string
The item_id of the Item associated with this webhook, warning, or error
accounts
[object]
Data about each of the accounts open on the Item.
account_id
string
Plaid’s unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new account_id will be assigned to the account.
If an account with a specific account_id disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API.
Like all Plaid identifiers, the account_id is case sensitive.
balances
object
Base Report information about an account's balances
available
nullablenumber
The amount of funds available to be withdrawn from the account, as determined by the financial institution.
For credit-type accounts, the available balance typically equals the limit less the current balance, less any pending outflows plus any pending inflows.
For depository-type accounts, the available balance typically equals the current balance less any pending outflows plus any pending inflows. For depository-type accounts, the available balance does not include the overdraft limit.
For investment-type accounts (or brokerage-type accounts for API versions 2018-05-22 and earlier), the available balance is the total cash available to withdraw as presented by the institution.
Note that not all institutions calculate the available balance. In the event that available balance is unavailable, Plaid will return an available balance value of null.
Available balance may be cached and is not guaranteed to be up-to-date in realtime unless the value was returned by /accounts/balance/get.
If current is null this field is guaranteed not to be null.


Format: double
current
nullablenumber
The total amount of funds in or owed by the account.
For credit-type accounts, a positive balance indicates the amount owed; a negative amount indicates the lender owing the account holder.
For loan-type accounts, the current balance is the principal remaining on the loan, except in the case of student loan accounts at Sallie Mae (ins_116944). For Sallie Mae student loans, the account's balance includes both principal and any outstanding interest.
For investment-type accounts (or brokerage-type accounts for API versions 2018-05-22 and earlier), the current balance is the total value of assets as presented by the institution.
Note that balance information may be cached unless the value was returned by /accounts/balance/get; if the Item is enabled for Transactions, the balance will be at least as recent as the most recent Transaction update. If you require realtime balance information, use the available balance as provided by /accounts/balance/get.
When returned by /accounts/balance/get, this field may be null. When this happens, available is guaranteed not to be null.


Format: double
limit
nullablenumber
For credit-type accounts, this represents the credit limit.
For depository-type accounts, this represents the pre-arranged overdraft limit, which is common for current (checking) accounts in Europe.
In North America, this field is typically only available for credit-type accounts.


Format: double
iso_currency_code
nullablestring
The ISO-4217 currency code of the balance. Always null if unofficial_currency_code is non-null.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
See the currency code schema for a full listing of supported unofficial_currency_codes.
last_updated_datetime
nullablestring
Timestamp in ISO 8601 format (YYYY-MM-DDTHH:mm:ssZ) indicating the oldest acceptable balance when making a request to /accounts/balance/get.
This field is only used and expected when the institution is ins_128026 (Capital One) and the Item contains one or more accounts with a non-depository account type, in which case a value must be provided or an INVALID_REQUEST error with the code of INVALID_FIELD will be returned. For Capital One depository accounts as well as all other account types on all other institutions, this field is ignored. See account type schema for a full list of account types.
If the balance that is pulled is older than the given timestamp for Items with this field required, an INVALID_REQUEST error with the code of LAST_UPDATED_DATETIME_OUT_OF_RANGE will be returned with the most recent timestamp for the requested account contained in the response.


Format: date-time
average_balance
nullablenumber
The average historical balance for the entire report

Format: double
average_monthly_balances
[object]
The average historical balance of each calendar month
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).
average_balance
object
This contains an amount, denominated in the currency specified by either iso_currency_code or unofficial_currency_code
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
most_recent_thirty_day_average_balance
nullablenumber
The average historical balance from the most recent 30 days

Format: double
consumer_disputes
[object]
The information about previously submitted valid dispute statements by the consumer
consumer_dispute_id
deprecatedstring
(Deprecated) A unique identifier (UUID) of the consumer dispute that can be used for troubleshooting
dispute_field_create_date
string
Date of the disputed field (e.g. transaction date), in an ISO 8601 format (YYYY-MM-DD)

Format: date
category
string
Type of data being disputed by the consumer

Possible values: TRANSACTION, BALANCE, IDENTITY, OTHER
statement
string
Text content of dispute
mask
nullablestring
The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user.
metadata
object
Base Report metadata about the extracted account.
start_date
nullablestring
The date of the earliest extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
end_date
nullablestring
The date of the most recent extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
name
string
The name of the account, either assigned by the user or by the financial institution itself
official_name
nullablestring
The official name of the account as given by the financial institution
type
string
investment: Investment account. In API versions 2018-05-22 and earlier, this type is called brokerage instead.
credit: Credit card
depository: Depository account
loan: Loan account
other: Non-specified account type
See the Account type schema for a full listing of account types and corresponding subtypes.


Possible values: investment, credit, depository, loan, brokerage, other
subtype
nullablestring
See the Account type schema for a full listing of account types and corresponding subtypes.

Possible values: 401a, 401k, 403B, 457b, 529, auto, brokerage, business, cash isa, cash management, cd, checking, commercial, construction, consumer, credit card, crypto exchange, ebt, education savings account, fixed annuity, gic, health reimbursement arrangement, home equity, hsa, isa, ira, keogh, lif, life insurance, line of credit, lira, loan, lrif, lrsp, money market, mortgage, mutual fund, non-custodial wallet, non-taxable brokerage account, other, other insurance, other annuity, overdraft, paypal, payroll, pension, prepaid, prif, profit sharing plan, rdsp, resp, retirement, rlif, roth, roth 401k, rrif, rrsp, sarsep, savings, sep ira, simple ira, sipp, stock plan, student, thrift savings plan, tfsa, trust, ugma, utma, variable annuity
days_available
number
The duration of transaction history available within this report for this Item, typically defined as the time since the date of the earliest transaction in that account. Only returned by Base Report endpoints.
transactions
[object]
Transaction history associated with the account. Only returned by Base Report endpoints. Transaction history returned by endpoints such as /transactions/get or /investments/transactions/get will be returned in the top-level transactions field instead.
account_id
string
The ID of the account in which this transaction occurred.
amount
number
The settled value of the transaction, denominated in the transaction's currency, as stated in iso_currency_code or unofficial_currency_code. Positive values when money moves out of the account; negative values when money moves in. For example, debit card purchases are positive; credit card payments, direct deposits, and refunds are negative.

Format: double
iso_currency_code
nullablestring
The ISO-4217 currency code of the transaction. Always null if unofficial_currency_code is non-null.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the transaction. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
See the currency code schema for a full listing of supported unofficial_currency_codes.
original_description
nullablestring
The string returned by the financial institution to describe the transaction.
credit_category
nullableobject
Information describing the intent of the transaction. Most relevant for credit use cases, but not limited to such use cases.
See the taxonomy csv file for a full list of credit categories.
primary
string
A high level category that communicates the broad category of the transaction.
detailed
string
A granular category conveying the transaction's intent. This field can also be used as a unique identifier for the category.
check_number
nullablestring
The check number of the transaction. This field is only populated for check transactions.
date
string
For pending transactions, the date that the transaction occurred; for posted transactions, the date that the transaction posted. Both dates are returned in an ISO 8601 format ( YYYY-MM-DD ).

Format: date
date_transacted
nullablestring
The date on which the transaction took place, in IS0 8601 format.
location
object
A representation of where a transaction took place
address
nullablestring
The street address where the transaction occurred.
city
nullablestring
The city where the transaction occurred.
region
nullablestring
The region or state where the transaction occurred. In API versions 2018-05-22 and earlier, this field is called state.
postal_code
nullablestring
The postal code where the transaction occurred. In API versions 2018-05-22 and earlier, this field is called zip.
country
nullablestring
The ISO 3166-1 alpha-2 country code where the transaction occurred.
lat
nullablenumber
The latitude where the transaction occurred.

Format: double
lon
nullablenumber
The longitude where the transaction occurred.

Format: double
store_number
nullablestring
The merchant defined store number where the transaction occurred.
merchant_name
nullablestring
The merchant name, as enriched by Plaid from the name field. This is typically a more human-readable version of the merchant counterparty in the transaction. For some bank transactions (such as checks or account transfers) where there is no meaningful merchant name, this value will be null.
pending
boolean
When true, identifies the transaction as pending or unsettled. Pending transaction details (name, type, amount, category ID) may change before they are settled.
account_owner
nullablestring
The name of the account owner. This field is not typically populated and only relevant when dealing with sub-accounts.
transaction_id
string
The unique ID of the transaction. Like all Plaid identifiers, the transaction_id is case sensitive.
owners
[object]
Data returned by the financial institution about the account owner or owners. For business accounts, the name reported may be either the name of the individual or the name of the business, depending on the institution. Multiple owners on a single account will be represented in the same owner object, not in multiple owner objects within the array. This array can also be empty if no owners are found.
names
[string]
A list of names associated with the account by the financial institution. In the case of a joint account, Plaid will make a best effort to report the names of all account holders.
If an Item contains multiple accounts with different owner names, some institutions will report all names associated with the Item in each account's names array.
phone_numbers
[object]
A list of phone numbers associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution.
data
string
The phone number.
primary
boolean
When true, identifies the phone number as the primary number on an account.
type
string
The type of phone number.

Possible values: home, work, office, mobile, mobile1, other
emails
[object]
A list of email addresses associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution.
data
string
The email address.
primary
boolean
When true, identifies the email address as the primary email on an account.
type
string
The type of email account as described by the financial institution.

Possible values: primary, secondary, other
addresses
[object]
Data about the various addresses associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution.
data
object
Data about the components comprising an address.
city
nullablestring
The full city name
region
nullablestring
The region or state. In API versions 2018-05-22 and earlier, this field is called state. Example: "NC"
street
string
The full street address Example: "564 Main Street, APT 15"
postal_code
nullablestring
The postal code. In API versions 2018-05-22 and earlier, this field is called zip.
country
nullablestring
The ISO 3166-1 alpha-2 country code
primary
boolean
When true, identifies the address as the primary address on an account.
ownership_type
nullablestring
How an asset is owned.
association: Ownership by a corporation, partnership, or unincorporated association, including for-profit and not-for-profit organizations. individual: Ownership by an individual. joint: Joint ownership by multiple parties. trust: Ownership by a revocable or irrevocable trust.


Possible values: null, individual, joint, association, trust
account_insights
object
Calculated insights derived from transaction-level data.
oldest_transaction_date
nullablestring
Date of the earliest transaction in the base report for the account.

Format: date
most_recent_transaction_date
nullablestring
Date of the most recent transaction in the base report for the account.

Format: date
days_available
integer
Number of days days available in the base report for the account.
average_days_between_transactions
number
Average number of days between sequential transactions
longest_gaps_between_transactions
[object]
Longest gap between sequential transactions in a time period. This array can include multiple time periods.
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
days
nullableinteger
Largest number of days between sequential transactions for this time period.
number_of_inflows
[object]
The number of debits into the account. This array will be empty for non-depository accounts.
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
count
integer
The number of credits or debits out of the account for this time period.
average_inflow_amounts
[object]
Average amount of debit transactions into the account in a time period. This array will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
total_amount
object
This contains an amount, denominated in the currency specified by either iso_currency_code or unofficial_currency_code
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
number_of_outflows
[object]
The number of outflows from the account. This array will be empty for non-depository accounts.
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
count
integer
The number of credits or debits out of the account for this time period.
average_outflow_amounts
[object]
Average amount of transactions out of the account in a time period. This array will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
start_date
string
The start date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of this time period. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
total_amount
object
This contains an amount, denominated in the currency specified by either iso_currency_code or unofficial_currency_code
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
number_of_days_no_transactions
integer
Number of days with no transactions
attributes
object
Calculated attributes derived from transaction-level data.
is_primary_account
nullableboolean
Prediction indicator of whether the account is a primary account. Only one account per account type across the items connected will have a value of true.
primary_account_score
nullablenumber
Value ranging from 0-1. The higher the score, the more confident we are of the account being the primary account.
nsf_overdraft_transactions_count
integer
The number of NSF and overdraft fee transactions in the time range for the report in the given account.
nsf_overdraft_transactions_count_30d
integer
The number of NSF and overdraft fee transactions in the last 30 days for a given account.
nsf_overdraft_transactions_count_60d
integer
The number of NSF and overdraft fee transactions in the last 60 days for a given account.
nsf_overdraft_transactions_count_90d
integer
The number of NSF and overdraft fee transactions in the last 90 days for a given account.
total_inflow_amount
nullableobject
Total amount of debit transactions into the account in the time period of the report. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_30d
nullableobject
Total amount of debit transactions into the account in the last 30 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_60d
nullableobject
Total amount of debit transactions into the account in the last 60 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_90d
nullableobject
Total amount of debit transactions into the account in the last 90 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount
nullableobject
Total amount of credit transactions into the account in the time period of the report. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_30d
nullableobject
Total amount of credit transactions into the account in the last 30 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_60d
nullableobject
Total amount of credit transactions into the account in the last 60 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_90d
nullableobject
Total amount of credit transactions into the account in the last 90 days. This field will be empty for non-depository accounts. This field only takes into account USD transactions from the account.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
attributes
object
Calculated attributes derived from transaction-level data, aggregated across accounts.
nsf_overdraft_transactions_count
integer
The number of NSF and overdraft fee transactions in the time range for the report in the given report.
nsf_overdraft_transactions_count_30d
integer
The number of NSF and overdraft fee transactions in the last 30 days for a given report.
nsf_overdraft_transactions_count_60d
integer
The number of NSF and overdraft fee transactions in the last 60 days for a given report.
nsf_overdraft_transactions_count_90d
integer
The number of NSF and overdraft fee transactions in the last 90 days for a given report.
total_inflow_amount
nullableobject
Total amount of debit transactions into the report's accounts in the time period of the report. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_30d
nullableobject
Total amount of debit transactions into the report's accounts in the last 30 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_60d
nullableobject
Total amount of debit transactions into the report's accounts in the last 60 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_inflow_amount_90d
nullableobject
Total amount of debit transactions into the report's account in the last 90 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount
nullableobject
Total amount of credit transactions into the report's accounts in the time period of the report. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_30d
nullableobject
Total amount of credit transactions into the report's accounts in the last 30 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_60d
nullableobject
Total amount of credit transactions into the report's accounts in the last 60 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
total_outflow_amount_90d
nullableobject
Total amount of credit transactions into the report's accounts in the last 90 days. This field only takes into account USD transactions from the accounts.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
warnings
[object]
If the Base Report generation was successful but identity information cannot be returned, this array will contain information about the errors causing identity information to be missing
warning_type
string
The warning type, which will always be BASE_REPORT_WARNING
warning_code
string
The warning code identifies a specific kind of warning. IDENTITY_UNAVAILABLE: Account-owner information is not available. TRANSACTIONS_UNAVAILABLE: Transactions information associated with Credit and Depository accounts are unavailable. USER_FRAUD_ALERT: The User has placed a fraud alert on their Plaid Check consumer report due to suspected fraud. Note: when a fraud alert is in place, the recipient of the consumer report has an obligation to verify the consumer’s identity.

Possible values: IDENTITY_UNAVAILABLE, TRANSACTIONS_UNAVAILABLE, USER_FRAUD_ALERT
cause
nullableobject
An error object and associated item_id used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items.
error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INVALID_REQUEST, INVALID_RESULT, INVALID_INPUT, INSTITUTION_ERROR, RATE_LIMIT_EXCEEDED, API_ERROR, ITEM_ERROR, ASSET_REPORT_ERROR, RECAPTCHA_ERROR, OAUTH_ERROR, PAYMENT_ERROR, BANK_TRANSFER_ERROR, INCOME_VERIFICATION_ERROR, MICRODEPOSITS_ERROR, SANDBOX_ERROR, PARTNER_ERROR, TRANSACTIONS_ERROR, TRANSACTION_ERROR, TRANSFER_ERROR, CHECK_REPORT_ERROR, CONSUMER_REPORT_ERROR
error_code
string
The particular error code. Safe for programmatic use.
error_code_reason
nullablestring
The specific reason for the error code. Currently, reasons are only supported OAuth-based item errors; null will be returned otherwise. Safe for programmatic use.
Possible values: OAUTH_INVALID_TOKEN: The user’s OAuth connection to this institution has been invalidated.
OAUTH_CONSENT_EXPIRED: The user's access consent for this OAuth connection to this institution has expired.
OAUTH_USER_REVOKED: The user’s OAuth connection to this institution is invalid because the user revoked their connection.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
nullablestring
A user-friendly representation of the error code. null if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In this product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
causes will be provided for the error_type ASSET_REPORT_ERROR or CHECK_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
nullableinteger
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
nullablestring
Suggested steps for resolving the error
item_id
string
The item_id of the Item associated with this webhook, warning, or error
request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
1{
2 "report": {
3 "date_generated": "2024-07-16T01:52:42.912331716Z",
4 "days_requested": 365,
5 "items": [
6 {
7 "accounts": [
8 {
9 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
10 "account_insights": {
11 "average_days_between_transactions": 0.15,
12 "average_inflow_amount": [
13 {
14 "end_date": "2024-07-31",
15 "start_date": "2024-07-01",
16 "total_amount": {
17 "amount": 1077.93,
18 "iso_currency_code": "USD",
19 "unofficial_currency_code": null
20 }
21 }
22 ],
23 "average_inflow_amounts": [
24 {
25 "end_date": "2024-07-31",
26 "start_date": "2024-07-01",
27 "total_amount": {
28 "amount": 1077.93,
29 "iso_currency_code": "USD",
30 "unofficial_currency_code": null
31 }
32 },
33 {
34 "end_date": "2024-08-31",
35 "start_date": "2024-08-01",
36 "total_amount": {
37 "amount": 1076.93,
38 "iso_currency_code": "USD",
39 "unofficial_currency_code": null
40 }
41 }
42 ],
43 "average_outflow_amount": [
44 {
45 "end_date": "2024-07-31",
46 "start_date": "2024-07-01",
47 "total_amount": {
48 "amount": 34.95,
49 "iso_currency_code": "USD",
50 "unofficial_currency_code": null
51 }
52 }
53 ],
54 "average_outflow_amounts": [
55 {
56 "end_date": "2024-07-31",
57 "start_date": "2024-07-01",
58 "total_amount": {
59 "amount": 34.95,
60 "iso_currency_code": "USD",
61 "unofficial_currency_code": null
62 }
63 },
64 {
65 "end_date": "2024-08-31",
66 "start_date": "2024-08-01",
67 "total_amount": {
68 "amount": 0,
69 "iso_currency_code": "USD",
70 "unofficial_currency_code": null
71 }
72 }
73 ],
74 "days_available": 365,
75 "longest_gap_between_transactions": [
76 {
77 "days": 1,
78 "end_date": "2024-07-31",
79 "start_date": "2024-07-01"
80 }
81 ],
82 "longest_gaps_between_transactions": [
83 {
84 "days": 1,
85 "end_date": "2024-07-31",
86 "start_date": "2024-07-01"
87 },
88 {
89 "days": 2,
90 "end_date": "2024-08-31",
91 "start_date": "2024-08-01"
92 }
93 ],
94 "most_recent_transaction_date": "2024-07-16",
95 "number_of_days_no_transactions": 0,
96 "number_of_inflows": [
97 {
98 "count": 1,
99 "end_date": "2024-07-31",
100 "start_date": "2024-07-01"
101 }
102 ],
103 "number_of_outflows": [
104 {
105 "count": 27,
106 "end_date": "2024-07-31",
107 "start_date": "2024-07-01"
108 }
109 ],
110 "oldest_transaction_date": "2024-07-12"
111 },
112 "balances": {
113 "available": 5000,
114 "average_balance": 4956.12,
115 "average_monthly_balances": [
116 {
117 "average_balance": {
118 "amount": 4956.12,
119 "iso_currency_code": "USD",
120 "unofficial_currency_code": null
121 },
122 "end_date": "2024-07-31",
123 "start_date": "2024-07-01"
124 }
125 ],
126 "current": 5000,
127 "iso_currency_code": "USD",
128 "limit": null,
129 "most_recent_thirty_day_average_balance": 4956.125,
130 "unofficial_currency_code": null
131 },
132 "consumer_disputes": [],
133 "days_available": 365,
134 "mask": "1208",
135 "metadata": {
136 "start_date": "2024-01-01",
137 "end_date": "2024-07-16"
138 },
139 "name": "Checking",
140 "official_name": "Plaid checking",
141 "owners": [
142 {
143 "addresses": [
144 {
145 "data": {
146 "city": "Malakoff",
147 "country": "US",
148 "postal_code": "14236",
149 "region": "NY",
150 "street": "2992 Cameron Road"
151 },
152 "primary": true
153 },
154 {
155 "data": {
156 "city": "San Matias",
157 "country": "US",
158 "postal_code": "93405-2255",
159 "region": "CA",
160 "street": "2493 Leisure Lane"
161 },
162 "primary": false
163 }
164 ],
165 "emails": [
166 {
167 "data": "accountholder0@example.com",
168 "primary": true,
169 "type": "primary"
170 },
171 {
172 "data": "accountholder1@example.com",
173 "primary": false,
174 "type": "secondary"
175 },
176 {
177 "data": "extraordinarily.long.email.username.123456@reallylonghostname.com",
178 "primary": false,
179 "type": "other"
180 }
181 ],
182 "names": [
183 "Alberta Bobbeth Charleson"
184 ],
185 "phone_numbers": [
186 {
187 "data": "+1 111-555-3333",
188 "primary": false,
189 "type": "home"
190 },
191 {
192 "data": "+1 111-555-4444",
193 "primary": false,
194 "type": "work"
195 },
196 {
197 "data": "+1 111-555-5555",
198 "primary": false,
199 "type": "mobile"
200 }
201 ]
202 }
203 ],
204 "ownership_type": null,
205 "subtype": "checking",
206 "transactions": [
207 {
208 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
209 "account_owner": null,
210 "amount": 37.07,
211 "check_number": null,
212 "credit_category": {
213 "detailed": "GENERAL_MERCHANDISE_ONLINE_MARKETPLACES",
214 "primary": "GENERAL_MERCHANDISE"
215 },
216 "date": "2024-07-12",
217 "date_posted": "2024-07-12T00:00:00Z",
218 "date_transacted": "2024-07-12",
219 "iso_currency_code": "USD",
220 "location": {
221 "address": null,
222 "city": null,
223 "country": null,
224 "lat": null,
225 "lon": null,
226 "postal_code": null,
227 "region": null,
228 "state": null,
229 "store_number": null,
230 "zip": null
231 },
232 "merchant_name": "Amazon",
233 "original_description": "AMZN Mktp US*11111111 Amzn.com/bill WA AM",
234 "pending": false,
235 "transaction_id": "XA7ZLy8rXzt7D3j9B6LMIgv5VxyQkAhbKjzmp",
236 "unofficial_currency_code": null
237 },
238 {
239 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
240 "account_owner": null,
241 "amount": 51.61,
242 "check_number": null,
243 "credit_category": {
244 "detailed": "DINING_DINING",
245 "primary": "DINING"
246 },
247 "date": "2024-07-12",
248 "date_posted": "2024-07-12T00:00:00Z",
249 "date_transacted": "2024-07-12",
250 "iso_currency_code": "USD",
251 "location": {
252 "address": null,
253 "city": null,
254 "country": null,
255 "lat": null,
256 "lon": null,
257 "postal_code": null,
258 "region": null,
259 "state": null,
260 "store_number": null,
261 "zip": null
262 },
263 "merchant_name": "Domino's",
264 "original_description": "DOMINO's XXXX 111-222-3333",
265 "pending": false,
266 "transaction_id": "VEPeMbWqRluPVZLQX4MDUkKRw41Ljzf9gyLBW",
267 "unofficial_currency_code": null
268 },
269 {
270 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
271 "account_owner": null,
272 "amount": 7.55,
273 "check_number": null,
274 "credit_category": {
275 "detailed": "GENERAL_MERCHANDISE_FURNITURE_AND_HARDWARE",
276 "primary": "GENERAL_MERCHANDISE"
277 },
278 "date": "2024-07-12",
279 "date_posted": "2024-07-12T00:00:00Z",
280 "date_transacted": "2024-07-12",
281 "iso_currency_code": "USD",
282 "location": {
283 "address": null,
284 "city": "Chicago",
285 "country": null,
286 "lat": null,
287 "lon": null,
288 "postal_code": null,
289 "region": null,
290 "state": null,
291 "store_number": null,
292 "zip": null
293 },
294 "merchant_name": "IKEA",
295 "original_description": "IKEA CHICAGO",
296 "pending": false,
297 "transaction_id": "6GQZARgvroCAE1eW5wpQT7w3oB6nvzi8DKMBa",
298 "unofficial_currency_code": null
299 },
300 {
301 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
302 "account_owner": null,
303 "amount": 12.87,
304 "check_number": null,
305 "credit_category": {
306 "detailed": "GENERAL_MERCHANDISE_SPORTING_GOODS",
307 "primary": "GENERAL_MERCHANDISE"
308 },
309 "date": "2024-07-12",
310 "date_posted": "2024-07-12T00:00:00Z",
311 "date_transacted": "2024-07-12",
312 "iso_currency_code": "USD",
313 "location": {
314 "address": null,
315 "city": "Redlands",
316 "country": null,
317 "lat": null,
318 "lon": null,
319 "postal_code": null,
320 "region": "CA",
321 "state": "CA",
322 "store_number": null,
323 "zip": null
324 },
325 "merchant_name": "Nike",
326 "original_description": "NIKE REDLANDS CA",
327 "pending": false,
328 "transaction_id": "DkbmlP8BZxibzADqNplKTeL8aZJVQ1c3WR95z",
329 "unofficial_currency_code": null
330 },
331 {
332 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
333 "account_owner": null,
334 "amount": 44.21,
335 "check_number": null,
336 "credit_category": {
337 "detailed": "DINING_DINING",
338 "primary": "DINING"
339 },
340 "date": "2024-07-12",
341 "date_posted": "2024-07-12T00:00:00Z",
342 "date_transacted": "2024-07-12",
343 "iso_currency_code": "USD",
344 "location": {
345 "address": null,
346 "city": null,
347 "country": null,
348 "lat": null,
349 "lon": null,
350 "postal_code": null,
351 "region": null,
352 "state": null,
353 "store_number": null,
354 "zip": null
355 },
356 "merchant_name": null,
357 "original_description": "POKE BROS * POKE BRO IL",
358 "pending": false,
359 "transaction_id": "RpdN7W8GmRSdjZB9Jm7ATj4M86vdnktapkrgL",
360 "unofficial_currency_code": null
361 },
362 {
363 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
364 "account_owner": null,
365 "amount": 36.82,
366 "check_number": null,
367 "credit_category": {
368 "detailed": "GENERAL_MERCHANDISE_DISCOUNT_STORES",
369 "primary": "GENERAL_MERCHANDISE"
370 },
371 "date": "2024-07-13",
372 "date_posted": "2024-07-13T00:00:00Z",
373 "date_transacted": "2024-07-13",
374 "iso_currency_code": "USD",
375 "location": {
376 "address": null,
377 "city": null,
378 "country": null,
379 "lat": null,
380 "lon": null,
381 "postal_code": null,
382 "region": null,
383 "state": null,
384 "store_number": null,
385 "zip": null
386 },
387 "merchant_name": "Family Dollar",
388 "original_description": "FAMILY DOLLAR",
389 "pending": false,
390 "transaction_id": "5AeQWvo5KLtAD9wNL68PTdAgPE7VNWf5Kye1G",
391 "unofficial_currency_code": null
392 },
393 {
394 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
395 "account_owner": null,
396 "amount": 13.27,
397 "check_number": null,
398 "credit_category": {
399 "detailed": "FOOD_RETAIL_GROCERIES",
400 "primary": "FOOD_RETAIL"
401 },
402 "date": "2024-07-13",
403 "date_posted": "2024-07-13T00:00:00Z",
404 "date_transacted": "2024-07-13",
405 "iso_currency_code": "USD",
406 "location": {
407 "address": null,
408 "city": null,
409 "country": null,
410 "lat": null,
411 "lon": null,
412 "postal_code": null,
413 "region": null,
414 "state": null,
415 "store_number": null,
416 "zip": null
417 },
418 "merchant_name": "Instacart",
419 "original_description": "INSTACART HTTPSINSTACAR CA",
420 "pending": false,
421 "transaction_id": "Jjlr3MEVg1HlKbdkZj39ij5a7eg9MqtB6MWDo",
422 "unofficial_currency_code": null
423 },
424 {
425 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
426 "account_owner": null,
427 "amount": 36.03,
428 "check_number": null,
429 "credit_category": {
430 "detailed": "DINING_DINING",
431 "primary": "DINING"
432 },
433 "date": "2024-07-13",
434 "date_posted": "2024-07-13T00:00:00Z",
435 "date_transacted": "2024-07-13",
436 "iso_currency_code": "USD",
437 "location": {
438 "address": null,
439 "city": null,
440 "country": null,
441 "lat": null,
442 "lon": null,
443 "postal_code": null,
444 "region": null,
445 "state": null,
446 "store_number": null,
447 "zip": null
448 },
449 "merchant_name": null,
450 "original_description": "POKE BROS * POKE BRO IL",
451 "pending": false,
452 "transaction_id": "kN9KV7yAZJUMPn93KDXqsG9MrpjlyLUL6Dgl8",
453 "unofficial_currency_code": null
454 },
455 {
456 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
457 "account_owner": null,
458 "amount": 54.74,
459 "check_number": null,
460 "credit_category": {
461 "detailed": "FOOD_RETAIL_GROCERIES",
462 "primary": "FOOD_RETAIL"
463 },
464 "date": "2024-07-13",
465 "date_posted": "2024-07-13T00:00:00Z",
466 "date_transacted": "2024-07-13",
467 "iso_currency_code": "USD",
468 "location": {
469 "address": null,
470 "city": "Whittier",
471 "country": null,
472 "lat": null,
473 "lon": null,
474 "postal_code": null,
475 "region": "CA",
476 "state": "CA",
477 "store_number": null,
478 "zip": null
479 },
480 "merchant_name": "Smart & Final",
481 "original_description": "POS SMART AND FINAL 111 WHITTIER CA",
482 "pending": false,
483 "transaction_id": "lPvrweZAMqHDar43vwWKs547kLZVEzfpogGVJ",
484 "unofficial_currency_code": null
485 },
486 {
487 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
488 "account_owner": null,
489 "amount": 37.5,
490 "check_number": null,
491 "credit_category": {
492 "detailed": "DINING_DINING",
493 "primary": "DINING"
494 },
495 "date": "2024-07-13",
496 "date_posted": "2024-07-13T00:00:00Z",
497 "date_transacted": "2024-07-13",
498 "iso_currency_code": "USD",
499 "location": {
500 "address": "1627 N 24th St",
501 "city": "Phoenix",
502 "country": null,
503 "lat": null,
504 "lon": null,
505 "postal_code": "85008",
506 "region": "AZ",
507 "state": "AZ",
508 "store_number": null,
509 "zip": "85008"
510 },
511 "merchant_name": "Taqueria El Guerrerense",
512 "original_description": "TAQUERIA EL GUERRERO PHOENIX AZ",
513 "pending": false,
514 "transaction_id": "wka74WKqngiyJ3pj7dl5SbpLGQBZqyCPZRDbP",
515 "unofficial_currency_code": null
516 },
517 {
518 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
519 "account_owner": null,
520 "amount": 41.42,
521 "check_number": null,
522 "credit_category": {
523 "detailed": "GENERAL_MERCHANDISE_ONLINE_MARKETPLACES",
524 "primary": "GENERAL_MERCHANDISE"
525 },
526 "date": "2024-07-14",
527 "date_posted": "2024-07-14T00:00:00Z",
528 "date_transacted": "2024-07-14",
529 "iso_currency_code": "USD",
530 "location": {
531 "address": null,
532 "city": null,
533 "country": null,
534 "lat": null,
535 "lon": null,
536 "postal_code": null,
537 "region": null,
538 "state": null,
539 "store_number": null,
540 "zip": null
541 },
542 "merchant_name": "Amazon",
543 "original_description": "AMZN Mktp US*11111111 Amzn.com/bill WA AM",
544 "pending": false,
545 "transaction_id": "BBGnV4RkerHjn8WVavGyiJbQ95VNDaC4M56bJ",
546 "unofficial_currency_code": null
547 },
548 {
549 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
550 "account_owner": null,
551 "amount": -1077.93,
552 "check_number": null,
553 "credit_category": {
554 "detailed": "INCOME_OTHER",
555 "primary": "INCOME"
556 },
557 "date": "2024-07-14",
558 "date_posted": "2024-07-14T00:00:00Z",
559 "date_transacted": "2024-07-14",
560 "iso_currency_code": "USD",
561 "location": {
562 "address": null,
563 "city": null,
564 "country": null,
565 "lat": null,
566 "lon": null,
567 "postal_code": null,
568 "region": null,
569 "state": null,
570 "store_number": null,
571 "zip": null
572 },
573 "merchant_name": "Lyft",
574 "original_description": "LYFT TRANSFER",
575 "pending": false,
576 "transaction_id": "3Ej78yKJlQu1Abw7xzo4U4JR6pmwzntZlbKDK",
577 "unofficial_currency_code": null
578 },
579 {
580 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
581 "account_owner": null,
582 "amount": 47.17,
583 "check_number": null,
584 "credit_category": {
585 "detailed": "FOOD_RETAIL_GROCERIES",
586 "primary": "FOOD_RETAIL"
587 },
588 "date": "2024-07-14",
589 "date_posted": "2024-07-14T00:00:00Z",
590 "date_transacted": "2024-07-14",
591 "iso_currency_code": "USD",
592 "location": {
593 "address": null,
594 "city": "Whittier",
595 "country": null,
596 "lat": null,
597 "lon": null,
598 "postal_code": null,
599 "region": "CA",
600 "state": "CA",
601 "store_number": null,
602 "zip": null
603 },
604 "merchant_name": "Smart & Final",
605 "original_description": "POS SMART AND FINAL 111 WHITTIER CA",
606 "pending": false,
607 "transaction_id": "rMzaBpJw8jSZRJQBabKdteQBwd5EaWc7J9qem",
608 "unofficial_currency_code": null
609 },
610 {
611 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
612 "account_owner": null,
613 "amount": 12.37,
614 "check_number": null,
615 "credit_category": {
616 "detailed": "FOOD_RETAIL_GROCERIES",
617 "primary": "FOOD_RETAIL"
618 },
619 "date": "2024-07-14",
620 "date_posted": "2024-07-14T00:00:00Z",
621 "date_transacted": "2024-07-14",
622 "iso_currency_code": "USD",
623 "location": {
624 "address": null,
625 "city": "Whittier",
626 "country": null,
627 "lat": null,
628 "lon": null,
629 "postal_code": null,
630 "region": "CA",
631 "state": "CA",
632 "store_number": null,
633 "zip": null
634 },
635 "merchant_name": "Smart & Final",
636 "original_description": "POS SMART AND FINAL 111 WHITTIER CA",
637 "pending": false,
638 "transaction_id": "zWPZjkmzynTyel89ZjExS59DV6WAaZflNBJ56",
639 "unofficial_currency_code": null
640 },
641 {
642 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
643 "account_owner": null,
644 "amount": 44.18,
645 "check_number": null,
646 "credit_category": {
647 "detailed": "FOOD_RETAIL_GROCERIES",
648 "primary": "FOOD_RETAIL"
649 },
650 "date": "2024-07-14",
651 "date_posted": "2024-07-14T00:00:00Z",
652 "date_transacted": "2024-07-14",
653 "iso_currency_code": "USD",
654 "location": {
655 "address": null,
656 "city": "Portland",
657 "country": null,
658 "lat": null,
659 "lon": null,
660 "postal_code": null,
661 "region": "OR",
662 "state": "OR",
663 "store_number": "1111",
664 "zip": null
665 },
666 "merchant_name": "Safeway",
667 "original_description": "SAFEWAY #1111 PORTLAND OR 111111",
668 "pending": false,
669 "transaction_id": "K7qzx1nP8ptqgwaRMbxyI86XrqADMluRpkWx5",
670 "unofficial_currency_code": null
671 },
672 {
673 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
674 "account_owner": null,
675 "amount": 45.37,
676 "check_number": null,
677 "credit_category": {
678 "detailed": "DINING_DINING",
679 "primary": "DINING"
680 },
681 "date": "2024-07-14",
682 "date_posted": "2024-07-14T00:00:00Z",
683 "date_transacted": "2024-07-14",
684 "iso_currency_code": "USD",
685 "location": {
686 "address": null,
687 "city": null,
688 "country": null,
689 "lat": null,
690 "lon": null,
691 "postal_code": null,
692 "region": null,
693 "state": null,
694 "store_number": null,
695 "zip": null
696 },
697 "merchant_name": "Uber Eats",
698 "original_description": "UBER EATS",
699 "pending": false,
700 "transaction_id": "qZrdzLRAgNHo5peMdD9xIzELl3a1NvcgrPAzL",
701 "unofficial_currency_code": null
702 },
703 {
704 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
705 "account_owner": null,
706 "amount": 15.22,
707 "check_number": null,
708 "credit_category": {
709 "detailed": "GENERAL_MERCHANDISE_ONLINE_MARKETPLACES",
710 "primary": "GENERAL_MERCHANDISE"
711 },
712 "date": "2024-07-15",
713 "date_posted": "2024-07-15T00:00:00Z",
714 "date_transacted": "2024-07-15",
715 "iso_currency_code": "USD",
716 "location": {
717 "address": null,
718 "city": null,
719 "country": null,
720 "lat": null,
721 "lon": null,
722 "postal_code": null,
723 "region": null,
724 "state": null,
725 "store_number": null,
726 "zip": null
727 },
728 "merchant_name": "Amazon",
729 "original_description": "AMZN Mktp US*11111111 Amzn.com/bill WA AM",
730 "pending": false,
731 "transaction_id": "NZzx4oRPkAHzyRekpG4PTZkWnBPqEyiy6pB1M",
732 "unofficial_currency_code": null
733 },
734 {
735 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
736 "account_owner": null,
737 "amount": 26.33,
738 "check_number": null,
739 "credit_category": {
740 "detailed": "DINING_DINING",
741 "primary": "DINING"
742 },
743 "date": "2024-07-15",
744 "date_posted": "2024-07-15T00:00:00Z",
745 "date_transacted": "2024-07-15",
746 "iso_currency_code": "USD",
747 "location": {
748 "address": null,
749 "city": null,
750 "country": null,
751 "lat": null,
752 "lon": null,
753 "postal_code": null,
754 "region": null,
755 "state": null,
756 "store_number": null,
757 "zip": null
758 },
759 "merchant_name": "Domino's",
760 "original_description": "DOMINO's XXXX 111-222-3333",
761 "pending": false,
762 "transaction_id": "x84eNArKbESz8Woden6LT3nvyogeJXc64Pp35",
763 "unofficial_currency_code": null
764 },
765 {
766 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
767 "account_owner": null,
768 "amount": 39.8,
769 "check_number": null,
770 "credit_category": {
771 "detailed": "GENERAL_MERCHANDISE_DISCOUNT_STORES",
772 "primary": "GENERAL_MERCHANDISE"
773 },
774 "date": "2024-07-15",
775 "date_posted": "2024-07-15T00:00:00Z",
776 "date_transacted": "2024-07-15",
777 "iso_currency_code": "USD",
778 "location": {
779 "address": null,
780 "city": null,
781 "country": null,
782 "lat": null,
783 "lon": null,
784 "postal_code": null,
785 "region": null,
786 "state": null,
787 "store_number": null,
788 "zip": null
789 },
790 "merchant_name": "Family Dollar",
791 "original_description": "FAMILY DOLLAR",
792 "pending": false,
793 "transaction_id": "dzWnyxwZ4GHlZPGgrNyxiMG7qd5jDgCJEz5jL",
794 "unofficial_currency_code": null
795 },
796 {
797 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
798 "account_owner": null,
799 "amount": 45.06,
800 "check_number": null,
801 "credit_category": {
802 "detailed": "FOOD_RETAIL_GROCERIES",
803 "primary": "FOOD_RETAIL"
804 },
805 "date": "2024-07-15",
806 "date_posted": "2024-07-15T00:00:00Z",
807 "date_transacted": "2024-07-15",
808 "iso_currency_code": "USD",
809 "location": {
810 "address": null,
811 "city": null,
812 "country": null,
813 "lat": null,
814 "lon": null,
815 "postal_code": null,
816 "region": null,
817 "state": null,
818 "store_number": null,
819 "zip": null
820 },
821 "merchant_name": "Instacart",
822 "original_description": "INSTACART HTTPSINSTACAR CA",
823 "pending": false,
824 "transaction_id": "4W7eE9rZqMToDArbPeLNIREoKpdgBMcJbVNQD",
825 "unofficial_currency_code": null
826 },
827 {
828 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
829 "account_owner": null,
830 "amount": 34.91,
831 "check_number": null,
832 "credit_category": {
833 "detailed": "FOOD_RETAIL_GROCERIES",
834 "primary": "FOOD_RETAIL"
835 },
836 "date": "2024-07-15",
837 "date_posted": "2024-07-15T00:00:00Z",
838 "date_transacted": "2024-07-15",
839 "iso_currency_code": "USD",
840 "location": {
841 "address": null,
842 "city": "Whittier",
843 "country": null,
844 "lat": null,
845 "lon": null,
846 "postal_code": null,
847 "region": "CA",
848 "state": "CA",
849 "store_number": null,
850 "zip": null
851 },
852 "merchant_name": "Smart & Final",
853 "original_description": "POS SMART AND FINAL 111 WHITTIER CA",
854 "pending": false,
855 "transaction_id": "j4yqDjb7QwS7woGzqrgDIEG1NaQVZwf6Wmz3D",
856 "unofficial_currency_code": null
857 },
858 {
859 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
860 "account_owner": null,
861 "amount": 49.78,
862 "check_number": null,
863 "credit_category": {
864 "detailed": "FOOD_RETAIL_GROCERIES",
865 "primary": "FOOD_RETAIL"
866 },
867 "date": "2024-07-15",
868 "date_posted": "2024-07-15T00:00:00Z",
869 "date_transacted": "2024-07-15",
870 "iso_currency_code": "USD",
871 "location": {
872 "address": null,
873 "city": "Portland",
874 "country": null,
875 "lat": null,
876 "lon": null,
877 "postal_code": null,
878 "region": "OR",
879 "state": "OR",
880 "store_number": "1111",
881 "zip": null
882 },
883 "merchant_name": "Safeway",
884 "original_description": "SAFEWAY #1111 PORTLAND OR 111111",
885 "pending": false,
886 "transaction_id": "aqgWnze7xoHd6DQwLPnzT5dgPKjB1NfZ5JlBy",
887 "unofficial_currency_code": null
888 },
889 {
890 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
891 "account_owner": null,
892 "amount": 54.24,
893 "check_number": null,
894 "credit_category": {
895 "detailed": "FOOD_RETAIL_GROCERIES",
896 "primary": "FOOD_RETAIL"
897 },
898 "date": "2024-07-15",
899 "date_posted": "2024-07-15T00:00:00Z",
900 "date_transacted": "2024-07-15",
901 "iso_currency_code": "USD",
902 "location": {
903 "address": null,
904 "city": "Portland",
905 "country": null,
906 "lat": null,
907 "lon": null,
908 "postal_code": null,
909 "region": "OR",
910 "state": "OR",
911 "store_number": "1111",
912 "zip": null
913 },
914 "merchant_name": "Safeway",
915 "original_description": "SAFEWAY #1111 PORTLAND OR 111111",
916 "pending": false,
917 "transaction_id": "P13aP8b7nmS3WQoxg1PMsdvMK679RNfo65B4G",
918 "unofficial_currency_code": null
919 },
920 {
921 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
922 "account_owner": null,
923 "amount": 41.79,
924 "check_number": null,
925 "credit_category": {
926 "detailed": "GENERAL_MERCHANDISE_ONLINE_MARKETPLACES",
927 "primary": "GENERAL_MERCHANDISE"
928 },
929 "date": "2024-07-16",
930 "date_posted": "2024-07-16T00:00:00Z",
931 "date_transacted": "2024-07-16",
932 "iso_currency_code": "USD",
933 "location": {
934 "address": null,
935 "city": null,
936 "country": null,
937 "lat": null,
938 "lon": null,
939 "postal_code": null,
940 "region": null,
941 "state": null,
942 "store_number": null,
943 "zip": null
944 },
945 "merchant_name": "Amazon",
946 "original_description": "AMZN Mktp US*11111111 Amzn.com/bill WA AM",
947 "pending": false,
948 "transaction_id": "7nZMG6pXz8SADylMqzx7TraE4qjJm7udJyAGm",
949 "unofficial_currency_code": null
950 },
951 {
952 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
953 "account_owner": null,
954 "amount": 33.86,
955 "check_number": null,
956 "credit_category": {
957 "detailed": "FOOD_RETAIL_GROCERIES",
958 "primary": "FOOD_RETAIL"
959 },
960 "date": "2024-07-16",
961 "date_posted": "2024-07-16T00:00:00Z",
962 "date_transacted": "2024-07-16",
963 "iso_currency_code": "USD",
964 "location": {
965 "address": null,
966 "city": null,
967 "country": null,
968 "lat": null,
969 "lon": null,
970 "postal_code": null,
971 "region": null,
972 "state": null,
973 "store_number": null,
974 "zip": null
975 },
976 "merchant_name": "Instacart",
977 "original_description": "INSTACART HTTPSINSTACAR CA",
978 "pending": false,
979 "transaction_id": "MQr3ap7PWEIrQG7bLdaNsxyBV7g1KqCL6pwoy",
980 "unofficial_currency_code": null
981 },
982 {
983 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
984 "account_owner": null,
985 "amount": 27.08,
986 "check_number": null,
987 "credit_category": {
988 "detailed": "DINING_DINING",
989 "primary": "DINING"
990 },
991 "date": "2024-07-16",
992 "date_posted": "2024-07-16T00:00:00Z",
993 "date_transacted": "2024-07-16",
994 "iso_currency_code": "USD",
995 "location": {
996 "address": null,
997 "city": null,
998 "country": null,
999 "lat": null,
1000 "lon": null,
1001 "postal_code": null,
1002 "region": null,
1003 "state": null,
1004 "store_number": null,
1005 "zip": null
1006 },
1007 "merchant_name": null,
1008 "original_description": "POKE BROS * POKE BRO IL",
1009 "pending": false,
1010 "transaction_id": "eBAk9dvwNbHPZpr8W69dU3rekJz47Kcr9BRwl",
1011 "unofficial_currency_code": null
1012 },
1013 {
1014 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
1015 "account_owner": null,
1016 "amount": 25.94,
1017 "check_number": null,
1018 "credit_category": {
1019 "detailed": "GENERAL_MERCHANDISE_FURNITURE_AND_HARDWARE",
1020 "primary": "GENERAL_MERCHANDISE"
1021 },
1022 "date": "2024-07-16",
1023 "date_posted": "2024-07-16T00:00:00Z",
1024 "date_transacted": "2024-07-16",
1025 "iso_currency_code": "USD",
1026 "location": {
1027 "address": null,
1028 "city": null,
1029 "country": null,
1030 "lat": null,
1031 "lon": null,
1032 "postal_code": null,
1033 "region": null,
1034 "state": null,
1035 "store_number": null,
1036 "zip": null
1037 },
1038 "merchant_name": "The Home Depot",
1039 "original_description": "THE HOME DEPOT",
1040 "pending": false,
1041 "transaction_id": "QLx4jEJZb9SxRm7aWbjAio3LrgZ5vPswm64dE",
1042 "unofficial_currency_code": null
1043 },
1044 {
1045 "account_id": "NZzx4oRPkAHzyRekpG4PTZkoGpNAR4uypaj1E",
1046 "account_owner": null,
1047 "amount": 27.57,
1048 "check_number": null,
1049 "credit_category": {
1050 "detailed": "GENERAL_MERCHANDISE_OTHER_GENERAL_MERCHANDISE",
1051 "primary": "GENERAL_MERCHANDISE"
1052 },
1053 "date": "2024-07-16",
1054 "date_posted": "2024-07-16T00:00:00Z",
1055 "date_transacted": "2024-07-16",
1056 "iso_currency_code": "USD",
1057 "location": {
1058 "address": null,
1059 "city": null,
1060 "country": null,
1061 "lat": null,
1062 "lon": null,
1063 "postal_code": null,
1064 "region": null,
1065 "state": null,
1066 "store_number": null,
1067 "zip": null
1068 },
1069 "merchant_name": null,
1070 "original_description": "The Press Club",
1071 "pending": false,
1072 "transaction_id": "ZnQ1ovqBldSQ6GzRbroAHLdQP68BrKceqmAjX",
1073 "unofficial_currency_code": null
1074 }
1075 ],
1076 "type": "depository"
1077 }
1078 ],
1079 "date_last_updated": "2024-07-16T01:52:42.912331716Z",
1080 "institution_id": "ins_109512",
1081 "institution_name": "Houndstooth Bank",
1082 "item_id": "NZzx4oRPkAHzyRekpG4PTZkDNkQW93tWnyGeA"
1083 }
1084 ],
1085 "report_id": "f3bb434f-1c9b-4ef2-b76c-3d1fd08156ec"
1086 },
1087 "warnings": [],
1088 "request_id": "FibfL8t3s71KJnj"
1089}
Was this helpful?

/cra/check_report/income_insights/get

Retrieve cash flow information from your user's banks

This endpoint allows you to retrieve the Income Insights report for your user. You should call this endpoint after you've received a CHECK_REPORT_READY webhook, either after the Link session for the user or after calling /cra/check_report/create. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling /cra/check_report/create.

cra/check_report/income_insights/get

Request fields

client_id
string
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.
secret
string
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.
user_token
string
The user token associated with the User data is being requested for.
Select Language
1try {
2 const response = await client.craCheckReportIncomeInsightsGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 });
5} catch (error) {
6 // handle error
7}
cra/check_report/income_insights/get

Response fields and example

report
object
The Check Income Insights Report for an end user.
report_id
string
The unique identifier associated with the Check Income Insights Report.
generated_time
string
The time when the Check Income Insights Report was generated.

Format: date-time
days_requested
integer
The number of days requested by the customer for the Check Income Insights Report.
client_report_id
nullablestring
Client-generated identifier, which can be used by lenders to track loan applications.
items
[object]
The list of Items in the report along with the associated metadata about the Item.
item_id
string
The item_id of the Item associated with this webhook, warning, or error
bank_income_accounts
[object]
The Item's accounts that have bank income data.
account_id
string
Plaid’s unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new account_id will be assigned to the account.
If an account with a specific account_id disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API.
Like all Plaid identifiers, the account_id is case sensitive.
mask
nullablestring
The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user.
metadata
object
An object containing metadata about the extracted account.
start_date
nullablestring
The date of the earliest extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
end_date
nullablestring
The date of the most recent extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
name
string
The name of the bank account.
official_name
nullablestring
The official name of the bank account.
subtype
string
Valid account subtypes for depository accounts. For a list containing descriptions of each subtype, see Account schemas.

Possible values: checking, savings, hsa, cd, money market, paypal, prepaid, cash management, ebt, all
type
string
The account type. This will always be depository.

Possible values: depository
bank_income_sources
[object]
The income sources for this Item. Each entry in the array is a single income source.
account_id
string
The account ID with which this income source is associated.
income_source_id
string
A unique identifier for an income source.
income_description
string
The most common name or original description for the underlying income transactions.
income_category
string
The income category. BANK_INTEREST: Interest earned from a bank account. BENEFIT_OTHER: Government benefits other than retirement, unemployment, child support, or disability. Currently used only in the UK, to represent benefits such as Cost of Living Payments. CASH: Deprecated and used only for existing legacy implementations. Has been replaced by CASH_DEPOSIT and TRANSFER_FROM_APPLICATION. CASH_DEPOSIT: A cash or check deposit. CHILD_SUPPORT: Child support payments received. GIG_ECONOMY: Income earned as a gig economy worker, e.g. driving for Uber, Lyft, Postmates, DoorDash, etc. LONG_TERM_DISABILITY: Disability payments, including Social Security disability benefits. OTHER: Income that could not be categorized as any other income category. MILITARY: Veterans benefits. Income earned as salary for serving in the military (e.g. through DFAS) will be classified as SALARY rather than MILITARY. RENTAL: Income earned from a rental property. Income may be identified as rental when the payment is received through a rental platform, e.g. Airbnb; rent paid directly by the tenant to the property owner (e.g. via cash, check, or ACH) will typically not be classified as rental income. RETIREMENT: Payments from private retirement systems, pensions, and government retirement programs, including Social Security retirement benefits. SALARY: Payment from an employer to an earner or other form of permanent employment. TAX_REFUND: A tax refund. TRANSFER_FROM_APPLICATION: Deposits from a money transfer app, such as Venmo, Cash App, or Zelle. UNEMPLOYMENT: Unemployment benefits. In the UK, includes certain low-income benefits such as the Universal Credit.

Possible values: SALARY, UNEMPLOYMENT, CASH, GIG_ECONOMY, RENTAL, CHILD_SUPPORT, MILITARY, RETIREMENT, LONG_TERM_DISABILITY, BANK_INTEREST, CASH_DEPOSIT, TRANSFER_FROM_APPLICATION, TAX_REFUND, BENEFIT_OTHER, OTHER
start_date
string
Minimum of all dates within the specific income sources in the user's bank account for days requested by the client. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
Maximum of all dates within the specific income sources in the user’s bank account for days requested by the client. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
pay_frequency
string
The income pay frequency.

Possible values: WEEKLY, BIWEEKLY, SEMI_MONTHLY, MONTHLY, DAILY, UNKNOWN
total_amount
number
Total amount of earnings in the user’s bank account for the specific income source for days requested by the client.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
transaction_count
integer
Number of transactions for the income source within the start and end date.
next_payment_date
nullablestring
The expected date of the end user’s next paycheck for the income source. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
historical_average_monthly_gross_income
nullablenumber
An estimate of the average gross monthly income based on the historical net amount and income category for the income source(s).
historical_average_monthly_income
nullablenumber
The average monthly net income amount estimated based on the historical data for the income source(s).
forecasted_average_monthly_income
nullablenumber
The predicted average monthly net income amount for the income source(s).
forecasted_average_monthly_income_prediction_intervals
[object]
The prediction interval(s) for the forecasted average monthly income.
lower_bound
nullablenumber
The lower bound of the predicted attribute for the given probability.
upper_bound
nullablenumber
The upper bound of the predicted attribute for the given probability.
probability
nullablenumber
The probability of the actual value of the attribute falling within the upper and lower bound. This is a percentage represented as a value between 0 and 1.
employer
object
The object containing employer data.
name
nullablestring
The name of the employer.
historical_summary
[object]
total_amounts
[object]
Total amount of earnings for the income source(s) of the user for the month in the summary. This can contain multiple amounts, with each amount denominated in one unique currency.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
start_date
string
The start date of the period covered in this monthly summary. This date will be the first day of the month, unless the month being covered is a partial month because it is the first month included in the summary and the date range being requested does not begin with the first day of the month. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of the period included in this monthly summary. This date will be the last day of the month, unless the month being covered is a partial month because it is the last month included in the summary and the date range being requested does not end with the last day of the month. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
transactions
[object]
transaction_id
string
The unique ID of the transaction. Like all Plaid identifiers, the transaction_id is case sensitive.
amount
number
The settled value of the transaction, denominated in the transaction's currency as stated in iso_currency_code or unofficial_currency_code. Positive values when money moves out of the account; negative values when money moves in. For example, credit card purchases are positive; credit card payment, direct deposits, and refunds are negative.
date
string
For pending transactions, the date that the transaction occurred; for posted transactions, the date that the transaction posted. Both dates are returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
name
string
The merchant name or transaction description.
original_description
nullablestring
The string returned by the financial institution to describe the transaction.
pending
boolean
When true, identifies the transaction as pending or unsettled. Pending transaction details (name, type, amount, category ID) may change before they are settled.
check_number
nullablestring
The check number of the transaction. This field is only populated for check transactions.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
bonus_type
nullablestring
The type of bonus that this transaction represents, if it is a bonus. BONUS_INCLUDED: Bonus is included in this transaction along with the normal pay BONUS_ONLY: This transaction is a standalone bonus

Possible values: BONUS_INCLUDED, BONUS_ONLY, null
last_updated_time
string
The time when this Item's data was last retrieved from the financial institution.

Format: date-time
institution_id
string
The unique identifier of the institution associated with the Item.
institution_name
string
The name of the institution associated with the Item.
bank_income_summary
object
Summary for income across all income sources and items (max history of 730 days).
total_amounts
[object]
Total amount of earnings across all the income sources in the end user's Items for the days requested by the client. This can contain multiple amounts, with each amount denominated in one unique currency.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
start_date
string
The earliest date within the days requested in which all income sources identified by Plaid appear in a user's account. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The latest date in which all income sources identified by Plaid appear in the user's account. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
income_sources_count
integer
Number of income sources per end user.
income_categories_count
integer
Number of income categories per end user.
income_transactions_count
integer
Number of income transactions per end user.
historical_average_monthly_gross_income
[object]
An estimate of the average gross monthly income based on the historical net amount and income category for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
historical_average_monthly_income
[object]
The average monthly income amount estimated based on the historical data for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
forecasted_average_monthly_income
[object]
The predicted average monthly income amount for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
historical_annual_gross_income
[object]
An estimate of the annual gross income based on the historical net amount and income category for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
historical_annual_income
[object]
The annual income amount estimated based on the historical data for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
forecasted_annual_income
[object]
The predicted average annual income amount for the income source(s).
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
historical_summary
[object]
total_amounts
[object]
Total amount of earnings for the income source(s) of the user for the month in the summary. This can contain multiple amounts, with each amount denominated in one unique currency.
amount
number
Value of amount with up to 2 decimal places.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
start_date
string
The start date of the period covered in this monthly summary. This date will be the first day of the month, unless the month being covered is a partial month because it is the first month included in the summary and the date range being requested does not begin with the first day of the month. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
end_date
string
The end date of the period included in this monthly summary. This date will be the last day of the month, unless the month being covered is a partial month because it is the last month included in the summary and the date range being requested does not end with the last day of the month. The date will be returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
transactions
[object]
transaction_id
string
The unique ID of the transaction. Like all Plaid identifiers, the transaction_id is case sensitive.
amount
number
The settled value of the transaction, denominated in the transaction's currency as stated in iso_currency_code or unofficial_currency_code. Positive values when money moves out of the account; negative values when money moves in. For example, credit card purchases are positive; credit card payment, direct deposits, and refunds are negative.
date
string
For pending transactions, the date that the transaction occurred; for posted transactions, the date that the transaction posted. Both dates are returned in an ISO 8601 format (YYYY-MM-DD).

Format: date
name
string
The merchant name or transaction description.
original_description
nullablestring
The string returned by the financial institution to describe the transaction.
pending
boolean
When true, identifies the transaction as pending or unsettled. Pending transaction details (name, type, amount, category ID) may change before they are settled.
check_number
nullablestring
The check number of the transaction. This field is only populated for check transactions.
iso_currency_code
nullablestring
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
nullablestring
The unofficial currency code associated with the amount or balance. Always null if iso_currency_code is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries.
bonus_type
nullablestring
The type of bonus that this transaction represents, if it is a bonus. BONUS_INCLUDED: Bonus is included in this transaction along with the normal pay BONUS_ONLY: This transaction is a standalone bonus

Possible values: BONUS_INCLUDED, BONUS_ONLY, null
warnings
[object]
If data from the report was unable to be retrieved, the warnings object will contain information about the error that caused the data to be incomplete.
warning_type
string
The warning type which will always be BANK_INCOME_WARNING.

Possible values: BANK_INCOME_WARNING
warning_code
string
The warning code identifies a specific kind of warning. IDENTITY_UNAVAILABLE: Unable to extract identity for the Item TRANSACTIONS_UNAVAILABLE: Unable to extract transactions for the Item REPORT_DELETED: Report deleted due to customer or consumer request DATA_UNAVAILABLE: No relevant data was found for the Item

Possible values: IDENTITY_UNAVAILABLE, TRANSACTIONS_UNAVAILABLE, REPORT_DELETED, DATA_UNAVAILABLE
cause
object
An error object and associated item_id used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items.
error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INTERNAL_SERVER_ERROR, INSUFFICIENT_CREDENTIALS, ITEM_LOCKED, USER_SETUP_REQUIRED, COUNTRY_NOT_SUPPORTED, INSTITUTION_DOWN, INSTITUTION_NO_LONGER_SUPPORTED, INSTITUTION_NOT_RESPONDING, INVALID_CREDENTIALS, INVALID_MFA, INVALID_SEND_METHOD, ITEM_LOGIN_REQUIRED, MFA_NOT_SUPPORTED, NO_ACCOUNTS, ITEM_NOT_SUPPORTED, ACCESS_NOT_GRANTED
error_code
string
We use standard HTTP response codes for success and failure notifications, and our errors are further classified by error_type. In general, 200 HTTP codes correspond to success, 40X codes are for developer- or user-related failures, and 50X codes are for Plaid-related issues. Error fields will be null if no error has occurred.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
string
A user-friendly representation of the error code. null if the error is not related to user action. This may change over time and is not safe for programmatic use.
request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
warnings
[object]
If the Income Insights generation was successful but a subset of data could not be retrieved, this array will contain information about the errors causing information to be missing
warning_type
string
The warning type, which will always be CHECK_REPORT_WARNING
warning_code
string
The warning code identifies a specific kind of warning. IDENTITY_UNAVAILABLE: Account-owner information is not available. TRANSACTIONS_UNAVAILABLE: Transactions information associated with Credit and Depository accounts are unavailable. USER_FRAUD_ALERT: The user has placed a fraud alert on their Plaid Check consumer report due to suspected fraud. Please note that when a fraud alert is in place, the recipient of the consumer report has an obligation to verify the consumer’s identity.

Possible values: IDENTITY_UNAVAILABLE, TRANSACTIONS_UNAVAILABLE, USER_FRAUD_ALERT
cause
nullableobject
An error object and associated item_id used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items.
error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INVALID_REQUEST, INVALID_RESULT, INVALID_INPUT, INSTITUTION_ERROR, RATE_LIMIT_EXCEEDED, API_ERROR, ITEM_ERROR, ASSET_REPORT_ERROR, RECAPTCHA_ERROR, OAUTH_ERROR, PAYMENT_ERROR, BANK_TRANSFER_ERROR, INCOME_VERIFICATION_ERROR, MICRODEPOSITS_ERROR, SANDBOX_ERROR, PARTNER_ERROR, TRANSACTIONS_ERROR, TRANSACTION_ERROR, TRANSFER_ERROR, CHECK_REPORT_ERROR, CONSUMER_REPORT_ERROR
error_code
string
The particular error code. Safe for programmatic use.
error_code_reason
nullablestring
The specific reason for the error code. Currently, reasons are only supported OAuth-based item errors; null will be returned otherwise. Safe for programmatic use.
Possible values: OAUTH_INVALID_TOKEN: The user’s OAuth connection to this institution has been invalidated.
OAUTH_CONSENT_EXPIRED: The user's access consent for this OAuth connection to this institution has expired.
OAUTH_USER_REVOKED: The user’s OAuth connection to this institution is invalid because the user revoked their connection.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
nullablestring
A user-friendly representation of the error code. null if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In this product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
causes will be provided for the error_type ASSET_REPORT_ERROR or CHECK_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
nullableinteger
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
nullablestring
Suggested steps for resolving the error
item_id
string
The item_id of the Item associated with this webhook, warning, or error
1{
2 "request_id": "LhQf0THi8SH1yJm",
3 "report": {
4 "report_id": "bbfc5174-5433-4648-8d93-9fec6a0c0966",
5 "generated_time": "2022-01-31T22:47:53Z",
6 "days_requested": 365,
7 "items": [
8 {
9 "item_id": "AZMP7JrGXgtPd3AQMeg7hwMKgk5E8qU1V5ME7",
10 "last_updated_time": "2022-01-31T22:47:53Z",
11 "institution_id": "ins_0",
12 "institution_name": "Plaid Bank",
13 "bank_income_accounts": [
14 {
15 "account_id": "1qKRXQjk8xUWDJojNwPXTj8gEmR48piqRNye8",
16 "mask": "8888",
17 "metadata": {
18 "start_date": "2024-01-01",
19 "end_date": "2024-07-16"
20 },
21 "name": "Plaid Checking Account",
22 "official_name": "Plaid Checking Account",
23 "type": "depository",
24 "subtype": "checking",
25 "owners": []
26 }
27 ],
28 "bank_income_sources": [
29 {
30 "account_id": "1qKRXQjk8xUWDJojNwPXTj8gEmR48piqRNye8",
31 "income_source_id": "f17efbdd-caab-4278-8ece-963511cd3d51",
32 "income_description": "PLAID_INC_DIRECT_DEP_PPD",
33 "income_category": "SALARY",
34 "start_date": "2021-11-15",
35 "end_date": "2022-01-15",
36 "pay_frequency": "MONTHLY",
37 "total_amount": 300,
38 "iso_currency_code": "USD",
39 "unofficial_currency_code": null,
40 "transaction_count": 1,
41 "next_payment_date": "2022-12-15",
42 "historical_average_monthly_gross_income": 390,
43 "historical_average_monthly_income": 300,
44 "forecasted_average_monthly_income": 300,
45 "forecasted_average_monthly_income_prediction_intervals": [
46 {
47 "lower_bound": 200,
48 "upper_bound": 400,
49 "probability": 0.8
50 }
51 ],
52 "employer": {
53 "name": "Plaid Inc"
54 },
55 "historical_summary": [
56 {
57 "start_date": "2021-11-02",
58 "end_date": "2021-11-30",
59 "total_amounts": [
60 {
61 "amount": 100,
62 "iso_currency_code": "USD",
63 "unofficial_currency_code": null
64 }
65 ],
66 "transactions": [
67 {
68 "transaction_id": "aH5klwqG3B19OMT7D6F24Syv8pdnJXmtZoKQ5",
69 "amount": 100,
70 "bonus_type": null,
71 "date": "2021-11-15",
72 "name": "PLAID_INC_DIRECT_DEP_PPD",
73 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123A",
74 "pending": false,
75 "check_number": null,
76 "iso_currency_code": "USD",
77 "unofficial_currency_code": null
78 }
79 ]
80 },
81 {
82 "start_date": "2021-12-01",
83 "end_date": "2021-12-31",
84 "total_amounts": [
85 {
86 "amount": 100,
87 "iso_currency_code": "USD",
88 "unofficial_currency_code": null
89 }
90 ],
91 "transactions": [
92 {
93 "transaction_id": "mN3rQ5iH8BC41T6UjKL9oD2vWJpZqXFomGwY1",
94 "amount": 100,
95 "bonus_type": null,
96 "date": "2021-12-15",
97 "name": "PLAID_INC_DIRECT_DEP_PPD",
98 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123B",
99 "pending": false,
100 "check_number": null,
101 "iso_currency_code": "USD",
102 "unofficial_currency_code": null
103 }
104 ]
105 },
106 {
107 "start_date": "2022-01-01",
108 "end_date": "2022-01-31",
109 "total_amounts": [
110 {
111 "amount": 100,
112 "iso_currency_code": "USD",
113 "unofficial_currency_code": null
114 }
115 ],
116 "transactions": [
117 {
118 "transaction_id": "zK9lDoR8uBH51PNQ3W4T6Mjy2VFXpGtJwsL4",
119 "amount": 100,
120 "bonus_type": null,
121 "date": "2022-01-31",
122 "name": "PLAID_INC_DIRECT_DEP_PPD",
123 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123C",
124 "pending": false,
125 "check_number": null,
126 "iso_currency_code": "USD",
127 "unofficial_currency_code": null
128 }
129 ]
130 }
131 ]
132 }
133 ]
134 }
135 ],
136 "bank_income_summary": {
137 "total_amounts": [
138 {
139 "amount": 300,
140 "iso_currency_code": "USD",
141 "unofficial_currency_code": null
142 }
143 ],
144 "start_date": "2021-11-15",
145 "end_date": "2022-01-15",
146 "income_sources_count": 1,
147 "income_categories_count": 1,
148 "income_transactions_count": 1,
149 "historical_average_monthly_gross_income": [
150 {
151 "amount": 390,
152 "iso_currency_code": "USD",
153 "unofficial_currency_code": null
154 }
155 ],
156 "historical_average_monthly_income": [
157 {
158 "amount": 300,
159 "iso_currency_code": "USD",
160 "unofficial_currency_code": null
161 }
162 ],
163 "forecasted_average_monthly_income": [
164 {
165 "amount": 300,
166 "iso_currency_code": "USD",
167 "unofficial_currency_code": null
168 }
169 ],
170 "historical_annual_gross_income": [
171 {
172 "amount": 4680,
173 "iso_currency_code": "USD",
174 "unofficial_currency_code": null
175 }
176 ],
177 "historical_annual_income": [
178 {
179 "amount": 3600,
180 "iso_currency_code": "USD",
181 "unofficial_currency_code": null
182 }
183 ],
184 "forecasted_annual_income": [
185 {
186 "amount": 3600,
187 "iso_currency_code": "USD",
188 "unofficial_currency_code": null
189 }
190 ],
191 "historical_summary": [
192 {
193 "start_date": "2021-11-02",
194 "end_date": "2021-11-30",
195 "total_amounts": [
196 {
197 "amount": 100,
198 "iso_currency_code": "USD",
199 "unofficial_currency_code": null
200 }
201 ],
202 "transactions": [
203 {
204 "transaction_id": "aH5klwqG3B19OMT7D6F24Syv8pdnJXmtZoKQ5",
205 "amount": 100,
206 "bonus_type": null,
207 "date": "2021-11-15",
208 "name": "PLAID_INC_DIRECT_DEP_PPD",
209 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123A",
210 "pending": false,
211 "check_number": null,
212 "iso_currency_code": "USD",
213 "unofficial_currency_code": null
214 }
215 ]
216 },
217 {
218 "start_date": "2021-12-01",
219 "end_date": "2021-12-31",
220 "total_amounts": [
221 {
222 "amount": 100,
223 "iso_currency_code": "USD",
224 "unofficial_currency_code": null
225 }
226 ],
227 "transactions": [
228 {
229 "transaction_id": "mN3rQ5iH8BC41T6UjKL9oD2vWJpZqXFomGwY1",
230 "amount": 100,
231 "bonus_type": null,
232 "date": "2021-12-15",
233 "name": "PLAID_INC_DIRECT_DEP_PPD",
234 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123B",
235 "pending": false,
236 "check_number": null,
237 "iso_currency_code": "USD",
238 "unofficial_currency_code": null
239 }
240 ]
241 },
242 {
243 "start_date": "2022-01-01",
244 "end_date": "2022-01-31",
245 "total_amounts": [
246 {
247 "amount": 100,
248 "iso_currency_code": "USD",
249 "unofficial_currency_code": null
250 }
251 ],
252 "transactions": [
253 {
254 "transaction_id": "zK9lDoR8uBH51PNQ3W4T6Mjy2VFXpGtJwsL4",
255 "amount": 100,
256 "bonus_type": null,
257 "date": "2022-01-31",
258 "name": "PLAID_INC_DIRECT_DEP_PPD",
259 "original_description": "PLAID_INC_DIRECT_DEP_PPD 123C",
260 "pending": false,
261 "check_number": null,
262 "iso_currency_code": "USD",
263 "unofficial_currency_code": null
264 }
265 ]
266 }
267 ],
268 "warnings": []
269 }
270 }
271}
Was this helpful?

/cra/check_report/network_insights/get

Retrieve network attributes for the user

This endpoint allows you to retrieve the Network Insights product for your user. You should call this endpoint after you've received the CHECK_REPORT_READY webhook, either after the Link session for the user or after calling /cra/check_report/create. If the most recent consumer report for the user doesn’t have sufficient data to generate the report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling /cra/check_report/create.
If you did not initialize Link with the cra_network_attributes product or have generated a report using /cra/check_report/create, we will generate the attributes when you call this endpoint.

cra/check_report/network_insights/get

Request fields

client_id
string
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.
secret
string
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.
user_token
string
The user token associated with the User data is being requested for.
Select Language
1try {
2 const response = await client.craCheckReportNetworkInsightsGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 });
5} catch (error) {
6 // handle error
7}
cra/check_report/network_insights/get

Response fields and example

report
object
Contains data for the CRA Network Attributes Report.
report_id
string
The unique identifier associated with the Network Attributes report object.
generated_time
string
The time when the Network Attributes Report was generated.

Format: date-time
network_attributes
object
A map of network attributes, where the key is a string, and the value is a float, int, or boolean.
items
[object]
The Items the end user connected in Link.
institution_id
string
The ID for the institution the user linked.
institution_name
string
The name of the institution the user linked.
item_id
string
The identifier for the Item.
request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
warnings
[object]
If the Network Insights generation was successful but a subset of data could not be retrieved, this array will contain information about the errors causing information to be missing
warning_type
string
The warning type, which will always be CHECK_REPORT_WARNING
warning_code
string
The warning code identifies a specific kind of warning. IDENTITY_UNAVAILABLE: Account-owner information is not available. TRANSACTIONS_UNAVAILABLE: Transactions information associated with Credit and Depository accounts are unavailable. USER_FRAUD_ALERT: The user has placed a fraud alert on their Plaid Check consumer report due to suspected fraud. Please note that when a fraud alert is in place, the recipient of the consumer report has an obligation to verify the consumer’s identity.

Possible values: IDENTITY_UNAVAILABLE, TRANSACTIONS_UNAVAILABLE, USER_FRAUD_ALERT
cause
nullableobject
An error object and associated item_id used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items.
error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INVALID_REQUEST, INVALID_RESULT, INVALID_INPUT, INSTITUTION_ERROR, RATE_LIMIT_EXCEEDED, API_ERROR, ITEM_ERROR, ASSET_REPORT_ERROR, RECAPTCHA_ERROR, OAUTH_ERROR, PAYMENT_ERROR, BANK_TRANSFER_ERROR, INCOME_VERIFICATION_ERROR, MICRODEPOSITS_ERROR, SANDBOX_ERROR, PARTNER_ERROR, TRANSACTIONS_ERROR, TRANSACTION_ERROR, TRANSFER_ERROR, CHECK_REPORT_ERROR, CONSUMER_REPORT_ERROR
error_code
string
The particular error code. Safe for programmatic use.
error_code_reason
nullablestring
The specific reason for the error code. Currently, reasons are only supported OAuth-based item errors; null will be returned otherwise. Safe for programmatic use.
Possible values: OAUTH_INVALID_TOKEN: The user’s OAuth connection to this institution has been invalidated.
OAUTH_CONSENT_EXPIRED: The user's access consent for this OAuth connection to this institution has expired.
OAUTH_USER_REVOKED: The user’s OAuth connection to this institution is invalid because the user revoked their connection.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
nullablestring
A user-friendly representation of the error code. null if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In this product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
causes will be provided for the error_type ASSET_REPORT_ERROR or CHECK_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
nullableinteger
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
nullablestring
Suggested steps for resolving the error
item_id
string
The item_id of the Item associated with this webhook, warning, or error
1{
2 "request_id": "LhQf0THi8SH1yJm",
3 "report": {
4 "report_id": "ee093cb0-e3f2-42d1-9dbc-8d8408964194",
5 "generated_time": "2022-01-31T22:47:53Z",
6 "network_attributes": {
7 "plaid_conn_user_lifetime__lending_count": 5,
8 "plaid_conn_user_lifetime__personal_lending_flag": true,
9 "plaid_conn_user_lifetime__cash_advance_primary_count": 0
10 },
11 "items": [
12 {
13 "institution_id": "ins_0",
14 "institution_name": "Plaid Bank",
15 "item_id": "AZMP7JrGXgtPd3AQMeg7hwMKgk5E8qU1V5ME7"
16 }
17 ]
18 }
19}
Was this helpful?

/cra/check_report/partner_insights/get

Retrieve cash flow insights from partners

This endpoint allows you to retrieve the Partner Insights report for your user. You should call this endpoint after you've received the CHECK_REPORT_READY webhook, either after the Link session for the user or after calling /cra/check_report/create. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling /cra/check_report/create.
If you did not initialize Link with the credit_partner_insights product or have generated a report using /cra/check_report/create, we will call our partners to generate the insights when you call this endpoint. In this case, you may optionally provide parameters under options to configure which insights you want to receive.

cra/check_report/partner_insights/get

Request fields

client_id
string
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.
secret
string
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.
user_token
string
The user token associated with the User data is being requested for.
options
object
Defines configuration options to generate Partner Insights
prism_products
[string]
The specific Prism Data products to return. If none are passed in, then all products will be returned.

Possible values: insights, scores
prism_versions
object
The versions of Prism products to evaluate
firstdetect
string
The version of Prism FirstDetect. If not specified, will default to v3.

Possible values: 3, null
cashscore
string
The version of Prism CashScore. If not specified, will default to v3.

Possible values: 3_lite, 3, null
insights
string
The version of Prism Insights. If not specified, will default to v3.

Possible values: 3, null
Select Language
1try {
2 const response = await client.craCheckReportPartnerInsightsGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 });
5} catch (error) {
6 // handle error
7}
cra/check_report/partner_insights/get

Response fields and example

report
object
The Partner Insights report of the bank data for an end user.
report_id
string
A unique identifier associated with the Partner Insights object.
generated_time
string
The time when the Partner Insights report was generated.

Format: date-time
prism
object
The Prism Data insights for the user.
insights
nullableobject
The data from the Insights product returned by Prism Data.
version
integer
The version of Prism Data's insights model used.
result
object
The Insights Result object is a map of cash flow attributes, where the key is a string, and the value is a float or string.
error_reason
string
The error returned by Prism for this product.
cash_score
nullableobject
The data from the CashScore® product returned by Prism Data.
version
deprecatedinteger
The version of Prism Data's cash score model used. This field is deprecated in favor of model_version.
model_version
string
The version of Prism Data's cash score model used.
score
nullableinteger
The score returned by Prism Data. Ranges from 1-999, with higher score indicating lower risk.
reason_codes
[string]
The reasons for an individual having risk according to the cash score.
metadata
object
An object containing metadata about the provided transactions.
max_age
nullableinteger
Number of days since the oldest transaction.
min_age
nullableinteger
Number of days since the latest transaction.
min_age_credit
nullableinteger
Number of days since the latest credit transaction.
min_age_debit
nullableinteger
Number of days since the latest debit transaction.
max_age_debit
nullableinteger
Number of days since the oldest debit transaction.
max_age_credit
nullableinteger
Number of days since the oldest credit transaction.
num_trxn_credit
nullableinteger
Number of credit transactions.
num_trxn_debit
nullableinteger
Number of debit transactions.
l1m_credit_value_cnt
nullableinteger
Number of credit transactions in the last 30 days.
l1m_debit_value_cnt
nullableinteger
Number of debit transactions in the last 30 days.
error_reason
string
The error returned by Prism for this product.
first_detect
nullableobject
The data from the FirstDetect product returned by Prism Data.
version
deprecatedinteger
The version of Prism Data's FirstDetect model used. This field is deprecated in favor of model_version.
model_version
string
The version of Prism Data's FirstDetect model used.
score
nullableinteger
The score returned by Prism Data. Ranges from 1-999, with higher score indicating lower risk.
reason_codes
[string]
The reasons for an individual having risk according to the FirstDetect score.
metadata
object
An object containing metadata about the provided transactions.
max_age
nullableinteger
Number of days since the oldest transaction.
min_age
nullableinteger
Number of days since the latest transaction.
min_age_credit
nullableinteger
Number of days since the latest credit transaction.
min_age_debit
nullableinteger
Number of days since the latest debit transaction.
max_age_debit
nullableinteger
Number of days since the oldest debit transaction.
max_age_credit
nullableinteger
Number of days since the oldest credit transaction.
num_trxn_credit
nullableinteger
Number of credit transactions.
num_trxn_debit
nullableinteger
Number of debit transactions.
l1m_credit_value_cnt
nullableinteger
Number of credit transactions in the last 30 days.
l1m_debit_value_cnt
nullableinteger
Number of debit transactions in the last 30 days.
error_reason
string
The error returned by Prism for this product.
status
string
Details on whether the Prism Data attributes succeeded or failed to be generated.
items
[object]
The list of Items used in the report along with the associated metadata about the Item.
institution_id
string
The ID for the institution that the user linked.
institution_name
string
The name of the institution the user linked.
item_id
string
The identifier for the item.
accounts
[object]
A list of accounts in the item
account_id
string
Plaid's unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new account_id will be assigned to the account.
If an account with a specific account_id disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API.
Like all Plaid identifiers, the account_id is case sensitive.
mask
nullablestring
The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user.
metadata
object
An object containing metadata about the extracted account.
start_date
nullablestring
The date of the earliest extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
end_date
nullablestring
The date of the most recent extracted transaction, in ISO 8601 format ("yyyy-mm-dd").

Format: date
name
string
The name of the account
official_name
nullablestring
The official name of the bank account.
subtype
string
Valid account subtypes for depository accounts. For a list containing descriptions of each subtype, see Account schemas.

Possible values: checking, savings, hsa, cd, money market, paypal, prepaid, cash management, ebt, all
type
string
The account type. This will always be depository.

Possible values: depository
request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
warnings
[object]
If the Partner Insights generation was successful but a subset of data could not be retrieved, this array will contain information about the errors causing information to be missing
warning_type
string
The warning type, which will always be CHECK_REPORT_WARNING
warning_code
string
The warning code identifies a specific kind of warning. IDENTITY_UNAVAILABLE: Account-owner information is not available. TRANSACTIONS_UNAVAILABLE: Transactions information associated with Credit and Depository accounts are unavailable. USER_FRAUD_ALERT: The user has placed a fraud alert on their Plaid Check consumer report due to suspected fraud. Please note that when a fraud alert is in place, the recipient of the consumer report has an obligation to verify the consumer’s identity.

Possible values: IDENTITY_UNAVAILABLE, TRANSACTIONS_UNAVAILABLE, USER_FRAUD_ALERT
cause
nullableobject
An error object and associated item_id used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items.
error_type
string
A broad categorization of the error. Safe for programmatic use.

Possible values: INVALID_REQUEST, INVALID_RESULT, INVALID_INPUT, INSTITUTION_ERROR, RATE_LIMIT_EXCEEDED, API_ERROR, ITEM_ERROR, ASSET_REPORT_ERROR, RECAPTCHA_ERROR, OAUTH_ERROR, PAYMENT_ERROR, BANK_TRANSFER_ERROR, INCOME_VERIFICATION_ERROR, MICRODEPOSITS_ERROR, SANDBOX_ERROR, PARTNER_ERROR, TRANSACTIONS_ERROR, TRANSACTION_ERROR, TRANSFER_ERROR, CHECK_REPORT_ERROR, CONSUMER_REPORT_ERROR
error_code
string
The particular error code. Safe for programmatic use.
error_code_reason
nullablestring
The specific reason for the error code. Currently, reasons are only supported OAuth-based item errors; null will be returned otherwise. Safe for programmatic use.
Possible values: OAUTH_INVALID_TOKEN: The user’s OAuth connection to this institution has been invalidated.
OAUTH_CONSENT_EXPIRED: The user's access consent for this OAuth connection to this institution has expired.
OAUTH_USER_REVOKED: The user’s OAuth connection to this institution is invalid because the user revoked their connection.
error_message
string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
nullablestring
A user-friendly representation of the error code. null if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In this product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
causes will be provided for the error_type ASSET_REPORT_ERROR or CHECK_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
nullableinteger
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
nullablestring
Suggested steps for resolving the error
item_id
string
The item_id of the Item associated with this webhook, warning, or error
1{
2 "request_id": "LhQf0THi8SH1yJm",
3 "report": {
4 "report_id": "vzeNDwK7KQIm4yEog683uElbp9GRLEFXGK98D",
5 "generated_time": "2022-01-31T22:47:53Z",
6 "items": [
7 {
8 "institution_id": "ins_109508",
9 "institution_name": "Plaid Bank",
10 "item_id": "Ed6bjNrDLJfGvZWwnkQlfxwoNz54B5C97ejBr",
11 "accounts": [
12 {
13 "account_id": "1qKRXQjk8xUWDJojNwPXTj8gEmR48piqRNye8",
14 "mask": "8888",
15 "metadata": {
16 "start_date": "2022-01-01",
17 "end_date": "2022-01-31"
18 },
19 "name": "Plaid Checking Account",
20 "official_name": "Plaid Checking Account",
21 "type": "depository",
22 "subtype": "checking",
23 "owners": []
24 }
25 ]
26 }
27 ],
28 "prism": {
29 "insights": {
30 "version": 3,
31 "result": {
32 "l6m_cumbal_acc": 1
33 }
34 },
35 "cash_score": {
36 "version": 3,
37 "score": 900,
38 "reason_codes": [
39 "CS03038"
40 ],
41 "metadata": {
42 "max_age": 20,
43 "min_age": 1,
44 "min_age_credit": 0,
45 "min_age_debit": 1,
46 "max_age_debit": 20,
47 "max_age_credit": 0,
48 "num_trxn_credit": 0,
49 "num_trxn_debit": 40,
50 "l1m_credit_value_cnt": 0,
51 "l1m_debit_value_cnt": 40
52 }
53 },
54 "first_detect": {
55 "version": 3,
56 "score": 900,
57 "reason_codes": [
58 "CS03038"
59 ],
60 "metadata": {
61 "max_age": 20,
62 "min_age": 1,
63 "min_age_credit": 0,
64 "min_age_debit": 1,
65 "max_age_debit": 20,
66 "max_age_credit": 0,
67 "num_trxn_credit": 0,
68 "num_trxn_debit": 40,
69 "l1m_credit_value_cnt": 0,
70 "l1m_debit_value_cnt": 40
71 }
72 },
73 "status": "SUCCESS"
74 }
75 }
76}
Was this helpful?

/cra/check_report/pdf/get

Retrieve Consumer Reports as a PDF

/cra/check_report/pdf/get retrieves the most recent Consumer Report in PDF format. By default, the most recent Base Report (if it exists) for the user will be returned. To request that the most recent Income Insights report be included in the PDF as well, use the add-ons field.

cra/check_report/pdf/get

Request fields

client_id
string
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.
secret
string
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.
user_token
string
The user token associated with the User data is being requested for.
add_ons
[string]
Use this field to include other reports in the PDF.

Possible values: cra_income_insights
Select Language
1try {
2 const response = await client.craCheckReportPDFGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 });
5 const pdf = response.buffer.toString('base64');
6} catch (error) {
7 // handle error
8}
Response

This endpoint returns binary PDF data. View a sample Check Report PDF. View a sample Check Report PDF containing Income Insights.

Was this helpful?

/cra/monitoring_insights/get

Retrieve a Monitoring Insights Report

This endpoint allows you to retrieve a Monitoring Insights report by passing in the user_token referred to in the webhook you received.

cra/monitoring_insights/get

Request fields

client_id
string
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.
secret
string
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.
user_token
requiredstring
The user token associated with the User data is being requested for.
consumer_report_permissible_purpose
requiredstring
Describes the reason you are generating a Consumer Report for this user.
ACCOUNT_REVIEW_CREDIT: In connection with a consumer credit transaction for the review or collection of an account pursuant to FCRA Section 604(a)(3)(A).
WRITTEN_INSTRUCTION_OTHER: In accordance with the written instructions of the consumer pursuant to FCRA Section 604(a)(2), such as when an individual agrees to act as a guarantor or assumes personal liability for a consumer, business, or commercial loan.


Possible values: ACCOUNT_REVIEW_CREDIT, WRITTEN_INSTRUCTION_OTHER
Select Language
1try {
2 const response = await client.craMonitoringInsightsGet({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 consumer_report_permissible_purpose: 'EXTENSION_OF_CREDIT',
5 });
6} catch (error) {
7 // handle error
8}
cra/monitoring_insights/get

Response fields and example

request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
user_insights_id
string
A unique ID identifying a User Monitoring Insights Report. Like all Plaid identifiers, this ID is case sensitive.
items
[object]
An array of Monitoring Insights Items associated with the user.
date_generated
string
The date and time when the specific insights were generated (per-item), in ISO 8601 format (e.g. "2018-04-12T03:32:11Z").

Format: date-time
item_id
string
The item_id of the Item associated with the insights
status
object
An object with details of the Monitoring Insights Item's status.
status_code
string
Enum for the status of the Item's insights

Possible values: AVAILABLE, FAILED, PENDING, ITEM_NOT_SUPPORTED, ITEM_LOGIN_REQUIRED
reason
nullablestring
A reason for why a Monitoring Insights Report is not available. This field will only be populated when the status_code is not AVAILABLE
insights
nullableobject
An object representing the Monitoring Insights for the given Item
income
object
An object representing the income subcategory of the report
total_monthly_income
object
Details about about the total monthly income
baseline_amount
number
The aggregated income for the 30 days prior to subscription date
current_amount
number
The aggregated income of the last 30 days
income_sources_counts
object
Details about the number of income sources
baseline_count
number
The number of income sources detected at the subscription date
current_count
number
The number of income sources currently detected
forecasted_monthly_income
object
An object representing the predicted average monthly net income amount. This amount reflects the funds deposited into the account and may not include any withheld income such as taxes or other payroll deductions
baseline_amount
number
The forecasted monthly income at the time of subscription
current_amount
number
The current forecasted monthly income
historical_annual_income
object
An object representing the historical annual income amount.
baseline_amount
number
The historical annual income at the time of subscription
current_amount
number
The current historical annual income
income_sources
[object]
The income sources for this Item. Each entry in the array is a single income source
income_source_id
string
A unique identifier for an income source
income_description
string
The most common name or original description for the underlying income transactions
income_category
string
The income category. BANK_INTEREST: Interest earned from a bank account. BENEFIT_OTHER: Government benefits other than retirement, unemployment, child support, or disability. Currently used only in the UK, to represent benefits such as Cost of Living Payments. CASH: Deprecated and used only for existing legacy implementations. Has been replaced by CASH_DEPOSIT and TRANSFER_FROM_APPLICATION. CASH_DEPOSIT: A cash or check deposit. CHILD_SUPPORT: Child support payments received. GIG_ECONOMY: Income earned as a gig economy worker, e.g. driving for Uber, Lyft, Postmates, DoorDash, etc. LONG_TERM_DISABILITY: Disability payments, including Social Security disability benefits. OTHER: Income that could not be categorized as any other income category. MILITARY: Veterans benefits. Income earned as salary for serving in the military (e.g. through DFAS) will be classified as SALARY rather than MILITARY. RENTAL: Income earned from a rental property. Income may be identified as rental when the payment is received through a rental platform, e.g. Airbnb; rent paid directly by the tenant to the property owner (e.g. via cash, check, or ACH) will typically not be classified as rental income. RETIREMENT: Payments from private retirement systems, pensions, and government retirement programs, including Social Security retirement benefits. SALARY: Payment from an employer to an earner or other form of permanent employment. TAX_REFUND: A tax refund. TRANSFER_FROM_APPLICATION: Deposits from a money transfer app, such as Venmo, Cash App, or Zelle. UNEMPLOYMENT: Unemployment benefits. In the UK, includes certain low-income benefits such as the Universal Credit.

Possible values: SALARY, UNEMPLOYMENT, CASH, GIG_ECONOMY, RENTAL, CHILD_SUPPORT, MILITARY, RETIREMENT, LONG_TERM_DISABILITY, BANK_INTEREST, CASH_DEPOSIT, TRANSFER_FROM_APPLICATION, TAX_REFUND, BENEFIT_OTHER, OTHER
last_transaction_date
string
The last detected transaction date for this income source

Format: date
loans
object
An object representing the loan exposure subcategory of the report
loan_payments_counts
object
Details regarding the number of loan payments
baseline_count
number
The number of loan payments made in the 30 days before the subscription date
current_count
number
The current number of loan payments made in the last 30 days
loan_disbursements_count
number
The number of loan disbursements detected in the last 30 days
loan_payment_merchants_counts
object
Details regarding the number of unique loan payment merchants
baseline_count
number
The number of unique loan payment merchants detected in the 30 days before the subscription date
current_count
number
The current number of unique loan payment merchants detected in the last 30 days
1{
2 "user_insights_id": "028e8404-a013-4a45-ac9e-002482f9cafc",
3 "items": [
4 {
5 "date_generated": "2023-03-30T18:27:37Z",
6 "item_id": "AZMP7JrGXgtPd3AQMeg7hwMKgk5E8qU1V5ME7",
7 "status": {
8 "status_code": "AVAILABLE"
9 },
10 "insights": {
11 "income": {
12 "income_sources": [
13 {
14 "income_source_id": "f17efbdd-caab-4278-8ece-963511cd3d51",
15 "income_description": "“PLAID_INC_DIRECT_DEP_PPD”",
16 "income_category": "SALARY",
17 "last_transaction_date": "2023-03-30"
18 }
19 ],
20 "forecasted_monthly_income": {
21 "baseline_amount": 10000,
22 "current_amount": 12000
23 },
24 "total_monthly_income": {
25 "baseline_amount": 10770.93,
26 "current_amount": 20000.31
27 },
28 "historical_annual_income": {
29 "baseline_amount": 120000,
30 "current_amount": 144000
31 },
32 "income_sources_counts": {
33 "baseline_count": 1,
34 "current_count": 1
35 }
36 },
37 "loans": {
38 "loan_payments_counts": {
39 "baseline_count": 1,
40 "current_count": 1
41 },
42 "loan_payment_merchants_counts": {
43 "baseline_count": 1,
44 "current_count": 1
45 },
46 "loan_disbursements_count": 1
47 }
48 }
49 }
50 ],
51 "request_id": "m8MDnv9okwxFNBV"
52}
Was this helpful?

/cra/monitoring_insights/subscribe

Subscribe to Monitoring Insights

This endpoint allows you to subscribe to insights for a user's linked CRA items, which are updated every day (best-effort).

cra/monitoring_insights/subscribe

Request fields

client_id
string
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.
secret
string
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.
user_token
requiredstring
The user token associated with the User data is being requested for.
webhook
requiredstring
URL to which Plaid will send Monitoring Insights webhooks, for example when the requested Monitoring Insights is ready.
income_categories
[string]
Income categories to include in Cash Flow Updates. If empty or null, this field will default to including all possible categories.

Possible values: SALARY, UNEMPLOYMENT, CASH, GIG_ECONOMY, RENTAL, CHILD_SUPPORT, MILITARY, RETIREMENT, LONG_TERM_DISABILITY, BANK_INTEREST, CASH_DEPOSIT, TRANSFER_FROM_APPLICATION, TAX_REFUND, BENEFIT_OTHER, OTHER
Select Language
1try {
2 const response = await client.craMonitoringInsightsSubscribe({
3 user_token: 'user-environment-1234567-abcd-abcd-1234-1234567890ab',
4 webhook: 'https://example.com/webhook',
5 income_categories: [CreditBankIncomeCategory.Salary],
6 });
7} catch (error) {
8 // handle error
9}
cra/monitoring_insights/subscribe

Response fields and example

request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
subscription_id
string
A unique identifier for the subscription.
1{
2 "subscription_id": "f17efbdd-caab-4278-8ece-963511cd3d51",
3 "request_id": "GVzMdiDd8DDAQK4"
4}
Was this helpful?

/cra/monitoring_insights/unsubscribe

Unsubscribe from Monitoring Insights

This endpoint allows you to unsubscribe from previously subscribed Monitoring Insights.

cra/monitoring_insights/unsubscribe

Request fields

client_id
string
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.
secret
string
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.
subscription_id
requiredstring
A unique identifier for the subscription.
Select Language
1try {
2 const response = await client.craMonitoringInsightsUnsubscribe({
3 subscription_id: '"f17efbdd-caab-4278-8ece-963511cd3d51"',
4 });
5} catch (error) {
6 // handle error
7}
cra/monitoring_insights/unsubscribe

Response fields and example

request_id
string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
1{
2 "request_id": "GVzMdiDd8DDAQK4"
3}
Was this helpful?

Webhooks

When you create a new report, either by creating a Link token with a Plaid Check product, or by calling /cra/check_report/create, Plaid Check will start generating a report for you. When the report has been created (or the report creation fails), Plaid Check will let you know by sending you either a CHECK_REPORT: CHECK_REPORT_READY or CHECK_REPORT: CHECK_REPORT_FAILED webhook.

CHECK_REPORT_READY

Fired when the Check Report are ready to be retrieved. Once this webhook has fired, the report will be available to retrieve for 24 hours.

webhook_type
string
CHECK_REPORT
webhook_code
string
CHECK_REPORT_READY
user_id
string
The user_id corresponding to the user the webhook has fired for.
successful_products
[string]
Specifies a list of products that have successfully been generated for the report.

Possible values: cra_base_report, cra_income_insights, cra_cashflow_insights, cra_partner_insights, cra_network_insights
failed_products
[string]
Specifies a list of products that have failed to generate for the report. Additional detail on what caused the failure can be found by calling the product /get endpoint.

Possible values: cra_base_report, cra_income_insights, cra_cashflow_insights, cra_partner_insights, cra_network_insights
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CHECK_REPORT",
3 "webhook_code": "CHECK_REPORT_READY",
4 "user_id": "wz666MBjYWTp2PDzzggYhM6oWWmBb",
5 "successful_products": [
6 "cra_base_report"
7 ],
8 "environment": "production"
9}
Was this helpful?

CHECK_REPORT_FAILED

Fired when a Check Report has failed to generate

webhook_type
string
CHECK_REPORT
webhook_code
string
CHECK_REPORT_FAILED
user_id
string
The user_id corresponding to the user the webhook has fired for.
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CHECK_REPORT",
3 "webhook_code": "CHECK_REPORT_FAILED",
4 "user_id": "wz666MBjYWTp2PDzzggYhM6oWWmBb",
5 "environment": "production"
6}
Was this helpful?

Cash flow updates webhooks

These webhooks are specific to the Cash Flow Updates (beta) product.

INSIGHTS_UPDATED

For each user enabled for Cash Flow Updates, this webhook will fire every day with information on the status of the update. Upon receiving the webhook, call /cra/monitoring_insights/get to retrieve the updated insights.

webhook_type
string
CASH_FLOW_UPDATES
webhook_code
string
INSIGHTS_UPDATED
status
string
Enum for the status of the insights

Possible values: AVAILABLE, FAILED, PENDING, UNSUPPORTED, UNHEALTHY
user_id
string
The user_id that the report is associated with
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CASH_FLOW_UPDATES",
3 "webhook_code": "INSIGHTS_UPDATED",
4 "status": "AVAILABLE",
5 "user_id": "9eaba3c2fdc916bc197f279185b986607dd21682a5b04eab04a5a03e8b3f3334",
6 "environment": "production"
7}
Was this helpful?

LARGE_DEPOSIT_DETECTED

For each user enabled for Cash Flow Updates, this webhook will fire when an update detects a deposit over $5,000. Upon receiving the webhook, call /cra/monitoring_insights/get to retrieve the updated insights.

webhook_type
string
CASH_FLOW_UPDATES
webhook_code
string
LARGE_DEPOSIT_DETECTED
status
string
Enum for the status of the insights

Possible values: AVAILABLE, FAILED, PENDING, UNSUPPORTED, UNHEALTHY
user_id
string
The user_id that the report is associated with
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CASH_FLOW_UPDATES",
3 "webhook_code": "LARGE_DEPOSIT_DETECTED",
4 "status": "AVAILABLE",
5 "user_id": "9eaba3c2fdc916bc197f279185b986607dd21682a5b04eab04a5a03e8b3f3334",
6 "environment": "production"
7}
Was this helpful?

LOW_BALANCE_DETECTED

For each user enabled for Cash Flow Updates, this webhook will fire when an update detects a balance below $100. Upon receiving the webhook, call /cra/monitoring_insights/get to retrieve the updated insights.

webhook_type
string
CASH_FLOW_UPDATES
webhook_code
string
LOW_BALANCE_DETECTED
status
string
Enum for the status of the insights

Possible values: AVAILABLE, FAILED, PENDING, UNSUPPORTED, UNHEALTHY
user_id
string
The user_id that the report is associated with
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CASH_FLOW_UPDATES",
3 "webhook_code": "LOW_BALANCE_DETECTED",
4 "status": "AVAILABLE",
5 "user_id": "9eaba3c2fdc916bc197f279185b986607dd21682a5b04eab04a5a03e8b3f3334",
6 "environment": "production"
7}
Was this helpful?

NEW_LOAN_PAYMENT_DETECTED

For each user enabled for Cash Flow Updates, this webhook will fire when an update detects a new loan payment. Upon receiving the webhook, call /cra/monitoring_insights/get to retrieve the updated insights.

webhook_type
string
CASH_FLOW_UPDATES
webhook_code
string
NEW_LOAN_PAYMENT_DETECTED
status
string
Enum for the status of the insights

Possible values: AVAILABLE, FAILED, PENDING, UNSUPPORTED, UNHEALTHY
user_id
string
The user_id that the report is associated with
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CASH_FLOW_UPDATES",
3 "webhook_code": "NEW_LOAN_PAYMENT_DETECTED",
4 "status": "AVAILABLE",
5 "user_id": "9eaba3c2fdc916bc197f279185b986607dd21682a5b04eab04a5a03e8b3f3334",
6 "environment": "production"
7}
Was this helpful?

NSF_OVERDRAFT_DETECTED

For each user enabled for Cash Flow Updates, this webhook will fire when an update includes an NSF overdraft transaction. Upon receiving the webhook, call /cra/monitoring_insights/get to retrieve the updated insights.

webhook_type
string
CASH_FLOW_UPDATES
webhook_code
string
NSF_OVERDRAFT_DETECTED
status
string
Enum for the status of the insights

Possible values: AVAILABLE, FAILED, PENDING, UNSUPPORTED, UNHEALTHY
user_id
string
The user_id that the report is associated with
environment
string
The Plaid environment the webhook was sent from

Possible values: sandbox, production
1{
2 "webhook_type": "CASH_FLOW_UPDATES",
3 "webhook_code": "NSF_OVERDRAFT_DETECTED",
4 "status": "AVAILABLE",
5 "user_id": "9eaba3c2fdc916bc197f279185b986607dd21682a5b04eab04a5a03e8b3f3334",
6 "environment": "production"
7}
Was this helpful?
Developer community
GitHub
GitHub
Stack Overflow
Stack Overflow
YouTube
YouTube
Discord
Discord