GitHub logo
Jira logo

Fix GitHub → Jira Sync Issues (Not Working, Errors, Duplicates)

🔧 2 Common Issues

Diagnose and resolve common sync problems. We've documented the 2 most common issues, their root causes, and exactly how to fix them. See step-by-step fixes for duplicates, missing fields, rate limit errors, and connection issues.

medium Very High Frequency

Git commit message with '#done' fails to move the Jira ticket to 'Done' status.

Also searched as: "GitHub Jira git commit message with '#done' fails to move the jira ticket to 'done' status."

#1 Workflow Permission Block 90% likely

📋 How to Diagnose

  1. 1. Jira Project Settings > Workflows.
  2. 2. Check the transition from 'In Progress' to 'Done'.
  3. 3. Does it require a 'Resolution' field to be set? Smart commits cannot fill required fields.

Solution

Edit the Jira Workflow to remove the mandatory screen on transition, or use a Make scenario to transition the issue and fill the resolution field via API.

⏱️ Est. time: 20 min

Use Make → ->

Ready to automate? We have a template for you.

Copy this GitHub → Jira blueprint, open n8n, paste it into the canvas, and your workflow is ready to configure.

n8n
github-jira-blueprint.json
{
  "name": "GitHub → Jira Sync",
  "nodes": [
    {
      "id": "trigger",
      "name": "GitHub Trigger — Issue Opened",
      "type": "n8n-nodes-base.githubTrigger",
      "typeVersion": 1,
      "position": [
        240,
        300
      ],
      "parameters": {
        "owner": "{{GITHUB_OWNER}}",
        "repository": "{{GITHUB_REPO}}",
        "events": [
          "issue"
        ]
      },
      "credentials": {}
    },
    {
      "id": "filter_opened",
      "name": "IF — Action is Opened",
      "type": "n8n-nodes-base.if",
      "typeVersion": 1,
      "position": [
        460,
        300
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$json.body.action}}",
              "operation": "equals",
              "value2": "opened"
            }
          ]
        }
      },
      "credentials": {}
    },
    {
      "id": "create_task",
      "name": "Jira — Create Task",
      "type": "n8n-nodes-base.jira",
      "typeVersion": 1,
      "position": [
        680,
        300
      ],
      "parameters": {
        "resource": "issue",
        "operation": "create",
        "project": "{{JIRA_PROJECT_KEY}}",
        "issuetype": "Task",
        "summary": "=[GitHub #{{$json.body.issue.number}}] {{$json.body.issue.title}}",
        "description": "={{$json.body.issue.body}}\n\n*Link:* {{$json.body.issue.html_url}}"
      },
      "credentials": {}
    }
  ],
  "connections": {
    "GitHub Trigger — Issue Opened": {
      "main": [
        [
          {
            "node": "IF — Action is Opened",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IF — Action is Opened": {
      "main": [
        [
          {
            "node": "Jira — Create Task",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "tags": [
    "integratestack",
    "blueprint",
    "github",
    "jira"
  ]
}

You'll need to fill in these values:

{{GITHUB_OWNER}}{{GITHUB_REPO}}{{JIRA_PROJECT_KEY}}

n8n will prompt you to connect your accounts when you import this blueprint.

Step 1: Try the Official Integration

Direct connection

Start with the native integration if available. It's usually the most reliable, but may have limitations.

View Setup Guide

Free with your subscription

Step 2: Use Make for Custom Flows

No code automation

Create custom integration workflows with Make's visual designer. It works with almost any API.

Try Make Free ->

1000 ops/mo free. No credit card.

Step 3: Self-Hosted with n8n

Full data control

Need complete data privacy? n8n is open-source and self-hostable. Build custom integrations with full control over your data.

Try n8n Free ->

Open source. Self-host or cloud. Unlimited ops.

Step 4: Add Human Review

Approval automation

Relay adds human-in-the-loop approvals, Slack/Teams alerts, and conditional logic to your automation.

Try Relay Free ->

1000 actions/mo free. No credit card.