Retrieve data for a user's uploaded bank statements
POST /credit/bank_statements/uploads/get
/credit/bank_statements/uploads/get returns parsed data from bank statements uploaded by users as part of the Document Income flow. If your account is not enabled for Document Parsing, contact your account manager to request access.
Request Body
Required
CreditBankStatementsUploadsGetRequest defines the request schema for /credit/bank_statements/uploads/get
Parameters
client_id
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
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
The user token associated with the User data is being requested for.
options
An optional object for
/credit/bank_statements/uploads/get request options.
item_ids
An array of
item_ids whose bank statements information is returned. Each item_id should uniquely identify a bank statements uploaded item. If this field is not provided, all item_ids associated with the user_token will returned in the response.
Response
CreditBankStatementsUploadsGetResponse defines the response schema for /credit/bank_statements/uploads/get
Response Properties
items
Array of bank statement upload items.
item_id
The
item_id of the Item associated with this webhook, warning, or error
bank_statements
transactions
An array of transactions appearing on the bank statement.
amount
The value of the transaction. A negative amount indicates that money moved into the account (such as a paycheck being deposited).
date
The date of when the transaction was made, in ISO 8601 format (YYYY-MM-DD).
original_description
The raw description of the transaction as it appears on the bank statement.
account_id
The unique id of the bank account that this transaction occurs in
document_metadata
Object representing metadata pertaining to the document.
name
The name of the document.
document_type
The type of document.
PAYSTUB: A paystub.
BANK_STATEMENT: A bank statement.
US_TAX_W2: A W-2 wage and tax statement provided by a US employer reflecting wages earned by the employee.
US_MILITARY_ERAS: An electronic Retirement Account Statement (eRAS) issued by the US military.
US_MILITARY_LES: A Leave and Earnings Statement (LES) issued by the US military.
US_MILITARY_CLES: A Civilian Leave and Earnings Statement (CLES) issued by the US military.
GIG: Used to indicate that the income is related to gig work. Does not necessarily correspond to a specific document type.
PLAID_GENERATED_PAYSTUB_PDF: Used to indicate that the PDF for the paystub was generated by Plaid.
NONE: Used to indicate that there is no underlying document for the data.
UNKNOWN: Document type could not be determined.
download_url
Signed URL to retrieve the document(s). The payload will be a .zip file containing the document(s).
For Payroll Income, the file type of the documents will always be PDF, and the documents may not be available, in which case the field will be
null. If you would like Plaid to generate a PDF if the original is not available, contact your Account Manager. Example generated pay stub.
For Document Income, this field will not be null, and the file type of the underlying document(s) will be the original file type uploaded by the user. For more details on available file types, see the Document Income documentation.
This download URL can only be used once and expires after two minutes. To generate a new download URL, call /credit/payroll_income/get again.
status
The processing status of the document.
PROCESSING_COMPLETE: The document was successfully processed.
DOCUMENT_ERROR: The document could not be processed. Possible causes include: The document was an unacceptable document type such as an offer letter or bank statement, the document image was cropped or blurry, or the document was corrupted.
UNKNOWN or null: An internal error occurred. If this happens repeatedly, contact support or your Plaid account manager.
page_count
The number of pages of the uploaded document (if available).
error_message
The reason why a failure occurred during document processing (if available).
document_id
An identifier of the document referenced by the document metadata.
bank_accounts
An array of bank accounts associated with the uploaded bank statement.
name
The name of the bank account
bank_name
The name of the bank institution.
account_type
The type of the bank account.
account_number
The bank account number.
owner
An object containing data about the owner of the bank account for the uploaded bank statement.
name
The name of the account owner
address
Address on the uploaded bank statement
periods
An array of period objects, containing more data on the overall period of the statement.
start_date
The start date of the statement period in ISO 8601 format (YYYY-MM-DD).
end_date
The end date of the statement period in ISO 8601 format (YYYY-MM-DD).
starting_balance
The starting balance of the bank account for the period.
ending_balance
The ending balance of the bank account for the period.
account_id
The unique id of the bank account
status
Details about the status of the payroll item.
processing_status
Denotes the processing status for the verification.
UNKNOWN: The processing status could not be determined.
PROCESSING_COMPLETE: The processing has completed and the user has approved for sharing. The data is available to be retrieved.
PROCESSING: The verification is still processing. The data is not available yet.
FAILED: The processing failed to complete successfully.
APPROVAL_STATUS_PENDING: The processing has completed but the user has not yet approved the sharing of the data.
updated_at
Timestamp in ISO 8601 format (YYYY-MM-DDTHH:mm:ssZ) indicating the last time that the Item was updated.
request_id
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.