Middleware Integration – Our Story

An email

“Hey, we need to integrate two cloud systems Oracle HCM and DocuSign. Can you suggest a suitable Middleware? Also, do you have the expertise to build the integration?”

This was the email I got from a customer, who we already work with for Fusion HCM Implementations. The email brought back the memories of sleepless nights spent while building a B2B integration framework from the ground up for an Insurance Company. This was done to integrate Insurance Claims Processing with Glass, Tow, Rental Car, and other vendors. My son was not born then, now he is twenty 🤔.  I guess the only “cloud” in the software world then, was in the Windows 95 wallpaper.

This got me thinking, there may be an opportunity to recreate a similar system using AWS or Azure offerings to cater to similar business problems. Before I could even conclude my train of thought, another note from the client arrived saying they may be looking at Google’s Apigee.

Exploration

Apigee – great, there is something concrete to start with. Thus, planting my idea about the custom integration, I gathered some of the best minds in the company to explore the tool, come up with a proof of concept, and to discover alternate platforms.

Another client was using Cloud Elements for their needs and a couple of developers were comfortable working with it too. MuleSoft was proposed as an option by some folks working in similar integration projects. Dell Boomi came up too.

Sometime has passed since the first inquiry, the team had done enough to come up with a working integration of our internal HR system with GSuite using Apigee. We were ready to chip in and could begin anytime.

And the winner…

Fast forward to the meeting. Drama ensued when the client came up with their choice of middleware. It was neither Apigee nor MuleSoft but it was a funny-sounding name called “Jitterbit“. I had the client repeat himself multiple times to understand what he meant. We called upon Google to discover that Jitterbit was a popular option with x years of existence and it looked like they had matured into a major force in the cloud integration scene. Apparently, the client had been using this for several of their other enterprise integrations. Being the implementor, we were quite relieved that they have an active community, decent how-to-guides and structured documentation.

Into the brave new world

The tool is ready, but there were many questions left unanswered. Of course, the most important being what is the business requirement to be accomplished, and how much time we have in hand to deliver. Regarding requirements, all we knew was the client needed to interoperate Oracle HCM and DocuSign via integration using Jitterbit. I was hoping that the client being a little slow in the selection of the tool, there would be plenty of time to implement. Living up to its name, Jitterbit integration and another use case (integration with Azure Active Directory- which we will discuss another time) had to be completed in a months’ time, giving us a case of the jitters.

Jitterbit 101

Jitterbit has two integration variance “Cloud Data Loader” and “Harmony API Integration Platform”. The comparison is here. Harmony is used in this project and we will delve into its details. With Harmony, you can quickly and easily orchestrate complex integrations, automate business processes, and create secure APIs that provide real-time connectivity to customers, partners, products and more. Scope of this writeup is Integration.

30 days trial of a fully functional version would be good enough for an evaluation.

Components

Jitterbit Harmony Portal

The Web-based interface where you can access the Harmony applications:

API Manager

Jitterbit’s API management web interface where you can create and publish developer-friendly APIs and perform full API lifecycle management tasks.

Citizen Integrator

Jitterbit’s click-and-run web application for non-technical users to quickly customize and deploy integrations using pre-built recipes.

Data Loader 

Jitterbit’s free data migration tool that enables Salesforce administrators to quickly and easily automate the import and export of data between flat files, databases, and Salesforce.

Studio

Jitterbit’s project design application where you can design, test, and deploy your integration projects. Two versions are available:

Cloud Studio

Cloud Studio features a modern and collaborative user experience with a cloud-based UI. (This is our scope).

Design Studio

Design Studio is a standalone thick client that can be installed on a Windows or Mac workstation.

Management Console

Jitterbit’s web console where you can manage your integration projects and perform administrative functions related to your organization.

Getting started

Introduction

A quick start guide and tutorials, description of the user interface, and terminology and definitions.

Projects

A collection of one or more workflows that comprise and execute an integration use case.

Project Components

The discrete building blocks of a project.

Workflow

A collection of operations used as a tool for your convenience to help segregate different parts of the project.

Operations

The smallest unit that is independently executed on an agent and recorded by Harmony. Operations are used to define what integration should do and when it should be done.

Connectors

They provide the interface for entering user-provided input such as credentials to create an authorized connection. Activities associated with these connections can then be added to operations on the design canvas and configured as sources or targets. An endpoint refers to a specific connection and its activities.

Transformations

Transformations are used as steps in an operation to map or transform inputs to a resulting output by moving data, cleaning data, or applying business logic. A transformation consists of source and target schemas that have been defined in the transformation and the transformation mapping that generates the output.

Schemas

Source and target schemas represent the “request” and “response” structures for interaction with a data resource in an operation. These schemas can be either defined within the transformation or provided by an adjacent activity.

Scripts

Scripts provide the flexibility and power to transform data, perform calculations, or perform logic validation beyond simple field mapping. Scripts can be used both as steps of operation as well as within transformations to apply specified logic or conditions to the data.

Functions

Functions are used within scripts in operations and transformations to enhance and refine data processes.

Variables

Variables are used to allow for the dynamic configuration of endpoints, to support the passing of data between operations, and to drive detailed integration logic within the transformation scripts.

Notifications

Notifications that sends a customized email can be triggered upon success or failure of an operation or called from a script.

Plugins

Plugins are Jitterbit- or user-provided applications that extend Harmony’s native capabilities. Jitterbit provides a selection of plugins or you can create your own using Jitterbit’s Plugin SDK.

Recipes

A Cloud Studio recipe is an exported Cloud Studio project that serves as a reusable template for starting an integration and demonstrates basic functionality between two endpoints.

Get it done

To better understand the Jitterbit essentials and the implementation flow, find below a hypothetical dialogue between the implementor and the manager. All involved are quite new to the technologies used, namely Oracle HCM, DocuSign and Jitterbit.

We need to build integration using Jitterbit as the middleware to automate a part of the employee onboarding process. At one end it is oracle HCM and the other end is DocuSign. HCM is the system of truth.

Great, Does Oracle HCM and DocuSign have Rest APIS exposed? What kind of authentication scheme do they support? How can we try out Jitterbit?

Yes, both Oracle HCM and DocuSign have external APIS. Here is the documentation for HCM Api and Docusign API . Don’t worry about the Jitterbit access, the client has already provisioned a user for the access. Typically it would take some time for the approvals in an enterprise, but all of Jitterbit Harmony is in the cloud you know..

Thank you, I will check. Could you please explain the integration flow in detail? I really need to dig deep and find out how we can accomplish our use-case with the tool.

Sure, here you go..
-HR provisions the documents for the employees in DocuSign. Documents are grouped in an envelope.

-Employees get the documents by email.

-Employees sign the documents via DocuSign interface and they input their identifier.

-Jitterbit pulls all the envelopes from DocuSign which are signed.

-Jitterbit to create Document records in HCM.

-Jitterbit to match the Document records with the correct employee.

Okay, I had a good look at Jitterbit. Though information on “Stackoverflow” and other resources on the web has limited information, Jitterbit has an active community on their site. They have good documentation too. I am pretty confident that we can pull through. Let us get into the implementation.

Couple of things we need to decide first. They have a Design studio that could be installed on the local machine and a Cloud Studio which can be run from the cloud. The integrations configured are run as an agent. These agents can be configured to run on-premise or from the cloud. I would suggest the cloud studio and the cloud agent.

I like that confidence. Yes, we will go with the Cloud studio and configure the agent to run from the cloud.

How about we make sure we have all the required pieces before we get started? Let’s do a Walking Skeleton.

Yes, I did some work already. Cloud studio has an intuitive design canvas where we can drag and drop connectors, add the script block and the transformations. They have a built-in DocuSign connector.DocuSign integration requires an Implicit Grand OAuth 2.0 authentication flow which I configured in minutes and successfully tested the connectivity. Also, the connector presented with the available DocuSign APIs and the request and response schema out of the box. Configured the connector to get all envelopes. All it needed was to transform the input and the output and store on a variable.Oh, one another thing I checked was about the transfer of the document via API. It’s base64 encoded and is embedded in the JSON response.

That’s awesome, how about Oracle HCM?

Could not find an HCM connector, but I could create an HCM connector using the generic API template quite easily, which I will explain.At the API endpoint, the request and the response we had to configure by hand. That was pretty easy though. We have decent documentation from Oracle HCM . They have a basic authentication flow and could get the person-details successfully. Used an HTTP proxy to perfect the API before I configured the HCM connector in Jitterbit.

You have made my day, we should be able to meet the deadline with a lot to spare I guess.. 😊.
Hey look, we need to make sure that the integration should be support friendly and we should have error-handling, logging and email notifications. We should be able to schedule the runs for integration too. Tell me more on what you have found in that area.

]We can connect different part of the flows based on conditions, for example “onError” or “onSuccess”. We can either connect to a custom database and write the logs or write onto Jitterbit’s Operation-log which can be viewed using the “ManagementConsole”.Yes, the integrations can be very much scheduled and the notifications can be sent via email which can be pre-configured.

Wow, Jitterbit is really impressive. You did great in a short time too. Now let us concentrate and put in the business logic. I can’t wait for my next meeting with the client.

The project was done quite successfully to the best of satisfaction of all stakeholders and in a short time.

Verdict

The whole implementation process was such a breeze that it took less than a week’s time to implement the DocuSign – Oracle HCM integration workflow with all the bells and whistles fitted in. But the testing and verification of the integration took some time owing to the complex business process which involved multiple countries and delay in setting up the right data in HCM Cloud and DocuSign.

Simply put, Jitterbit functions much the same as plumbing does. It provides the “fixtures,” “pipes” and “joints” to enable what’s important to pass through.

Go for it folks, Jitterbit can be tamed. Call us if you have the jitters 😊

WE WOULD LOVE TO HEAR FROM YOU