Drop in a PDF statement and get clean data ready to import, with columns lined up, dates parsed, and amounts signed correctly. It runs entirely on your device, so the file never leaves your computer.
Runs entirely on your device. Your statement is never uploaded.
Every other converter sends your client's statement to their servers to process it. This one can't, because there are no servers in the loop. The conversion happens inside this browser tab, on your machine.
The statement is read on your own computer and converted in this tab. No upload, no account, no third party touching your client's financial data. Safe for confidential files by default.
The parsed transactions show on screen before you download anything. Verify them against the statement, then export. No black box, no "trust me". You see exactly what you're getting.
Turn off your Wi-Fi after the page loads, then convert a statement anyway. It still works, which it could not do if your file were being sent to a server. Or watch your browser's network tab while you convert: nothing with your data goes out.
The mechanics. A plain Python file (engine.py) runs in your browser
via Pyodide
(the Python interpreter compiled to WebAssembly). PDFs are read with Mozilla's pdf.js and Excel with
SheetJS, both client-side. It reconstructs the table from the statement, lines up the date, description
and amount columns, parses dates, and writes out clean CSV, Excel, or QuickBooks-ready files. None of
that code makes a network request. The libraries each fetch their own files once on page load, never
your data. Scanned-image PDFs can't be read (there's no text layer to extract), so for those a CSV or Excel export
of the statement always works.
What's kept, and where. There's no database and no login. Your statement and its rows live only in this tab's memory and are gone the moment you close it. The statement is never stored or sent anywhere. We do keep privacy-respecting analytics on page visits and clicks to improve the tool, but it never sees your statement, its contents, or its filename, and the upload and results areas are explicitly excluded from it.
Cosmira is built and run hands-on by one developer. The privacy claims aren't a marketing badge, they're how it's built, and you can verify them yourself with the monitor above or your own network tab.
Questions, or a statement that won't convert cleanly? I read every message.
Get in touch