USA Bank Statements


A bank statement is a list of all transactions for a bank account over a set period, usually monthly. The statement includes deposits, charges, withdrawals, as well as the beginning and ending balance for the period. This API only supports USA Banks

The type parameter is us_bank_statement for the Upload endpoint.

NOTE: Please be aware that, at this time, our API does not support Credit Cards and Credit Unions. Rest assured, our development team is actively working on extending our capabilities to include these financial documents. As we continue to enhance and expand our offerings, we will promptly notify our valued users once support for Credit Cards and Credit Unions is implemented.

Fields supported by Docsumo


To customise fields for extraction, please contact Customer Success Management (CSM) Team

Basic Information

Field Name Data Type Field Description
Basic Information___Account Name String Account Name as shown on USA Bank Statements
Basic Information___Account Number String Account Number as mentioned in USA Bank Statements
Basic Information___Bank Name String Bank Name as mentioned in USA Bank Statements
Basic Information___Opening Balance Number Opening Balance as mentioned in USA Bank Statements
Basic Information___Closing Balance Number Closing Balance as mentioned in USA Bank Statements
Basic Information___Start Date String Start Date as mentioned in USA Bank Statements
Basic Information___End Date String End Date as mentioned in USA Bank Statements
Basic Information___Account Address String Account Address as mentioned in USA Bank Statements
Basic Information___Account Type String Account Type as mentioned in USA Bank Statements


Field Name Data Type Field Description
Transactions___Line Items Table First Transaction table extracted from the bank statement
Transactions___Transaction Table__1 Table Second table extracted from the bank statement.

Note: Naming convention followed is- First extracted table is by default called "Transactions___Line Items" and rest of the extracted tables follow the naming convention as "Transactions___Transaction Table <table_no > ".

Features and Coverage


  1. Transaction Tables Recognition: The API accurately identifies and picks up transaction tables from the input data.
  2. Duplicate Data Removal: The API effectively removes any duplicated check data, ensuring clean and unique information.
  3. Automated Processing: The API utilizes opening and closing balances to process documents without human intervention, increasing efficiency.
  4. Balance Tables Utilization: The API also picks up balance tables and uses them for post-processing tasks.
  5. Comprehensive Checks: The API performs three types of balance checks – daily balance, running balance, and opening/closing balance checks, ensuring accurate and reliable results.

STP - Straight Through Processing

Our product is designed to streamline and enhance the extraction process with a focus on efficiency and accuracy. By utilizing our balance check feature, users can confidently approve extractions without the need for human intervention. This is achieved by cross-referencing the balance information gathered from all balances within the statement, ensuring consistency and reliability in the extracted data.

In the event that any inconsistencies are detected, the document will be flagged for manual review. To further facilitate this process, our system intelligently highlights the specific line items in tables that may contain discrepancies, allowing for faster checks and approvals.


Our product offers the ability to split multi-statement PDFs into separate files and process them. Users can upload multi-year, multi-statement scans, and receive combined output data for complex financial queries and analysis. This feature streamlines document management and enhances data processing capabilities.


  1. Page Limitations: The API can process individual files with a maximum of 25 pages and combined files with a maximum of 400 pages.
  2. Table Requirements: Tables must have a Date column and either a Description or Check No. column for the API to recognize and process them.
  3. Amount Specifications: The API supports three ways of specifying amounts in tables: single amounts with +/- signs, separate debit and credit columns, and amounts with debit or credit specified by the title.
  4. Title Locations: The API can recognize titles placed above the table, on the left of the table, between lines indicating the type of data that follows, or in a dedicated title column within the table.
  5. Additional Columns: The API can utilize extra columns for other purposes, such as a balances column for tallying running balances. However, these columns may not be supported for all functionalities.

Banks Supported

While we showcase compatibility with a select list of banks, our API is engineered with a generic framework, empowering it to support data extraction from a vast array of financial institutions that we may not have explicitly tested on.

If you encounter a situation where the bank you intend to work with is not listed, or if the extraction process is not functioning as expected, please do not hesitate to reach out to our dedicated support team. We are committed to assisting you with any necessary customizations that will accommodate your specific requests and ensure a seamless integration with the financial institution of your choice.

Wells Fargo
TD Bank
Santander Bank
PNC Bank
M&T Bank
Citizens Bank
Bank of America (BOA)
Woodforest Bank
Texas Republic Bank
Skylands Community Bank
Nevada State Bank
Lincoln Park Savings Bank
Havens-Fulton Bank
Frost Bank
Flushing Bank
City View Gardens LLC Bank
Bremer Bank
BB&T (Branch Banking and Trust Company)
Bank United
Bank of Jersey
Goldstein Astoria Bank
Astoria Bank
CIBC (Canadian Imperial Bank of Commerce)
Bank of Montreal
Deutsche Bank
Cathay Bank
American Express
Ally Financial
RBC (Royal Bank of Canada)
East West Bank
First Citizen
Columbia Bank
Credit Suisse
The Bank of New York Mellon
Webster Bank
Key Bank
Ally Bank
Bank of Hawaii
South State Bank
Commerce Bank

Error Codes

Error in ServerSomething failed on the server sideContact the support team
ERR_TRANSACTION_DISCREPANCY_XXDiscrepancy identified in transactions listLook for a table with review required cells, correct the value, re-run the validation
ERR_OPENING_CLOSING_BALANCE_DISCREPANCYNo discrepancy in transactions found, so likely the opening and closing balance was wrongUpdate the opening closing balance, re-run the validation
For Acc: 0 ERR_TALLY_PASSED, For Acc: 1 ERR_TRANSACTION_DISCREPANCYAccount wise error listTake action according to the error message corresponding to the account

Error Codes details

Format of the error message:


**Inference -> Document was extracted through bank statement and there was some discrepancy in transaction that was verified.

METAINFO identifies what extractors were used and can be used by developers for quick debugging in case of issues or bugs. For all practical purposes, clients can ignore this metainfo and discard it by discarding last two numeric digits of the error message

Type of ExtractorCode
Bank Statement Extraction01
Credit Card Extraction02
Consolidated Extraction03
Delta Community Special Extraction11
Waukesha Special Extraction12

MESSAGE will give more information of the status of the extraction

there was some discrepancy in the transactions which has been marked
the opening and closing balance were not extracted confidently, we were not able to mark the discrepancy in the transactions.

Consolidated Statements -
The error message formatting remains the same. The only difference is that a consolidated statement, will have information pertaining to multiple account types, the error messages would reflect the value for individual account type.

Lets say we have two account types in a given document. One account type passed the Tally check while other had issue in transactions, then the message should look like this-