Back to articles
I built a local-only PDF bank statement parser with a plugin system — here's how it works
NewsTools

I built a local-only PDF bank statement parser with a plugin system — here's how it works

via Dev.toTioZe

I built a local-only PDF bank statement parser — here's how it works Every month I'd open my credit card PDF, manually copy transactions into a spreadsheet, and think "there has to be a better way." So I built banksheet . What it does banksheet parses bank statement PDFs into CSV, Excel, or JSON — entirely on your machine. No cloud, no AI, no external APIs. npx banksheet parse statement.pdf npx banksheet parse statement.pdf -f excel -o output.xlsx The plugin architecture The interesting part is how new banks get added. Each bank is a single folder implementing two functions: export const myBankParser : BankParser = { name : ' My Bank ' , country : ' US ' , detect ( text : string ): boolean { return /My Bank Statement/i . test ( text ); }, parse ( text : string ): Transaction [] { // extract transactions from raw PDF text return transactions ; }, }; That's it. detect() tells the engine whether this PDF belongs to that bank. parse() extracts the transactions. Auto-detection tries all reg

Continue reading on Dev.to

Opens in a new tab

Read Full Article
2 views

Related Articles