Professional Documents
Culture Documents
INTEGRATION GUIDE
Jira is a project management tool that helps teams plan, prioritize,
and track issues. It is also used as a bug tracking and reporting
tool. Salesforce is a CRM platform that gives teams a single and
shared view of every customer. Both these tools are popular and
best suited for increasing business productivity and efficiency. But
to enhance their power further, there is a need for a Jira Salesforce
Integration.
BOOK A DEMO 2
TABLE OF
CONTENTS
04 Why do you Need a Jira
Salesforce Integration?
40 Conclusion
CHAPTER 1
What is Salesforce
Salesforce is a very popular CRM tool. It
is predominantly used by sales teams to
view and manage all customer-related
information. Sales teams can track their
leads, manage their deals, and even pro-
vide after-sales support with the help of
Salesforce. It also provides immense cus-
tomizability to adapt to specific business
needs and is scalable.
With such powerful tools in place and doing what they do best, it’s impera-
tive that they pass information between them. Let’s see why.
BOOK A DEMO 5
Why a Jira Salesforce Integration?
Today’s global teams often collaborate with one another to get the
expertise they need as fast as possible to help them increase their
efficiency. They also wish to keep working in environments they are
already familiar with to save time and get things done faster.
For this collaborative world, teams often copy and paste data man-
ually between their tools, send emails across or even spend time
on meetings and phone calls. This leads to delays in sending data
back and forth, manual data entry mistakes, misplaced or altered
data, and above all, it simply wastes time and efforts of valuable
resources.
Such integration can help these teams avoid working in silos and
ensures everyone has the correct and up-to-date information.
BOOK A DEMO 6
CHAPTER 2
HOW TO CHOOSE
THE RIGHT TOOL
FOR A JIRA
SALESFORCE
INTEGRATION
Choosing the right tool for your Jira Salesforce integration is very impor-
tant since it hugely affects the benefits such integration can bring.
However, there are certain points you should consider before proceeding.
1. Decentralized Integration
The tool should let teams work independently in their familiar envi-
ronment and still allow information to be passed between them.
Of course, this means that after the initial consultation for setting
up the integration, things must run smoothly for the remaining part
without either side interfering with one another.
2. Flexibility
Business and customer requirements evolve and change over time.
The data you synchronize currently might not need synchronization
next year. You might want to synchronize some new data altogether.
But a tool that supports information exchange with the least config-
uration, even for the most complex and customized use cases must
be your first priority. Handling changing business requirements with
minimal tweaking must be possible.
BOOK A DEMO 8
3. Reliability
The reality of downtime and the way it is handled cannot be ignored.
The tool must be able to guarantee the synchronization without any
kind of manual intervention. When one system is down, then the tool
should be able to resume operations once it’s back up again.
Considering all these points, we have used a tool called Exalate for
this guide. This is because it inherently supports a decentralized
architecture. It allows you to control information flow and work inde-
pendently on both sides of integration with the help of sync rules.
BOOK A DEMO 9
Bi-directionally connect your work
across multiple work management
systems in real-time
Maximum security due to complete control over the data being shared with the other systems
Set up a synchronization between multiple work management systems. Available for Jira,
Salesforce, Azure DevOps, ServiceNow, Zendesk, GitHub, HP ALM & more
HOW TO SET UP A
JIRA SALESFORCE
INTEGRATION
To begin with, you need to install Exalate on both Jira and
Salesforce. Once that is done, you move ahead and set up a con-
nection between them. You can start synchronizing Salesforce
entities with Jira issues after that. If and when needed, you can con-
figure and control what information is shared between them.
BOOK A DEMO 12
1. Install Exalate on Salesforce
Install Exalate on Salesforce by visiting its marketplace i.e
AppExchange. You can check out Exalate listining here.
Go through the details of the app if you want to know a little more
about how it works. Click on “Get It Now” to begin the installation
process.
BOOK A DEMO 13
Read further the terms and conditions displayed on the screen,
then head over to the bottom of the page, accept them and click
“Confirm and Install”.
If you haven’t logged into your Salesforce instance, now is the time
you do.
BOOK A DEMO 14
This will successfully install Exalate on Salesforce and display the
message “Installation Complete!”. It’s time to request an Exalate
node for your Salesforce instance. To proceed click “Done”.
BOOK A DEMO 15
After you click “Agree and Submit”, a verification email will be
sent out. For verification, open your email and click “Verify Exalate
instance”.
Voila, your work here is done! You can now log in to your Salesforce
Exalate instance by following these steps.
You can start with setting up your first connection already by skip-
ping to step 3 if you have installed Exalate on your Jira instance.
BOOK A DEMO 16
1. Install Exalate on Jira
Installing Exalate on Jira is pretty straightforward. You can do
it directly from the Exalate website, or by visiting the Atlassian This tutorial
uses Jira Cloud,
marketplace. which you can
read more
about here.
We’ll set up Exalate from within Jira here. We are assuming you You can also
use Jira Cloud, but Exalate allows you to synchronize Salesforce check out the
Exalate docu-
with Jira on-premise as well. You can find out how to go about the mentation for
installation for that here. Jira Server.
BOOK A DEMO 17
To install Exalate, first, click on the “Settings” icon on the top right
of your Jira instance and choose “Apps” from the drop-down menu.
In the search box, type “Exalate” and hit enter. You can see Exalate
apps for different issue trackers listed here. Make sure you choose
the right one. Here we select “Exalate Jira Issue Sync & more”.
BOOK A DEMO 18
Now click on the “Try it free” button.
An “Add to Jira” pop will be displayed. You can have a look at the
Exalate app details by clicking on the “View app details” button. If
not, click on the “Start free trial” button to start the evaluation for
Exalate on Jira. A few pop-ups will be displayed that will indicate
the status of the app installation process.
BOOK A DEMO 19
3. Connect Jira to Salesforce
The first thing you do when Exalate gets installed is initiating a
connection on one side and accepting it on the other side.
Here, we will start initiating the connection from Salesforce, but you
can start from either side.
Your Salesforce instance looks like this. In case you have logged out,
follow these steps to log in again.
If you have already created connections before, the screen will list
their names and statuses. If this is your first time, you start by click-
ing on the “Initiate Connection” button.
BOOK A DEMO 20
The next screen prompts you to enter the destination instance URL.
We enter the Jira instance URL since we are initiating the connec-
tion from the Salesforce side.
After a quick check, you will now need to choose the mode of con-
nection. Exalate comes in 2 modes: Basic and Script.
Basic Mode: enables you to set up a connection for a limited set of issue fields like
summary, description, comments, attachments, and issue types. The sync rules are
generated automatically by Exalate and cannot be modified. These connections are
recommended for use cases with basic synchronization needs.
Script Mode: is a bit trickier, but lets you use more advanced programming logic.
The scripts are groovy-based, so you’ll have ultimate flexibility to define your sync
however you want.
BOOK A DEMO 21
Continue with
the Basic Mode
For getting started with the Basic Mode, click “Next” after selecting it.
This will take you to a screen where you must confirm if you have
admin access to the Jira side.
Click “Yes, I have admin access” and then “Initiate”. If you don’t have
access then you will be required to copy and paste an invitation code
manually from the Zendesk to Jira instance.
Here, the first thing you need to do is select the project in which you
want the Salesforce entities to sync. Select the correct one from a
drop-down list and click “Confirm”.
BOOK A DEMO 22
You can now immediately start syncing your first issue by entering
its key in the text box and clicking on “Exalate”.
If this is done on the Salesforce side, you need to enter the Case
number instead.
After clicking “Exalate”, wait for some time, the appropriate status
messages will be displayed.
BOOK A DEMO 23
Sit back and relax, you will soon get your first issue synced.
BOOK A DEMO 24
Continue with
the Script mode
If you wish to use the Script mode, then select it and click “Next”.
You will now need to name your connection. This is important while
identifying your connection in case you have many. Exalate asks
you to name the local instance, in our case Salesforce since we are
initiating the connection from it, and also the remote instance, Jira
in our case. Once you enter the instance names, a connection name
will automatically be generated for you, but you can change it if you
want.
BOOK A DEMO 25
Your work on the Salesforce side is over. You need to go to your Jira
instance for further steps. To do so, click on “Go to remote”.
On the Jira side, it will open up the “Connections” tab for you by
default.
This opens up a text area for you. Paste the invitation code you just
copied here. Then click “Next”.
BOOK A DEMO 26
You now need to select the project on the Jira side just like you did
for the Basic mode. Select the appropriate one from the drop-down
list. Click “Confirm”.
BOOK A DEMO 27
There are 2 ways to proceed with configuring the connection from
here. You either directly click on the “Configure Sync” button shown
below or edit the connection as shown in step 4. Both of them will
redirect you to similar screens.
P RO T I P
Our partners are located all over the world in more than 50
countries. They will help you with implementation, support,
and license management for Exalate. They can give a demo,
prepare a PoC, and handle almost any complex use-cases.
FIND A PARTNER
BOOK A DEMO 28
4. Configure Your Connection to Determine
What Gets Shared
Once your Jira Salesforce integration is established, it’s time you
control what information is sent between Jira and Salesforce. With
Exalate, you can achieve this by configuring the connection.
Once you click the edit connection icon, the following screen will
appear. The first tab is “Rules”, which we will see in this step, the
“Triggers” tab will be covered in the next step.
BOOK A DEMO 29
The “Statistics” tab displays the overview of your connection syn-
chronizations like the number of syncs, the date on which you last
synced, etc.
The “Info” tab provides some general information about the connec-
tion like the name of the connection, the destination instance URL,
and the type of connection. You can go ahead and edit the descrip-
tion of the connection if you want here.
On the “Rules” tab, you have sync rules as shown above. These
are in Groovy scripting language. So if you are familiar with it, it
shouldn’t be difficult for you.
There are outgoing sync rules to decide what you want to send to
the other side, and there are incoming sync rules to control how you
interpret information coming from the other side.
Both sides of the connection have these rules, but the only differ-
ence is the way in which the entities are addressed. They depend on
the platform the connection is accessed from.
BOOK A DEMO 30
You can straight away edit the rules inside the textboxes, or you can
copy and paste them somewhere safe and work on them later.
For data you don’t want to share anymore, you can simply delete
the corresponding line or comment it, so it’s ignored at the time of
synchronization.
Attach “//” before the starting of the line you want to comment.
This will comment only a single line. To add a comment for multiple
lines at one time add “/*” at the start of the block of lines and then
“*/” wherever you want the comment to end.
For instance, as shown in the image below if you don’t want to sync
the description of the Case with the Jira side you simply add “//” at
the start of the line in the Outgoing sync rules.
BOOK A DEMO 31
You can also explore advanced ‘script helpers’ that can help you
with complex processing.
For example, on the Jira side, in the incoming sync rules issue.
attachments = attachmentHelper.mergeAttachments(issue, replica)
uses a helper to process attachments.
You can edit them in the outgoing sync rules section or the incom-
ing one depending on whether you want to make changes to the
data sent or received.
5. Set Up Automated
Synchronization Triggers
Triggers determine the condition under which Jira issues and
Salesforce entities must synchronize.
BOOK A DEMO 32
Then click the “Triggers” tab. On this screen, click the “+ Create trig-
ger” button on the right. You can access a similar screen by clicking
“Triggers” from Exalate’s left hand menu. That gives you a similar
interface, but you’ll have to specify the connection for each trigger.
The process for creating triggers is the same in both Jira and
Salesforce, but the search queries at both ends are platform-spe-
cific. For instance, JQL (Jira Query Language) is used for Jira, and
SOQL(Salesforce Object Query Language) is used for Salesforce.
Alternatively, you can also create a trigger from the left-hand menu
of Exalate. Both approaches lead you to similar screens, but the
latter one prompts you to select the connection you want to create
a trigger for since it is from the general tab.
BOOK A DEMO 33
If this is your first trigger, the screen will be empty. Click on “Create
trigger” to get started. You will now be taken to the “Add trigger”
screen.
Several fields will pop up allowing you to select the entity type. There
is a drop-down list of Salesforce entities that you can select from,
but the most popular ones are Account, Case, Opportunity, Task, and
Product. Depending on what you select in the dropdown, more fields
will appear.
BOOK A DEMO 34
Or you can toggle the search query button and enter a SOQL query
instead. Write the query in the “If” section.
Don’t forget to add “Notes”. They will help you to understand what the
trigger is created for if you have too many of them.
This is useful when you don’t want to keep creating the trigger every
time. Just toggle the button to deactivate it when not required.
BOOK A DEMO 35
You now see the trigger listed on the previous screen.
You can activate or deactivate the trigger from this screen by tog-
gling the “Status” button. You can also click on the 3 dots under
“Action” to either edit, delete, or “Bulk Exalate” from the trigger.
Bulk exalate allows you to sync existing issues or entities that sat-
isfy the trigger conditions you have set.
Don’t forget to click “Publish” once you have made all the changes.
For the Basic mode, you can sync by creating triggers or synchro-
nizing several issues or entities together using the “Bulk Connect”
option. You can also explore the “Connect” operation that will allow
you to sync existing Jira issues to Salesforce.
For the Script mode, once you are done configuring the synchroni-
zation the way you want, the issues or entities will automatically be
synced when the conditions are met.
You can configure and alter the sync rules and triggers anytime to
make sure everything is working as you intend it to.
BOOK A DEMO 36
CHAPTER 4
COMMON
USE CASES
Now that we have seen how a Jira Salesforce integration can be
set up, let’s explore a few use cases where this kind of integration
would be useful.
Your sales and project management teams can benefit hugely from
passing information between them.
BOOK A DEMO 38
Sales and Development Teams
With the tools integrated, the sales team can easily escalate bugs
and feature requests of key Opportunities from Salesforce. When
such a bug or feature request is identified, it automatically cre-
ates an issue in Jira and is taken up by the concerned developer.
Henceforth the status of that issue, the comments passed back and
forth can all be tracked within Salesforce without the sales team
having to contact the developers every time they need a status
update.
Such tasks, if synced with Salesforce, can help them get real-time
updates on deals and help them streamline their licensing and con-
tracting tasks without making incessant phone calls and sending
emails to the sales team to gather the information they need.
BOOK A DEMO 39
CHAPTER 5
CONCLUSION
We have seen how the synchronization of information between two
powerful tools like Jira and Salesforce can help teams collaborate
and streamline communication. It also ensures data transparency
across teams and helps everyone stay on the same page.
LEARN MORE
BOOK A DEMO 41
The Leading Cross-Company
Integration Solution
Exalate is the leading and the only solution specifically
built for cross-company integration scenarios with the
most complex synchronization use cases.
“
“
The first thing that hits you when using this app is how easy it is to get
a synchronization up and running. By default, everything works so well.
“
With the amazing support team and the flexible capability of Exalate,“
we were able to see it work nicely and become an important part of our
work life cycle.
“
“
Exalate is marketed as the most flexible synchronization tool for issue
trackers and that short definitions is pretty accurate from what we
have observed.