Do you want to Learn Tally TDL?

Learn Tally TDL : Create your first TDL in Tally.ERP 9

Do you interested to Learn Tally TDL? Tally TDL are the Programming extensions to amend the functionality of the Tally.ERP 9 Software. You can customise your invoice, add, edit any extra column in the sales invoice or in any voucher, reports, customise your printing and much more you can do by learning the Tally TDL. Tally TDL is the 4th Generation programming learning.

Here is an example of an amended ledger master  which one of my students had done after joining the Tally TDL Course.


Learn Tally TDL

Now today we will discuss the basic of TDL and will write our first TDL programme.

Believe me, it is very very easy to write your first TDL and it does not require any special knowledge or experience!

First of all, you need to memories following :
Report uses Form
Form uses Parts
Part uses lines
Line uses Fields
A Field is the real container where the data is displayed.
You Don’t need to understand it! This is a universal rule for Tally TDL
Now, Let’s prepare our first TDL program.
Open your notepad from the windows
and Write below codes. I would prefer you to write yourself without being copy paste. it will give you practice and in TDL self-practice is the most important thing one need to learn Tally Developer Languages.
;; start of code
[#menu:gateway of tally] Item:myfirst tdl:Display:My Report
[Report:My Report] form: myform
[form:myform] Part:my Part
[Part:my part] line:my Line
[line:my Line] Field:First field
[Field:First field]
set as : “Let’s Start learning tally”
;; end of code

Now save this file with a name suppose myfirsttdl.txt in notepad and then copy paste the same in your tally folder

Now start your tally software and follow the guidelines how to activate TDL in Tally.ERP 9.
You don’t need to have a licensed software of either tally nor tally developer
It will work in any software and you can learn tally TDL very easy just by following such simple programming codes and a self-practice.

set as : “Let’s Start learning tally”

now follow the articles on how to set tdl in tally and activate your first TDL.

Now, start your tally and you will find screenshots as per below.

you will find an extra menu in your default menu with the name my first TDL

hit the same and you will find your first TDL program

IF you like your first  TDL, then do share your feedback is it hard for you to write or learn TDL?

If you have any query or need any guidance then please post it on support forum only.

And if you are seriously wanted to learn Tally TDL to shape up your professional career, then do join the online Tally TDL Course.

Don’t miss out to read the students testimonials how they are learning and benefitting from the courses

About the Author

Mahendra is founder and CEO of the I Vision Infotech, Authorised Tally Sales and Service Partner and helping Tally users to learn Tally and accounting free through this site

Leave a Reply 55 comments

Mukesh Mehra - 6 years ago Reply

I like it very much it works. Can you suggust more to develop tdl.
I am using Barcode printing tdl in my tally . but the problem is that the printing of barcode is in vertical line. i want to use this in horizontal line & want to change the content of Tdl.Kindly send more details of the below to change the tdl in own style. I want to change the barcode style also.
Here is the tdl.
;; Sri Ganeshji : Sri Balaji : Sri Pitreshwarji : Sri Durgaji : Sri Venkateshwara

[#Form : Sales Color]

Add : Print : EI LabelPrinting

;; Adding Label Printing Report to the already existing Report/s.

[Report : EI LabelPrinting]

Form : EI LabelPrinting
Object : Voucher

[Form : EI LabelPrinting]

Part : EI LabelPrinting

[Part : EI LabelPrinting]

Line : EI LabelPrinting
Repeat : EI LabelPrinting : Inventory Entries
Scroll : Vertical

[Line : EI LabelPrinting]

Field : EI StkItem Label
Explode : EI MoreLabels : $$Number:$BilledQty > 2
Space Bottom : 1

;; Explode part starts

[Part : EI MoreLabels]

Line : EI MoreLabels

[Line : EI MoreLabels]

Field : EI STkItem Label
Explode : EIMoreLabels : $$Number:$BilledQty >($$ExplodeLevel+$$Line)
Space bottom : 1

;; Explode part ends

[Field : EI StkItem Label]

Use : Name Field
Set As : If $$IsEmpty:($StkAlias:StockItem:$StockItemName) then “(“+$StockItemName”)” +
else “(“+($StkAlias:StockItem:$StockItemName)+”)”
Style : Bar Code

[Style: Bar Code]

Font : IDAutomationHC39S
Height : 10

;; Font used to print the alphanumeric/numeric values as Barcode

[#Object : StockItem]

StkAlias : $$Alias

;; End-of-File

Jai - 6 years ago Reply

sir, we are a manufacturing company and we are providing fabrics for more than 600 customers each customer has a different types of rate for the same product, is there any option to maintain the rate master for teach customers

Mahendra Rana - 6 years ago Reply

Dear Mukesh,
Welcome to Free Learning tall 9 and accounting.
I am happy that you like the article.Surely I will write more about TDL and more example. Because it is the example and real program which help to learn tally and the TDL.
About the tdl code you have published here, I will look into the matter at the earliest and we will discuss this matter and further coding on support fourm

Ram - 6 years ago Reply

Dear Mahendra ji,
we are seeking more posts regarding TDL language. the first tdl works well
Thanks a lot

Mahendra Rana - 6 years ago Reply

Surely, You will see more post about TDL actually right now it is hard for me to manage my time schedule.

Debojit - 6 years ago Reply

hi everybody
can any one help me in my report, i want to print my cash book which should show Cash bank and one extra total (Cash+Bank) column in my cash book

Johar chhil - 6 years ago Reply

Sir i would like to have Percentage fields in pricelist so that it could automatically calculate rate according to percentage given by taking MRP value and VAT from the stock item which we are entering at the time of creation of stock

e.g : Name: Bleach MRP: 120/- VAT : 14.5%

so if we enter 20 in percentage field the rate in pricelist should display 83.84

i.e 120/- * 20% = 96/- the 96/- divide by 1.145 = 83.84

Mahendra Rana - 6 years ago Reply

This is a chargeable service.
Please fill out the contact us page on our site

Mahesh - 5 years ago Reply

Sir i would like to have Percentage fields in pricelist so that it could automatically calculate rate according to percentage given by taking MRP value and VAT from the stock item which we are entering at the time of creation of stock

e.g : Name: Bleach MRP: 120/- VAT : 14.5%

so if we enter 20 in percentage field the rate in pricelist should display 83.84

i.e 120/- * 20% = 96/- the 96/- divide by 1.145 = 83.84

Prakash - 5 years ago Reply

Sir please write a program for including pictures in an invoice and to customise the height and width of an invoice.Thank you.

Haider Reza - 5 years ago Reply

Yes , You Can maintain it in Tally by using price level

Rajesh Nath Goswami - 5 years ago Reply

Dear Sir,
I want customised Tally for Fee Collection and School Management System. How to solve this.

suresh - 5 years ago Reply

Hello sir,

how shall i Al
ter the ledger in voucher screen without escape from the voucher screen.

RAFI - 5 years ago Reply

hello, i like your style and process in reporting the message. pls provide me coding for school by Rafi

sudhir - 5 years ago Reply

Dear Sir,

I want to add sales voucher class with ledger.

pls help me.

Mahendra Rana - 5 years ago Reply

Your requirements is so strange that, I am really unable to understand it. never hear anything such so far!

Mitesh - 5 years ago Reply

Mahendra i like your articles. so helpful to all new developers. Buddy i am also a beginner if you can help me. I have created two Sales voucher types 1)Sales A and 2)Sales B when i print Sales A the title should be Invoice but when i print Sales B i want Inv-Del to be printed can you please help me how to go about it. It would be better if you can give me sode code which i can use it solve my problem.

Giridhar.V.R - 5 years ago Reply

Refering to my Querry 22.10.2011 at 9.52 P.m, our Tally Serial Number is : 7xxxxxx. Request you to guide for making appropriate correction in the above TDL Codes.

Uttam - 5 years ago Reply

In Tally possible for Auto Batch Numbering if it is possible then how give me details

Hitesh Kumar - 5 years ago Reply

I need a top margin while printing the POS Invoice, how can i do that, please help

Chetan mandalia - 5 years ago Reply

Dear sir,
i have made two tdl , one is for export contact address from ledgers and other is for voucher no in bank reco mode as i have use this option for cheque no and that voucher no not apperaed in the bank reco mode hence i have made that. I have all these are learned automatically by seening the tdl of sweta computers.
i want that you have given one tdl for running balance but it is with some error, i have that cleared. pls let me know how can i add my openning balance with running balance And i want to now formula for +-/*intdll

RAFI AHMED - 5 years ago Reply

hello sir
Good Day
I like your posters and happy. I want to create and view TDL file with UDF. Can u pls help me

Mihir - 5 years ago Reply

I am tally user can you send me the .tdl file for creating a monthly sales of the same stock and printing it in a sales format thanks

Sambhav - 5 years ago Reply

Dear sir Mahendra,

I am using Tally 9 ver2.14, for printing Invoices.
The option of “Stop printing vertical lines/borders” doesn’t seem to work. I have a dot matrix printer and I need this option to be set to YES. However the final print has vertical lines in it. Is there a correction patch to this bug?

Please help. (I prefer the neat mode, as the dot matrix mode does not have the desired appearance of Invoice)

Thank you very much

ECO - 5 years ago Reply

Dear Sir, I m from Bangladesh.
A problem in tally 9 i face. There is no opening balance in group summary for Income or Expense group, But it is ok for Asset or Liabilities group. How to solve it sir. Another thing, may I have a tdl for displaying and printing opening balance in Cash Flow.

Mahendra Rana - 5 years ago Reply

I am not getting you! In accountancy Income/Expenses can’t have closing balance and so they can’t have opening balances too!

akash - 5 years ago Reply

I am tally user can you send me the .tdl file for ledger view on trans screen

S.Ramachandran - 5 years ago Reply

Sir, I am regular tally user. I want to print tally invoice in A4 Sheet and I want acknowledgement part from retailor or debtor part having acknowledged stocks and promise to pay the
same amount as per the above invoice with seal and signature. that acknowledgment part may be 8 inches * 2 inches in A4 sheet. in which party name invoice number and date and amount of invoice to be printed. this tdl have to work on dot matrix and laser printer also. kindly advice how to make tdl regards. S.Ramachandran

Mahendra Rana - 5 years ago Reply

Hello Ramchandran,
We highly value all our readers and I am glad for being you our regular reader.
Regarding, your requirement, it is not that easy to explain as it needs complex coding, a lot of codes to be prepared,modified etc. I would advice to your hire a professional and he will do it for sure.

Otherwise, you need to study whole TDL language

tallyganesh - 4 years ago Reply

Dear Sir,
i made on sales invoice
the amount & amount in words coming in INDIAN RUPEES only
when i make sales invoice in foren currency it is not coming in foren curreny
pls tell me source code

rahul potter - 4 years ago Reply

how to learn tdl language by first student who known about tally but no known about tdl.
your faithfully
rahul potter
aacountant (HOD)

Sureshkumar K - 4 years ago Reply


I wud like to learn TDL. Please let me know the ways. I completed TDL course by Tally. But I could not follow it.



Harsh Vardhan - 4 years ago Reply

Dear Sir,

I want to insert one more column of Dis.Amt. before the amount column in sales voucher.

And get the net amount after deduction of dis in % and dis amt.

so plz tell me how can i do??

Elavarasan - 4 years ago Reply

Hi sir,

I want to know how to configure tdl in tally 9 gold for data import using notepad format whereas the same is available in ERP9 in the configuration settings please help me how to do tdl config in tally 9 gold

MUSSA KYSMBOL - 4 years ago Reply

Hello Sir,
Thanks for your article it is very interesting,sir am the tally user and my base currency is Tsh. and my other multi- currency is US$,can you help me to get a tdl code that will show me both my figure in my invoice print out?base on my exchange rate?
example to have the colum that will show:
Vatable Amount (Tshs) xxxxx
Non Vatable Amount (Tshs.) xxxxx
Vat Amount (Tshs) xxxxxx
Total Amount (Tshs.) xxxxxx

poornima MR - 4 years ago Reply

Hello Sir,
I developed one module in TDL i want to integrate that into balance sheet in tally ERP.9. please help me in this problem. how to Connect my module to tally balance sheet.

Dinesh Asopa - 4 years ago Reply

Dear Sir How to Open tdl file pl

Chadnrakant - 4 years ago Reply

Dear all please help me to get values from payment voucher of purchase details like Purchase voucher number, purchase voucher date

uma ganesh - 3 years ago Reply

Dear Sir,

pls tell me the code for Tally Logo

dhrupal - 3 years ago Reply

i have a not change invoice formate by it’s classname
Help plz..

[#Form:ExciseMfgr Invoice]
Add:Options:RetInvoice:@@IsExciseSales and $ClassName Contains “OGS 12 .5%”

santosh - 3 years ago Reply

u can print logo and pictures if u provide emaild id i can send source code to u

santosh - 3 years ago Reply

before starting tally tdl basics concepts of programming should be clear , object orinted concepts and how program works

mahesh chauhan - 3 years ago Reply

sir i want to learn TDL , by joining your academy pls give me details how can i joint & learn.

rahul - 3 years ago Reply

sir i want tdl for printing rtgs forms

rahul - 3 years ago Reply

sir am interested in buying RTGS printing tdl source code.

sunny - last year Reply

dear sir,

please advice me i want to add feature in tally showing profit in every sales entry its possible???

Mahendra Rana - last year Reply

You may need to customise your Software

sunny - last year Reply

its possible by tdl can you please help..

Mahendra Rana - last year Reply

Can you explain your query ?

sunny - last year Reply


Mira Hasan - last year Reply

Dear Mr. Mahendra Rana,
It seems you are an expert in TDL. I am a Tally ERP 9 users and I am retired now because of my health. So what I do is helping my country men how to run business and the most important is knowing what is our work results daily. I usually recommend them to use Tally ERP 9. I actually been involved with Tally since the first time it came out.
So, now I work from my home, basically in bed to help people to train and install Tally,
I just realized that Tally is using a special language which is TDL9.
Do you know is there a TDL 9 online training. I would like to learn the TDL so I can be able to help my client (which is usually on probono basis), to modify Tally to suit their needs.
Since I can not travel anywhere only to Singapoore to my Oncologyst and Pain Management Specialist, of course I can not go to any training courses and sit for 8 hours, I will collapse.
Could you help me whether there is some body that trustable and can teach me through Skype the TDL programming.? It is like a special tutor for me. Of course I would not mind to give reasonable Remuneration for it. I am not rich, both my husband and I are basically ill. My husband had Osteoporotic he just broke 6 spines and operated, both of us are in wheel chair. Most of the time I work in my bed not sitting up but ___/ 135 degree, as I am in pain most of the time. it is a long story.
If you can not find such on line course, would you tutor me please. My name is Mira Hassan, 55 years old living in Jakarta, Indonesia.
Thank you for your kind attention

Mahendra Rana - last year Reply

Hello Mira Hasan,
Thank you for comment. I am impressed with your learning desire. Unfortunately, there is no online tally tutorial is available and no developer will teach it online to the best of my knowledge. However, I will ask some of my known sources but chances are less because they can’t find enough time to teach it as they themselves runs short of time in offering the solutions.
If you are interested to learn the basic Tally TDL then I can offer you the coaching but I won’t be able to offer you extensive training.
My skype id is mahendrasinh.rana

Yogesh - last year Reply

help me

Prasanna Pathak - 9 months ago Reply

R/sir Thanks for taking stand for us in TDL
folder link (Dropbox) send by u is not working

Mahendra Rana - 9 months ago Reply

Sorry, That drop box facility is only for registered students.

Leave a Reply:

Learn Tally for Free
sign up for our newsletters
Join our email list to get the free Tally Tutorials straight to your inbox
Give it a try, you can unsubscribe anytime.

TAKE 15%

on your first purchase
Get Coupon
error: Alert: Content is protected !!