# How to add a mobile app to TallyPrime

> Source: https://netray.co/integrations/tally-mobile-app
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Integrations

## Short answer

TallyPrime is a desktop application, so a mobile app needs a sync service next to it. The service reads masters and reports over Tally's XML or ODBC interface, exposes a small authenticated API to the phone, and imports orders or receipts back. Offline queues cover patchy field coverage.

## System

TallyPrime

## Capability

mobile-app

## Intro

Field sales, collection agents and owners want Tally on the phone: take an order at a shop, see a customer's outstanding before a visit, check stock in a godown. Tally's own mobile offerings, where available, cover some of this, but they are not a full custom app for your processes.

The key design constraint is that Tally data lives on one machine and its port is for trusted local use. A phone must never talk to Tally directly. Instead, a sync service holds a cache of what the app needs and handles the write-back, which also gives you offline support, user-level permissions and an audit trail that Tally's port does not have.

## Use Cases

### Field sales order entry

**Description:** Salespeople pick customers and items from a cached list, see rates and stock, and submit orders that become sales orders in Tally after approval.

### Collection and receipt capture

**Description:** Collection staff see a customer's open bills and record a cash or UPI receipt as a draft for accounts to confirm.

### Owner dashboard

**Description:** Show cash and bank balances, today's sales and receivables ageing from Tally reports, refreshed on a schedule.

### Warehouse stock check

**Description:** Look up stock by godown and batch, and record a physical count that feeds a stock journal draft.

### Expense claims with photo

**Description:** Employees file expenses with a receipt photo and an approver releases them to a payment voucher draft.

## System Surface

- XML over HTTP for exports of masters, stock summary, bills receivable and day book, and for importing sales orders, receipts and journals.
- ODBC for read-only access to ledger, stock item and voucher collections where a driver is more convenient than XML.
- TDL to publish a purpose-built collection (customers with phone, price list, closing stock) so the sync payload stays small.
- Sales order vouchers and receipt vouchers as the natural write-back types; leave invoicing to the desktop user.
- Tally's own connected or mobile offerings, where your licence includes them, as a ready-made option for basic viewing.

## How It Works

### Define the app scope

**Detail:** List the screens and which are read-only. Limit write-back to orders and receipts at first.

### Run a sync service

**Detail:** Place a service near Tally that pulls masters and reports on a schedule into its own database, and serves them to the app over an authenticated API.

### Authenticate users separately

**Detail:** Use your own login (SSO or phone OTP), map each user to customers, items and actions, and never share the Tally port credentials.

### Handle offline

**Detail:** Keep a local database on the phone, queue writes with client-generated ids and sync when connected, resolving conflicts on the server.

### Import with validation

**Detail:** Validate queued orders against current ledger names, items and credit limits, then send accepted ones to Tally via Import Data.

### Distribute and monitor

**Detail:** Use a managed distribution method, collect crash logs and show last-sync time in the app so staff know how fresh the data is.

## Example Flows

### Order taken at a shop

**Trigger:** Salesperson opens the app with no signal

**Steps:**

- Customer and item lists load from the local cache.
- Order is saved with a client id and queued.
- On reconnect it uploads; the service checks stock and credit limit.
- Accepted orders are imported as sales orders in Tally.

**Result:** Orders reach accounts the same day with fewer phone calls and no retyping.

### Pre-visit outstanding check

**Trigger:** Collector selects a customer

**Steps:**

- App requests the cached open bills.
- Shows ageing and last receipt date.
- Collector records a cash receipt draft with a photo.

**Result:** Accounts confirms drafts against the bank and cash book before posting.

## On Prem

Keep Tally on the office network and put the sync service in the same place, exposing only its API through a VPN or a reverse proxy. Phones talk to the service, never Tally. The cache is a deliberate copy, so protect it as you would the books. If the app includes a natural-language box ('who owes us most?'), run a locally hosted open-weight model that selects from fixed queries over the cached data, so ledger content is not sent to external AI APIs.

## Security

- Never expose the Tally port; only the sync service API should be reachable from phones.
- Use per-user authentication and scope data to the user's customers and roles.
- Encrypt the on-device database and support remote wipe for lost phones.
- Rate-limit and log all write-back actions with user and device id.
- Keep sensitive reports such as full ledgers behind a role check, not just a hidden screen.

## Options

### Tally's own mobile or connected offerings

**Fit:** Owners wanting basic viewing, when included in your licence and release.

**Effort:** Hours to configure; limited customisation.

### Third-party Tally mobile app

**Fit:** Sales force automation with standard order and collection flows.

**Effort:** Days to weeks; vet sync method, data location and support.

### Custom app and sync service with Netray or in-house

**Fit:** Specific workflows, offline needs, or strict data residency.

**Effort:** Six to twelve weeks for a first release, depending on scope.

## Pitfalls

- A stale cache looks like fresh data; always show the last sync time.
- Offline orders can conflict with price or stock changes; define rules for who wins.
- Tally's port is single-threaded, so many phones should never query it directly.
- Sales orders created in Tally with free-text item names cause later invoicing problems; pick from masters only.
- Treating the phone as an accounting entry tool bypasses controls; keep drafts and approvals.

## Faq

### Is there a mobile app for TallyPrime?

**Answer:** Tally offers mobile or connected options in some plans and releases, mainly for viewing and sharing. Many companies add third-party apps or a custom one for orders and collections. Check what your licence includes before building anything.

### Can a mobile app write directly into Tally?

**Answer:** Through a sync service it can, by importing vouchers over the XML interface. The phone should not connect to Tally itself. The service validates the data and often creates sales orders or draft receipts rather than final invoices.

### How does it work when the field team is offline?

**Answer:** The app keeps a local copy of customers, items and prices and queues new entries with unique ids. When the phone reconnects, the service validates and imports them, handling stock and price changes with defined rules.

### Does Tally need to be always on?

**Answer:** The sync service needs Tally running with the company loaded to refresh or import. The app can still show cached data when Tally is down, but writes wait until the connection is back. Plan an uptime routine for the Tally host.

### Can staff only see their own customers?

**Answer:** Yes, if the sync service enforces it. Tally's port does not have per-user data limits, so the service maps each app user to allowed customers and actions and filters every response.

## Search terms

tally mobile app, tallyprime mobile app integration, tally sales order app, tally field sales app, tally outstanding mobile, tally offline mobile app, tally xml mobile sync, custom mobile app for tally

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
