Skip to content

Bank statement to Tally vouchers: check the ledger names first

Six steps for password-protected PDF statements from SBI, HDFC and Union Bank of India, built around one check: the ledger names in your mapping against your live book.

Tapish Khandelwal·3 October 2026·For release 0.4.1·9 min read

#?

The single biggest reason a whole import gets rejected, our documentation says, is that nobody checked the ledger names against the book.

Release 0.4.2 is out. This post describes release 0.4.1. If you install 0.4.2:

  • Remove the older extension in Claude Desktop first: 0.4.2 installs beside an older one instead of replacing it (seen with 0.4.1 on a Mac and expected for earlier versions; not tried on Windows). Keep ComplyEaze Bridge’s data folder, which both versions use.
  • Enter your settings again, including the Terms setting, which every tool needs. Posting starts off, and Response redaction starts at none, so set it again if you had shortened or masked names.
  • Its posts no longer tag the narration, and it matches a posted voucher another way. Check what it posted with verify_import, never voucher_presence, before entering anything again by hand. The one-voucher post the extension makes has not been run live with this matching. From the first post 0.4.2 sends to Tally, even one Tally refuses or never answers, do not run 0.4.1 or earlier on that computer: they stop preparing, posting and checking vouchers.
  • If you asked 0.4.1 or earlier to read a ledger, such as its movement or vouchers, by a name that differed from its spelling by a symbol, an accent or words run together, the figures may be for a different ledger with the same letters and digits. Ask again with 0.4.2.

The changelog has the rest.

ComplyEaze Bridge is an extension for Claude Desktop that reads the TallyPrime on your own computer. Before it builds a voucher file from a bank statement, it checks the ledger names in your mapping against your live book. Take a made-up book with two ledgers, “Demo Traders Pvt Ltd” and “Sample Hardware (9876543210)”. Suppose the mapping names four ledgers. Each comes back as one of four things.

Status. ComplyEaze Bridge is still being developed and is not yet code-signed, and our README records no run of this tool itself on a real bank statement, so try it on a test company, with a backup. If you have 0.3.0 or 0.4.0, remove it and install 0.4.1 or later first. What Claude reads from a statement goes to your AI provider; “Your client’s data”, under the limits, says what.

Pick a name from the mapping to see why it got its result.

Ledger names in your mapping

Ledgers in the book

  • Demo Traders Pvt Ltd
  • Sample Hardware (9876543210)

“Brand New Party” is not in the book.

Close, not equal

Demo Traders possibly listed as a candidate: Demo Traders Pvt Ltd

ComplyEaze Bridge does not decide whether that is “Demo Traders Pvt Ltd”. It may list candidates, and the list can be empty or cut short. Someone has to name the exact ledger, and you check it, even when there is only one candidate.

Into the file? Not until someone names the exact ledger.

Exact

Demo Traders Pvt Ltd Demo Traders Pvt Ltd

It equals a live ledger, so it can go into the file. Only exact names go in.

Into the file? It can, once you check it is the right party.

Identified by a long number

SAMPLE HW 9876543210 Sample Hardware (9876543210)

The number 9876543210 also appears in exactly one ledger’s name, so it identifies that ledger. ComplyEaze Bridge returns the ledger’s exact spelling, the assistant must use it, and you check that it is the right party.

Into the file? Only under the exact spelling, “Sample Hardware (9876543210)”, after you check it.

Missing

Brand New Party No ledger matches

It matches nothing. ComplyEaze Bridge never creates ledgers.

Into the file? No.

Illustrative. The four results follow the rule in step 3; we have not run the matcher on these exact names.

Six steps, and who does each

  1. 1. Read the statement

    You

    Tell Claude which PDF to read, which file holds its password, the last digits of the account number and the statement’s figures. Keep both files on the computer’s own disk.

    ComplyEaze Bridge

    Refuses the whole statement unless the account number ends with your digits and the balances and printed totals match your figures. The balance and total checks are arithmetic; they do not tell you whether a party or a ledger is right.

  2. 2. Say who each party is

    You

    Decide which ledger each printed name is (Claude writes the mapping), answer each cash question, and look for cash lines it does not recognise (for example SBI cash deposits and HDFC cash text).

    ComplyEaze Bridge

    Sends a party you leave out, or one it cannot identify, to the suspense ledger you name, tagged.

  3. 3. Check the ledger names against the book

    You

    Fix the names, and check the ledger chosen for each party.

    ComplyEaze Bridge

    Reads your live ledger list and compares the names in your mapping; only exact names go in. It does not promise Tally will accept the file.

  4. 4. Prepare the file

    You

    Look in Tally before you import again; the duplicate check has holes.

    ComplyEaze Bridge

    Writes a voucher file on your computer and sends it nowhere.

  5. 5. Get it into Tally

    You

    Open the right company, then Gateway of Tally, Import, Vouchers.

    ComplyEaze Bridge

    Nothing: you import the file.

  6. 6. Read it back, then look in Tally

    You

    Ask Claude to read the batch back, then check the bank ledger against the statement and look at what went to suspense.

    ComplyEaze Bridge

    Compares the date, voucher type and entries, and reports anything missing, different or duplicated. A match does not mean the entry is correct, complete or compliant.

How the tool is built to work. Our README records no run of this tool itself on a real bank statement; see “Before you try it”.

1. Read the statement

You tell Claude which PDF to read, which file holds its password, and the last digits of the account number. Keep both files on the computer’s own disk, not on a network drive, and on Windows restrict who can read the password file yourself.

The tool refuses the whole statement unless the account number ends with the digits you gave and the running balances, the closing balance and the debit and credit totals (where the statement prints them) match the figures you supply. These balance and total checks are arithmetic on the figures you supplied. They do not tell you whether a party or a ledger is right.

The full list of proposed vouchers goes into a file on your computer, every row, unmasked, and it stays until you remove it (section 7 of the Privacy Policy says how to archive it). Claude gets a summary, and it goes to your AI provider like any other result; “Your client’s data”, under the limits below, says what the summary holds.

2. Say who each party is

Claude writes a mapping: for each name printed on the statement, which ledger it is. You decide. A party you leave out, or one the tool cannot identify, goes to the suspense ledger you name, tagged so you can find it later. A transfer that another account’s Contra already carries can be skipped.

Cash gets its own question. Only SBI “ATM WDL” withdrawals and Union Bank “BY CASH” deposits are recognised as cash. For those, it asks what the cash was for, and it will not build the file until you have answered every one. “I don’t know” is an answer; it goes to suspense, tagged.

Other cash text is not recognised, so it gets no question. It is treated as an ordinary party, or goes to suspense as unidentified. That covers, for example, SBI cash deposits and HDFC cash text. Look for those lines yourself.

3. Check the ledger names against the book

This is the step our documentation is talking about. The ledger names in your mapping are what ComplyEaze Bridge checks: it reads your live ledger list and compares. The spelling printed on the statement is not checked unless Claude passes it in. The check goes after the biggest cause the documentation names. It does not promise Tally will accept the file.

A long number, as in the example above, counts when it is a run of eight or more digits standing alone, or a code of at least eight letters and digits with at least three digits and two letters. Dates and period labels do not count.

Fix the names, then go on. The assistant can misread a name or pick a wrong ledger, so you choose the ledger and you check the choice.

4. Prepare the file

It writes a voucher file on your computer, with Payment, Receipt or Contra vouchers. It sends it nowhere. Where the statement carries a bank reference, the tool writes it into the voucher’s narration, and the files have no separate voucher number or reference.

It refuses to build a row it already knows it sent or found posted. That knowledge has holes.

Some things its duplicate check cannot see

  • A batch you imported by hand, until the read-back has recorded the whole batch as matching.
  • The same file imported twice by hand.
  • A batch posted after this file was built.
  • A voucher you typed by hand.
  • Another computer’s journal, or an archived journal.
  • An export with different formatting.

So read a batch you imported by hand back straight after you import it, and look in Tally before you import again.

5. Get it into Tally

Import the file yourself. Open the right company, then Gateway of Tally, Import, Vouchers. ComplyEaze Bridge does not do this step. It can post a voucher itself, but only one per batch, so that route does not suit a statement with several rows (the limits are below).

6. Read it back, then look in Tally

Ask Claude to read the batch back from Tally. A read-back asks Tally to show what it now holds. ComplyEaze Bridge compares the date, voucher type and entries and reports anything missing, different or duplicated. A match does not mean the entry is correct, complete or compliant, and it does not compare every field. Open Tally, check the bank ledger against the statement, and look at what went to suspense.

Before you try it

You need TallyPrime and Claude Desktop on the same computer, Windows (x64) or an Apple Silicon Mac (on a Mac, TallyPrime runs in a Windows virtual machine, with the connection forwarded locally). You need ComplyEaze Bridge installed, with the Terms of Use accepted in its settings, the company open in Tally, and a password-protected PDF statement from SBI, HDFC or Union Bank of India. No other bank is read.

What we have on record

We are still developing it. It is not yet code-signed, and we have not yet run the published 0.4.1 file in Claude Desktop. Files of this shape, built by hand and not by this tool, went into TallyPrime Gold 7.1 through Gateway of Tally, Import, Vouchers on 10 September: 147 Payments, Receipts and Contras in four files, every one created, and each bank ledger’s totals matched its statement on read-back. Our README records no run of this tool itself on a real bank statement; the release check parses a synthetic one. So try it on a test company, with a backup.

This post is about release 0.4.1. If you have 0.3.0 or 0.4.0, remove it and install 0.4.1 or later first, because the bank-statement tool in those had a flaw about network paths (the security page describes it).

Limits to know before you rely on it

Posting is one voucher per batch.
The published extension does not turn on batch posting, so it refuses a batch of more than one voucher, and a batch built from several statement rows holds several.
If you post a single voucher, it waits for you.
Posting starts off, and an upgrade may keep it on, so check the setting. Each voucher waits for your approval in a separate window, and the approval lasts at most fifteen minutes. No ComplyEaze Bridge tool can approve it, but software that can control your screen could click the button, so close such software first.
Leave companies and ledgers alone until the post lands.
A rename, replacement or reload at that moment can send the voucher elsewhere.
ComplyEaze Bridge cannot undo a posted voucher.
You fix mistakes in Tally.
Party amounts land On Account.
Bill-wise allocation is not supported. It does not post sales, purchase, tax or inventory entries.
Education mode and the approval window.
On TallyPrime Education, voucher dates must be the 1st, 2nd or 31st, and we have not yet run posting on Education. We have not run each way of declining in the Windows approval window (we tried one) in a controlled test.
Large books.
Reads on very large books can fail or take longer than the assistant waits. Requests can make Tally slow or unresponsive, sometimes until it is restarted, including for other people on a shared Tally.
Your client’s data.
What Claude reads goes to your AI provider, which for Claude is Anthropic. From a statement, Claude gets each party’s name as printed, how many rows, what is proposed, the figures you gave it and, for each cash line it asks about, the date, amount and party. Later steps can return dates, amounts and ledgers; a batch of one voucher shows its date and amount. The Privacy Policy lists bank-statement contents among the things that can be sent. A setting can mask party names. It is off by default and it never masks amounts. You need your client’s authority to use their data this way, and your confidentiality duties still apply.

The README lists the rest. Nothing here is accounting, tax, audit or legal advice.

To try it on a test company, start from the download page and its release notes.

ComplyEaze Bridge is not a product of, or endorsed by, Tally Solutions, Anthropic or ICAI. Email contact@complyeaze.com · Questions and answers · Download and release notes · Terms of Use · Privacy Policy · Security and privacy · Security policy

Read next

Ten questions before you connect Claude to Tally

Where client data goes, what it can change in your books, what it costs and who answers if something goes wrong.