We currently have a two-way integration working at a basic level although it is a little clunky and uses some custom intermediary applications.
Our workflow is that tickets are originated in SDM and then sometimes have tasks that create Jira tickets when escalated to other groups that work via Jira. Once the Jira ticket is closed the SDM ticket returns to an active status.
There is one application that takes arguments for the new Jira ticket from SDM via PAM and makes the web service calls to Jira to create the new ticket. The Jira and SDM tickets are recorded in an internal database and linked there. It then updates the SDM ticket to contain log a comment on the SDM ticket and populate External System Ticket filed with the Jira ID.
There is another daemon application set to periodically poll open Jira tickets that have associated SDM tickets and check if they have been closed. If so, the last Jira comment is logged to the associated SDM ticket and the SDM status is updated.
I suspect there are better ways to accomplish this, especially if you have buy in from the Jira admins, which we do not necessarily have at this time.
This framework was developed before I joined our Service Desk team, so I am not sure if other options were explored, but I don't see why all of this could not be accomplished with PAM processes as opposed to PAM calling external applications.