ml-connector
Microsoft Dynamics GPJira

Microsoft Dynamics GP and Jira integration

Microsoft Dynamics GP manages financial operations across payables, purchasing, and the general ledger. Jira manages issue workflows and team tasks. Connecting the two keeps financial processes visible and audit-ready in Jira. When a purchase order or payables invoice is created in Microsoft Dynamics GP, ml-connector creates or links a Jira issue for approval workflow and procurement tracking. Finance teams see the status of every financial transaction at a glance and can attach approval comments, links, and audit evidence directly in Jira.

How Microsoft Dynamics GP works

Microsoft Dynamics GP is an on-premises ERP installed on Windows Server with a SQL Server backend. It exposes vendors, purchase orders, payables invoices, GL accounts, and GL journal entries through REST (Service Based Architecture, GP 2015 and later) or SOAP Web Services, both protected by Windows Authentication against Active Directory. The system does not support webhooks or push notifications, so integration requires polling via REST or SOAP with optional ModifiedDate filters to retrieve changed records. GP 2015, 2016, 2018, and 2025 have different entity coverage, and customers must expose their SBA or SOAP endpoint through the firewall with a valid SSL certificate or via a local polling agent. Posted transactions are read-only; only unposted (Work) records can be modified, and fiscal periods must be open to create new transactions.

How Jira works

Jira is a cloud-based or self-hosted project tracking platform that manages issues, tasks, and workflows across teams. It exposes Issues, Projects, Users, Comments, and Worklogs through REST APIs with OAuth 2.0 authorization code flow (recommended) or Basic auth (email plus API token). Jira supports webhooks for real-time event notifications including issue created, updated, and deleted events, with HMAC-SHA256 signature verification. Webhooks expire after 30 days and must be refreshed; custom field IDs are instance-specific and vary by deployment. Jira has no native financial entities such as vendors, invoices, or GL accounts, so it is used for workflow and approval tracking rather than as a financial system.

What moves between them

Purchase orders and payables invoices from Microsoft Dynamics GP flow into Jira as new issues or issue updates. The integration polls Microsoft Dynamics GP on a configurable schedule (daily, twice-daily, or per financial cycle) to retrieve newly created or modified POs and invoices, and creates corresponding Jira issues in a designated project for approval and audit tracking. The issue key and URL are stored in Microsoft Dynamics GP as a custom field (via a note or user-defined field) to maintain bidirectional traceability. GL journal entries can also trigger Jira issues for reconciliation and audit purposes. The flow is one-way from Microsoft Dynamics GP into Jira, since Jira is not a financial system and cannot update GL accounts or post transactions back to Microsoft Dynamics GP.

How ml-connector handles it

ml-connector stores the Windows domain account credentials securely and authenticates every poll request to Microsoft Dynamics GP's REST or SOAP endpoint with Negotiate/Kerberos over the network. It accepts the full endpoint URL and company database name per customer. On the Jira side, ml-connector uses OAuth2 credentials to refresh the access token before expiry and handles per-instance custom field IDs by mapping them at configuration time. Because Microsoft Dynamics GP supports polling only, ml-connector polls the SBA or SOAP endpoint for purchase orders and invoices with ModifiedDate filters at a schedule you define (e.g., twice daily after payables batch posting). For each new or changed record, ml-connector creates a Jira issue with a summary line (e.g., "PO 12345 from Acme Corp - $15,000"), a description with the vendor, amount, and line items in ADF format, and a custom field linking back to the Microsoft Dynamics GP record. Retries use exponential backoff when Jira returns 429 (rate limit) or when the Windows authentication handshake fails, and every synced record carries a full audit trail so that if a Jira API call fails, the record can be replayed without duplication.

A real-world example

A mid-sized manufacturing company runs Microsoft Dynamics GP on-premises for its entire AP and purchasing process. The procurement team uses Jira to track purchase order approval workflows and to maintain an audit trail of financial decisions. Before the integration, the procurement manager manually created Jira issues for each PO and had to type the vendor name, amount, and line items from Microsoft Dynamics GP into Jira by hand. With Microsoft Dynamics GP and Jira connected, each new PO automatically appears as a Jira issue with all the financial details pre-filled. The procurement team adds approval comments and links to supporting documents directly in Jira, and the Jira issue stays synchronized with the Microsoft Dynamics GP record so that if the PO is amended or cancelled, Jira is updated. The manual re-keying is gone, and the approval trail is automatically audited.

What you can do

  • Sync purchase orders from Microsoft Dynamics GP to Jira as new issues with vendor, amount, and line-item details.
  • Sync payables invoices from Microsoft Dynamics GP to Jira for approval workflow tracking and reconciliation audit.
  • Create bidirectional links between Microsoft Dynamics GP records and Jira issues so teams can trace decisions back to the financial source.
  • Authenticate Microsoft Dynamics GP with Windows domain credentials (Kerberos or NTLM) and Jira with OAuth2, refreshing tokens automatically.
  • Poll Microsoft Dynamics GP on a schedule you control with exponential backoff retries and a full audit trail on every record.

Questions

Why would a finance team use Jira instead of Microsoft Dynamics GP's built-in approval workflows?
Jira provides a lightweight approval and audit tracking interface that non-finance teams (procurement, legal, operations) can use without needing a Microsoft Dynamics GP user license. It also links approvals to external documentation (RFQs, supplier scorecards, contracts) that live outside the ERP. For small to mid-sized teams, Jira's comment and attachment workflow is often faster and more transparent than email chains or ERP approval codes.
Does the integration support GL entries, or only purchase orders and payables?
The integration primarily supports purchase orders and payables invoices, which are the most common audit and approval triggers. GL journal entries can also be synced if your finance team wants to track specific account postings (e.g., accruals or intercompany transfers) in Jira, but this is less common because GL is read-only in Microsoft Dynamics GP and entries cannot be modified after posting.
What happens if a Microsoft Dynamics GP record is amended or cancelled after the Jira issue is created?
ml-connector polls Microsoft Dynamics GP for changed records using ModifiedDate filters, so if a PO is amended, a new poll cycle will detect the change and update the corresponding Jira issue with the new amounts, vendor, or status. If a PO is cancelled, the Jira issue is marked as Cancelled or Resolved depending on your Jira workflow. The audit trail in Jira captures every change, so your team has a complete history of the transaction.

Related integrations

Connect Microsoft Dynamics GP and Jira

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started