Integration of Inventory Masters
The inventory masters are similar to Accounting Masters. Inventory masters are needed to maintain the stock details of an organization to realize the availability of stock in hand which is part of the Balance sheet.
The following table describes the type of inventory masters and its purpose:
Master |
Information |
Stock Group |
Stock groups holds collection of stock items. |
Stock Items |
A Stock item is the actual inventory master used in the transactions |
Unit of Measure |
Stock Items are transacted based on the quantity. The quantity is measured by the Unit of Measure. |
Locations/Godowns |
To maintain the availability of stock at various locations. Stock items are stored under the Godowns |
Stock Group
Stock Group in inventory are similar to Groups in Accounting masters. Stock Groups are useful to classify the Stock Items. The stock group classification can be made based on some common features such as brand name, product type, quality, etc. Grouping helps to locate Stock Items easily and report their details in statements. The stock group can have collection of stock groups (sub stock groups) as well.
The following XML request can be send to Tally from a TPA to create a stock group ‘Electronics’
<ENVELOPE>
<HEADER>
<TALLYREQUEST>Import Data</TALLYREQUEST>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME>All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA>
<TALLYMESSAGE xmlns:UDF=”TallyUDF”>
<STOCKGROUP Action=”Create”>
<NAME>Electronics</NAME>
</STOCKGROUP>
</TALLYMESSAGE>
</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>
Stock Item
Stock Item refers to the goods that an organization manufacture, trade or maintains. A stock item can be created by providing a Name in Tally. However, the inventory master UOM (Unit of Measure) is mandatory to define the quantity. It is good to create the dependent masters of the stock items before creating a stock item.
The following are the XML tags for creating a stock item:
Tag |
Data type |
Is mandatory |
Description |
NAME |
String |
Yes |
Name of the stock item |
BASEUNITS |
String |
No |
Name of the UOM |
Creating a stock item
Stock item can be created in Tally from a third party application by using the below mentioned sample XML request
<ENVELOPE>
<HEADER>
<TALLYREQUEST>Import data</TALLYREQUEST>
<TYPE>Data</TYPE>
<ID>All Masters</ID>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME>All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA>
<TALLYMESSAGE xmlns:UDF=”TallyUDF”>
<STOCKITEM Action=”Create”>
<NAME>Red Colored Striped Shirt</NAME>
<BASEUNITS>lts</BASEUNITS>
<NAME.LIST TYPE=”String”>
<NAME>Red Colored Striped Shirt</NAME>
</NAME.LIST>
</STOCKITEM>
</TALLYMESSAGE>
</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>
To create multiple stock items, the tag set <Stockitem> can be repeated as required.
Altering of stock item
Alteration of stock item can be done using the following tag and value
<STOCKITEM NAME=”Red Colored Striped Shirt” Action=”Alter”>
UOM of a stock item cannot be altered when the stock item used in a transaction or in a master
XML response for import data request
Tally responses in the following XML format for the XML request:
Tag |
Description |
<RESPONSE> |
Opening tag of response XML |
<CREATED>0</CREATED> |
Number of masters/transactions created |
<ALTERED>0</ALTERED> |
Number of masters/transactions altered |
<DELETED>0</DELETED> |
Number of masters/transactions deleted |
<LASTVCHID>0</LASTVCHID> |
Master ID of last imported voucher |
<LASTMID>0</LASTMID> |
Last Master ID (it always returns 0) |
<COMBINED>0</COMBINED> |
Number of combined masters |
<IGNORED>0</IGNORED> |
Number of ignored masters |
<ERRORS>0</ERRORS> |
Number of errors while importing the request |
<CANCELLED>0</CANCELLED> |
Number of transactions cancelled |
</RESPONSE> |
Closing tag of response XML |
Other optional attributes of a stock item
Depending on the features enabled in Tally, the tags can be added in the XML request.
Example:
Name |
Usage of the Tag |
Tag |
Standard Selling price |
To provide standard selling for stock item
|
<STANDARDPRICELIST.LIST> <DATE>14092016</DATE> <RATE>1145.99</RATE> </STANDARDPRICELIST.LIST>
|
Standard Cost price |
To provide standard cost for stock item |
<STANDARDCOSTLIST.LIST> <DATE>12092016</DATE> <RATE>875.23</RATE> </STANDARDCOSTLIST.LIST> |
Parent |
To provide stock group name to stock item name |
<PARENT>”Electronics” </PARENT> |
BatchName |
To provide batch name. |
<BATCHNAME> Apr2016 </BATCHNAME> |
Opening balance |
To provide opening quantity for the item |
<OPENINGBALANCE>25 </OPENINGBALANCE> |
Opening Rate |
To provide opening rate for the item |
<OPENINGRATE>490 </OPENINGRATE> |
Opening value |
To provide opening value for the item |
<OPENINGVALUE>12250 </OPENINGVALUE> |
Godown Name |
To provide godown name. Incase, godown feature is not enabled, the name of godown can be set to Main Location as this is the default value in Tally
|
<GODOWN> Main Location </GODOWN> |
Identify/map items pushed by TPA
There may be a need to map the stock items maintained in Tally vs stock items maintained in TPA. In such case, it is necessary to store a reference value in stock item master. This can be achieved using the fields Alias or Part number of the stock item. Tally has a capability to provide multiple Aliases and Part numbers to a master.
Alias
The Alias field gets enabled by the option “Provide aliases along with name?” in Stock item master configuration.
Tag |
Data type |
Is mandatory |
Description |
NAME.LIST |
List |
Yes |
It is the header of alias list |
NAME |
String |
Yes |
Alias name |
TPA can store multiple unique aliases using this following XML tags
<NAME.LIST TYPE=”String”>
<NAME>Red Striped Shirt</NAME>
<NAME>Stockno12345</NAME>
<NAME>TPA-Item-001</NAME>
</NAME.LIST>
Part No
The Part No. field gets enabled by the option “Use Part Number for stock items?” in Stock item master configuration. This field is used to enter the catalogue number.
Tag |
Data type |
Is mandatory |
Description |
MAILINGNAME.LIST |
List |
Yes |
It is the header of part number list |
MAILINGNAME |
String |
Yes |
To provide the Part number |
TPA can store multiple unique Part numbers using this following XML tags
<MAILINGNAME.LIST TYPE=”String”>
<MAILINGNAME>TPA-Stockno-00001</MAILINGNAME>
<MAILINGNAME>00001</MAILINGNAME>
</MAILINGNAME.LIST>
Units of Measure
Stock Items are purchased or sold on the basis of quantity. The quantity is measured by Units. There are two type of UOMs, Simple and Compound. Simple unit is for basic requirement such as numbers, meters, kilograms, and pieces. Compound units can be used with the combination of two UOMs, like 1 box of 10 pieces [1 box = 10 pieces], to measure the stock items in two aspects
Simple UOM
Simple units are nos, pcs, and so on.
Compound UOM
A Compound unit is a relation between two Simple Units. Hence, before you create a Compound Unit, ensure that you have already created two Simple Units.
For example, To Create Compound unit – Doz (Dozen) of 12 Nos (Numbers), you have to create two simple units, Doz (Dozen) and Nos (Numbers) and set the conversion factor as 12.
UOM contains the following fields.
Tag |
Data type |
Is mandatory |
Description |
NAME |
String |
Yes |
Name of the UOM. This would be used as symbol for unit. (Applicable for simple unit. however, Tally creates the name for compound unit based on the conversion factor of Base unit and additional unit) |
ISSIMPLEUNIT |
Logical |
Yes |
To set the unit as simple or compound |
ORIGINALNAME |
String |
No |
Formal name for the unit |
DECIMALPLACES |
Number |
No |
To provide number of decimal places. (Applicable for simple unit) |
BASEUNITS |
String |
Yes |
To provide the name of base unit (Applicable for Compound unit)
|
ADDITIONALUNITS |
String |
Yes |
To provide the name of additional unit (Applicable for Compound unit) |
CONVERSION |
Number |
Yes |
To provide the conversion factor from base to additional unit (Applicable for Compound unit) |
Simple & compound unit creation
XML tags for simple unit and compound unit creation are as follows.
In compound unit creation, <NAME> tag value will not be considered. Tally creates the name for compound unit based on the conversion factor of Base unit and additional unit.
Simple Unit |
Compound Unit |
<ENVELOPE> <HEADER> <TALLYREQUEST>Import Data</TALLYREQUEST> </HEADER> <BODY> <IMPORTDATA> <REQUESTDESC> <REPORTNAME>All Masters </REPORTNAME> </REQUESTDESC> <REQUESTDATA> <TALLYMESSAGE xmlns:UDF=”TallyUDF”> <UNIT Action = “Create”> <NAME>Pcs</NAME> <ISSIMPLEUNIT>Yes</ISSIMPLEUNIT> <ORIGINALNAME>Pieces </ORIGINALNAME> <DECIMALPLACES>2</DECIMALPLACES> </UNIT> <UNIT Action = “Create”> <NAME>Doz</NAME> <ISSIMPLEUNIT>Yes</ISSIMPLEUNIT> <ORIGINALNAME>Dozen </ORIGINALNAME> <DECIMALPLACES>0</DECIMALPLACES> </UNIT> </TALLYMESSAGE> </REQUESTDATA> </IMPORTDATA> </BODY> </ENVELOPE> |
<ENVELOPE> <HEADER> <TALLYREQUEST>Import Data</TALLYREQUEST> </HEADER> <BODY> <IMPORTDATA> <REQUESTDESC> <REPORTNAME>All Masters </REPORTNAME> </REQUESTDESC> <REQUESTDATA> <TALLYMESSAGE xmlns:UDF=”TallyUDF”> <UNIT Action = “Create”> <NAME>Dozen of 12 Pieces</NAME> <ISSIMPLEUNIT>No</ISSIMPLEUNIT> <ORIGINALNAME>Liters</ORIGINALNAME> <DECIMALPLACES>2</DECIMALPLACES> <BASEUNITS>Doz</BASEUNITS> <ADDITIONALUNITS>Pcs</ADDITIONALUNITS> <CONVERSION>12</CONVERSION> </UNIT> </TALLYMESSAGE> </REQUESTDATA> </IMPORTDATA> </BODY> </ENVELOPE> |
Location/Godown
Location/Godown is the place where Stock Items are stored. You can obtain stock reports for each godown and account for the movement of stock between locations/godowns. Click here for the steps to create a Godown, manually in Tally.
The following XML request can be send to Tally from a TPA to create a Location/Godown ‘Factory’
<ENVELOPE>
<HEADER>
<TALLYREQUEST>Import Data</TALLYREQUEST>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME>All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA>
<TALLYMESSAGE xmlns:UDF=”TallyUDF”>
<GODOWN Action=”Create”>
<NAME>Factory</NAME>
</GODOWN>
</TALLYMESSAGE>
</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>
There is a default godown ‘Main Location’ available in Tally. Incase the feature ‘Maintain multiple godowns?’ is not enabled in Tally, the name of godown can be set to ‘Main Location’, as it is a default value in masters and transactions
Guidelines
The mandatory tags required to import/create the inventory masters in Tally is explained in this document. To understand other tags, create a sample master with the required features in Tally and export the same in XML format. Click here for the steps to export the masters from Tally.
Extracting/pulling the Inventory masters from Tally to TPA is covered under the section Export Reports/Data from Tally.