KeepMyLedgerSign in
← All guides

Bookkeeping without linking your bank

Most personal-finance and accounting apps ask you to connect your bank by entering your online-banking credentials into a third-party aggregator. You don’t have to. Every bank lets you download your own statements, and that’s all you need to keep accurate, categorized, tax-ready books. Here’s the workflow.

Step by step

  1. Download a statement from your bank
    Log in to your bank or card issuer directly and download a statement as PDF or CSV. You stay inside your bank’s own website — no third party ever sees your login.
  2. Import it into KeepMyLedger
    Upload the file. Common statement formats are detected automatically; for CSV you confirm a quick column mapping so the date, amount, and description line up.
  3. Let rules and AI categorize
    Build a rule once (e.g. “COFFEE” → Meals) and it tags matching transactions on every future import. For one-off purchases, optional AI Assist suggests a category when you ask it to.
  4. Review and deduplicate
    Re-importing an overlapping statement is safe — duplicate transactions are detected and skipped, so your totals stay correct.
  5. Export tax-ready reports
    Produce per-category totals, monthly cashflow, and a CSV export tuned for your accountant. Your data is always exportable, with no lock-in.

Common questions

Why avoid linking my bank?

Bank-linking typically routes your credentials through a third-party aggregator and grants ongoing read access to your accounts. Importing statements yourself keeps your banking login between you and your bank, and means no service is continuously pulling your data.

Is importing statements a lot more work?

It’s a download and an upload, usually once a month per account. In exchange you get full control over what data leaves your bank and when. Rules handle the categorization so the recurring effort is minimal.

What file formats can I import?

PDF and CSV statements. Common layouts are parsed automatically, and AI-assisted extraction handles formats that don’t match a known template. CSV imports include a column-mapping step.

Get started, free during betaHow it works