Pangkalahatang-ideya
Ang Bank Statement Parser ay ang tanging open-source na Python library na nag-pa-parse ng pitong bank statement format — kasama ang PDF sa pamamagitan ng hybrid LLM pipeline — na may pinag-isang API. Ang mga single-format na library (mt-940, ofxparse, pycamt) ay humahawak ng isang format lamang bawat isa. Ang mga SaaS tool (Ocrolus, Parseur) ay nag-aalok ng cloud OCR ngunit nangangailangan ng pagpapadala ng data sa labas at nagkakahalaga ng $49–$1,000+/buwan.
Mga Open-Source na Alternatibo
Mga Single-Format na Library
Karamihan sa mga open-source na bank statement parser ay humahawak ng isang format lamang. Kung kailangan mo ng maraming format, dapat kang mag-install at magpanatili ng hiwalay na mga library na may iba't ibang API, output schema, at mga update cycle.
| Library | Mga Format | Output | Beripikasyon ng Balanse | Ledger Export | |
|---|---|---|---|---|---|
| Bank Statement Parser | 7 na format | Hybrid pipeline | pandas DataFrame | Golden Rule | hledger, beancount |
| mt-940 (WoLpH) | MT940 lang | Wala | Mga Python object | Wala | Wala |
| ofxparse | OFX lang | Wala | Mga Python object | Wala | Wala |
| pycamt | CAMT.053 lang | Wala | Mga Python object | Wala | Wala |
| ofxtools | OFX v1/v2 lang | Wala | Mga Python object | Wala | Wala |
vs pyiso20022
Ang pyiso20022 ay bumubuo ng mga Python dataclass mula sa buong ISO 20022 schema catalogue. Ito ay isang pangkalahatang layunin na ISO 20022 toolkit para sa pagtatrabaho sa mga PACS, PAIN, CAMT, at ADMI na mensahe.
Ang Bank Statement Parser ay sadyang binuo para sa pag-parse ng mga bank statement sa DataFrames na may mga production feature:
| Tampok | Bank Statement Parser | pyiso20022 |
|---|---|---|
| Layunin | Pag-parse ng statement + extraction + export | ISO 20022 schema toolkit |
| Output | pandas/Polars DataFrames | Mga Python dataclass |
| Mga format | 7 (kasama ang PDF, hindi ISO) | ISO 20022 lang |
| Suporta sa PDF | Hybrid pipeline (deterministic + LLM + vision) | Wala |
| Beripikasyon ng balanse | Golden Rule + multi-currency | Wala |
| REST API | Built-in na FastAPI | Wala |
| Enrichment | LLM-powered na kategorisasyon | Wala |
| Ledger export | hledger + beancount | Wala |
| Streaming | Oo (bounded memory) | Wala |
| PII redaction | Built-in | Wala |
| Deduplikasyon | Idempotent na transaction hash | Wala |
| CLI | Oo | Wala |
Gamitin ang pyiso20022 kung kailangan mong magtrabaho sa buong ISO 20022 message catalogue. Gamitin ang Bank Statement Parser kung kailangan mong mag-parse ng mga bank statement sa structured data para sa pagsusuri, reconciliation, o pag-uulat.
Mga SaaS na Alternatibo
Ang mga SaaS tool tulad ng Ocrolus, Parseur, at Sensible ay nag-aalok ng pag-parse ng bank statement bilang cloud service. Karaniwang gumagamit sila ng OCR para pangasiwaan ang mga na-scan na PDF at sumusuporta sa daan-daang bank-specific na format.
| Tampok | Bank Statement Parser | Mga SaaS Tool |
|---|---|---|
| Pagkapribado ng data | 100% lokal (mga LLM sa pamamagitan ng Ollama) | Ipinapadala ang data sa cloud |
| Gastos | Libre (Apache 2.0) | $49–$1,000+/buwan (mula Q1 2026) |
| Mga format | 7 (structured + PDF) | Daan-daan (sa pamamagitan ng OCR) |
| Suporta sa PDF | Oo — hybrid pipeline (deterministic + LLM + vision) | Oo (cloud OCR) |
| Beripikasyon ng balanse | Golden Rule (awtomatiko) | Manual / limitado |
| Latency | <2 ms (structured), segundo (PDF+LLM) | 1-30 segundo |
| Throughput | 27,000+ tx/segundo (structured) | Limitado ang rate ng API |
| REST API | Built-in na FastAPI | Proprietary |
| Ledger export | hledger + beancount | Wala |
| Vendor lock-in | Wala | Oo |
| Pagsunod | Lokal na pagproseso, SBOM | Nag-iiba ayon sa provider |
Mga LLM-Based na Parser
Dumarami ang mga tool (Inscribe, Unstract, Mozilla.ai blueprints) na gumagamit ng malalaking language model para i-parse ang mga bank statement, kabilang ang mga na-scan na PDF. Nang muling idisenyo ng Chase ang kanilang consumer statement format noong huling bahagi ng 2025, nasira ang mga template-based na parser habang ang mga LLM parser ay awtomatikong nag-adapt.
Kasama na ngayon sa Bank Statement Parser ang sarili nitong hybrid LLM pipeline (v0.0.5+) na tumatakbo nang ganap na lokal sa pamamagitan ng Ollama. Pinagsasama nito ang pinakamahusay ng dalawang pamamaraan:
- Mga structured na format (XML, CSV, OFX, MT940): Deterministikong pag-parse — 100% katumpakan, sub-millisecond na latency, zero LLM na gastos.
- Mga PDF statement: Tatlong-landas na routing (deterministic table extraction → text-LLM → vision-LLM) na may awtomatikong Golden Rule na beripikasyon upang mahuli ang mga error sa extraction.
Hindi tulad ng cloud-only na LLM parser, ang hybrid pipeline ng Bank Statement Parser ay:
- Tumatakbo nang 100% lokal (Ollama) — walang data na umaalis sa iyong makina.
- Bineberipika ang bawat extraction gamit ang beripikasyon ng balanse (Golden Rule).
- Sumusuporta sa interactive review mode para sa mga na-flag na diskrepansya.
- Gumagawa ng idempotent na transaction hash para sa ligtas na incremental ingestion.
Kailan pipiliin ang pure SaaS LLM parser kaysa Bank Statement Parser: Tumatanggap ka ng mga statement mula sa daan-daang bangko na may napakakaibang PDF layout at kailangan mo ng out-of-the-box coverage nang hindi nagpapatakbo ng lokal na infrastructure.
Kailan pipiliin ang Bank Statement Parser: Kailangan mo ng lokal na pagproseso para sa pagsunod. Gusto mo ng beripikasyon ng balanse. Kailangan mo ng ledger export. Gusto mo ng zero na patuloy na gastos.
Pamamaraan ng benchmark: Sinukat ang mga performance figure sa Apple M2, Python 3.12, gamit ang 5,000-transaksyon na CAMT.053 file (2.1 MB). Nag-average ang mga resulta sa 100 run. Mag-reproduce nang lokal: python -m bankstatementparser.bench. SaaS latency batay sa na-publish na API documentation noong Abril 2026.
Tingnan ang mga real-world use case ❯ | Planuhin ang iyong MT940-to-CAMT migration ❯