The Exact Excel Format for Tally Bank Statement Import
Tally Prime's bank statement import (Alt+O → Transactions → Bank Statement) expects a simple, strict structure — one transaction per row, with these columns:
The five formatting rules that matter
- Dates as real dates — DD-MM-YYYY, stored as date values, not text. Excel cells showing "01-04-2026" but typed as text are the #1 import failure cause.
- Debit and credit in separate columns — never one combined column with plus/minus signs or DR/CR suffixes.
- Amounts as clean numbers — no ₹ symbols, no comma thousands-separators stored as text, no "Cr"/"Dr" text inside the cell.
- One transaction per row — bank PDFs often split long narrations across 2–3 lines; those must be joined into a single Particulars cell.
- No statement artifacts — page headers, footers, "carried forward" rows and opening/closing balance lines must be removed from the data range.
Why Manual Formatting Takes So Long
Copy-pasting from a bank PDF into Excel produces none of the above. SBI statements split narrations across lines; HDFC merges date and value-date; ICICI embeds the page number into the data; scanned statements can't be copied at all. Cleaning a 10-page statement by hand typically takes 30–60 minutes — and one missed merged-row means your Tally ledger won't reconcile.
Our converter does this automatically: upload the bank statement PDF (any Indian bank, digital or scanned) and download an Excel file already in the structure above. Every transaction is also balance-verified — checked against the statement's running balance — so the amounts you import into Tally are arithmetically proven, not just extracted.
Bank Statement to Tally XML — What Is the XML Format?
When people search for "bank statement to Tally XML" they are asking about TallyXML — Tally's own XML-based data exchange standard used to import ledger masters, vouchers, and opening balances directly into Tally without the CSV/Excel import screen.
TallyXML vs Excel import — which do you need?
For routine bank statement import into Tally Prime, Excel/CSV is simpler and faster. TallyXML becomes necessary when you are integrating Tally with another system (ERP, custom software) or performing a one-time bulk data migration.
Sample TallyXML structure for a bank voucher entry
If you do need to generate a TallyXML file for bank transactions, each payment or receipt voucher follows this structure:
<ENVELOPE>
<HEADER>
<TALLYREQUEST>Import Data</TALLYREQUEST>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME>Vouchers</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA>
<TALLYMESSAGE xmlns:UDF="TallyUDF">
<VOUCHER VCHTYPE="Receipt" ACTION="Create">
<DATE>20260401</DATE>
<NARRATION>UPI/CR/CLIENT PAYMENT INV-2241</NARRATION>
<ALLLEDGERENTRIES.LIST>
<LEDGERNAME>HDFC Bank Current A/C</LEDGERNAME>
<AMOUNT>-118000.00</AMOUNT>
</ALLLEDGERENTRIES.LIST>
<ALLLEDGERENTRIES.LIST>
<LEDGERNAME>Sundry Debtors</LEDGERNAME>
<AMOUNT>118000.00</AMOUNT>
</ALLLEDGERENTRIES.LIST>
</VOUCHER>
</TALLYMESSAGE>
</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>
Note: In TallyXML, amounts for the bank ledger (asset) are negative when receiving money (credit), and positive when paying out (debit). This is counter-intuitive but correct — Tally follows accounting debit/credit conventions at the ledger level.
To import a TallyXML file: open Tally Prime → Gateway of Tally → Import → Data → browse to your .xml file. Tally will parse the voucher entries and create them in your company data.
TDL for Bank Statement Import in Tally ERP 9 and Tally Prime
TDL stands for Tally Definition Language — Tally's built-in scripting language that lets developers and power users customise menus, add custom buttons, create new reports, and automate workflows inside Tally. Many accountants encounter TDL when searching for tools to automate bank statement import in older Tally ERP 9 installations.
When is TDL needed for bank import?
- Tally ERP 9 — has no native bank statement import feature. A TDL utility adds a menu option to import CSV/Excel bank data, mapping columns to payment/receipt vouchers.
- Tally Prime 3.x and later — has native bank import (Alt+O) built in. You do not need a TDL file for standard bank statement import in Tally Prime.
- Custom workflows — some businesses use TDL to auto-match narrations to existing ledgers, or to import multi-bank consolidated files.
How to load a TDL file in Tally
- Obtain the .tdl file from a Tally Partner, developer, or trusted community source.
- Place the file in a location Tally can access, for example:
C:\Tally\TDL\bank_import.tdl
- Open
Tally.ini (usually in your Tally installation folder, e.g. C:\Program Files\Tally.ERP9\).
- Add the line:
TDL = C:\Tally\TDL\bank_import.tdl
- Save Tally.ini and restart Tally. The custom import option will appear in the menu.
TDL vs native import vs our converter
Our converter outputs a CSV/Excel file in the exact structure Tally Prime's native import expects — no TDL required. Upload your bank statement PDF, download the file, import via Alt+O. Done in under two minutes.
Import Walkthrough: Tally Prime 3.0+
1
Convert
Upload your bank PDF above, download the Tally-format Excel
2
Alt+O in Tally
Gateway of Tally → Import → Transactions → Bank Statement
3
Map & Accept
Map columns, review the voucher preview, accept — done
Bank Statement Import Format for Each Indian Bank
Each Indian bank produces statements with different quirks. Here is what to watch for when converting each bank's PDF for Tally import.
HDFC Bank
- Narrations include NEFT/RTGS/UPI prefix (e.g. "NEFT/YESB/VENDOR")
- Two date columns: transaction date and value date — use transaction date for Tally
- Net Banking PDF has clean columns; branch passbook is multi-column and harder to parse
- UPI credit narrations start with "UPI/CR/"
SBI (State Bank of India)
- Long narrations wrap across 2–3 rows in PDF — must be joined before import
- Passbook format differs significantly from Net Banking statement
- YONO app exports CSV directly but column names differ from Tally's expected headers
- "By Transfer" / "To Transfer" prefix in older statements
ICICI Bank
- iMobile app allows direct CSV export — re-map column names for Tally
- PDF statements embed page number into the data area
- Savings and current account formats differ
- Cheque transactions include instrument number in narration field
Axis Bank
- Multi-column layout with separate withdrawal and deposit columns — good for Tally
- Running balance column present (useful for verification)
- NEFTs include sender name in narration
- Internet Banking PDF is clean; branch passbook is scanned
Kotak Mahindra Bank
- Net Banking statement exports well-structured CSV
- Date format is DD-MM-YYYY in PDF but sometimes MM/DD/YYYY in CSV export — verify before import
- Narrations include UPI reference IDs
Punjab National Bank (PNB)
- Older PDF statements are scanned — OCR required
- Narration format varies by branch
- Government payment narrations (PFMS, DBT) can be very long
- Balance carried forward rows must be stripped before import
SBI
HDFC Bank
ICICI Bank
Axis Bank
Kotak Mahindra
PNB
Bank of Baroda
Canara Bank
Union Bank
IDBI Bank
Yes Bank
IndusInd Bank
Federal Bank
Indian Bank
Bank of India
RBL Bank
Tally Bank Statement Import Troubleshooting — Error by Error
Below is a comprehensive error reference covering both Tally Prime and Tally ERP 9 bank statement import failures.
How to Reconcile Bank Statement in Tally Prime After Import
Importing transactions is step one — reconciliation confirms that Tally's bank ledger matches your actual bank statement balance. Here is the step-by-step process in Tally Prime.
- Go to Bank Reconciliation: Gateway of Tally → Banking → Bank Reconciliation Statement. Select your bank ledger from the list.
- Set the statement date: Press F2 to set the period end date matching your bank statement (e.g. 30-04-2026).
- Compare entries: Tally shows two columns — your books on the left, imported bank entries on the right. Unreconciled entries appear in red.
- Reconcile matching entries: For each matched transaction, click the entry and press Enter to set the reconciliation date (the date it appears on the bank statement).
- Handle discrepancies: If a Tally entry has no matching bank entry, it is either a timing difference (cheque issued but not cleared) or a data entry error. If a bank entry has no Tally voucher, create a new voucher for it.
- Check the closing balance: Once all entries are matched, the "Closing Balance as per Bank" should equal the statement closing balance. A difference indicates a missing or duplicate entry.
- Accept and save: Press Ctrl+A to save the reconciliation. The BRS report is now updated.
Tip: Run bank reconciliation monthly. Reconciling after each import session (rather than quarterly) keeps discrepancies small and easy to trace.
Related Guides
Frequently Asked Questions
What Excel format does Tally bank statement import need?
One transaction per row: Date (DD-MM-YYYY), Particulars, Debit, Credit, optional Instrument No. Real date values, clean numeric amounts, no merged cells or statement artifacts.
What is Tally XML and how is it different from Excel import?
Tally XML (TallyXML) is Tally's native data exchange format — an XML-structured file imported via Gateway of Tally → Import → Data. Excel import (Alt+O) is simpler and handles most bank statement workflows. TallyXML is used for bulk voucher migration, ledger masters, or integration with third-party systems. For routine bank statement import, Excel/CSV is the right choice.
How do I import a bank statement to Tally XML format?
To import a TallyXML file in Tally Prime: Gateway of Tally → Import → Data → browse to your .xml file. The XML must follow Tally's envelope structure with VOUCHER elements inside TALLYMESSAGE tags. For most users, Excel import (Alt+O) is faster and achieves the same result without needing to author XML.
What is TDL for bank statement import in Tally?
TDL (Tally Definition Language) is Tally's scripting language for customisation. In Tally ERP 9, which lacks native bank import, a TDL file adds an import menu option. In Tally Prime 3.x, native bank import is built in — no TDL needed. To load a TDL: edit Tally.ini, add TDL = C:\path\to\file.tdl, and restart Tally.
How to download TDL for bank statement import?
TDL files are available from certified Tally Partners, the Tally Developer Network, and community forums. Search for "bank statement import TDL Tally ERP 9" to find options. However, if you are on Tally Prime 3.x, you do not need a TDL — use the built-in Alt+O import with our converted Excel file instead.
What is the difference between Tally Prime and Tally ERP 9 bank import?
Tally Prime 3.x has a dedicated Bank Statement import option under Alt+O (Import). Tally ERP 9 does not have this feature natively — you need either a TDL utility or TallyXML import. Column mapping also differs between versions. Our converter is optimised for Tally Prime.
Where can I download the template?
You don't need a blank template — upload your bank statement PDF and download Excel already in the correct structure, filled with your actual transactions. This skips the manual copy-paste step entirely.
Which Tally versions support direct Excel import?
Tally Prime 3.0 and later import Excel directly via Alt+O. Older versions (ERP 9) require XML conversion or a TDL-based utility.
Why does my import fail?
Usually: text-formatted dates, combined debit/credit columns, multi-line narrations splitting rows, or page artifacts in the data. Converting through our tool eliminates all of these.
How to do bank reconciliation in Tally Prime after import?
Go to Gateway of Tally → Banking → Bank Reconciliation Statement. Select your bank ledger, set the statement date (F2), then match each imported bank entry to the corresponding Tally voucher by entering the reconciliation date. The closing balance as per bank should equal the statement closing balance when fully reconciled.
Does this work with scanned statements?
Yes — OCR runs automatically on scanned PDFs, and balance verification catches recognition errors before you import into Tally.
What is the exact date format Tally Prime expects for bank import?
Tally Prime's bank statement import accepts DD-MM-YYYY or DD/MM/YYYY date formats. Our converter automatically outputs dates in DD-MM-YYYY format. If Tally shows a date parsing error, check that the date column is formatted as text, not as Excel's built-in date format — Tally reads the raw text value, not the Excel-formatted display.
Does this work for Tally ERP 9 as well as Tally Prime?
The Excel/CSV import feature was significantly improved in Tally Prime. For Tally ERP 9, bank statement import is less standardised — the column mapping differs by version. Our converter produces a CSV that works with Tally Prime 3.x and above. For Tally ERP 9, you may need to adjust column headers manually or use a TDL utility.
Can I import bank statements from multiple months into Tally at once?
Yes, but import them one statement (one month) at a time. Each import session covers one bank statement period. Convert each monthly PDF to CSV separately, then import into Tally in chronological order. Tally will create individual voucher entries for each transaction date.
Get Your Statement in Tally Import Format
100% free · No signup · All Indian banks · Balance-verified output
Convert Now →