An article on Integrating Sales Module of your application with Tally, Tally.ERP
rtslink.com
Home / RTSlink DLL / More on Tally Integration / Integrate Sales Module

How to Integrate Sales Module of your Application with Tally ?


This article illustrates how to integrate the "Sales Voucher entry" module of your Software with the Tally Software.


To begin with, we shall manually do a Sales Voucher entry in the Tally Software.

For reference purpose, the Tally Software Sales entry screen is shown herewith.  As you can see, the following input is required:-

Voucher Type:   Sales
Date:  1-4-2007
Ref No: 1
Party A/c Name: Shweta Softwares
Sales Ledger: Sales
VAT/Tax Class: Sales @ 4%
Name of Item: Bush
Quantity: 1
Rate: 2500
Amount: 2500






For simplicity, we have taken a Single Stock-item in our example. To identify the related fields in your database, a table is given
below:-

Tally XML Tags XML Tags Example Field name in your table
(Fill-up this space)
<VOUCHERTYPENAME> <VOUCHERTYPENAME>Sales</VOUCHERTYPENAME>
<DATE> <DATE>1-4-2007</DATE>
<VOUCHERNUMBER> <VOUCHERNUMBER>1</VOUCHERNUMBER>
<PARTYLEDGERNAME> <PARTYLEDGERNAME>Shweta Softwares</PARTYLEDGERNAME>
<LEDGERENTRIES.LIST> This section contains Debit Ledger A/c details as given below:-

Ledger Name
Amount
<ALLINVENTORYENTRIES.LIST> This section contains the Stock-item details as given below:-

Stock-Item Name
Qty
Rate
Amount

It also contains the Credit Ledger A/c details as given below:-

Ledger Name
Amount
VAT Class
<LEDGERENTRIES.LIST> This section contains VAT classification details as given below:-

Ledger  Name
TaxClassificationName
VATRate
VATAmount
AssessableValue


Remarks:-
1)  Accounting effect of the above enty is as follows:-
     A/c : Shweta Softwares            2600 Dr
     A/c : Sales                                  2500 Cr
     A/c : VAT output 4%                     100 Cr

2) Party Account Debited
The Party A/c Shweta Softwares is to be debited. In this case, the Amount figure is shown as NEGATIVE and the <ISDEEMEDPOSITIVE> tag value is set to YES.

3) Sales A/c to be Credited
The Sales A/c is to be Credited. In this case, the Amount figure is shown as POSITIVE  and the <ISDEEMEDPOSITIVE> tag is set to NO.

4) VAT Output 4% A/c to be Credited
The VAT Output 4% A/c is to be Credited. In this case, the Amount figure is shown as POSITIVE and the <ISDEEMEDPOSITIVE> tag is set to NO.

GUID (RemoteID)


GUID  is a 16-byte number that is used to uniquely identify  a record in a database.

For more information on GUID, visit Tally-Integration-Tips

XML tags for Sales Voucher entry (for Tally 9 / Tally 7.2)


The XML Tags required  for creating Sales Voucher as per our illustration are given below  :-

<ENVELOPE>
<HEADER> 
<TALLYREQUEST>Import Data</TALLYREQUEST> 
</HEADER> 
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME>All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA> 
<TALLYMESSAGE xmlns:UDF="TallyUDF">
<VOUCHER REMOTEID="7811598w-849g-790n-221j-562536936384-00000001" VCHTYPE="Sales" ACTION="Create"> <ISOPTIONAL>No</ISOPTIONAL>
<USEFORGAINLOSS>No</USEFORGAINLOSS>
<USEFORCOMPOUND>No</USEFORCOMPOUND>
<VOUCHERTYPENAME>Sales</VOUCHERTYPENAME>
<DATE>20070401</DATE>
<EFFECTIVEDATE>20070401</EFFECTIVEDATE>
<ISCANCELLED>No</ISCANCELLED>
<USETRACKINGNUMBER>No</USETRACKINGNUMBER>
<ISPOSTDATED>No</ISPOSTDATED>
<ISINVOICE>Yes</ISINVOICE>
<DIFFACTUALQTY>No</DIFFACTUALQTY>
<NARRATION/>
<ASPAYSLIP>No</ASPAYSLIP>
<GUID>7811598w-849g-790n-221j-562536936384-00000001</GUID>
<REFERENCE>1</REFERENCE>
<PARTYLEDGERNAME>Shweta Softwares</PARTYLEDGERNAME>
<LEDGERENTRIES.LIST>
<REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
<LEDGERFROMITEM>No</LEDGERFROMITEM>
<TAXCLASSIFICATIONNAME/>
<LEDGERNAME>Shweta Softwares</LEDGERNAME>
<AMOUNT>-2600.00</AMOUNT>
</LEDGERENTRIES.LIST>
<ALLINVENTORYENTRIES.LIST>
<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>
<STOCKITEMNAME>BUSH</STOCKITEMNAME>
<AMOUNT>2500.00</AMOUNT>
<ACTUALQTY>1.00</ACTUALQTY>
<BILLEDQTY>1.00</BILLEDQTY>
<RATE>2500.000</RATE>
<ACCOUNTINGALLOCATIONS.LIST>
<REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>
<LEDGERFROMITEM>No</LEDGERFROMITEM>
<TAXCLASSIFICATIONNAME/>
<LEDGERNAME>SALES</LEDGERNAME>
<AMOUNT>2500.00</AMOUNT>
</ACCOUNTINGALLOCATIONS.LIST>
<BATCHALLOCATIONS.LIST>
<TRACKINGNUMBER/>
<BATCHNAME>Primary Batch</BATCHNAME>
<GODOWNNAME>Main Location</GODOWNNAME>
<MFDON>20070401</MFDON>
<EXPIRYPERIOD/>
<AMOUNT>2500.00</AMOUNT>
<ACTUALQTY>1.00</ACTUALQTY>
<BILLEDQTY>1.00</BILLEDQTY>
<ORDERNO/>
</BATCHALLOCATIONS.LIST>
</ALLINVENTORYENTRIES.LIST>
<LEDGERENTRIES.LIST>
<REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>
<LEDGERFROMITEM>No</LEDGERFROMITEM>
<LEDGERNAME>VAT OUTPUT 4%</LEDGERNAME>
<TAXCLASSIFICATIONNAME>Sales @ 4%</TAXCLASSIFICATIONNAME>
<UDF:RATEOFINVOICETAX.LIST DESC="'RATEOFINVOICETAX`" ISLIST="YES">
<UDF:RATEOFINVOICETAX DESC="`RATEOFINVOICETAX`">4.000</UDF:RATEOFINVOICETAX>
</UDF:RATEOFINVOICETAX.LIST>
<AMOUNT>100.00</AMOUNT>
<VATASSESSABLEVALUE>2500.00</VATASSESSABLEVALUE>
</LEDGERENTRIES.LIST>
<INVOICEDELNOTES.LIST/>
</VOUCHER>
</TALLYMESSAGE>
</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>


In the above XML tags, the values that you need to fetch from your database have been highlighted.

Once the XML tag is ready, you can send if to Tally Software using RTSlink DLL Send() function.
Tally is a registered trademark of Tally Solutions FZ LLC.

Valid HTML 4.01 Transitional