TEasy — Complete User Guide
From installing TEasy to pushing a fully itemized, multi-rate voucher into Tally — every upload
format, every badge, and every common error explained.
About the pictures in this guide: these are accurate mockups rebuilt directly from TEasy's own
source code — same screen names, same field labels, same button text, same colors as your real sidebar (dark
navy with the indigo highlight) and Review table. They are not literal screenshots of a running session. Everything
they show matches what you'll actually see.
1 Activate your license
The first time you open TEasy (or whenever your subscription needs attention), you'll land on the license
screen before you can reach the app itself.
TEasy — License Gate
T
Your subscription needs attention
Current status: trial. Subscribe or renew to keep going.
Subscribe with Razorpay
I already paid — recheck
The license gate. What it shows depends on your status: a fresh trial, an expired trial, or a
subscription that's lapsed.
What to do here
- New install → you're automatically on a free trial; the app opens straight to the Dashboard.
- Trial ended or subscription lapsed → tap Subscribe with Razorpay. A checkout tab opens; complete
payment there, then come back to TEasy.
- Just paid, but the screen hasn't updated → tap I already paid — recheck. It re-checks your
status; Razorpay payments can take a minute or two to register.
- Already have a license key from a different setup → use the activate-a-key option on the welcome screen
instead of starting a new trial.
If you see "This device's license key isn't recognized": your locally stored
key is no longer on file with our billing system. Recheck won't help here — use the
Start a new trial / activate a key button to reset and begin again.
2 First-run setup & connecting to Tally
Once your license checks out, TEasy needs to know which Tally company to talk to. Make sure
Tally is open on the same machine (or reachable on your network) with its XML/HTTP gateway
port enabled before you connect.
Tally Integration
Tally Connection
Tally Host
localhost
Tally Port
9000
Company Name
Your Company (as it appears in Tally)
Status
CONNECTED
Test Connection Save
Tally Integration page — connection settings live here, and the same "Connected / Not
connected" indicator also sits at the bottom of the sidebar at all times.
Steps
- Open Tally on the machine TEasy can reach, load your company, and enable the ODBC/HTTP gateway
(Tally → F12 → Advanced Configuration, or your usual Tally Server settings) on the port you'll enter below.
- In TEasy, go to Tally Integration in the sidebar.
- Enter the host (usually
localhost if TEasy and Tally are on the same PC), the port
(commonly 9000), and the exact company name character-for-character
as it appears inside Tally — including the year suffix if your company is named e.g. "Sarvotham Traders 2026-27".
- Click Test Connection — you should see it flip to Connected.
- Save. The sidebar's "Tally Status" indicator should now show a green dot.
If the test fails: double-check Tally is actually open with that exact company loaded, the
port matches Tally's configured gateway port, and no firewall is blocking that port on the host machine. Also
check F3 (Select Company) inside Tally — if more than one company is loaded at once, make sure
the one TEasy is configured for is actually one of them, not just the one currently on screen.
2b Multiple companies & per-company Tally settings
If you keep books for more than one business in TEasy (see Companies in the sidebar), each
company has its own, independent Tally Integration settings — its own host, port, company name,
and ledger-name configuration (Sales Account, Output CGST/SGST/IGST, Purchase Account, Input CGST/SGST/IGST, Cash
ledger, Round-off ledger, Bank ledger).
- Switching the active company from the Company Switcher (top bar) automatically switches
which saved Tally Integration configuration is in effect — you don't need to re-enter anything for a
company you've already configured once.
- The very first time a newly-added company is selected, its Tally Integration page starts
blank (sensible defaults only) until you fill in and save its own host/port/company name.
- Every page that depends on "which company am I looking at" (Transactions, Reports, Reconciliation, Review
& Approve) also switches together with the active company — so you always see that company's own data,
not a mix.
Before pushing anything after a company switch: open Tally Integration and
confirm the Company Name field matches the business you actually intend to push into. Pushing while the wrong
company's config is loaded sends vouchers into the wrong company's books.
3 Getting around: the sidebar
Every screen in TEasy is one click away from the sidebar on the left. Here's what each section does.
Full app shell
Dashboard
A quick snapshot of what needs your attention.
(Recent uploads, pending review count, Tally connection status, and quick links live here.)
Sidebar sections, top to bottom: Main (dashboard & overview),
Documents (where you upload each document type), Workflow (Review &
Approve is where most of your day-to-day work happens), and Settings.
4 Uploading Sales Bills — photo/PDF vs Excel
The Sales Bills page accepts two completely different kinds of upload, and TEasy treats them
very differently:
Sales Bills — upload
Sales Bills
Upload bill photos or an Excel sheet of sales bills.
⬆
Drop a bill photo here, or choose a file
Choose file
Option A — a bill photo, PDF, or scan
- Best for a handwritten cash-sale bill book, or any printed invoice you only have as a picture/PDF.
- TEasy sends the image to an AI vision model (Groq or Gemini — see AI provider settings)
with a prompt tuned specifically for reading party, invoice number, date, taxable value, and GST breakdown.
- A bill-book page with four handwritten bills arranged 2×2 is automatically split into four separate bills
before reading — you don't need to crop them yourself.
- If the AI can't confidently read a field, it returns null for that field rather than
guessing — you'll see it blank in Review & Approve, ready for you to fill in by hand, instead of a
wrong number that looks confident.
- Every AI-read Sales row also goes through a deterministic arithmetic check (taxable + tax = total, within a
small rounding tolerance) before it's allowed anywhere near "ready to approve" — the AI's own confidence
score is never the only gate.
Option B — an Excel sheet (your sales register)
- Best when you already keep your sales bills in a spreadsheet, or you've exported a Sales Register straight
out of Tally itself.
- No AI/OCR involved at all — every number comes directly from the cells in the sheet, so confidence is 100%
unless a required field (like a date) is genuinely missing from a row.
- TEasy recognizes two different Excel layouts automatically — see the next section for the
exact columns each one needs.
Not sure which one to use? If you can export a proper Excel sales register
(from Tally, from your billing software, or you already maintain one), always prefer the Excel path — it's exact,
instant, and free. Save the photo/AI path for bills you genuinely only have as a picture.
4b The exact Excel formats TEasy understands
TEasy looks at your sheet's header row and figures out which of two layouts you've given it. Column order
doesn't matter — it matches by header name, not position — and it's tolerant of a few common spelling
variants (e.g. "Party Ledger" or just "Party", "Vch. No." or "Invoice Number"). It also works whether your
column headers have a trailing *, a period, or extra spaces (Tally's own export
literally writes "Vch. Date* " with a trailing space, and that's handled fine).
Format 1 — Tally's own item-wise voucher template (recommended)
This is the exact layout Tally Prime produces when you export a Sales Register with item detail, or the
layout of Tally's official blank import template. If you fill this in (or export it from Tally), every stock
item, quantity, and GST slab survives all the way through to the pushed voucher.
| Column header | What goes in it |
| Vch. Date* / Invoice Date | Bill date. DD-MM-YYYY, DD/MM/YYYY, or an Excel date cell all work. |
| Vch. Type* | Optional. "Sales", "Credit Note", "Debit Note" — lets one sheet mix voucher types; if blank, everything uses the page's own type (Sales). |
| Vch. No.* / Invoice Number | The bill/invoice number. Rows sharing the same number and party are automatically merged into one voucher (see next section). |
| Party Ledger* | Customer name exactly as it should appear (or already appears) as a ledger in Tally. |
| Sales Ledger* | Optional override of which Sales ledger to post to; TEasy otherwise picks/creates one based on the GST rate. |
| Stock Item | The item/product name or code for this line. |
| Quantity, Rate, Unit | Optional item detail — shown on the pushed voucher's inventory line if present. |
| Amount* | This line's taxable value, before tax. |
IGST 5% / CGST 2.5% / SGST 2.5% (…and the 12/18/28% equivalents) | Tally's per-slab tax columns — put this line's tax amount in whichever rate column actually applies to it, leave the rest blank. |
Some exports use a slightly different wide layout instead of the fixed IGST/CGST/SGST-per-slab columns above —
repeated TAXABLE @5%, TAXABLE @18%-style columns per
rate, each paired with its own CGST/SGST/IGST column. TEasy recognizes this pattern too, and keeps the Stock Item
detail intact either way.
Format 2 — a plain "one row per bill" register
Simpler, no item-level detail — one row is one full invoice.
| Column header | What goes in it |
| Party / Party Name / Customer | Customer name. |
| Date / Bill Date / Invoice Date | Bill date. |
| Invoice No. / Bill No. / Vch No. | Invoice number. |
| Taxable Value / Amount | This invoice's taxable value before tax. |
| GST Rate / GST % | Combined GST rate, e.g. 18 for 18% (9% CGST + 9% SGST). |
| CGST / SGST / IGST | Tax amounts, if you have them as separate columns instead of a single rate. |
| Total / Total Value / Grand Total | Tax-inclusive total. If omitted, TEasy calculates it from taxable + tax. |
If a sheet has neither layout — an unfamiliar export from a different billing system, a bank
statement dropped in the wrong page, etc. — and an AI provider key is configured (see
AI provider settings), TEasy makes one automatic attempt to have the AI figure out which
column is which before giving up. If that still fails, or no AI key is set, you'll get a clear error naming what
it couldn't find, rather than a silent wrong import.
4c Multi-item & multi-GST-rate invoices, explained with a real example
A single real invoice very often spans several Excel rows — one row per stock item, and different
items on the same bill can sit at different GST rates. TEasy always merges these back into one
voucher per real-world invoice, never one voucher per row. Here's an actual example:
| Vch. No. | Party | Stock Item | Amount | Rate |
| INV-996 | Cash | 34031900 | ₹44.50 | 18% |
| INV-996 | Cash | 27101972 | ₹4.45 | 18% |
| INV-996 | Cash | 27101972 | ₹12.72 | 18% |
| INV-996 | Cash | 34039900 | ₹127.12 | 18% |
| INV-996 | Cash | 998881 | ₹100.00 | 18% |
↓ merges into ↓
Review & Approve — one merged row
Cash · INV-996 5 ITEMS
₹288.79
18% · CGST ₹25.98 · SGST ₹25.98 · Total ₹340.75
The rule TEasy uses: any rows sharing the same party and the same invoice/voucher number are
one invoice, no matter how many item lines or how many different GST rates are involved. When a bill genuinely
mixes rates (say, some items at 5% and others at 18%), the merged transaction carries a rate
breakdown — each rate's own taxable value, CGST, SGST, and IGST — and the pushed Tally voucher gets a
separate tax-ledger line per rate, not one blended number.
- Every stock item is preserved and pushed as its own inventory line under the one voucher — you'll see all
five item names inside that single Tally voucher, each with its own quantity/rate/amount.
- The "N ITEMS" badge next to the invoice number tells you at a glance this is a merged,
multi-line bill — hover it to see the item names without opening Edit.
- A "RATE SPLIT RESOLVED" badge means a mixed-rate invoice's slab-by-slab breakdown has been
confirmed (either straight from the sheet, or reconciled later against a supplier's purchase register).
- A "RATE UNCERTAIN" badge (Purchase side, from GSTR-2B) means the government data didn't
break a mixed-rate invoice down by slab — use Purchase register match (upload your own
purchase register) to resolve it before pushing.
4d Purchase (B2B Excel) and Discount (GSTR-2B)
Purchase (B2B Excel)
Upload the B2B invoice sheet from your GSTR-2B download (or an equivalent supplier-invoice export). Every
value — supplier name, GSTIN, invoice number/date, taxable value, CGST/SGST/IGST, total — comes directly from
the structured government data, not a guess. A mixed-rate purchase invoice may appear as more than one row
sharing the same invoice number (one row per rate) — those are legitimate separate lines of one bill, not
duplicates, and are merged the same way as the Sales Excel path.
Discount (GSTR-2B Excel) — Credit / Debit Notes
Upload the B2B-CDNR sheet from GSTR-2B to import Credit Notes and Debit Notes issued by your suppliers. The
GST portal's own "Note type" is shown as-is (Credit Note stays labeled Credit Note) rather than TEasy guessing
which direction it should be entered on your side — you apply the correct Tally treatment with full context
during review.
4e Bank Statements
Upload your bank statement (PDF or Excel) under Bank Statements. Each transaction becomes a
row with a Debit or Credit amount and whatever narration the bank provided. Once you also have Sales/Purchase
transactions on file, use Reconcile with invoices from the bulk-action bar to automatically
match bank entries against invoices by amount and date — entries that can't be matched confidently are marked
AMBIGUOUS (more than one same-amount candidate) or UNMATCHED, both with a
one-click picker to resolve manually.
5 Review & Approve
This is the heart of TEasy — every transaction waits here for you to check it over before anything touches Tally.
Review & Approve
Approve Selected
Push Approved to Tally
Each row is one bill — even one that started as five spreadsheet lines. The little badges next
to the invoice number flag things worth a second look before you approve.
Working through this screen
- Check the numbers — party, date, invoice #, total, GST% and its breakdown are all pulled
automatically; the Confidence column tells you how sure TEasy is.
- If something's off, hit Edit to correct the party, date, amounts, or GST rate by hand —
Taxable value and GST% recompute the total live as you type, and Save is disabled until they balance.
- If a row is flagged DUPLICATE?, check it against what's already in Tally before approving
— see Duplicate detection, precisely for exactly what triggers this.
- Once a row looks right, click Approve (or tick several boxes and use Approve
Selected).
- Wrong entry entirely (e.g. not a real bill, or a genuine duplicate)? Click Reject — it
won't be pushed and won't keep nagging you.
- Search, filter by status, sort any column, and Export CSV all work on exactly the rows
currently visible/filtered — handy for a quick sanity check before a big push.
5b Viewing the original bill image
For any row that came from a photo, PDF, or scan (not an Excel/GSTR-2B row — those have no source image),
click its thumbnail in the Bill column to open a full-size view of exactly what TEasy read from
— the fastest way to double-check a low-confidence field against the original bill without leaving the page.
Press Esc or click outside the image to close it.
Rows without a source photo (Excel or GSTR-2B imports) show a plain document icon instead —
that's expected, there's nothing to view for those.
6 Pushing approved transactions to Tally
Approving a transaction doesn't send it to Tally by itself — that's a separate, deliberate step, so you're
always in control of exactly what gets written into your books.
- From Review & Approve, once you're happy with a batch of APPROVED rows, click
Push Approved to Tally — it pushes in exactly the order the rows are currently
sorted/filtered, so you can control voucher ordering by sorting first.
- TEasy builds the correct Tally voucher XML for each one — Sales, Purchase, or Debit/Credit Note — with a
proper inventory line per stock item when the invoice has item detail, and sends it straight to Tally's gateway.
- Any ledger or stock item that doesn't exist in Tally yet gets auto-created (Sundry Debtors/Creditors, Sales/
Purchase Accounts, CGST/SGST/IGST ledgers, stock items, units of measure) so the push doesn't fail on a
missing master. Common built-in ledgers Tally ships with every company (like Cash) are recognized and left
alone rather than being redundantly re-created.
- The Tally column updates to SENT on success, or
FAILED with the reason if Tally rejected it.
6b Common Tally push errors, explained
| Message | What it means / what to do |
| Bill already exists in Tally (Invoice #… already recorded) |
Tally found an existing voucher with that exact number and altered it instead of creating a new one —
usually because this invoice number was already pushed once before (including an earlier failed/partial
attempt). Check Tally's Day Book for that voucher number (Tally: Alt+G, type the
number) before re-pushing, so you don't end up with it altered twice. |
| Stock Item '…' does not exist! |
The voucher tried to use a stock item master Tally hadn't fully registered yet at the moment of
validation. TEasy proactively creates missing stock item/unit masters in their own request just before
the voucher, specifically to avoid this — if you still see it, try the push again once (Tally sometimes
needs a beat to commit a brand-new master), and confirm Tally is reachable and not mid-backup/mid-sync. |
| Mismatch in total amount between Credit and Debit entries (Tally's own Import
Exceptions screen) |
The voucher was received with an unbalanced set of ledger entries and Tally refused to finalize it —
nothing was written to your books. If you see this after upgrading TEasy, make sure you're on the latest
version; this exact message was caused by a voucher-XML formatting issue that's since been fixed. |
| This transaction has no valid date |
Open the row in Review & Approve, set a real invoice date, save, then push again. |
| Connection / Tally not reachable |
Confirm Tally is open with the correct company loaded, the host/port in Tally Integration match Tally's
actual gateway settings, and no firewall is blocking the port — see step 2. |
A push failure never silently loses data — the transaction stays exactly as it was
(APPROVED, not sent) so you can fix the underlying issue and push again without re-entering
anything.
7 Duplicate detection, precisely
TEasy flags a transaction DUPLICATE? only when all three of these match an
existing transaction of the same type: party, invoice number, and
taxable value (within about ₹1, so a genuine multi-rate line of the same invoice isn't mistaken
for a duplicate of itself). The same invoice number showing up again with a different party, or a meaningfully
different amount, is treated as a normal, separate bill — common when different suppliers reuse invoice
numbering, or a bill gets corrected later with a different total.
- This is advisory, not a block — a flagged row can still be approved and pushed; it's a
prompt to glance at it first, not a lock.
- It can occasionally flag a genuine coincidence (same party, same invoice number range, same rounded
amount) as a false positive — that's an accepted trade-off of a check that would otherwise miss real
duplicates too easily.
- It can also, in principle, miss a real duplicate that was re-entered with a slightly different invoice
number or a rupee or two of difference from re-reading — nothing here replaces a periodic look at your Day
Book.
8 Pending Issues, Reports & Reconciliation
Pending Issues
Anything TEasy couldn't fully resolve on its own — low-confidence
reads, missing dates, or failed pushes — collects here so it doesn't get lost in the main Review list. The
sidebar badge tells you how many are waiting.
Reports
Summary views over your processed transactions — useful for a quick
sanity check of totals and tax before you close a period.
Transactions
Every transaction TEasy has ever processed, approved or not,
searchable and filterable — your full audit trail.
Reconciled
A column on the Review table showing whether a transaction has been
matched against a bank statement line, once you've uploaded one under Bank Statements.
9 Companies, Parties & GST Settings
- Companies — manage which Tally company (or companies) TEasy is set up to work with; see
per-company Tally settings above.
- Parties & Ledgers — review how party names in your bills map to ledgers in Tally, and
fix any mismatches so future auto-creation picks the right ledger group.
- GST Settings — the ledger names TEasy uses for CGST/SGST/IGST and your default sales/
purchase accounts per rate, plus your round-off ledger.
- Users — manage who on your team has access.
9b AI provider settings (Groq / Gemini)
Under General Settings, choose which AI provider reads your bill photos and (as a fallback)
maps unfamiliar Excel layouts: Groq or Gemini. Both use the identical
underlying prompts and validation — switching providers is a settings change, not a different feature.
- Paste your own free API key here to use your own quota, at your own pace, with no limits from us.
- Leave it blank to use TEasy's own included AI access — no key needed, usage is simply covered as part of
your plan.
- Photo/PDF uploads with no AI provider available at all still work — you get a blank NEEDS_REVIEW row per
detected bill for manual entry, never a silently guessed value.
10 Account & Billing
Your plan, renewal date, and payment history live under Account & Billing in the
sidebar — the same place you'd go to cancel or change your subscription, separate from the license gate you only
see when something needs attention.
That's the full loop: connect Tally → upload a document → review it → approve it → push it.
Everything else in the sidebar (Reports, Reconciliation, Settings) supports that core loop rather than replacing it.