Security & Data Handling
A bank statement is a sensitive document. Here is exactly what happens to every PDF you upload — no storage, no model training, automatic deletion.
Files are not stored
When you upload a recognized bank format, the PDF is processed in server memory and never written to disk. It is wiped from memory the moment processing finishes.
Unknown formats are held briefly
A layout the system does not yet recognize is stored temporarily on encrypted disk for automatic format learning, then permanently deleted once learning completes (typically within 24 hours).
Never used to train models
Your statement content is never added to any AI model's training data. The only thing learned is the column layout (a template) — not your transaction amounts, names, or balances.
Encryption end to end
All traffic is encrypted with TLS 1.2+. Temporary PDF storage uses an encrypted disk partition. Passwords are hashed with PBKDF2; plaintext passwords are never stored anywhere.
Scoped authentication
API access uses a per-user key (pex_…) or a short-lived JWT. You can revoke keys instantly from the dashboard. Session cookies are httpOnly and secure.
No third-party data sharing
All processing, including OCR, runs locally on our own servers. Your PDF content is never sent to any external service (cloud OCR, LLM APIs, etc.). Payment data lives only with Paddle, not with us.
Retention periods
Your part
- Keep your API keys secret; if one leaks, revoke it instantly from the dashboard and generate a new one.
- Your webhook URL must be a public HTTPS address (SSRF protection) — internal addresses are rejected.
- If you use the demo on a shared machine, close the browser tab when you are done.