In the distribution business we are constantly encountering different clients, each with different needs. Modern companies of all kinds have multiple systems where they produce and store data they could use to improve their business.
With these valuable data resources and these challenges, it’s increasingly important to have ways to centralize the data and maximize its potential. Here at Proton, it’s our goal to help distribution firms make sense of their data.
Today, I’m going to show you how we leveraged Workato to supercharge our ability to integrate with our customers by enabling deeper, faster connections to more data sources.
Why a direct connection?
In an earlier post, my colleague Stojan talked about two ways to connect to our customers’ data: a data drop and a direct connection. He only covered the data drop. Here we’ll cover the second method, the direct connection to one of our client’s systems. With a direct connection, it’s much easier to coordinate with our customers, and it makes us more nimble.
First, it minimizes the client’s involvement and the resources they need to dedicate to the project. Rather than manually building a process from scratch, we get all the data once and then we’re done.
When existing customers want access to a new feature, we don’t have to coordinate and track down the new data requirements. For instance, after going live a customer may decide to expand from inside sales to outside sales. If users are visiting customers in person, we may need to add customers’ addresses. With a direct connection, the data are all already in place.. Access to the system is enough: we can immediately pull the new data and spin up the new feature.
It also expands our capabilities, such as enabling real-time data synchronization to Proton. This improves the quality of Proton’s features and makes it a more useful tool. Users can always be sure they’re seeing the most updated information. This can be the difference between us recommending a product that just went out of stock and us recommending a great substitute item.
While there are some clear benefits from a direct connection, however, there are also some challenges we need to overcome. One of the biggest challenges in a direct integration is the data coming from different systems. Enter Workato, our iPaaS partner.
Getting the data: Workato Connectors
As I mentioned, different clients have different systems to store their data. Without any additional tooling, this would be a huge challenge. We would have to do a lot of manual work for each system. Imagine the difference in development time spent just by reading through some API compared to just using the stuff you need with just a few clicks.
Here is where Workato comes in handy, with hundreds of pre-built connectors. Each connector includes a way to authenticate, triggers for activating the workflow, and actions for a specific app. With these tools, the otherwise tedious job of connecting and pulling data from a client — no matter the amount — is the work of a few clicks. No custom code required. Of course, there are systems that don’t yet have an existing connector. Fortunately, there we can still build (and reuse) our own, and take connectors that have been created by the community.
No connector? No problem! The connector SDK
A connector allows Workato to interact with a single application through a series of triggers and actions. Triggers monitor for events that occur in the application you are connecting to and kickstart a workflow of actions that we call recipes. Actions carry out specific predefined operations in the target application.
So that’s what we did. First we set up the connection from Workato’s central hub to our API layer. Then we set up the authorization to ensure we connect securely. Another cool feature: you can save the credentials globally and then select them later for future use. Once and done.
Next we write triggers and actions. Triggers are the entry points that kick off the recipes, which can then do something like call the database and check for new entries, or even a base infinite loop that gets executed every 5 minutes.
The actions are the functions that we define to be executed. It can be a call which checks for new records, a call that downloads data from a PDF file, or uploads the data to our service. They may also pull and upload data in and out of the system that we’re connected with. A nice example of this are some of the actions that we wrote for our custom connector SDK. It supports posting data to our APIs where it gets processed further. Another example action is the mapping endpoint, where the connector SDK would call our API and grab a field mapping which would be rendered by Workato.
Here you can see how we map the products, for example:
Keep it secret, keep it safe: Workato Embedded
You might be asking yourself: how is the connection and authentication setup configured? It’s a really important question for our clients and for Proton as we work to keep customer data confidential and safe. Sending us the connection variables over an email or something similar is out of the question. Most email is not encrypted, for example, as well as us having access to the sensitive passwords.
Here again, Workato solves our problem. Workato’s Embedded Platform lets us insert the Workato Recipe Editor into our own web presence. This is really convenient. Our customer’s managers and engineers can open our admin page and then create and configure the connection without ever giving us any credentials. The credentials aren’t sent insecurely or stored anywhere in our system while also giving our customers testing tools to immediately validate the setup works properly. While Workato offers many configuration paths, this one was critical for us in accommodating security concerns. Their SOC2 and GDPR compliance reassure us and our users.
In this post we showed how Workato improved our integrations. While working with clients, each day that we save on integration not only reduces cost, but also increases their happiness with the process. Workato has helped us bridge the gap and make our integrations more flexible in a world of many technologies.