Date: 2026-04-10 Verdict: All 8 Jira requirements are technically feasible via public REST API + webhooks.
Weclapp & cross-system requirements are covered in the separate weclapp integration analysis (Section 10).
| # | Requirement | Feasible? | How | Confidence |
|---|---|---|---|---|
| J1 | Use Jira as main PO/approval hub (no process change) | Yes | Read-only from Orcha's side — Jira workflow stays as-is | Confirmed |
| J2 | Read all PO-related tickets and their status | Yes | GET /rest/api/3/search/jql with JQL like project = PO AND issuetype = "Purchase Order". Full field access including custom fields. |
Confirmed |
| J3 | Detect when a PO is "approved" per existing workflow | Yes | Option A: Webhook on jira:issue_updated with fieldIdsFilter: ["status"], check if new status = their "Approved" status. Option B: Poll via JQL status changed to "Approved" after "{last_sync}". Changelog API provides exact transition timestamps. |
Confirmed |
| J4 | Export approved POs (requester, approver, cost center, amounts) to Orcha | Yes | GET /rest/api/3/issue/{key} returns all fields. Requester = reporter or custom field, approver = from changelog (who triggered the "Approve" transition), cost center/amounts = custom fields (customfield_NNNNN). Customer must map their field IDs during setup. |
Confirmed |
| J5 | Optionally auto-create POs in Weclapp once Jira PO approved | Yes | Orcha detects approval (J3), reads PO data (J4), calls Weclapp POST /purchaseOrder to create. Pure application logic — both APIs fully support this. |
Confirmed |
| J6 | Keep PO status in sync (open/in payment/paid/closed) | Yes | POST /rest/api/3/issue/{key}/transitions to transition Jira issue status. Discover transition IDs dynamically via GET .../transitions. Orcha pushes status updates back to Jira as payment lifecycle progresses. |
Confirmed |
| J7 | Webhooks: POs created/updated/approved | Yes | Jira webhooks support jira:issue_created, jira:issue_updated. JQL-filterable (e.g., project = PO). Field-filterable (fieldIdsFilter). Caveat: Programmatic webhook registration requires OAuth 2.0 or Connect app. Manual registration by Jira admin works with Basic Auth. |
Confirmed |
| J8 | Webhooks: tickets move to paid/closed | Yes | Same as J7 — jira:issue_updated fires on any status transition. Orcha checks the changelog in the webhook payload for field: "status" and toString: "Paid" or "Closed". |
Confirmed |
8/8 requirements feasible. No vendor engagement, custom development, or special licensing required. API access is included in all Jira plans (including Free). Customer setup takes ~5 minutes.