Developer Reference
API & SDK Reference
Complete programming interfaces, types, and error handling for Rust, Python, and CLI pipelines.
Complete programmatic reference for integrating Bank Statement Parser into your application stack.
Rust Crate (bankstatementparser)
<span class="source rust"><span class="keyword other rust">use</span> <span class="meta path rust">bankstatementparser<span class="punctuation accessor rust">::</span></span><span class="meta block rust"><span class="punctuation section block begin rust">{</span>Parser<span class="punctuation separator rust">,</span> Statement<span class="punctuation separator rust">,</span> Transaction</span><span class="meta block rust"><span class="punctuation section block end rust">}</span></span><span class="punctuation terminator rust">;</span> <span class="storage type rust">let</span> parser <span class="keyword operator rust">=</span> <span class="meta path rust">Parser<span class="punctuation accessor rust">::</span></span>builder<span class="meta group rust"><span class="punctuation section group begin rust">(</span></span><span class="meta group rust"><span class="punctuation section group end rust">)</span></span> .<span class="support function rust">detect_dialects</span><span class="meta group rust"><span class="punctuation section group begin rust">(</span><span class="constant language rust">true</span></span><span class="meta group rust"><span class="punctuation section group end rust">)</span></span> .<span class="support function rust">strict_balance_validation</span><span class="meta group rust"><span class="punctuation section group begin rust">(</span><span class="constant language rust">true</span></span><span class="meta group rust"><span class="punctuation section group end rust">)</span></span> .<span class="support function rust">build</span><span class="meta group rust"><span class="punctuation section group begin rust">(</span></span><span class="meta group rust"><span class="punctuation section group end rust">)</span></span><span class="punctuation terminator rust">;</span> <span class="storage type rust">let</span> statement<span class="punctuation separator rust">:</span> Statement <span class="keyword operator rust">=</span> parser.<span class="support function rust">parse_bytes</span><span class="meta group rust"><span class="punctuation section group begin rust">(</span><span class="keyword operator rust">&</span>pdf_bytes</span><span class="meta group rust"><span class="punctuation section group end rust">)</span></span><span class="keyword operator rust">?</span><span class="punctuation terminator rust">;</span> </span> Python SDK (bankstatementparser)
<span class="source python"><span class="meta statement import python"><span class="keyword control import from python">from</span></span><span class="meta statement import python"><span class="meta import-source python"> <span class="meta import-path python"><span class="meta import-name python">bankstatementparser</span></span> <span class="meta statement import python"><span class="keyword control import python">import</span></span></span></span><span class="meta statement import python"></span><span class="meta statement import python"> <span class="meta generic-name python">parse_statement</span><span class="punctuation separator import-list python">,</span> <span class="meta generic-name python">OutputFormat</span></span> <span class="comment line number-sign python"><span class="punctuation definition comment python">#</span> Parse directly from file path </span><span class="meta qualified-name python"><span class="meta generic-name python">statement</span></span> <span class="keyword operator assignment python">=</span> <span class="meta function-call python"><span class="meta qualified-name python"><span class="variable function python">parse_statement</span></span><span class="punctuation section arguments begin python">(</span><span class="meta function-call arguments python"><span class="meta string python"><span class="string quoted double python"><span class="punctuation definition string begin python">"</span></span></span><span class="meta string python"><span class="string quoted double python">statement.pdf<span class="punctuation definition string end python">"</span></span></span><span class="punctuation separator arguments python">,</span> <span class="variable parameter python">format</span><span class="keyword operator assignment python">=</span><span class="meta qualified-name python"><span class="meta generic-name python">OutputFormat</span><span class="punctuation accessor dot python">.</span><span class="variable other constant python">JSON</span></span></span><span class="punctuation section arguments end python">)</span></span> <span class="comment line number-sign python"><span class="punctuation definition comment python">#</span> Access typed attributes </span><span class="meta function-call python"><span class="meta qualified-name python"><span class="support function builtin python">print</span></span><span class="punctuation section arguments begin python">(</span><span class="meta function-call arguments python"><span class="meta qualified-name python"><span class="meta generic-name python">statement</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">account</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">iban</span></span></span><span class="punctuation section arguments end python">)</span></span> <span class="meta function-call python"><span class="meta qualified-name python"><span class="support function builtin python">print</span></span><span class="punctuation section arguments begin python">(</span><span class="meta function-call arguments python"><span class="meta qualified-name python"><span class="meta generic-name python">statement</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">balances</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">closing</span></span></span><span class="punctuation section arguments end python">)</span></span> <span class="meta statement for python"><span class="keyword control flow for python">for</span> <span class="meta generic-name python">tx</span> <span class="meta statement for python"><span class="keyword control flow for in python">in</span></span></span><span class="meta statement for python"> <span class="meta qualified-name python"><span class="meta generic-name python">statement</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">transactions</span></span><span class="punctuation section block for python">:</span></span> <span class="meta function-call python"><span class="meta qualified-name python"><span class="support function builtin python">print</span></span><span class="punctuation section arguments begin python">(</span><span class="meta function-call arguments python"><span class="meta qualified-name python"><span class="meta generic-name python">tx</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">date</span></span><span class="punctuation separator arguments python">,</span> <span class="meta qualified-name python"><span class="meta generic-name python">tx</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">amount</span></span><span class="punctuation separator arguments python">,</span> <span class="meta qualified-name python"><span class="meta generic-name python">tx</span><span class="punctuation accessor dot python">.</span><span class="meta generic-name python">narrative</span></span></span><span class="punctuation section arguments end python">)</span></span> </span>