“I want to use automation and, like, do things more efficiently.”
If you work in accounting or with accountants, you likely hear this pronouncement regularly. That's because automating manual processes has obvious benefits: reducing human error and increasing cost savings.
But where do you start? Bots, API, AI, what’s the difference between these things anyway?
In this article, we'll explore what using RPA means versus using an API, the pros and cons of each, and what solving one common workflow with the different approaches can look like. Keep in mind that the automation we're discussing is meant to work with your accounting software, not to replace it.
EXPLAIN LIKE I’M FIVE (ELI5):
What does RPA and API mean?
Robotic Process Automation, or RPA, is like having a virtual assistant that can mimic human actions on a computer. Imagine you trained a robot to do exactly what you do down to the click, scroll, and keystroke.
These robots follow a set of predefined rules and can work 24/7, making them ideal for tasks that are rule-based and require no decision-making.
When people say talk about bots, they’re talking about RPA.
Accounting processes that are good candidates for RPA are: downloading a PDF statement from one place, formatting a document the same way each time, etc.
An Application Programming Interface, or API, is a data integration that extracts, transfers, and loads data (sometimes referred to as “ETL”). Imagine being able to extract data from a system in its most granular form and put it into a table, and then push that data into another table somewhere else.
The secret here is that integrations often allow you to access data in an even more granular form than you see on the surface when you login to the app or system.
Example: In QuickBooks Online you may be able to select a Prepaid Expenses account, but behind the scenes you’d also be able to see additional information, such as:
Account Name = Prepaid Expenses
Account Type = Asset
Account Subtype = Other Current Asset
Breaking information into these smaller bite sized pieces allows you to create more nuanced rules for the automation to follow.
Accounting processes that are good candidates for the API are: sharing data between systems, calculating and booking journal entries, and creating custom financial reports.
LET’S COMPARE API AND RPA
In short:
RPA is easier to pick up and start using. There are tons of low-code tools that exist that can simply watch you operate your computer and repeat those actions. However, it is much more fragile than using the API. Think about how often an app moves around a button, changes the font size, adds a pop up, etc. All of these things would trip up a robot who is only programmed to follow the steps you showed it at setup.
Using an API requires some coding chops, but will unquestionably provide you with a more resilient and powerful solution. If you’re getting started, we highly recommend using things like Stack Overflow, Khan Academy, or other reputable sources to truly learn. While the power of AI solutions like ChatGPT and Bard is widely touted as a great way to learn coding, there are an equal number of stories warning against using it. We’re not saying don’t use it, we’re just saying proceed with caution for now.
AUTOMATE REPORTING WITH RPA or APIS
So what these things look like in practice? Let’s take one common example and explain how it’d work using RPA vs. an API.
Process: Every month, an accountant downloads three reports from two different systems. These reports are merged into one file and two analyses are done:
USING RPA:
You’d need to map out every single step in this process, accounting for all possible variations, or your bot will break!
Since this is a hypothetical scenario, we’ll break out each step and list considerations.
Remember: In each step you’ll need to consider every click, scroll, and keystroke unless you can creatively bypass certain steps.
Consider if the screen changes size on different computers (take any website and look at it in full screen, vs. half screen, vs. mobile - they look different, right?). Or, what if buttons change with new system updates, etc.?
1. Login to each system:
2. Running the reports:
3. Consolidating the reports:
4. Analyzing and sharing the data:
5. General Maintenance & Errors:
USING THE API:
This won’t be as quick to learn, but it will give you longer lasting results. We recommend using Python. To do so, you’ll need to install Python, choose a Package Manager, and install Python Packages.
ELI5: You need to enable your computer to run Python and download a few things to get started.
1. API Data Retrieval:
2. Data Merging and Formatting:
3. Data Comparison for Exceptions:
4. Fluctuation Analysis via Code:
5. Reporting and Notification:
So what now?
If you’re exploring automation options, ask questions of the company or firm you’re working with. What approach are they using? Why? All automation is not created equally, and it’s important to understand what you’re getting into.
If you’re thinking about automating something yourself, jump in and try it. Seriously - if either approach interests you, you should try it. There are tons of resources out there to help guide you. Start small and focus on something that you know is 1) highly structured, and 2) very repetitive.
Accounting Functions may get wowed by automation and want to automate everything, but it's important to make an informed decision about what to automate and where to spend your precious time.