Your bank emails alreadyknow every transaction.

Transactions turns every bank and payment notification in your inbox into a clean, structured transaction — automatically, the moment it lands. Deterministic. No copy-paste. No LLM guesswork.

The data is already in your inbox

You just have no way to use it. You have felt every one of these.

Your inbox is the ledger

Every debit, credit, and card swipe pings your inbox. Then it sits there — unread, unstructured, unused.

Copy-paste into spreadsheets

Open the mail, find the amount, retype it into a sheet. Every day. Forever. Until you give up.

Every bank writes emails differently

HDFC, Amazon Pay, your card issuer — each with its own subject lines, layouts, and phrasing. No standard.

Transactions slip through

Miss one email and a transaction vanishes from your books. No alert. No reconciliation. Just a gap.

AI that guesses differently each time

Hand a mail to an LLM and the same email can parse two ways. Numbers you cannot trust are worse than none.

Nothing talks to your systems

Even once you read it, the data is stuck in Gmail. No API, no webhook, no way into your ERP or sheet.

What this is

An extraction engine for your bank emails.

Connect the inbox where your bank and payment alerts arrive. We watch it, parse every notification into a normalized transaction, and deliver it wherever your finance stack needs it.

Watches your inbox for you

Direct IMAP polling — no mail-forwarding rules, no browser extension. Point us at the mailbox and forget it.

Deterministic by design

A declarative rule engine per source — not an LLM. The same email always parses the same way, every time.

Delivered, not trapped

Normalized transactions pushed by webhook and served over a REST API. Straight into your ERP, sheet, or ledger.

From inbox to transaction, automatically.

Four steps run on every email that lands — no clicks after setup.

01
Connect a mailbox

Point us at the inbox your bank and payment alerts land in. Credentials are encrypted at rest.

02
We poll and match

We poll over IMAP, dedupe on message ID, and match each mail against the source it came from.

03
Parse to a transaction

A deterministic progressive parser extracts amount, counterparty, and date into a clean transaction.

04
Deliver it downstream

The transaction is pushed to your webhook and available over the API — no LLM, no manual entry.

Clean transactions. Every door.

Once an email becomes a transaction, it is reachable however your systems want it.

Webhooks

Every parsed transaction is pushed to your endpoint the moment it is extracted. Retries built in.

REST API

Pull parsed emails and transactions programmatically with API-key auth, pagination, and field selection.

Normalized transactions

One clean schema — inflow, outflow, counterparty, account, date — the same shape for every source.

Multi-currency, native

Every amount stays in its original currency — no lossy conversion. Your books pick the reporting currency.

Credentials encrypted at rest

IMAP secrets are sealed with AES-256-GCM. We read your mail; we never expose how.

Deterministic, not guessed

A declarative rule engine — no LLM. The same email always parses the same way. Reproducible by design.

The real-time feed beneath your books.

Statements gives you the full ledger from PDFs. Transactions gives you the live pulse from email — the moment money moves. Together they keep your finance stack current.

Your ERP · Spreadsheets · Ledger
Where your books live
delivered to
Transactions
Email extraction engine
parsed from
Bank & payment emails
Debit · credit · card · refund alerts

28 bank & payment sources — and growing.

Bank account debits and credits, card alerts, wallet and refund notifications. Each source is a hand-tuned, deterministic filter — accurate, reproducible, and versioned in code.

Stop reading your bank emails.

Connect a mailbox once. Every transaction after that arrives structured, normalized, and ready for your systems.