Friday, October 2, 2026

How to Reconcile GSTR-2B in TallyPrime: Step-by-Step Guide


How to Reconcile GSTR-2B in TallyPrime: Step-by-Step Guide

GSTR-2B reconciliation helps you compare purchase transactions recorded in your books with the invoices and credit notes reported by your suppliers on the GST portal. This guide explains how to download or import GSTR-2B data, review differences, and resolve common exceptions in TallyPrime.

What is GSTR-2B?

GSTR-2B is a static, system-generated statement of eligible and ineligible input tax credit based on supplier returns such as GSTR-1, GSTR-5, and GSTR-6. It is generated for a return period and should be compared with your purchase records before claiming input tax credit.

Always verify the applicable GST rules and eligibility with your tax professional. This article explains the TallyPrime workflow and is not a substitute for professional tax advice.

Before you start

  • Keep your TallyPrime company data updated and take a backup.
  • Confirm that the correct GST registration is configured in the company.
  • Download the required GSTR-2B period from the GST portal, or keep the Excel/JSON file ready for import.
  • Use a TallyPrime release that supports the GSTR-2B reconciliation features described below.

Step 1: Download GSTR-2B directly into TallyPrime

  1. Press Alt+Z (Exchange) and select All GST Options > Download GST Returns.
  2. Press C (Configure).
  3. Set Return Type to GSTR-2B and select the return period.
  4. Press D (Download). If required, sign in to the GST portal and complete the OTP step.
  5. After download, open the GSTR-2B Reconciliation report.

Step 2: Import a GSTR-2B file manually

  1. Press Alt+O (Import) > GST Returns.
  2. Select the GST registration and set Return Type to GSTR-2B.
  3. Select the downloaded Excel or JSON file.
  4. Press Ctrl+A to accept and review the Import Summary.

Step 3: Open the GSTR-2B Reconciliation report

Press Alt+G (Go To), search for GSTR-2B Reconciliation, and open the report. TallyPrime groups transactions into useful sections such as Reconciled, Unreconciled, Mismatched, Available Only in Books, Available Only on Portal, Mismatch in Return Period, Excluded, and Uncertain Transactions.

Use F3 (Company/Tax Registration) when you need to switch between GST registrations. Use Ctrl+H (Change View) to switch between reconciliation statistics and voucher statistics.

Step 4: Resolve common differences

Invoice available only on the portal

Check whether the purchase invoice was missed in the books. Use the portal view to verify the supplier, invoice number, date, taxable value, and tax amount. Record the correct purchase transaction in TallyPrime, if applicable, and then review the reconciliation status.

Invoice available only in books

Check whether the supplier has filed the return for the relevant period. Verify the supplier GSTIN, invoice number, invoice date, and GST amounts in your books. Follow up with the supplier when the document is missing from GSTR-2B.

Mismatch in invoice number or document date

Small differences caused by prefixes, suffixes, spaces, or typing errors can create a mismatch. Review the portal document and correct the voucher details in the books. TallyPrime also provides options to copy the document number and date from the portal view where applicable.

Mismatch in return period

If the supplier reported the document in a different period, review the transaction and set the appropriate GST Return Effective Date after confirming the correct treatment.

Taxable value or tax amount mismatch

Compare the purchase voucher with the supplier document. Do not mark a transaction as reconciled merely to remove an exception. Correct the underlying voucher or investigate the supplier filing. For minor differences such as permitted rounding differences, use the reconciliation configuration only after reviewing the business and tax impact.

Incorrect GSTIN or section

Correct the party GSTIN/UIN or voucher classification when the mismatch is caused by a data-entry error. If the transaction is not related to your business, exclude it only after documenting why it should not be considered.

Step 5: Recompute GSTR-2B when required

You may need to recompute GSTR-2B after changes to IMS actions, purchase invoices, GST effective dates, or input tax credit availability. Use Alt+Z (Exchange) > All GST Options > Recompute GSTR-2B, select the GST registration and period, and choose R (Recompute). After the process completes, download the latest GSTR-2B data and review the reconciliation report again.

Best practices before claiming ITC

  • Do not claim the same document twice.
  • Investigate invoices that are missing from GSTR-2B or present only in the books.
  • Review blocked or ineligible ITC separately.
  • Keep supplier follow-up records for missing or incorrect invoices.
  • Maintain a backup and an audit trail before making bulk corrections.

Related TallyPrime guides

For related workflows, read our TallyPrime bank reconciliation guide and our earlier guide on resolving GST voucher mismatches.

Conclusion

GSTR-2B reconciliation in TallyPrime is most effective when you review exceptions systematically: download the correct period, compare books with the portal, correct genuine errors, document supplier issues, and recompute the data when GST or IMS changes affect ITC availability.

Menu names and features can vary by TallyPrime release. Test changes on a backup company and confirm tax treatment with a qualified professional before filing returns.

Official TallyHelp reference: Reconcile GSTR-2B Data in TallyPrime

Tuesday, September 29, 2026

TallyPrime Bank Reconciliation: A Practical Step-by-Step Guide

Bank reconciliation is one of the simplest ways to catch missing entries, duplicate postings and timing differences before they become accounting problems. In TallyPrime, you can compare your book balance with the bank statement and investigate unmatched transactions in a structured way.

This guide explains a practical workflow for bank reconciliation in TallyPrime. Menu names can vary slightly by release and configuration, so use the equivalent Bank Reconciliation or Banking report available in your installation.

What is bank reconciliation?

Bank reconciliation is the process of comparing the bank balance recorded in your company books with the balance shown by the bank. The two balances may differ because of cheques in transit, direct bank charges, deposits not yet credited, bank interest, or entries that have not been recorded in TallyPrime.

A regular reconciliation helps you:

  • find missing receipts and payments;
  • identify duplicate or wrongly dated vouchers;
  • separate genuine timing differences from accounting errors;
  • keep cash-flow reports more reliable; and
  • prepare cleaner records for month-end review.

Before you begin

Keep the following ready:

  • the latest bank statement in PDF, Excel or another format supported by your process;
  • the correct bank ledger in TallyPrime;
  • the statement period and closing balance; and
  • details of pending cheques, deposits and bank charges.

Take a backup of the company data before making a large batch of corrections. If multiple users work in the same company, coordinate the reconciliation period so that new vouchers do not make the report confusing while you are reviewing it.

Step-by-step bank reconciliation in TallyPrime

1. Open the bank reconciliation report

Open the relevant company and go to the Banking or Display reports area. Select the bank ledger and open the Bank Reconciliation report. In some releases, you can reach the report from the ledger or from the Banking menu.

2. Select the correct bank ledger and period

Choose the exact ledger linked to the bank account you want to review. Set the date range to match the bank statement. Working one month at a time is usually easier than trying to reconcile a full year in a single pass.

3. Enter or import the bank statement details

Depending on your TallyPrime release and bank setup, you may be able to import statement data or enter the relevant transaction details in the reconciliation view. Check the date, amount, transaction type and reference before accepting a match.

Do not match a transaction only because the amount is identical. Confirm the date range, narration, cheque number, reference number or other identifying detail as well.

4. Match cleared transactions

Mark the transactions that have cleared the bank. Receipts deposited into the bank and payments made by cheque should be matched only when they appear in the statement. A voucher can be recorded in the books before the bank processes it, so the book date and clearance date may be different.

5. Review unmatched transactions

Group the unmatched items into practical categories:

  • cheques issued but not yet presented;
  • deposits recorded in books but not yet credited;
  • bank charges or interest missing from TallyPrime;
  • direct credits or debits made by the bank;
  • wrong dates, amounts or bank references; and
  • entries that belong to another bank account or company.

6. Record genuine missing entries

If the bank statement contains a legitimate charge, interest entry or direct debit that is missing from the books, record the appropriate voucher after checking the supporting document. Use the correct expense, income or party ledger and add a clear narration.

For corrections, avoid deleting a voucher just to force the report to match. Reverse or alter it according to your internal accounting policy, retain the audit trail, and document the reason for the change.

7. Verify the reconciled balance

After matching and recording missing entries, compare the reconciled balance with the bank statement closing balance. Investigate any remaining difference instead of carrying it forward without an explanation.

Common reasons for a difference

DifferenceLikely reasonWhat to check
Payment in books, absent in statementCheque or transfer is pendingCheque number, bank date and outstanding list
Credit in statement, absent in booksDirect receipt or bank transferBank reference, customer and remittance advice
Small unexplained debitBank charge or tax on chargeStatement narration and bank advice
Same amount appears twiceDuplicate voucher or duplicate importVoucher number, date and reference
Balance differs after matchingOpening balance, date or amount errorPrevious reconciliation and ledger entries

Practical tips for faster reconciliation

  1. Reconcile weekly for high-volume bank accounts and at least monthly for other accounts.
  2. Use a consistent narration format, such as bank reference plus party name.
  3. Keep a short pending-items list with an owner and expected clearance date.
  4. Review old unreconciled cheques instead of allowing them to remain indefinitely.
  5. Restrict back-dated edits after month-end review and record approved exceptions.
  6. Reconcile each bank ledger separately; do not combine accounts just to make the balance appear correct.

Tally.ERP 9 and TallyPrime: what changes?

The exact screens and banking features differ between Tally.ERP 9 and TallyPrime. The accounting principle remains the same: compare the book entry with the bank evidence, record legitimate missing transactions, and explain timing differences. If you are upgrading an older company, confirm that bank ledgers, opening balances and prior reconciliation information have migrated correctly before starting a new period.

Frequently asked questions

Can I reconcile a bank account without importing a statement?

Yes. You can review the bank ledger and mark or enter reconciliation details manually when your release or bank workflow does not support statement import.

Why is a cheque still unreconciled even though it was entered?

Entering a cheque voucher records it in the books. It becomes reconciled only after it clears the bank or after you enter the correct clearance information.

Should I change the voucher date to match the bank date?

Not automatically. The voucher date should reflect the underlying transaction and your accounting policy. Use the reconciliation or clearance details for timing differences, and change a voucher date only when it is genuinely incorrect and the change is properly approved.

Final checklist

  • Correct company and bank ledger selected
  • Statement period matches the report period
  • Opening and closing balances checked
  • Cleared transactions matched using references
  • Bank charges and direct credits recorded
  • Old unreconciled items reviewed
  • Backup and review completed

Conclusion: Bank reconciliation works best as a routine control, not as a year-end emergency. A short weekly or monthly review in TallyPrime can reveal errors early and give you a more dependable view of available cash.

Note: This article is for general software and bookkeeping guidance. Always verify the workflow with your accountant and the documentation for your installed Tally release.

 

Monday, January 10, 2022

Payment QR Code On Invoice

 Payment QR Code On Invoice


As we know most of the customers are now making payments using UPI Payments apps like Phonepe, Google Pay, Paytm, Amazon Pay.

Using this TDL you can generate the QR code in Tally Automatically and print it on your Invoice so that your customer does not have to be at your place to scan the code, or you do not have to send a mobile number to get the money or share the QR code.

Customers can just scan the QR code Printed on the Invoice and send you the money. 

Just attached the TDL file to your tally and you will get option like below 



Set you UPI id/Bank Account Details or Mobile Number and that it.

Now Create a Sales Invoice and Print it. And you should be able to see the QR code as below.



That is now you can Print/Mail this invoice to customer and they can scan the QR code and make the payment.




Cost only 500/- Only

Saturday, January 8, 2022

Sr No. on Sales Screen (Free TDL)

 Serial Number on Sales Screen for Large Invoices

Most of the dealers and consumer products dealers have large product/SKU line and the invoices they prepare has a lot of SKU/Stock item in them. 

To manage how many products/SKU are sold in a single invoice before printing it Serial Numbers are required on sales and purchase screen. This tdl will provide you with the same function in tally.

To attach the code in your tally just copy-paste the below code into Notepad and save it. And just attached the same file to your tally and you should be able to get the serial number as below.


[#Line : EI ColumnOne]
Option : Global EI ColumnOne1

[!Line : Global EI ColumnOne1]
add : fields: before:VCH ItemTitle : VCH SlNO
[field : vch slno]
use : name field
setas : "SL"
Align : Centre
width : 5
style : Small bold
Skip : yes

[#Line : EI InvInfo]
Option : Global EI InvInfo1

[#Line : CI InvInfo]
Option : Global EI InvInfo1

[!Line : Global EI InvInfo1]
add : fields:before: VCH StockItem : vchslno1
[field : vchslno1]
Set as : $$Line
Align : Centre
Border : Thin Left Right
Width : 5
Skip : Yes

Thursday, April 26, 2018

Free Tally Customization (TDL) HSN Code and GST Percentage During Voucher Entry updated

View HSN code and GST Percentage of Stock Item During Voucher Entry.


Lot of need know during voucher entry weather the HSN code and GST percentage of Stock Item is entered/updated properly or not. Below code will show you the HSN code and GST percentage of select Stock Item during Voucher entry.

To Attach the code to you Tally Software please follow the instructions in the link below.
http://tallyexperttips.blogspot.in/2017/09/how-to-attach-any-tallyerp9.html

You will need to copy and paste the below code and copy and paste it into your txt/tdl file using notepad/word pad.



[#Line : EI Column One]
 Add   : Right Field: At Beginning:OTSHSNCode
 Add:Right Field: After:OTSHSNCode:OTSGSTPerT
 
[Field:OTSGSTPerT]
 Use:Name Field
 Set as: "GST %"
 Skip: Yes
 Border:Thick Left Right
 Width:10
 Align: Center
 
[Field:OTSHSNCode]
 Use:Name Field
 Set as: "HSN Code"
 Skip: Yes
 Border:Thick Left Right
 Width:10
 Align: Center

[#Line : EI Inv Info]
 Add: Right Field:At Beginning:OTSHSNCodeNo
 Add: Right Field: After: OTSHSNCodeNo: OTSGSTPer

[Field:OTSHSNCodeNo]
 Use: Name Field
 Set as:$(Stockitem,$stockitem).GstDetails[Last].hsncode
 Width:10
 Align: Center
 Set Always: Yes
 Skip: Yes
 
[Field:OTSGSTPer]
 Use: Number Field
 Set as:$(Stockitem,$stockitem).GSTDetails[First].StatewiseDetails[1, @@IsAnyState].RateDetails[1, @@IsIGST].GSTRate
 Format: Percentage
 Width:10
 Align: Center
 Set Always: Yes
 Skip: Yes
 


Wednesday, March 28, 2018

GST Invoice Customization with eWay Bill No. in A4 size ( Free Tally TDL Code)

As we all know that new Financial year is going to being lot of us might be thinking of changing the impression on customer's by changing the invoice format. And as eWay Bill is going to get implemented from 1st of April 2018. here is the new invoice format with eWay Bill no. printed on it.

If you liked the format please find the below TDL code of the same. NOTE :- Please take the backup before attaching any code to your live data. This code is only for educational purpose we will not be responsible for any data lost due to improper following of instructions.

To know how to attache any tdl to Tally please follow the instruction in below Link.
How to Attach any Tally.ERP9 Customization to Tally.ERP9 Software so that you can easily attach this code to your Tally.ERP9 software.


;;;;;;;;;;;;;;; Font Used in Invoice Customization;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Style:O9]
Font:Calibri (Body)
Height:9

[Style:O9B]
Use:O9
Bold: Yes

[Style:O11B]
Font: Adobe Garamond Pro Bold
Height:15
Bold: Yes

;;;;;;;;;;;;;;;;;;;;;;;;;;;Invoice Customization Code Starts;;;;;;;;;;;;;;;;;;;;;;
[#Part: VTYP BehaviourMain]
Option : OTS Vch Type Confirmation: @@IsOTSInv

[!Part : OTS Vch Type Confirmation]
Add : Line : After : VTYP PrintSave :OTS Confirm Vch Type
 
[Line : OTS Confirm Vch Type]
Field : Long Prompt, Logical Field
Local : Field : Long Prompt : Set as : "Print Customized Format?"
Local : Field : Long Prompt : Width : @@LongWidth
Local : Field : Logical Field : Storage : OTSCustomizedFormat

[System : Formula]
IsOTSInv : $$IsSales:$Parent
IsOTSCustomFormat : $OTSCustomizedFormat:VoucherType:$VoucherTypeName

[System : UDF]
OTSCustomizedFormat : Logical : 0001

[#Form : Sales Color]
Option: OTS Customized Invoice: @@IsOTSCustomFormat

[!Form:OTS Customized Invoice]
Delete : Print
Add : Print : OTS Custom Invoice

[Report :OTS Custom Invoice]
Use          : Printed Invoice
Delete: Form        : Printed Invoice
Form : OTS Custom Invoice

[Form:OTS Custom Invoice]
Space Top   : 0.25 inch
    Space Right : 0.25 inch
    Space Left  : 0.50 inch
    Space Bottom: 0.25 inch

Part: OTS Opening Page Break, OTS Invoice Body
Bottom Part:OTS Bottom Part

Page Break : OTS Closing Page Break, OTS Opening Page Break

[Part:OTS Closing Page Break]
Lines :OTS Closing Page Break Line

[Line: OTS Closing Page Break Line]
Fields : Simple Field
Local : Field: Simple Field : Set As : "Continued..."
Local : Field: Simple Field : FullWidth : Yes
Local : Field: Simple Field : Align : Right
Border : Full Thin Top

;;;;;;;;;;;;;;;;;;;;;;;OTS Opening Page Break;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Part:OTS Opening Page Break]
Part: OTS Invoice Title, OTS Invoice Company Details, OTS Invoice Customer Details, OTS Body Coloumns Title
Vertical: Yes

[Part: OTS Invoice Title]
Line: OTS Invoice Title
Border: Thick Cover

[Line:OTS Invoice Title]
Field: Simple Field
Right Field:Name Field
Local: Field: Simple Field: Set as: "TAX INVOICE"
Local: Field: Simple Field: Style: O9B
Local: Field: Simple Field: Space Left: 45
Local: Field: Simple Field: Full Width: Yes
Local: Field: Name Field: Set as:If @@GetCopyNum = 1 Then "ORIGINAL FOR RECIPIENT" Else +
    If @@GetCopyNum = 2 Then $$LocaleString:"DUPLICATE FOR SUPPLIER" Else +
      If @@GetCopyNum = 3 Then $$LocaleString:"TRIPLICATE FOR TRANSPOTER" Else +
      If @@GetCopyNum = 4 Then $$LocaleString:"EXTRA COPY" Else $$LocaleString:"EXTRA COPY"
 
Space Top: 0.25
Space Bottom: 0.25

[Part:OTS Invoice Company Details]
Line: OTS Company Name, OTS Company Address
Border: Thick Cover

[Line: OTS Company Name]
Field: Name Field
Local: Field: Name Field: Set as: @@CmpMailName
Local: Field: Name Field: Style:O11B
Local: Field: Name Field: Full Width: Yes
Space Top: 0.25

[Line:OTS Company Address]
Field: Name Field
Local: Field: Name Field: Set as: $$FullList:CompanyAddress:$Address
Local: Field: Name Field: Width:50% Page
Local: Field: Name Field: Style:O9
Local: Field: Name Field: Line:0

[Part:OTS Invoice Customer Details]
Left Part: OTS Customer Details Left
Right Part: OTS Invoice Details
Border: Thick Cover

[Part:OTS Customer Details Left]
Line: OTS Customer Side Title,OTS Customer Name, OTS Customer Address,OTS Customer State Name, OTS Customer GST No, OTS Customer Contact
Width:50% Page

[Line:OTS Customer Side Title]
Field: Name Field
Local: Field: Name Field: Set as: "Details for Buyer (Billed & Shipped To )"
Local: Field: Name Field: Full Width: Yes
Local: Field: Name Field: Style:O9B
Space Top: 0.50
[Line:OTS Customer Name]
Field: Name Field
Local: Field: Name Field: Set as: $PartyLedgerName;@@BuyerName
Local: Field: Name Field: Full Width: Yes
Local: Field: Name Field: Stylep:O9B
Space Top:0.25

[Line:OTS Customer Address]
Field: Name Field
Local: Field: Name Field: Set as: $$FullList:BasicBuyerAddress:$BasicBuyerAddress
Local: Field: Name Field: Full Width: Yes
Local: Field: Name Field: Line: 0
Local: Field: Name Field: Style:O9

[Line:OTS Customer State Name]
Field: Simple Field
Local: Field: Simple Field: Set as: "State Name"+"  :  "+ $StateName +"  "+ "Code :"+"  "+ $$getgststatecode:@StateName
Local: Field: Simple Field: Local Formula:StateName : If NOT ($$IsEmpty:$StateName OR $$IsSysName:NotApplicable:$StateName) Then $StateName Else $LedStateName:Ledger:@PartyName
Local: Field: Simple Field: Full Width: Yes
Local: Field: Simple Field: Style: O9

[Line:OTS Customer GST No]
Field: Simple Field
Local: Field: Simple Field: Set as: "GSTIN No : " +"  "+ $PartyGSTIN +"  "+" PAN No :"+"  "+$IncomeTaxNumber:Ledger:$BasicBuyerName
Local: Field: Simple Field: Full Width: Yes
Local: Field: Simple Field: Style: O9

[Line:OTS Customer Contact]
Field: Simple Field
Local: Field: Simple Field: Set as: "Contact Details :"+"  "+ @@VchContactNo
Local: Field: Simple Field: Style: O9
Local: Field: Simple Field: Full Width: Yes

[Part:OTS Invoice Details]
Line:OTS Invoice Number Date, OTS Delivery Challanno Date, OTS eWayBillNo, OTS Disptach Doc, OTS Destination, OTS LR No, OTS Order No, OTS Credit Days
Border: Thick Left
Common Border: Yes

[Line:OTS Invoice Number Date]
Field: Simple Prompt, Simple Field, Medium Prompt, Name Field
Local: Field: Simple Prompt: Set as: "Invoice No :"
Local: Field: Simple Prompt: Style: O9
Local: Field: Simple Prompt: Width:10
Local: Field: Simple Field: Set as: $VoucherNumber
Local: Field: Simple Field: Style:O9B
Local: Field: Simple Field: Width:12
Local: Field: Medium Prompt: Set as: "Date :"
Local: Field: Medium Prompt: Width:10
Local: Field: Medium Prompt: Style: O9
Local: Field: Medium Prompt: Border: Thick Left
Local: Field: Name Field: Set as: $Date
Local: Field: Name Field: Style:O9B
Local: Field: Name Field: Width:12
Space Top:0.25
Space Bottom: 0.25
Border: Thick Bottom

[Line:OTS Delivery Challanno Date]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "Challan No"
Local: Field: Simple Prompt: Style:O9
Local: Field: Simple Field: Set as: $BasicShipDeliveryNote
Local: Field: Simple Field: Style: O9B
Local: Field: Medium Prompt: Set as: "Date"
Local: Field: Medium Prompt: Style: O9
Local: Field: Name Field: Set as: $BasicShippingDate

[Line:OTS eWayBillNo]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "e-Way Bill No."

Local: Field: Simple Field: Set as: If @@IsGSTewayApplicable Then @@GSTPrinteWayBillNumber Else +
If $$IsEmpty:$VATTransBillNo Then $UDFVATWayBillNo Else $VATTransBillNo

Local: Field: Medium Prompt: Set as: "Date"

Local: Field: Name Field: Set as: $Date

[Line:OTS Disptach Doc]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "Dispatch Doc No"
Local: Field: Simple Field: Set as: $BasicShipDocumentNo
Local: Field: Medium Prompt: Set as: "Destination"
Local: Field: Name Field: Set as: $BasicFinalDestination;$BasicShippedBy

[Line:OTS Destination]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "Through"
Local: Field: Simple Field: Set as: $BasicShippedBy
Local: Field: Medium Prompt: Set as: "Vehical No"
Local: Field: Name Field: Set as: $BasicShipVesselNo

[Line:OTS LR No]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "LR No"
Local: Field: Simple Field: Set as: $BillofLadingNo
Local: Field: Medium Prompt: Set as: "Date"
Local: Field: Name Field: Set as: $BillofLadingDate

[Line:OTS Order No]
Use:OTS Invoice Number Date
Local: Field: Simple Prompt: Set as: "Order No"
Local: Field: Simple Field: Set as: $BasicPurchaseOrderNo
Local: Field: Medium Prompt: Set as: "Date"
Local: Field: Name Field: Set as: $BasicOrderDate

[Line:OTS Credit Days]
Field: Simple Prompt, Simple Field
Local: Field: Simple Prompt: Set as: "Credit Days"
Local: Field: Simple Prompt: Width: 10
Local: Field: Simple Field: Set as:$BasicDueDateOfPymt
Local: Field: Simple Field: Width: 10
Local: Field: Simple Prompt: Style:O9B
Local: Field: Simple Field: Style:O9B


;;;;;;;;;;;;;;;;;;;;;;;INVOICE BODY STARTS;;;;;;;;;;;;;;;;;;;;;;;;;;
[Part:OTS Body Coloumns Title]
Line: OTS Coloumns Title1, OTS Coloumns Title2
Border: Thick Cover
Common Border: Yes

[Line: OTS Coloumns Title1]
Use: OTS Invoice Body
Local: Field: Default: Type: String
Local: Field: Default: Style: O9B
Local: Field: Default: Align: Center

Local: Field: OTS SrNo: Set as: "Sr"
Local: Field: OTS Description:Set as:" Item "
Local: Field: OTS HSN Code: Set as:"HSN"
Local: Field: OTS GST Per: Set as:"GST"
Local: Field: OTS Qty: Set as:"Qty"
Local: Field: OTS Rate: Set as:"Rate"
Local: Field: OTS SGST Per: Set as:"SGST"
Local: Field: OTS SGST Amt: Set as:"SGST"
Local: Field: OTS CGST per: Set as:"CGST"
Local: Field: OTS CGST Amt: Set as:"CGST"
Local: Field: OTS IGST Per: Set as:"ISGT"
Local: Field: OTS IGST Amt: Set as:"IGST"
Local: Field: OTS GrossAmt: Set as:"Gross"

[Line:OTS Coloumns Title2]
Use: OTS Invoice Body
Local: Field: Default: Type: String
Local: Field: Default: Style: O9B
Local: Field: Default: Align: Center

Local: Field: OTS SrNo: Set as: "No"
Local: Field: OTS Description:Set as:"Description"
Local: Field: OTS HSN Code: Set as:"Code"
Local: Field: OTS GST Per: Set as:"%"
Local: Field: OTS Qty: Set as:""
Local: Field: OTS Rate: Set as:""
Local: Field: OTS SGST Per: Set as:"%"
Local: Field: OTS SGST Amt: Set as:"Amt"
Local: Field: OTS CGST per: Set as:"%"
Local: Field: OTS CGST Amt: Set as:"Amt"
Local: Field: OTS IGST Per: Set as:"%"
Local: Field: OTS IGST Amt: Set as:"Amt"
Local: Field: OTS GrossAmt: Set as:"Amount"
Border: Thick Bottom

[Part:OTS Invoice Body]
Line: OTS Invoice Body
Repeat:OTS Invoice Body: Inventory Entries
Bottom Line: OTS Coloumn Total
Border: Thick Cover
Scroll: Vertical
Float: No
Common Border: Yes

[Line: OTS Invoice Body]
Field: OTS SrNo, OTS Description
Right Field: OTS HSN Code, OTS GST Per, OTS Qty, +
OTS Rate, OTS SGST Per, OTS SGST Amt, +
OTS CGST per, OTS CGST Amt,+
OTS IGST Per, OTS IGST Amt, OTS GrossAmt

Local: Field: OTS SrNo: Width:2
Local: Field: OTS HSN Code: Width:6
Local: Field: OTS GST Per: Width: 3
Local: Field: OTS Qty: Width:7
Local: Field: OTS Rate: Width: 7
Local: Field: OTS SGST Per: Width:3
Local: Field: OTS SGST Amt: Width: 7
Local: Field: OTS CGST per: Width:3
Local: Field: OTS CGST Amt: Width:7
Local: Field: OTS IGST Per: Width:3
Local: Field: OTS IGST Amt: Width:7
Local: Field: OTS GrossAmt: Width: 7

Local: Field: OTS SrNo: Border: Thick Right
Local: Field: OTS HSN Code: Border: Thick Left
Local: Field: OTS GST Per: Border: Thick Left
Local: Field: OTS Qty: Border: Thick Left
Local: Field: OTS Rate: Border: Thick Left
Local: Field: OTS SGST Per: Border: Thick Left
Local: Field: OTS SGST Amt: Border: Thick Left
Local: Field: OTS CGST per: Border: Thick Left
Local: Field: OTS CGST Amt: Border: Thick Left
Local: Field: OTS IGST Per: Border: Thick Left
Local: Field: OTS IGST Amt: Border: Thick Left
Local: Field: OTS GrossAmt: Border: Thick Left
Space Top: 0.15

[Field:OTS SrNo]
Use: Simple Field
Set as: $$Line
Style: O9

[Field:OTS Description]
Use: Simple Field
Style: O9
Set as: if NOT $$IsSysName:$StockItemName then @@InvItemName else ""
Full Width: Yes
Line: 0

[Field:OTS HSN Code]
Use:  Simple Field
Set as:$GSTItemHSNCodeEx
Style: O9

[Field:OTS GST Per]
Use: Simple Field
Set as:If NOT $GSTIsTransLedEx Then "" Else $GSTClsfnIGSTRateEx
Style:O9

[Field:OTS Qty]
Use: Simple Field
Set as: $BilledQty
Style:O9

[Field:OTS Rate]
Use: Simple Field
Set as: $Rate
Style:O9

[Field:OTS SGST Per]
Use:  Number Field
Set as: If NOT $GSTIsTransLedEx Then "" Else $GSTClsfnIGSTRateEx /2
Style: O9
Invisible: If @@IGST > 0 then yes else no

[Field:OTS SGST Amt]
Use:Amount Field
Set as:$Amount * #OTSSGSTPer / 100
Style: O9
Invisible: If @@IGST > 0 then yes else no

[Field:OTS CGST per]
Use: Number Field
Set as: If NOT $GSTIsTransLedEx Then "" Else $GSTClsfnIGSTRateEx /2
Style: O9
Invisible: If @@IGST > 0 then yes else no

[Field:OTS CGST Amt]
Use: Amount Field
Set as:$Amount * #OTSCGSTper / 100
Style: O9
Invisible: If @@IGST > 0 then yes else no

[Field:OTS IGST Per]
Use: Number Field
Set as: If NOT $GSTIsTransLedEx Then "" Else $GSTClsfnIGSTRateEx
Style: O9
Invisible: If @@SGST > 0 then yes else no

[Field:OTS IGST Amt]
Use: Amount Field
Set as:$Amount * #OTSIGSTPer / 100
Style: O9
Invisible: If @@SGST > 0 then yes else no

[Field:OTS GrossAmt]
Use: Amount Field
Set as: $Amount
Style:O9

[Line:OTS Coloumn Total]
Use:OTS Invoice Body
Border: Thick Top Bottom

Local: Field: OTS SrNo: Set as: ""
Local: Field: OTS Description:Set as:"Total"
Local: Field: OTS HSN Code: Set as:""
Local: Field: OTS GST Per: Set as:""
Local: Field: OTS Qty: Set as:""
Local: Field: OTS Rate: Set as:""
Local: Field: OTS SGST Per: Set as:""
Local: Field: OTS SGST Per: Type: String
Local: Field: OTS SGST Amt: Set as:$$FilterAmtTotal:LedgerEntries:SGST1:$Amount
Local: Field: OTS CGST per: Set as:""
Local: Field: OTS CGST Per: Type: String
Local: Field: OTS CGST Amt: Set as:$$FilterAmtTotal:LedgerEntries:CGST1:$Amount
Local: Field: OTS IGST Per: Set as:""
Local: Field: OTS IGST Per: Type: String
Local: Field: OTS IGST Amt: Set as:$$FilterAmtTotal:LedgerEntries:IGST1:$Amount
Local: Field: OTS GrossAmt: Set as:$$CollAmtTotal:InventoryEntries:$Amount

[System: Formula]
SGST :$$FilterAmtTotal:LedgerEntries:SGST1:$Amount
SGST1 :$Name:Ledger:$LedgerName Contains $$LocaleString:"SGST"

CGST :$$FilterAmtTotal:LedgerEntries:CGST1:$Amount
CGST1 :$Name:Ledger:$LedgerName Contains $$LocaleString:"CGST"

IGST :$$FilterAmtTotal:LedgerEntries:IGST1:$Amount
IGST1 :$Name:Ledger:$LedgerName Contains $$LocaleString:"IGST"

Round :$$FilterAmtTotal:LedgerEntries:Round1:$Amount
Round1 :$Name:Ledger:$LedgerName Contains $$LocaleString:"Round"

;;;;;;;;;;;;;;;;OTS Bottom Part;;;;;;;;;;;;;;;;;;;;;;;

[Part:OTS Bottom Part]
Part:OTS Bottom Part 1,VCH GST AnalysisDetails, OTS Bottom Part 2
Vertical: Yes

[Part:OTS Bottom Part 1]
Right Part: OTS Bottom Part 1 Right
Left Part: OTS Bottom Part 1 Left
Border: Thick Cover

[Part:OTS Bottom Part 1 Left]
Line: OTS Amount in Word

[Line: OTS Amount in Word]
Field: Medium Prompt, Name Field
Local: Field: Medium Prompt: Set as: "Amount In Word"
Local: Field: Medium Prompt: Style: O9
Local: Field: Name Field: Set as: $$InWords:$Amount
Local: Field: Name Field: Style: O9B
Local: Field: Name Field: Full Width: Yes
Local: Field: Name Field: Line:0
Space Top: 0.5

[Part: OTS Bottom Part 1 Right]
Line: OTS Invoice Ledger Entries
Repeat: OTS Invoice Ledger Entries:LedgerEntries
Bottom Line: OTS Invoice Amount
Common Border: Yes
Border: Thick Left

[Line: OTS Invoice Ledger Entries]
Field: Name Field, Amount Field
Local: Field: Name Field: Set as:$LedgerName
Local: Field: Name Field: Style: O9
Local: Field: Name Field: Width:22.6
Local: Field: Name Field: Align: Right
Local: Field: Amount Field: Set as: $Amount
Local: Field: Amount Field: Style: O9B
Local: Field: Amount Field: Border: Thick Left
Local: Field: Amount Field: Width:7
Remove if: $LedgerName contains $PartyLedgerName
Space Top:0.25

[Line:OTS Invoice Amount]
Field: Name Field, Amount Field
Local:Field: Name Field: Set as: "INVOICE TOTAL"
Local:Field: Name Field: Style: Large Bold
Local:Field: Name Field: Width:22.6
Local:Field: Name Field: Align: Right
Local:Field: Amount Field: Set as: $Amount
Local:Field: Amount Field: Style: Large Bold
Local:Field: Amount Field: Width: 7
Border: Thick Top
Space Top: 0.5
Space Bottom: 0.5

[Part:OTS Bottom Part 2]
Right Part: OTS Signature
Left Part: OTS Terms and Conditions
Border: Thick Box

[Part:OTS Terms and Conditions]
Line: OTS0,OTS1, OTS2, OTS3

[Line: OTS0]
Field: Simple Field
Local: Field: Simple Field: Set as: "Terms and Conditions"
Local: Field: Simple Field: Style: O9B
Space Top: 0.25

[Line: OTS1]
Field: Simple Field
Local: Field:Simple Field: Set as:"1. Goods Once Sold will not be taken back."
Local: Field: Simple Field: Full Width: Yes
Local: Field: Simple Field: Line:0
Local: Field: Simple Field: Style: Tiny

[Line: OTS2]
Use: OTS1
Local: Field: Simple Field: Set as: "2. If Cheque Bounced, Rs 500/- will be taken as charges"

[Line: OTS3]
Use: OTS1
Local: Field: Simple Field: Set as: "3. Rs 100/- per day will charged for delayed payment after due date."

[Part:OTS Signature]
Line: OTS Signature,

[Line:OTS Signature]
Right Field: Simple Field
Local: Field: Simple Field: Set as: "For" +"  "+ @@CmpMailName
Space Top:3



Note:- This code is written for Print invoice in A4 portrait mode. You will need to do the required settings in your printer for better view. There might be some case were alignment might not come proper this is because of printer and you will need to write code for alignment.

Saturday, March 17, 2018

Tally Password Recovery Free TDL File ( Customization)



Tally.ERP9 Data Password Recovery Free TDL file (Customization Code)


Here we'll learn to recover our Tally's Data password . Its many of time, tally user face to password forgot problem. In that case, we'll need to go who customizes the tally. for this,   Many of time, some tally users don't recover their tally's password because of extra recovery charges

Note:- This tools has being working till Tally version 4.93 after that Tally has encrypted the Normal password too and still there is no tool to de-crypt the Data password.

Please find the below code for Tally data password recovery.

[#Menu: Gatewayoftally]
Add:Item:password:Display:TallyPass

[Report:Tallypass]
Form:Tallypass
Object:COmpany

[Form:Tallypass]
Part:Tallypass
Height:40% page
Width:40% page
Background:White

[Part:Tallypass]
Line:Tallypass_Title,Admin_Details,User_Details
Repeat:User_Details:CmpUser List
Scroll:Vertical
Float:Yes

[Line:Tallypass_Title]
Field:U_Name,U_pass
Border:Totals
Space Bottom:2

[Field:U_name]
Use:Name Field
Set as: "USER NAME "
Align:Center
Color:Red

[Field:U_Pass]
Use:Name Field
Set as:"PASSWORD "
Align:Center
Color:Red

[Line:Admin_Details]
Field:Admin_Name,Admin_Pwd

[Field:Admin_Name]
Use:Name Field
Set as:$OwnerName:Company:##SVCurrentCompany
Color:Blue
Align: Center

[Field:Admin_Pwd]
Use:Name Field
Set as:$OwnerPassword:Company:##SVCurrentCompany
Color:Blue
Align:Center

[Line:User_Details]
Field:V_Username,V_password

[Field:V_UserName]
Use:Name Field
Set as:$Name
Color:Blue

[Field:V_Password]
Use:Name Field
Set as:$password
Color:White
Align:Center

[#Collection:Cmp User list]
Fetch:*.*
Is ODBC Table:Yes

Note:-- Take a Backup of you data before following. No one will be responsible in case of Data loss.

Step 1. Copy the Above code and past it to notepad and save it.

Step 2. Attach the code to Tally. If you don't know please follow the link.

Step 3. If you are not in a position to open the company of which you forgot password using other username and password. Create a new company and do not close the new company because if you close you will not be able to recover password.

If you can open the same company with other username password. Do not follow below step and just go the new option to view password.

Step 4. Copy 2 files CmpSave.900 and Company.900 from the data folder of  the company whose password you want to recover and paste it in new company data folder. It will ask you to replace file prompt. click yes.

Step 5 Now go back to tally where the new company is still open and go to the new option on gateway of tally to view the password.


Disclamer:- This is just for educational purpose and for personal use. Do use it for data leakage purpose. If used we are not responsible for this.

Thursday, March 15, 2018

Free Tally TDL to make PAN Card Field Compulsory (PAN Card Validation)


PAN is important especially for financial transactions. According to experts, PAN is a way for Income Tax Department to keep tabs on your financial dealing.

And as we know in Tally.ERP 9 capture PAN card details during ledger creation in Tally most of us skips the same. So to stop this below is a small free Tally TDL code which will make entering PAN card details mandatory in Tally. ERP 9 during Ledger Creation.

[#Field: LED ITNo]
    Validate    :$$StringLength:$$Value = 10

To attach this code in your Tally.ERP9 software please follow step from below url

http://tallyexperttips.blogspot.in/2017/09/how-to-attach-any-tallyerp9.html

Download Free Tally.ERP9 software  (Educational version)

Wednesday, March 14, 2018

1. Microsoft excel Shortcuts

Sr No

     Key  

   Description  

1

CTRL+PgUp

Switches between worksheet tabs, from left-to-right.

2

CTRL+PgDn

Switches between worksheet tabs, from right-to-left.

3

CTRL+SHIFT+(

Unhides any hidden rows within the selection.

4

CTRL+SHIFT+)

Unhides any hidden columns within the selection.

5

CTRL+SHIFT+&

Applies the outline border to the selected cells.

6

CTRL+SHIFT_ 

Removes the outline border from the selected cells.

7

CTRL+SHIFT+~

Applies the General number format.

8

CTRL+SHIFT+$

Applies the Currency format with two decimal places (negative numbers in parentheses).

9

CTRL+SHIFT+%

Applies the Percentage format with no decimal places.

10

CTRL+SHIFT+^

Applies the Exponential number format with two decimal places.

11

CTRL+SHIFT+#

Applies the Date format with the day, month, and year.

12

CTRL+SHIFT+@

Applies the Time format with the hour and minute, and AM or PM.

13

CTRL+SHIFT+!

Applies the Number format with two decimal places, thousands separator, and minus sign (-) for negative values.

14

CTRL+SHIFT+*

Selects the current region around the active cell (the data area enclosed by blank rows and blank columns).  In a PivotTable, it selects the entire PivotTable report.

15

CTRL+SHIFT+:

Enters the current time.

16

CTRL+SHIFT+"

Copies the value from the cell above the active cell into the cell or the Formula Bar.

17

CTRL+SHIFT+Plus (+)

Displays the Insert dialog box to insert blank cells.

18

CTRL+Minus (-)

Displays the Delete dialog box to delete the selected cells.

19

CTRL+;

 Enters the current date.

20

CTRL+`

Alternates between displaying cell values and displaying formulas in the worksheet. 

21

CTRL+'

Copies a formula from the cell above the active cell into the cell or the Formula Bar.

22

CTRL+1

Displays the Format Cells dialog box. 

23

CTRL+2 

Applies or removes bold formatting. 

24

CTRL+3 

Applies or removes italic formatting. 

25

CTRL+4 

Applies or removes underlining. 

26

CTRL+5 

Applies or removes strikethrough. 

27

CTRL+6 

Alternates between hiding objects, displaying objects, and displaying placeholders for objects. 

28

CTRL+8 

Displays or hides the outline symbols. 

29

CTRL+9 

Hides the selected rows. 

30

CTRL+0 

Hides the selected columns. 

31

CTRL+A 

Selects the entire worksheet.  If the worksheet contains data, CTRL+A selects the current region. Pressing CTRL+A a second time selects the current region and its summary rows. Pressing CTRL+A a third time selects the entire worksheet.  When the insertion point is to the right of a function name in a formula, displays the Function Arguments dialog box.  CTRL+SHIFT+A inserts the argument names and parentheses when the insertion point is to the right of a function name in a formula. 

32

CTRL+B 

Applies or removes bold formatting. 

33

CTRL+C 

Copies the selected cells.  CTRL+C followed by another CTRL+C displays the Clipboard. 

34

CTRL+D 

Uses the Fill Down command to copy the contents and format of the topmost cell of a selected range into the cells below. 

35

CTRL+F 

Displays the Find and Replace dialog box, with the Find tab selected.  SHIFT+F5 also displays this tab, while SHIFT+F4 repeats the last Find action.  CTRL+SHIFT+F opens the Format Cells dialog box with the Font tab selected. 

36

CTRL+G 

Displays the Go To dialog box.  F5 also displays this dialog box. 

37

CTRL+H 

Displays the Find and Replace dialog box, with the Replace tab selected. 

38

CTRL+I 

Applies or removes italic formatting. 

39

CTRL+K 

Displays the Insert Hyperlink dialog box for new hyperlinks or the Edit Hyperlink dialog box for selected existing hyperlinks. 

40

CTRL+N 

Creates a new, blank workbook. 

41

CTRL+O 

Displays the Open dialog box to open or find a file.  CTRL+SHIFT+O selects all cells that contain comments. 

42

CTRL+P 

Displays the Print dialog box.  CTRL+SHIFT+P opens the Format Cells dialog box with the Font tab selected. 

43

CTRL+R 

Uses the Fill Right command to copy the contents and format of the leftmost cell of a selected range into the cells to the right. 

44

CTRL+S 

Saves the active file with its current file name, location, and file format. 

45

CTRL+T 

Displays the Create Table dialog box. 

46

CTRL+U 

Applies or removes underlining.  CTRL+SHIFT+U switches between expanding and collapsing of the formula bar. 

47

CTRL+V 

Inserts the contents of the Clipboard at the insertion point and replaces any selection. Available only after you have cut or copied an object, text, or cell contents.  CTRL+ALT+V displays the Paste Special dialog box. Available only after you have cut or copied an object, text, or cell contents on a worksheet or in another program. 

48

CTRL+W 

Closes the selected workbook window. 

49

CTRL+X 

Cuts the selected cells. 

50

CTRL+Y 

Repeats the last command or action, if possible. 

51

CTRL+Z 

Uses the Undo command to reverse the last command or to delete the last entry that you typed.  CTRL+SHIFT+Z uses the Undo or Redo command to reverse or restore the last automatic correction when AutoCorrect Smart Tags are displayed.