Tally integration with a custom ERP: how it works
Keep Tally for your CA, run operations in a system built for your business, and stop typing every invoice twice.
A custom ERP connects with Tally through TallyPrime's built-in integration interfaces: XML requests sent over HTTP (port 9000 by default) and an ODBC server for reading data. The ERP runs orders, stock, production and dispatch, then sends sales and purchase vouchers, ledgers and stock items to Tally, so your CA keeps filing GST from Tally. Accounting can move into the ERP later in phases, if you want.
Almost every SME we meet in Surat uses Tally. It is trusted, their CA knows it, and GST returns are filed from it. The problem is everything Tally was never designed for: production stages, job work, WhatsApp orders, stock out with karigars or vendors. This guide explains how a custom ERP and Tally work together, when it makes sense to keep Tally, how to migrate, and the mistakes to avoid. Technical details are taken from Tally's official TallyPrime XML integration documentation.
Why connect a custom ERP with Tally at all?
Because the two systems are good at different things. Tally is accounting software. A custom ERP is operations software built around your process. If they are not connected, someone types every invoice twice — once in the ERP, once in Tally — and the two drift apart within weeks. A connection means the operational entry happens once and the accounting entry follows from it.
How does Tally integration work technically?
According to Tally Solutions' developer documentation, TallyPrime offers these routes:
| Method | What it does | Typical use |
|---|---|---|
| XML over HTTP | TallyPrime runs an HTTP server (default port 9000). An external application sends XML requests to export, import or execute data. | Pushing vouchers and masters from the ERP; pulling reports |
| ODBC | TallyPrime can act as an ODBC server so collections can be read like tables. | Reading data for reports and reconciliation |
| File import/export | Data exchanged as files that are imported in Tally. | Reviewed, accountant-controlled imports |
The XML requests use an envelope with a header and a body; the body carries the data being sent or requested. The HTTP server is turned on in TallyPrime under Help (F1) > Settings > Advanced Configuration, or from Exchange > Data Synchronization. Two practical points from Tally's documentation matter a lot: TallyPrime must be running with the company loaded, and the machine must be reachable on the network at that port. Tally's documentation also covers access permissions and security, which should be reviewed before exposing the port on a network.
What data gets synced between the ERP and Tally?
| Data | Usual direction | Notes |
|---|---|---|
| Party ledgers (customers, suppliers) | ERP → Tally | Names, GSTINs and addresses must match exactly |
| Stock items and groups | ERP → Tally | Units and HSN codes mapped once at setup |
| Sales vouchers / invoices | ERP → Tally | Created in the ERP from orders and dispatches |
| Purchase vouchers | ERP → Tally | From goods receipt in the ERP |
| Receipts and payments | Either way | Depends on whether the accountant or the sales team records collections |
| Outstanding balances | Tally → ERP | Useful for showing dues to sales staff before taking a new order |
How is GST handled?
GST stays correct when the master data is consistent: HSN codes, tax rates, place of supply and party GSTINs. In practice we map these once, generate invoices in the ERP with the same values, and reconcile a test period with your accountant before switching on the sync. Filing still happens from Tally if that is how your CA works. If you later want e-invoicing or e-way bills generated from the ERP itself, that becomes a separate phase — as planned in the Laxmi Fastener prototype.
When should you keep Tally for accounts?
- Your CA files GST and audits from Tally and does not want to change.
- Your accounting is standard; the pain is in operations, not the books.
- You want a low-risk start — the ERP goes live without touching the accounts.
This is the most common setup. In the Filyarn yarn manufacturing prototype, for example, Tally or another accounting package stays in place for books of account, and the Tally connection is listed as integration readiness to be scoped in a real build.
When should you move accounting into the custom system?
- You are re-typing so much that a second system has become the bottleneck.
- You need accounting tied tightly to operations — job work costing, per-lot profitability.
- You want one login and one source of truth for the whole business.
Even then, do it in phases. The Laxmi Fastener plan is a good model: phase one adds the operational system and a Tally export while Tally stays for the CA and GST returns; later phases build the accounting core and GST data; the final phase runs in parallel with the CA for a full cycle before Tally is retired.
How do you migrate from Excel and Tally to a custom ERP?
- Map your process. List every Excel sheet, WhatsApp group and Tally report you rely on. A free workflow audit covers this.
- Clean the masters. Parties, items, units, HSN codes and opening stock. This is the step that decides whether the sync works.
- Decide what Tally keeps. Accounts only, or accounts plus some reports.
- Build and test the sync on a copy of your company data, never the live books first.
- Run in parallel for a period and reconcile totals with your accountant.
- Switch over and stop double entry.
For the business side of this decision, read moving from Excel and Tally to one system and replace Excel and Tally.
What are the common pitfalls?
| Pitfall | What happens | How to avoid it |
|---|---|---|
| Ledger names don't match | Sync fails or creates duplicate parties | Treat one system as the master for parties and map them once |
| Tally is closed or offline | Entries don't post | Queue entries in the ERP and sync when Tally is reachable |
| Units and HSN codes differ | Wrong stock or GST values | Map units and tax data at setup and lock them |
| Editing synced entries in both places | Books stop matching | Agree which system owns each type of entry |
| Port exposed without care | Security risk | Keep Tally on the office network or a secured connection and review access settings |
| Skipping the parallel run | Errors found at audit time | Reconcile at least one full cycle with your CA |
A typical setup: who does what?
In most of the ERP-plus-Tally setups we design, the split looks like this. Sales staff record enquiries, quotations and orders in the ERP, often from WhatsApp messages. The godown or production team records stock movements, job work issue and receive, and dispatch. When goods are dispatched, the ERP creates the sales invoice with the right GST values and queues it for Tally. The accountant either lets the sync post it or reviews and imports a batch at the end of the day. Receipts are recorded by whichever team actually handles collections, and the outstanding balance flows back so sales staff can see dues before taking the next order. The owner sees one dashboard across both.
The benefit is not technical; it is that each person works in the system that suits their job, and nobody types the same invoice twice.
How much does a custom ERP with Tally integration cost?
Custom ERP from Yukti AI starts from ₹30,000, and the Tally connection is scoped as part of the build. Focused builds — a Shopify store, one automation, a single-module system — typically take about 7–10 days. A multi-module ERP or CRM usually takes a few weeks depending on scope. See custom ERP software cost in India for what drives the price, the main custom ERP software page for how we build, or custom ERP software in Surat if you would like to meet at our office.
Get a free workflow audit on WhatsApp
Reply the same day · Hindi, Gujarati, English · No obligation
Technical source: Tally Solutions, TallyPrime XML integration documentation. Tally and TallyPrime are trademarks of Tally Solutions Pvt. Ltd.; Yukti AI is not affiliated with Tally Solutions.