MyTaxFlow — Tally XML Format Explained

Tally XML Format, Import and Structure Guide

What is Tally XML, how tallyxml files work, how the ENVELOPE > TALLYMESSAGE > VOUCHER structure is used, and how to import Tally XML in Tally Prime and Tally.ERP 9.

Updated September 2026 · 8 min read
← Back to Home

If you work with Tally Prime or Tally.ERP 9, you have probably heard the term Tally XML. Some users search it as tallyxml, but the accounting format is Tally XML: the file structure Tally uses to exchange vouchers, ledgers, stock items, and other accounting data with external software. Understanding Tally XML is the key to importing bank statements, automating data entry, and integrating your accounting workflow.

What Is Tally XML?

Tally XML is an XML document that follows Tally's own tag vocabulary. It is not a generic XML schema — Tally reads specific tags like TALLYMESSAGE, VOUCHER, LEDGER and AMOUNT and interprets them as accounting entries.

The most common use is importing vouchers: a Tally XML file containing Payment and Receipt vouchers can be imported directly, turning a bank statement into Tally entries in seconds instead of typing each transaction by hand.

Best for: This Tally XML guide is built for users searching Tally XML, Tally XML format, Tally XML import, tallyxml, and Tally compatible XML. If your goal is bank statement import, use the bank statement to Tally XML converter after understanding the format.

Tally XML vs TallyXML: Which Term Is Correct?

Tally XML is the clearer term because it describes XML files used by Tally. Some people type TallyXML or tallyxml without a space, but the search intent is usually the same: they want to understand the format, create an importable XML file, or fix Tally Prime import errors.

For accounting work, the important part is not the spelling. The XML must contain the correct Tally tags, voucher type, date format, ledger names, debit and credit signs, and company-compatible master data.

Tally-Ready XML for Bank Statements

A bank statement to Tally workflow usually starts with a PDF, CSV, or Excel statement and ends with a Tally ready XML file. The converter must read dates, narrations, debit amounts, credit amounts, and balances, then create Tally compatible XML vouchers that Tally Prime can import.

For review-heavy work, you may first export a bank statement PDF to CSV or bank statement PDF to Excel. When the entries are ready for posting, use Tally XML for Payment Receipt voucher mapping and direct Tally Prime import.

Tally XML Structure: The Three-Layer Format

Every Tally XML file for voucher import follows the same three-layer structure:

LayerTagWhat It Contains
1 — RootENVELOPEOne file-level wrapper around all data
2 — MessageTALLYMESSAGEOne block per transaction / voucher
3 — VoucherVOUCHERThe actual entry: type, date, ledgers, amounts

Here is what a minimal Tally XML file looks like:

<?xml version="1.0" encoding="UTF-8"?>
<ENVELOPE>
  <HEADER>
    <TALLYREQUEST>Import Data</TALLYREQUEST>
  </HEADER>
  <BODY>
    <IMPORTDATA>
      <TALLYMESSAGE>
        <VOUCHER VCHTYPE="Payment">
          <DATE>20260715</DATE>
          <NARRATION>Rent payment</NARRATION>
          <ALLLEDGERENTRIES.LIST>
            <LEDGERNAME>Rent A/c</LEDGERNAME>
            <AMOUNT>-50000</AMOUNT>
            <LEDGERNAME>Bank A/c</LEDGERNAME>
            <AMOUNT>50000</AMOUNT>
          </ALLLEDGERENTRIES.LIST>
        </VOUCHER>
      </TALLYMESSAGE>
    </IMPORTDATA>
  </BODY>
</ENVELOPE>
Key rule: In each ledger entry, the debit side has a negative amount and the credit side has a positive amount. Voucher types are “Payment” (outgoing) and “Receipt” (incoming).

Common Tally XML Voucher Types

Payment Receipt Voucher Mapping

Payment Receipt voucher mapping is the logic that turns bank debit rows into Payment vouchers and bank credit rows into Receipt vouchers. This mapping matters because Tally XML is not just a table export; it must preserve voucher type, ledger name, date, narration, and amount signs correctly.

Before importing any Tally compatible XML file, verify the bank ledger, suspense ledger, party ledger names, debit/credit direction, and opening or closing balance checks.

How to Import Tally XML in Tally Prime

  1. Open the company in Tally Prime and make sure the target ledgers exist (bank, expense, customer, etc.).
  2. Go to Gateway of Tally → Import → Vouchers.
  3. Select your .xml file and click import.
  4. Tally reads the file, validates the vouchers, and shows the result. Review any error messages.
  5. Confirm import. Your bank statement transactions are now Tally entries.

Common Tally XML Import Errors and Fixes

ErrorWhy It HappensFix
Ledger not foundThe voucher references a ledger that does not exist in the companyCreate the ledger first or map it to an existing one
Invalid date formatDates must be YYYYMMDD with no separatorsFormat dates as e.g. 20260715
Amount sign errorDebit must be negative, credit positiveCorrect the amount signs in the XML
Duplicate voucherThe same entry already existsRemove duplicates or import with overwrite option
Voucher type invalidUnsupported or misspelled VCHTYPEUse Payment, Receipt, Contra, Journal, Sales, or Purchase

Digital PDF, Scanned PDF and OCR Notes

Digital PDFs from internet banking are the required source for bank statement PDF to Tally XML conversion in MyTaxFlow. Scanned PDF bank statement to Tally, OCR bank statement to Tally, and dot matrix PDF to Tally files are not supported right now because they can produce unreliable voucher data.

If you work with co-operative bank statement to Tally files or older statement layouts, download a digital bank-generated PDF with selectable text before creating Tally-ready XML. A careful review is better than importing inaccurate vouchers into Tally Prime.

Why Generate Tally XML Instead of Typing Entries

Tally XML FAQs

What is Tally XML?

Tally XML is the XML-based data format Tally Prime and Tally.ERP 9 use to import and export vouchers, masters, and other accounting data. It follows an ENVELOPE > TALLYMESSAGE > VOUCHER structure.

Is TallyXML the same as Tally XML?

Yes. Users often search for tallyxml as one word, but the standard wording is Tally XML. Both refer to XML files prepared for import or export in Tally.

How do I import Tally XML in Tally Prime?

Open Tally Prime, go to Gateway of Tally > Import > Vouchers, select the XML file, and confirm. The vouchers are created from the VOUCHER elements in the file.

What is the structure of a Tally XML file?

A Tally XML file has an outer ENVELOPE, one or more TALLYMESSAGE blocks, and inside each TALLYMESSAGE a VOUCHER element with DATE, LEDGER, AMOUNT and voucher type details.

Can I create Tally XML from a bank statement PDF?

Yes. A converter can read a digital bank statement PDF, map debits and credits to Payment and Receipt vouchers, and generate Tally-compatible XML for import into Tally Prime.

When to Use Tally XML for Bank Statements

Tally XML is most useful when the source data is a bank statement and the final requirement is voucher import into Tally Prime. These points connect the format to the real accounting workflow.

  • Use CSV or Excel first when the accountant needs manual checking or reconciliation working papers.
  • Use Tally XML when the entries are ready to become Payment and Receipt vouchers.
  • Keep bank ledger, party ledger and suspense ledger names consistent before import.
  • If an XML import fails, check date format, ledger names, voucher type and debit/credit signs first.
Related workflow: Start with the bank statement to Tally XML converter, read the Tally XML format guide, and then import the downloaded XML through Gateway of Tally.

Convert Bank Statement to Tally XML Automatically

Upload your PDF bank statement and download Tally-ready XML with correct ENVELOPE > TALLYMESSAGE > VOUCHER structure. Supports SBI, HDFC, ICICI, Axis & 100+ banks, with CSV and Excel exports for review.

Open Bank Statement to Tally XML Converter

Related Guides