How are you extracting transaction tables from Indian bank statement PDFs? Looking for open-source/on-prem approaches

Reddit r/AI_Agents News

Summary

The author is working on a Credit Underwriting AI Agent and is seeking open-source on-premise approaches to extract structured transaction tables from diverse Indian bank statement PDFs, facing challenges with layout variations and needing reliable extraction methods.

I'm working at an NBFC and currently working on a Credit Underwriting AI Agent. One of the first steps in the pipeline is extracting structured information from customers' bank statement PDFs. This is where I'm currently stuck. The statements can come from different Indian banks (HDFC, ICICI, SBI, Axis, Kotak, etc.), and each bank can have a completely different PDF layout. I need to reliably extract things like: Customer/account information — name, account number, IFSC, branch, etc. Transaction tables — date, narration/description, debit, credit, balance Transaction rows that span multiple lines Statements where the table headers are missing from subsequent pages Both digitally generated PDFs and scanned/image-based PDFs Ideally, the solution should be bank-format agnostic I've tried/considered approaches such as pdfplumber, table extraction libraries, OCR, regex-based parsing, and LLM-based extraction. The biggest problem I'm facing is that even when the text is extracted correctly, the column/row structure gets messed up, especially because many bank PDFs don't contain a real table structure — they're essentially text positioned at different coordinates. Since this is financial/customer data, I would strongly prefer an open-source/on-premise solution rather than sending statements to a third-party API. For anyone who has built something similar: What approach worked best for you? I'm particularly interested in: PDF parsing/layout libraries you recommend OCR models for scanned statements Open-source vision/document AI models Whether you use an LLM/VLM for semantic column mapping How you handle different bank formats without writing completely separate rules for every bank Any techniques for detecting transaction rows and mapping values to the correct columns How you validate the extracted data (e.g., balance reconciliation, debit/credit checks, transaction counts) If you've worked specifically with Indian bank statements, I'd really appreciate hearing about your architecture, libraries/models, or lessons learned. Thanks!
Original Article

Similar Articles

BankStatementLab

Product Hunt

BankStatementLab is an AI-powered tool that converts bank statement PDFs into Excel, CSV, or JSON formats.

How to parse tables from pdf's

Reddit r/AI_Agents

Advice on parsing tables from PDFs by converting to PNGs and using Gemini 3.1 Pro with low thinking, claiming 95% accuracy. Other tools like Extend, Reducto, Landing are poor for this task.