Modules & featuresUpdated 13 Aug 20269 min

Two-way Tally sync

Bring vouchers across from a TallyPrime company and read every one before it reaches your books. Beta, and honest about it: nothing starts a sync on its own yet, and the push back into Tally shows you what would be sent without sending it.

Business ownerAccountantCA

Tally sync keeps a TallyPrime company and your Finocket books in step without retyping. Vouchers come across from Tally as a proposal you read first, voucher by voucher and in totals, and nothing reaches your books until you commit it. The other direction, sending what you raised in Finocket back into Tally, is prepared and shown to you in full but is not carrying anything yet.

A Tally sync plan before it lands: what is ready, what is waiting on you, and what was refused (desktop view)
A Tally sync plan before it lands: what is ready, what is waiting on you, and what was refused

Where do I find it?

Turn Tally sync on in Settings → Modules & features, then open Tally sync. Three screens hang off it: Connect Tally (pairing and connection health), Ledger mapping (the questions a run is waiting on) and Sync runs (history, what each step did, and the undo).

Open Tally syncReview a run before anything is written

Bring your books across first

A sync sits after a cut-over, never across it. Finocket takes your balances at a date you choose and syncs forward from there; everything before that date stays in Tally, where it already is. Replaying old vouchers on top of opening balances would count every one of them twice (your opening capital and reserves already contain them) and would contradict GST returns you have already filed.

So until this company has a books-start date on record, pairing is refused and the sync screen sends you to Move your Tally books across first. Nothing dated on or before your cut-over ever crosses, in either direction. That is a permanent design decision, not a gap waiting to be filled.

How a run actually arrives

Finocket does not reach into your PC, and there is no clock in the app that starts a sync. A run can only begin in one of two ways:

  • The Windows connector asks for work. This is the intended way: the tray app on the machine running TallyPrime checks in, is handed one request at a time, POSTs it to Tally and posts the raw reply back. That connector is not published yet. See The Tally connector for Windows.
  • Something you control posts your Tally XML to the API. If you have a developer, a connector key with Tally permissions plus the export XML from Tally is enough to create a run today. See Developers & API.

Everything after that point works in the app right now, with no connector involved: reading the plan, clearing the mapping queue, committing, and rolling the whole thing back.

What the review screen shows

A run is planned before it is anything else, and planning writes zero accounting rows. What you see is a proposal: how many vouchers are ready to land, how many are waiting for you, what is refused and why, the total debits and credits, and the number of records that would actually be written. The screen says it in as many words: Nothing has been written yet. Your books change only when you commit.

The Commit button stays off until you tick the confirmation, and a run that is not waiting for review can never be committed at all. When you commit, the plan is worked out again from the payload the run stored, so it runs against your books as they are now: if a ledger was mapped or a period locked since you read it, the commit is refused rather than pushed through on your behalf.

What lands, and how

A synced voucher lands on two planes at once: the ledger entry that moves the money, and, where the voucher is a document, the invoice, bill or receipt that goes with it. Both are written inside one transaction along with a line in the run’s own write log, which is what makes the undo exact later.

A voucher whose ledgers do not fit its Tally voucher type is recorded as a journal rather than forced into the wrong shape (a receipt that also debits TDS Receivable, for instance). The screen counts those and names them; the exact Tally ledgers still carry into your general ledger.

Why vouchers get held back

Held back is the normal case, not a failure. The reasons are shown in your own language, with counts:

  • A Tally ledger with no Finocket ledger yet. The whole voucher waits, never half of it. Answer it in Ledger mapping.
  • A voucher type Finocket could not establish. Same queue, same rule: nothing is guessed.
  • Cancelled or optional in Tally, no readable date, fewer than two lines, a line carrying both a debit and a credit, debits and credits that do not match, or an amount larger than the books can hold.
  • Tax that cannot be attributed line by line. A voucher mixing GST rates through a single tax ledger, or carrying two revenue ledgers with tax on top, goes to review, because a blended rate can look perfectly canonical and still be wrong.
  • Anything in a foreign currency. It is detected and reviewed; the figures are carried across exactly as Tally wrote them and no exchange rate is ever applied for you.
  • Vouchers that disappeared from Tally. They are reported for you to check, and never applied automatically.

Sending Finocket work back to Tally

The Push to Tally panel on the sync screen prepares the other direction in full: what would be created, updated or cancelled in Tally, and, voucher by voucher, everything held back with the rule that stopped it. Even now it shows the rules that apply:

  • Anything that came from Tally is never sent back to it.
  • Nothing dated on or before your cut-over crosses.
  • A voucher edited on both sides is parked as a conflict with three stated choices and no automatic answer. Finocket will not pick for you, and pushing again will not settle it.
  • An entry you have already published is never quietly replaced. If Tally sends across a change to an invoice you have e-invoiced, sent to the customer, settled against a payment, or credited, Finocket stops and asks you rather than overwriting it. For an e-invoiced bill the only offered choice is to keep yours, because an IRN cannot lawfully be altered. The same protection covers anything you have edited yourself since it last came across.
  • A withdrawn voucher is cancelled in Tally, never deleted: it keeps its number and its place in the daybook with its amounts zeroed.

More than one Tally company

Pairing several TallyPrime companies into one Finocket company is supported. Each has its own sync markers and its own mapping answers, because two Tally companies can legitimately mean different things by the same ledger name. Every screen names which one it is reporting on rather than saying “the connection”.

Who can do what

Only the workspace owner can pair a Tally machine, because pairing grants that machine the right to post into these books. Committing a run, saving a mapping and rolling a run back need write access to the Tally area; a read-only accountant can watch all of it and change none of it.

Related: The Tally connector for Windows, Answer the Tally mapping queue, Undo a Tally sync, When a Tally sync will not run, Move your Tally books across, Run Finocket alongside Tally.

Does this work offline?

Frequently asked questions

Is there a Sync now button?

No, and there is no overnight schedule either. A sync run arrives one of two ways: the Windows connector asks Finocket for work, or something you control posts your Tally export XML to the API with a connector key. Everything after a run exists (reviewing it, clearing the mapping queue, committing, rolling it back) works in the app today.

Can I download the connector yet?

No. The repository the download would be published from has not been created, so there is no Releases page and no installer. The Connect Tally screen says so on itself rather than showing steps you cannot complete.

Does Push to Tally actually write into my Tally company?

Not yet. It prepares the whole thing (what would be created, updated or cancelled, and everything held back with the rule that stopped it) and then answers honestly that there is no live connection to that Tally. Nothing is sent and nothing is marked as sent. The Windows connector is what would carry it.

Has this been tested against a real TallyPrime installation?

No. The wire format follows Tally's published integration documentation and is exercised against generated files, not a licensed box. Where a behaviour is unconfirmed the code takes the cautious branch, which is why the module is marked beta and is off by default.

Will it bring across my old vouchers?

No, and it never will. Finocket takes your balances at a cut-over date and syncs forward. Your opening capital and reserves already contain the prior-period vouchers, so replaying them would count every one twice and contradict GST returns you have already filed. Nothing dated on or before the cut-over crosses in either direction.

What gets written when I commit?

The ledger entry that moves the money and, where the voucher is a document, the invoice, bill or receipt that goes with it, both inside one transaction along with a line in the run's write log, which is what makes the undo exact later. A voucher whose ledgers do not fit its Tally voucher type is recorded as a journal rather than forced into the wrong shape.

Why are some vouchers waiting instead of landing?

Most often a Tally ledger with no Finocket counterpart. The whole voucher waits, never half of it. Others: an unrecognised voucher type, GST that cannot be attributed line by line, a foreign-currency voucher, a voucher cancelled or optional in Tally, or one whose debits and credits do not match. Each is counted and named on screen.

Can I pair more than one Tally company?

Yes. Each pairing keeps its own sync markers and its own mapping answers, because two Tally companies can mean different things by the same ledger name. Every screen names which one it is reporting on.

Related articles