Retrieve a Base Report

POST /cra/check_report/base_report/get

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.

Request Body

Required

BaseReportGetRequest defines the request schema for /cra/check_report/base_report/get

Parameters

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.
third_party_user_token
string
The third-party user token associated with the requested User data.
user_id
object
item_ids
array[string]
The item IDs to include in the Base Report. If not provided, all items associated with the user will be included.

Response

CraCheckReportBaseReportGetResponse defines the response schema for /cra/check_report/base_report/get

Response Properties

report
required, object
An object representing a Base Report
report_id
required, string
A unique ID identifying an Base Report. Like all Plaid identifiers, this ID is case sensitive.
date_generated
required, string
The date and time when the Base Report was created, in ISO 8601 format (e.g. “2018-04-12T03:32:11Z”).
days_requested
required, number
The number of days of transaction history requested.
client_report_id
string
Client-generated identifier, which can be used by lenders to track loan applications.
items
required, array[object]
Data returned by Plaid about each of the Items included in the Base Report.
institution_name
required, string
The full financial institution name associated with the Item.
institution_id
required, string
The id of the financial institution associated with the Item.
date_last_updated
required, string
The date and time when this Item’s data was last retrieved from the financial institution, in ISO 8601 format.
item_id
required, string
The item_id of the Item associated with this webhook, warning, or error
accounts
required, array[object]
Data about each of the accounts open on the Item.
account_id
required, 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
required, object
Information about an account’s balances.
available
required, number
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.
current
required, number
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.
limit
required, number
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.
iso_currency_code
required, string
The ISO-4217 currency code of the balance. Always null if unofficial_currency_code is non-null.
unofficial_currency_code
required, string
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
string
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.
average_balance
number
The average historical balance for the entire report
average_monthly_balances
array[object]
The average historical balance of each calendar month
most_recent_thirty_day_average_balance
number
The average historical balance from the most recent 30 days
consumer_disputes
required, array[object]
The information about previously submitted valid dispute statements by the consumer
consumer_dispute_id
required, string
(Deprecated) A unique identifier (UUID) of the consumer dispute that can be used for troubleshooting
dispute_field_create_date
required, string
Date of the disputed field (e.g. transaction date), in an ISO 8601 format (YYYY-MM-DD)
category
required, string
Type of data being disputed by the consumer
statement
required, string
Text content of dispute
mask
required, string
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
required, object
Metadata about the extracted account.
start_date
required, string
The beginning of the range of the financial institution provided data for the account, in ISO 8601 format (“yyyy-mm-dd”).
end_date
required, string
The end of the range of the financial institution provided data for the account, in ISO 8601 format (“yyyy-mm-dd”).
name
required, string
The name of the account, either assigned by the user or by the financial institution itself
official_name
required, string
The official name of the account as given by the financial institution
type
required, 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.
subtype
required, string
See the Account type schema for a full listing of account types and corresponding subtypes.
days_available
required, 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.
transactions
required, array[object]
Transaction history associated with the account. 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
required, string
The ID of the account in which this transaction occurred.
amount
required, 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.
iso_currency_code
required, string
The ISO-4217 currency code of the transaction. Always null if unofficial_currency_code is non-null.
unofficial_currency_code
required, string
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.
name
string
The merchant name or transaction description. Note: This is a legacy field that is not actively maintained. Use merchant_name instead for the merchant name.
original_description
required, string
The string returned by the financial institution to describe the transaction.
credit_category
object
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.
check_number
string
The check number of the transaction. This field is only populated for check transactions.
date
required, 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 ).
date_transacted
string
The date on which the transaction took place, in IS0 8601 format.
location
object
A representation of where a transaction took place
merchant_name
string
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
required, 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
string
The name of the account owner. This field is not typically populated and only relevant when dealing with sub-accounts.
transaction_id
required, string
The unique ID of the transaction. Like all Plaid identifiers, the transaction_id is case sensitive.
transaction_type
string
digital: transactions that took place online. place: transactions that were made at a physical location. special: transactions that relate to banks, e.g. fees or deposits. unresolved: transactions that do not fit into the other types.
category
array[string]
A hierarchical array of the categories to which this transaction belongs. For a full list of categories, see /categories/get.
category_id
string
The ID of the category to which this transaction belongs. For a full list of categories, see /categories/get.
owners
required, array[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
required, array[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
required, array[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.
emails
required, array[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.
addresses
required, array[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.
ownership_type
required, string
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.
historical_balances
array[object]
Calculated data about the historical balances on the account. Currently not supported by brokerage or investment accounts.
date
required, string
The date of the calculated historical balance, in an ISO 8601 format (YYYY-MM-DD)
current
required, number
The total amount of funds in the account, calculated from the current balance in the balance object by subtracting inflows and adding back outflows according to the posted date of each transaction. If the account has any pending transactions, historical balance amounts on or after the date of the earliest pending transaction may differ if retrieved in subsequent Asset Reports as a result of those pending transactions posting.
iso_currency_code
required, string
The ISO-4217 currency code of the balance. Always null if unofficial_currency_code is non-null.
unofficial_currency_code
required, string
The unofficial currency code associated with the balance. Always null if iso_currency_code is non-null. See the currency code schema for a full listing of supported unofficial_currency_codes.
account_insights
object
Calculated insights derived from transaction-level data. This field has been deprecated in favor of Base Report attributes aggregated across accounts and will be removed in a future release.
oldest_transaction_date
string
Date of the earliest transaction for the account.
most_recent_transaction_date
string
Date of the most recent transaction for the account.
days_available
integer
Number of days days available for the account.
average_days_between_transactions
number
Average number of days between sequential transactions
longest_gaps_between_transactions
array[object]
Longest gap between sequential transactions in a time period. This array can include multiple time periods.
number_of_inflows
array[object]
The number of debits into the account. This array will be empty for non-depository accounts.
average_inflow_amounts
array[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.
number_of_outflows
array[object]
The number of outflows from the account. This array will be empty for non-depository accounts.
average_outflow_amounts
array[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.
number_of_days_no_transactions
integer
Number of days with no transactions
attributes
object
Calculated attributes derived from transaction-level data.
is_primary_account
boolean
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
number
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
object
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.
total_inflow_amount_30d
object
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.
total_inflow_amount_60d
object
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.
total_inflow_amount_90d
object
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.
total_outflow_amount
object
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.
total_outflow_amount_30d
object
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.
total_outflow_amount_60d
object
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.
total_outflow_amount_90d
object
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.
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
object
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
required, number
Value of amount with up to 2 decimal places.
iso_currency_code
required, string
The ISO 4217 currency code of the amount or balance.
unofficial_currency_code
required, string
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
required, array[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
required, string
The warning type, which will always be BASE_REPORT_WARNING
warning_code
required, 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.
cause
required, 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.
request_id
required, string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.