The second most popular app in the Salesforce Integration category is Jitterbit Cloud Data Loader (CDL). This free tool is a stripped-down version of the Jitterbit. The obvious upgrade path is the full version of Jitterbit, which is both an integration tool and an API builder.
Our view is that the step from Jitterbit CDL to Jitterbit full is a big one, and it’s fraught with risk and deployment issues. We’d like to suggest Xplenty as an alternative, and if you haven’t implemented Jitterbit yet, we’d like to suggest one of our competitor’s products instead of Jitterbit as a low-cost (or even free) Salesforce integration tool.
In This Article:
Overview: Jitterbit Cloud Data Loader
For readers who aren’t using Jitterbit CDL, let’s quickly review the features of the product. Put simply, Jitterbit CDL lets you insert data from a file or a database table into Salesforce, and export data from Salesforce into a file or a database table. Both the inserts and exports can be scheduled. The export function can use a Salesforce Object Query Language (SOQL) WHERE clause to restrict the data selected from Salesforce. Similarly, the database table export allows the use of a SQL WHERE clause, or custom SQL, to define the data exported to Salesforce.
In addition to files on a local computer, Jitterbit CDL can also connect to files via FTP or network file shares. This brings us to the most important negative about Jitterbit CDL: despite the word “Cloud” in its name, Jitterbit CDL is an old school desktop app. Not only does this require downloading and installing the software on one or more computers in your organization it also involves installing upgrades and designating one or more computers to be left running so that scheduled jobs can be run overnight. If that computer crashes or the power goes out, you have an issue. This means you may need to hire an iT professional to build you a server for Jitterbit -- which is a lot of work for a “free” tool.
From an integration standpoint, Jitterbit CDL is a powerful asset if your integration requirements can be satisfied using SOQL and/or SQL extracts and simple inserts. From a deployment standpoint, however, Jitterbit CDL is a pain in the nether regions. If your integration needs are relatively simple, we recommend considering Dataloader.Io instead, which is cloud-based and tightly integrated with Salesforce. We have a short article on Dataloader.Io that provides a good overview of the capabilities of that tool.
Jitterbit vs Xplenty: The Next Step
Let’s assume you’ve already made the decision to use Jitterbit CDL, and made peace with Jitterbit’s requirement for an on-premises install. If you encounter an integration challenge that CDL can’t handle, you might be tempted to take the path of least resistance and upgrade to full-blown Jitterbit. Before you do that, however, there is a case to be made for choosing Xplenty, or another truly cloud-based tool, instead:
- Jitterbit’s on-premises requirements are a big commitment, especially if your department, like many today, uses only cloud services. Though Jitterbit has cloud agents to run integrations fully in the cloud, Jitterbit still relies on desktop software to interact with its cloud tools.
- Fully featured Jitterbit is not only an integration tool, but it also allows building and distributing custom APIs. It is a software development platform, with a number of enterprise features and the complexity that all of those features entail.
Only you can decide whether Jitterbit is the right fit for your integration needs. That decision is based on the complexity of your integration, and the capabilities of your organization. We think that Jitterbit is probably too much platform for most organizations that were initially satisfied with a free integration solution, and we want to present a solution to a fairly complex integration challenge to show how the Xplenty platform can solve a real-world problem without the complexity of a full-blown API builder.
A “Simple” Example
Organizations that use Salesforce for marketing to existing customers often want to target their best customers in sales campaigns. How you determine your top-tier of customers is organization-specific, but let’s imagine an example where your top tier is customers who use their loyalty cards for purchasing. The simple metric used by this org is called the “Loyalty Score”, a number from 0-100 indicating the percentage of purchases which use the loyalty card.
Your org has a custom field in the account object to track it.
The score appears on the standard account detail layout.
Because the loyalty card system and the purchasing card system are two separate databases, Jitterbit Cloud Data Loader is unable to automatically calculate and insert the loyalty score. Jitterbit CDL can only connect one database table to Salesforce at a time, and it can’t do calculations.
Let’s see how we can solve this problem easily with Xplenty.
Here’s an overview of the Xplenty data pipeline that can solve the problem. The boxes indicate an action -- in this case, data retrieval, data manipulation, or data storage. The top two boxes are queries against two different databases.
Here’s part of the LoyaltyCardDb step. As you can see, we’re querying a summary table from the loyalty card database which has an account number and year-to-date spend (if no summary table existed, Xplenty could access the underlying data tables and calculate the score). Let's assume that account number is a shared key between Salesforce and other systems, though email address or some other unique key could work.
This section of the data pipeline joins the two databases on account number and calculates the loyalty score. Note that we use a left join (all the purchasing data, and loyalty data where it matches) so we can pick up customers who don’t use their loyalty card. These will get a loyalty score of zero and are a good target for a loyalty marketing campaign.
One thing to note on the calculation of the loyalty score is that Xplenty has a wide variety of functions that can be used in calculations. In this case, we round the score and make sure that any nulls from our left join are zeros, so we can assign zero loyalty scores. We also change the account number to a string, since it is stored as a numeric in the databases. These Xplenty function creation dialog helped us create those functions easily, without consulting online help. We’ve also filtered out zero purchases in the first step with a where clause when we queried the purchasing database, so we won’t be dividing by zero.
This step joins Salesforce account object information with the purchasing data, using account number as the join key.
Note that we’ve used our activity indicator to make sure we only select currently active clients for the update. We also tell Xplenty to use a bulk query to efficiently retrieve all the account records. This option automatically ignores deleted records. We need this join step because the account number is not designated as an external id in Salesforce, so we need to use the account number to retrieve the Salesforce object id.
The final step uses the Salesforce account object id as a key to perform an upsert (essentially, an update) of the loyalty score. This is a screenshot from the portion of that step that maps between the purchasing and loyalty data and Salesforce.
Our example is made up, but it looks a lot like problems our customers solve every day. Xplenty hits a sweet spot between simple import and export tools, and full-blown software development environments that do integration, create APIs and perhaps tell your network-connected InstaPot to start dinner. Our tool builds pipelines without code, in a simple drag-and-drop interface, all in the cloud. Our Salesforce components use the APIs as efficiently as possible, so you aren’t burning through governor limits. All that, and our pricing is reasonable -- certainly much less expensive than Jitterbit.
If you’re strapped for time and don’t want to learn the Xplenty tool, one of our integration specialists can help you construct your data pipeline, or build your pipeline for you. For many organizations that have outgrown Jitterbit CDL, we are the next logical step. Drop us a line at firstname.lastname@example.org or schedule a meeting to get a demo, a seven-day pilot and a complimentary session with our implementation team.