4 Ways of SaaS integrations: Robotic Process Automation (Part 3/4)
The method with the biggest hype in the automation community due to its capabilities.
Happy Automation Friday! 🎉
In the previous post, I talked about the various ways of integrating applications. There are four ways to integrate tools:
By the end of this article, it should be clearer when to use User Interface Automation. Additionally, you will know how to approach a custom solution for integration and how to choose the right use cases for robotic process automation.
Robotic Process Automation or RPA (User Interface Automation)
This is the method with the biggest hype in the automation community due to its capabilities. The hype was indeed created by the industry itself, from companies such as UiPath, but it’s obvious that there is a gold mine in these products, and now the ball is in the client’s court.
Differences
Compared with Direct Integrations and Workflow Automation, which are both built on API interfaces mostly for web apps, Robotic Process or User Interface Automation is completely different as a concept.
Instead of using data provided by third-party apps in their APIs, these types of apps use the user interface for automation (what you see on your screen). Basically, they can do what a normal user could do with their mouse on the screen.
This major structural difference expands the capabilities of this method. By allowing developers to use anything they see on the screen, the capabilities and interconnectivity are endless. In the previous methods, you can use only what each software decides to provide in their APIs.
How it works
The actual method could vary depending on the automation software, but what a robot like this does is:
Allow you to record an action from your screen, by interacting with one or multiple applications.
Run the previously recorded action at a specific time.
Disadvantages
It is not a solution for beginners in terms of everything: setup cost and complexity, monthly costs, and maintenance complexity.
Setup cost: Compared with the previous two methods, this one comes with a setup cost that in some cases could be above €10k. Most companies work with third-party providers as consultants, and this market creates agencies that could charge businesses high figures for even small tasks.
Monthly cost: Compared with solutions such as Zapier or Make, or even various addons from various SaaS solutions that could cost below €50/month, in this case, the cost could start from a few hundred and go up to €5k for a robot, which is not an option for a small or even a medium company.
High maintenance: This method has a high risk of failing due to the method itself. Interacting with an interface is more unstable than interacting with an API (which, in theory, should have the same format for responses). The software is constantly updated (both algorithms and interface), creating a real problem in keeping these scenarios active.
Learning curve: It is more complex to learn how to handle a solution like UiPath (with over 10 subproducts) than a solution like Zapier.
Advantages
Security: These solutions are designed for security. You can maintain a high level of security when interacting with these apps (such as VPN tunnels, credentials, 2-factor authentication, etc.).
Industries: Due to the high level of security, there are some industries more willing to implement an RPA solution, such as Banking, Healthcare, Insurance, or even the Military.
Capabilities: As I mentioned earlier, using what a real user could use expands the capabilities. You can interact with any web or desktop app (which are very common in the industries mentioned earlier).
Use Case
As a finance manager, I want to extract some data from the invoices, add this information to the finance software on the cash flow report, and create a new payment from my bank account. After the payment, I want to inform the provider that the payment was made and update the cash flow.
Why would you use RPA for this use case?
The process is complex and contains various integrations, with some solutions that could be desktop-based (like the bank account interface).
I need to interact with various apps, maybe even skip some steps or adapt others (for example, if the invoice is incorrect or the payment couldn’t be made).
Security is an important factor, considering the interaction with the bank account.
When shouldn’t you use RPA?
When the process requires some human decisions, such as understanding if the amount is according to the contract or if now it’s the right moment for your cash flow to make the payment.
When the process is different each time, for example, if you can’t create some template for those invoices received from your providers or if you receive the invoice in various formats (email, on paper, on an interface).