TallyPrime and Jira integration
TallyPrime runs accounting and inventory for small to mid-sized businesses, especially in India and Southeast Asia. Jira tracks tasks, bugs, and projects across teams. Connecting the two lets procurement teams track purchase orders and inventory movements as Jira issues without manual updates. When a purchase voucher is entered in TallyPrime, a corresponding Jira issue is created; when stock items are received, the Jira worklog records the received quantity. Your procurement and finance records stay synchronized.
What moves between them
The main flow runs from TallyPrime into Jira. ml-connector polls TallyPrime's Day Book every 10 minutes for new purchase vouchers and stock item movements within a date range. Each new purchase voucher creates a Jira issue in a designated procurement project, with the vendor name, amount, and due date mapped to issue custom fields. When a stock item receipt voucher appears in Tally, ml-connector adds a Jira worklog entry to the corresponding item issue, recording the received quantity. Reference data such as vendor names and stock item descriptions are read from TallyPrime and normalized into Jira issue titles and descriptions. The flow is read-only from Jira back to TallyPrime; Jira does not write to TallyPrime.
How ml-connector handles it
ml-connector requires a local agent running on the same machine or LAN as TallyPrime to bridge the cloud connector to port 9000, since Tally's HTTP server is not internet-accessible. The agent polls Tally by sending XML POST requests to the Export Data endpoint with date range filters (SVFROMDATE, SVTODATE in YYYYMMDD format), comparing returned voucher IDs against the last-seen state to detect new records. ml-connector stores the Tally host IP, port, and optional company password encrypted. For Jira, ml-connector uses OAuth to obtain and refresh an access token, and registers a webhook at creation to receive issue update notifications. Jira webhooks expire after 30 days, so ml-connector tracks the creation timestamp and refreshes before expiry by calling the refresh endpoint. When polling Tally, ml-connector converts each purchase voucher's currency amount to a custom numeric field in Jira, handles the company name case sensitivity required by Tally's SVCURRENTCOMPANY envelope field, and avoids re-polling the same date range by tracking the high-water mark. Stock movements are modeled as worklog entries with the received quantity and date. Because Tally is single-user and concurrent requests can cause inconsistent reads, ml-connector keeps export requests sequential and includes a small backoff between polls.
A real-world example
A mid-sized trading company in India uses TallyPrime for accounting and inventory management across multiple branches and vendors. The procurement team manually checked TallyPrime each morning to see which purchase orders had arrived, then created Jira tickets in their project management system to track receiving and quality checks, copying vendor names and amounts by hand. With TallyPrime and Jira connected, each new purchase voucher in Tally automatically creates a Jira issue with the vendor, invoice amount, and expected delivery date. When the goods are received, the stock movement in Tally triggers a worklog entry in the corresponding Jira issue, eliminating manual ticket updates and keeping procurement and finance in step.
What you can do
- Poll TallyPrime's Day Book for new purchase vouchers and stock movements, creating corresponding Jira issues without manual entry.
- Map vendor names, purchase amounts, and due dates from TallyPrime vouchers to Jira issue custom fields and description.
- Record stock item receipts in TallyPrime as Jira worklog entries to track received quantities and dates.
- Authenticate TallyPrime via optional username and password in the request envelope, and Jira via OAuth 2.0 or Basic auth.
- Refresh Jira webhooks before 30-day expiry to maintain event stream continuity across the integration.
Questions
- How does ml-connector reach TallyPrime if it runs on a local machine?
- ml-connector requires a local agent running on the same network as TallyPrime, or on the TallyPrime machine itself. The agent acts as a bridge, accepting requests from ml-connector and forwarding them to TallyPrime's port 9000. This is necessary because TallyPrime's HTTP server is LAN-only and not exposed to the internet.
- What happens when a purchase is entered in TallyPrime?
- ml-connector polls TallyPrime's Day Book at regular intervals and detects the new purchase voucher. It extracts the vendor name, amount, and date, then creates a Jira issue in your procurement project with those details mapped to custom fields. You can then assign the issue to a team member for receiving and quality checks.
- Does ml-connector sync data back from Jira to TallyPrime?
- No, the integration is one-way from TallyPrime to Jira. Stock movements and purchase records flow from Tally into Jira as issues and worklogs, but changes made in Jira do not update TallyPrime. This prevents accidental overwrites of financial records while allowing the procurement team to manage tasks in Jira.
Related integrations
More TallyPrime integrations
Other systems that connect to Jira
Connect TallyPrime and Jira
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started