IT Technical Support for Developers

Tally Request XMLs


How to Insert Memorandum voucher in Tally

Tally Request XML for Memorandum Voucher Creation

Tally Integration with Third Party Application using PHP,ASP.NET, VB.Net,JSP
Tally XML Integrations

<ENVELOPE>
 <HEADER>
  <TALLYREQUEST>Import Data</TALLYREQUEST>
 </HEADER>
 <BODY>
  <IMPORTDATA>
   <REQUESTDESC>
    <REPORTNAME>Vouchers</REPORTNAME>
    <STATICVARIABLES>
     <SVCURRENTCOMPANY>Your Company Name </SVCURRENTCOMPANY>
    </STATICVARIABLES>
   </REQUESTDESC>
   <REQUESTDATA>
    <TALLYMESSAGE xmlns:UDF="TallyUDF">
     <VOUCHER VCHTYPE="Memorandum" ACTION="Create" OBJVIEW="Accounting Voucher View">
      <OLDAUDITENTRYIDS.LIST TYPE="Number">
       <OLDAUDITENTRYIDS>-1</OLDAUDITENTRYIDS>
      </OLDAUDITENTRYIDS.LIST>
      <DATE>20161111</DATE>
      <GUID>62bff9b1-508e-438e-a6d0-2b969e4f86ef-00012c68</GUID>
      <VOUCHERTYPENAME>Memorandum</VOUCHERTYPENAME>
      <NARRATION>Auto Generated Memo,From Saw Interanet App</NARRATION>
      <PARTYLEDGERNAME>#LEDGERNAME</PARTYLEDGERNAME>
      <CSTFORMISSUETYPE/>
      <CSTFORMRECVTYPE/>
      <FBTPAYMENTTYPE>Default</FBTPAYMENTTYPE>
      <PERSISTEDVIEW>Accounting Voucher View</PERSISTEDVIEW>
      <VCHGSTCLASS/>
      <DIFFACTUALQTY>No</DIFFACTUALQTY>
      <AUDITED>No</AUDITED>
      <FORJOBCOSTING>No</FORJOBCOSTING>
      <ISOPTIONAL>No</ISOPTIONAL>
      <EFFECTIVEDATE>20161111</EFFECTIVEDATE>
      <ISFORJOBWORKIN>No</ISFORJOBWORKIN>
      <ALLOWCONSUMPTION>No</ALLOWCONSUMPTION>
      <USEFORINTEREST>No</USEFORINTEREST>
      <USEFORGAINLOSS>No</USEFORGAINLOSS>
      <USEFORGODOWNTRANSFER>No</USEFORGODOWNTRANSFER>
      <USEFORCOMPOUND>No</USEFORCOMPOUND>
      <EXCISEOPENING>No</EXCISEOPENING>
      <USEFORFINALPRODUCTION>No</USEFORFINALPRODUCTION>
      <ISCANCELLED>No</ISCANCELLED>
      <HASCASHFLOW>No</HASCASHFLOW>
      <ISPOSTDATED>No</ISPOSTDATED>
      <USETRACKINGNUMBER>No</USETRACKINGNUMBER>
      <ISINVOICE>No</ISINVOICE>
      <MFGJOURNAL>No</MFGJOURNAL>
      <HASDISCOUNTS>No</HASDISCOUNTS>
      <ASPAYSLIP>No</ASPAYSLIP>
      <ISCOSTCENTRE>No</ISCOSTCENTRE>
      <ISSTXNONREALIZEDVCH>No</ISSTXNONREALIZEDVCH>
      <ISEXCISEMANUFACTURERON>No</ISEXCISEMANUFACTURERON>
      <ISBLANKCHEQUE>No</ISBLANKCHEQUE>
      <ISVOID>No</ISVOID>
      <ISONHOLD>No</ISONHOLD>
      <ISDELETED>No</ISDELETED>
      <ASORIGINAL>No</ASORIGINAL>
      <VCHISFROMSYNC>No</VCHISFROMSYNC>
      <OLDAUDITENTRIES.LIST>      </OLDAUDITENTRIES.LIST>
      <ACCOUNTAUDITENTRIES.LIST>      </ACCOUNTAUDITENTRIES.LIST>
      <AUDITENTRIES.LIST>      </AUDITENTRIES.LIST>
      <INVOICEDELNOTES.LIST>      </INVOICEDELNOTES.LIST>
      <INVOICEORDERLIST.LIST>      </INVOICEORDERLIST.LIST>
      <INVOICEINDENTLIST.LIST>      </INVOICEINDENTLIST.LIST>
      <ATTENDANCEENTRIES.LIST>      </ATTENDANCEENTRIES.LIST>
      <ORIGINVOICEDETAILS.LIST>      </ORIGINVOICEDETAILS.LIST>
      <INVOICEEXPORTLIST.LIST>      </INVOICEEXPORTLIST.LIST>
      <ALLLEDGERENTRIES.LIST>
       <OLDAUDITENTRYIDS.LIST TYPE="Number">
        <OLDAUDITENTRYIDS>-1</OLDAUDITENTRYIDS>
       </OLDAUDITENTRYIDS.LIST>
       <LEDGERNAME>YOUR LEDGER NAME</LEDGERNAME>
       <GSTCLASS/>
       <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
       <LEDGERFROMITEM>No</LEDGERFROMITEM>
       <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
       <ISPARTYLEDGER>Yes</ISPARTYLEDGER>
       <ISLASTDEEMEDPOSITIVE>Yes</ISLASTDEEMEDPOSITIVE>
       <AMOUNT>-0.01</AMOUNT>
       <BANKALLOCATIONS.LIST>       </BANKALLOCATIONS.LIST>
       <BILLALLOCATIONS.LIST>       </BILLALLOCATIONS.LIST>
       <INTERESTCOLLECTION.LIST>       </INTERESTCOLLECTION.LIST>
       <OLDAUDITENTRIES.LIST>       </OLDAUDITENTRIES.LIST>
       <ACCOUNTAUDITENTRIES.LIST>       </ACCOUNTAUDITENTRIES.LIST>
       <AUDITENTRIES.LIST>       </AUDITENTRIES.LIST>
       <TAXBILLALLOCATIONS.LIST>       </TAXBILLALLOCATIONS.LIST>
       <TAXOBJECTALLOCATIONS.LIST>       </TAXOBJECTALLOCATIONS.LIST>
       <TDSEXPENSEALLOCATIONS.LIST>       </TDSEXPENSEALLOCATIONS.LIST>
       <VATSTATUTORYDETAILS.LIST>       </VATSTATUTORYDETAILS.LIST>
       <COSTTRACKALLOCATIONS.LIST>       </COSTTRACKALLOCATIONS.LIST>
       <UDF:_UDF_788551189.LIST DESC="" ISLIST="YES" TYPE="String" INDEX="22036">
        <UDF:_UDF_788551189 DESC="">11-Nov-2016</UDF:_UDF_788551189>
       </UDF:_UDF_788551189.LIST>
       <UDF:_UDF_788551190.LIST DESC="" ISLIST="YES" TYPE="String" INDEX="22037">
        <UDF:_UDF_788551190 DESC="">13:30:56</UDF:_UDF_788551190>
       </UDF:_UDF_788551190.LIST>
       <UDF:_UDF_788551191.LIST DESC="" ISLIST="YES" TYPE="String" INDEX="22038">
        <UDF:_UDF_788551191 DESC="">9fbc5355-ced1-4463-a4d2-64e3246d79ee</UDF:_UDF_788551191>
       </UDF:_UDF_788551191.LIST>
      </ALLLEDGERENTRIES.LIST>
     
      <PAYROLLMODEOFPAYMENT.LIST>      </PAYROLLMODEOFPAYMENT.LIST>
      <ATTDRECORDS.LIST>      </ATTDRECORDS.LIST>
     </VOUCHER>
    </TALLYMESSAGE>
 
   </REQUESTDATA>
  </IMPORTDATA>
 </BODY>
</ENVELOPE>
 





Tally Integration, Tally ERP 9 Integration with Node.JS

Tally ERP Data Accessing via Node.js

Getting Tally ERP data using Server side javascript (node.js)
1. Create a NodeJS, express application
2. Install necessary plugins such as cors,xml,body-parser and request.

Server.js

var express = require('express');
var router = express.Router();
var bodyParser = require('body-parser');
var cors = require('cors');
var request = require('request');
require('body-parser-xml')(bodyParser);
var xml = require('xml');
var async = require('async');
/*Tally xml query*/
var xmlstring = '<ENVELOPE>
<HEADER>
<TALLYREQUEST>Export DATA</TALLYREQUEST>
</HEADER>
<BODY>
<EXPORTDATA>
<REQUESTDESC>
<REPORTNAME>LIST of Companies</REPORTNAME>
<STATICVARIABLES>
<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
</STATICVARIABLES>
</REQUESTDESC>
</EXPORTDATA> </BODY>
</ENVELOPE>';
let app = express();
app.use(bodyParser.json());
/* use CORS to avoid net::ERR_CONNECTION_RESET */
app.use(cors);
app.post("/",(req,res) =>{ /*
Dynamic Tally xml Query parameter
const dbrequest = req.body.datarequest;
const params = req.body.params;
*/
var options = {
uri: 'http://localhost:9000',

method: 'POST',

headers: { 'Content-Type': 'text/xml;
charset:UTF-8',
'Content-Length': Buffer.byteLength(xmlstring)},
body: req.body.xmlstr
};
var result="";
async.parallel([
function(callback) {
/* tally data fetch from local tally server*/
var url = "http://localhost:9000";
request(options, function(err, response, body) {
// JSON body
if(err) { console.log(err);
callback(true);
return;
}

result = body;
callback(false, body);
});

}

],function(err, results) {
if(err) { console.log(err);
res.send(500,"Server Error");
return;
}
res.send("result--->"+result);
}
);
}

app.listen(4000,'localhost');


TallyPrime List of Companies XML Request

TallyPrime XML Request for List of Companies

<ENVELOPE>
<HEADER>
<VERSION>1</VERSION>
<TALLYREQUEST>Export</TALLYREQUEST>
<TYPE>Data</TYPE>
<ID>List of Companies</ID>
</HEADER>
<BODY>
<DESC>
<TDL>
<TDLMESSAGE>
<REPORT NAME="List of Companies" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<FORMS>List of Companies</FORMS>
</REPORT>
<FORM NAME="List of Companies" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<TOPPARTS>List of Companies</TOPPARTS>
<XMLTAG>"List of Companies"</XMLTAG>
</FORM>
<PART NAME="List of Companies" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<TOPLINES>List of Companies</TOPLINES>
<REPEAT>List of Companies : Collection of Companies</REPEAT>
<SCROLLED>Vertical</SCROLLED>
</PART>
<LINE NAME="List of Companies" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<LEFTFIELDS>Name</LEFTFIELDS>
</LINE>
<FIELD NAME="Name" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<SET>$Name</SET>
<XMLTAG>"NAME"</XMLTAG>
</FIELD>
<COLLECTION NAME="Collection of Companies" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
<TYPE>Company</TYPE>
<FETCH>NAME</FETCH>
</COLLECTION>
</TDLMESSAGE>
</TDL>
</DESC>
</BODY>
</ENVELOPE>






Related Links...

How to Get Trial Balance in xml/html format


Sales Register all Sales Voucher Type


Tally Alter Credit Limit and Credit Days using XML Request


Tally data to Power BI


XML - How to get voucher list of a specific voucher type in tally via


Party wise Sales in xml format


Export Optional Vouchers from Tally -XML Request