Tally XML Format

CSV to Tally XML Converter — TallyPrime & ERP 9 (FREE)

A month of bank rows, arriving in TallyPrime as finished Payment and Receipt vouchers instead of being typed one at a time. Upload a statement above to convert CSV to Tally XML, free: the ledgers are written into the file itself, and each voucher is numbered from its own contents so next month's statement can never collide with this one. Tally ERP 9 reads exactly the same file.

Bank-grade security - Files processed securely and deleted immediately
Trouble converting a file? Tell us — we fix issues fast. Report it

Not the file you need?

Why Use Our CSV to Tally XML Converter Tool?

The ledgers are written into the file

"Ledger does not exist!" stops most Tally XML imports, because Tally matches names exactly and will not invent one. This file declares its ledgers first, under the right parents — a ledger filed in the wrong group imports cleanly, then misreports in every statement Tally prints afterwards.

Voucher numbers that survive a second import

Most converters number vouchers PAY-001, RCT-001 and restart at 1 next month, so statement two collides with statement one and Tally either duplicates everything or refuses the rows. Each number here comes from the transaction's own content, so a genuine re-import is caught and two different statements never are.

Nothing to map, nothing to configure

No mapping template, no field-matching screen, no company name to type — SVCURRENTCOMPANY is deliberately omitted, so the vouchers land in whichever company you have open. A CSV to XML converter online with no signup, no install and no cap on vouchers.

How to convert CSV to Tally XML in three steps

1

Start with your bank's CSV

Downloaded from net banking, a card issuer, a payment gateway, or exported from a worksheet. Headers are optional and the column order makes no difference.

2

Upload the CSV

Use the box above, up to 10MB. Dates, narrations and amounts are located in the data itself, so there is no mapping template to build first.

3

Download the XML and import

There is nothing to set — download the .xml and import it in Tally. Money out becomes a Payment voucher, money in becomes a Receipt.

Why a Tally XML import stops before it starts

"Ledger does not exist!" halts the file

Tally looks up ledger names exactly. A trailing space, a different spelling or a ledger that was simply never created stops the import, and the vouchers referencing it are skipped. Setting "Ignore errors during data import" to Yes lets the rest through and writes the failures to the tally.imp log, but the missing ledgers still have to be made.

Native import will not take a converted file

Tally Prime does import bank statements directly, at Gateway of Tally → Alt+O → Bank Statement, and it will create vouchers from them. What it will not accept is a PDF, or any CSV or Excel file that was produced from a PDF — which is precisely the file most people are holding.

The second statement imports twice

A voucher number is Tally's only duplicate checkpoint on an XML import. Converters that number sequentially per file hand Tally the same numbers again next month, so it either duplicates the lot or, with Prevent Duplicates set, refuses genuine transactions.

Dates and company names fail quietly

Tally XML dates are YYYYMMDD and are validated against the open company's financial year, so a date outside it is rejected. Naming a company that does not match the open one produces "Could not set SVCURRENTCOMPANY" and the import never begins.

Who converts a statement into Tally vouchers

Indian SMEs on TallyPrime

A month of bank entries typed by hand is an afternoon gone. A bank statement to Tally XML converter turns that same statement into every Payment and Receipt voucher in one import.

Statements Tally won't accept

Tally's own bank statement import rejects PDFs and any CSV or Excel produced from one. The XML voucher route has no such restriction.

Banks outside Tally's list

Native import only understands specific bank layouts. If your bank, card issuer or payment gateway is not among them, the file is refused outright.

Accountants with many clients

Ledger names differ in every company file. Convert per client, rename the three declared ledgers once, and the vouchers land where they belong.

Re-importing a corrected file

Voucher numbers come from the row content, so re-importing the same statement is caught as a duplicate while a genuinely different one is not.

Tally ERP 9 users

The XML voucher format predates TallyPrime and is read by ERP 9 just as well, so an older installation is not left out.

Frequently Asked Questions — CSV to Tally XML Converter

QHow do I import a bank statement into TallyPrime from a CSV?

Convert the CSV to Tally XML first, then import it at Gateway of Tally → Import Data → Vouchers and pick the file. That is the whole route to import bank statement in Tally Prime from a spreadsheet — the XML arrives as finished Payment and Receipt vouchers, so there is no mapping template to build and no data entry left to do.

QCan TallyPrime import a bank statement without converting it?

Sometimes. Gateway of Tally → Alt+O → Bank Statement accepts CSV and Excel downloaded straight from a supported bank, and creates vouchers from them. It refuses PDFs and any CSV or Excel converted from a PDF, and it only understands specific bank layouts — the XML route has neither limit.

QWhy does my import fail with "Ledger does not exist"?

Because the file names a ledger the company does not contain, and Tally will not create one on the fly. Matching is exact, so a trailing space or a different spelling counts as a different ledger. The file written here declares its ledgers first, which is what prevents the error.

QWhat is Tally XML?

The XML envelope Tally reads for imports — an ENVELOPE containing IMPORTDATA, with a TALLYMESSAGE per ledger and per voucher. Dates are written YYYYMMDD and special characters are escaped, because an unescaped ampersand in a narration invalidates the whole document.

QDoes this work with Tally ERP 9 as well as TallyPrime?

Yes. The voucher XML format predates TallyPrime and both read it, so an ERP 9 installation imports the same file without changes. The menu wording differs slightly between the two, but the import path is the same.

QWill importing the same statement twice create duplicate vouchers?

Not with this file. Each voucher number is derived from that transaction's own date, amount and narration rather than a running counter, so re-importing the same statement presents Tally with numbers it has already seen and its duplicate check catches them. Two genuinely different statements never collide.

QWhat voucher types does the XML create?

Payment for money leaving the account and Receipt for money arriving. Each voucher carries two ledger entries that sum to zero — the bank ledger on one side, an expense or income ledger on the other — which is what Tally requires to accept the entry.

QWhat does "Could not set SVCURRENTCOMPANY" mean?

It means the file named a company that is not the one open in Tally. This converter deliberately leaves that tag out, so the vouchers import into whichever company you already have open — a guessed company name fails the import outright, which is worse than not naming one.

QCan I convert Excel to Tally XML as well?

A dedicated Excel to Tally XML converter is coming, and it is the more common Excel to Tally import route by some margin. Until it lands, use Save As in Excel to produce a CSV and bring that here — the vouchers come out the same, since what matters is the rows and not the spreadsheet they travelled in. That also covers anyone hunting for an XLS to XML converter.

QIs this a general CSV to XML converter?

Not really. It is a CSV to XML converter online and it does hand you a CSV to XML file, but that file follows Tally's voucher schema rather than a generic element-per-column dump. If you are working out how to convert CSV to XML for a data pipeline, or want a CSV to XML converter free download that emits arbitrary structures, a general-purpose tool will suit you better.

QIs there a CSV to Tally XML converter free download?

Most Indian alternatives are Windows utilities you install, and several are genuinely free. A browser-based CSV to Tally converter needs no download at all, which also means it works on a Mac — where most Tally import utilities simply do not run.

QMy dates were rejected. What went wrong?

Tally validates dates against the open company's financial year and rejects anything outside it, so importing April transactions into a company whose year starts in July will fail. Check the period on the company before importing rather than editing the file.

QDoes my bank statement leave my browser?

No. Parsing happens on your machine and the Tally XML is assembled there as well, so the voucher file never reaches a server at all. The transaction rows alone are sent out for column detection, and they are discarded the moment the conversion ends.

Other Conversion Formats

Turn a CSV statement into Tally vouchers, not typing

Your bank sends CSV. TallyPrime wants vouchers. Convert CSV to Tally XML here in about ten seconds, then run the bank statement to Tally import at Gateway of Tally → Import Data → Vouchers. Free, no account needed, and there is nothing to install.