We are already used to seeing factories where robots replace people in repetitive activities. The concept of Robotic Process Automation (RPA) transfers this vision also to the office – to the activities we perform in ERP, CRM, MS Office, e-mail applications….
Robotic Process Automation means creating software robots (bots) that simulate the activity of users performing specific, repetitive tasks in IT systems. This can also be described as the creation of ‘digital workforce’.
By launching ‘bots’ to perform routine activities, the company can enjoy a number of benefits:
- Reduced workload and faster execution of repetitive activities
- Fewer errors – compared to manual data entry
- Greater satisfaction of employees, who can be freed from monotonous tasks and reassigned to more interesting jobs
- Ability to include additional reports or checkpoints in the processes that were previously too labor-intensive to execute (we realized that they were needed in the company, but we did not have the capacity to handle them)
How is it done?
Robotic Process Automation tools are specialized programs that can control other applications and orchestrate their operation.
Depending on the type of application, the robot controls its operation in various ways:
- API (web service, REST) calls – if the system provides this type of interface
- Saving/retrieving files from disk or FTP server
- Automatic email sending/receiving,
- Simulating the work of a user who “clicks" on appropriate fields and buttons on a website or in an application.
The latter way (simulating the user’s work with the application) provides great flexibility and proves that “nothing is impossible” for the bot. If the user is able to perform a certain action in the application by selecting functions from the menu and entering data on the screen, the RPA robot can reproduce these steps. This is an approach similar to the ‘batch input’ technique in SAP systems. However, unlike batch input, it is not limited to the SAP GUI screen only, but can also include any other applications and web pages.
RPA is a very flexible approach that can be used wherever application users perform repetitive tasks described by unambiguous rules. Below some typical scenarios in which it is worth considering:
Entering the same data into many systems
Often, master data such as suppliers, customers, employees or products has to be set up in many different applications (if these applications are not yet connected by automatic interfaces). For example, we need to enter a new customer in the ERP system, in the CRM system and in the support application. A new product must be added to the ERP system and separately to the system managing an online store. We create a new employee in the HR system, in the financial application (as a payment recipient, for travel expense and purchase accounting) and in the company’s intranet. We can indicate to the RPA bot the number of a customer or product in one of the systems and define the logic of automatic propagation of this data to subsequent applications.
Mass updates/verification of data
Sometimes we use external information services to update data in the ERP or CRM system. An example is a periodic verification whether all customers are registered as active VAT payers, or downloading customer turnover information to CRM, based on DUNS numbers. If we “teach" a bot to perform such an operation for a single customer, it will be automatically repeated, regardless of whether we have hundreds or millions of records to update.
Posting of data delivered in files
If we perform repetitive postings (for which the mechanism of import to the system has not been prepared yet), the RPA bot is an ideal tool for automating such a process. For instance a data file with fuel card billing, a collective invoice from a travel agency, a list of invoices to be issued sent in Excel from the service department, etc.
Handling of incoming e-mails
Every organization receives repetitive e-mails for which the human involvement in their handling can be partially or even completely eliminated. For example, e-mails with invoices from suppliers sent to the address: email@example.com can be automatically verified (whether they are sent from an e-mail address assigned to one of the suppliers in ERP and whether they contain a PDF attachment), and then initiate the process of verification and posting the invoice in the ERP system.
In the simplest variant – the attachment with the invoice will be added to the accounting system and then ‘manually’ analyzed and posted. In the more advanced variant, an OCR-enabled bot can automatically interpret and post such a document. It will inform the operator only if an unexpected situation occurs – the invoice scan is unintelligible or the document layout does not match any template.
Another example can be e-mails with balance confirmation requests from our counterparties. If we set up a dedicated mailbox for such requests (e.g. firstname.lastname@example.org), the bot can automatically check whether an e-mail comes from one of the defined counterparties, then download the status of settlements from the financial system and send this information back to the supplier – completely eliminating the work of the accounting department in this monotonous task.
Automatic generation of notifications or reports
Managers regularly prepare many different specifications on their teams’ work to calculate and report various indicators (KPIs). The source data for these specifications is already made available by various applications in the company, but their “processing" involves additional manual steps, such as exporting specifications to Excel, combining data from several sources, adding calculation formulas, and finally exporting them to a PDF file and forwarding by email.
If the rules of creating such specifications are unambiguous and constant (and they should be if KPI reports are to be comparable between successive periods), the RPA robot will work much better in such a task than a person, who – being tired after many hours of work – can use data from the wrong month or paste an incorrect formula for calculations.
Additional checkpoints in the process
A service technician with a few urgent requests assigned to him suddenly took a sick leave and nobody took care of these matters. A salesman has too many customer visits scheduled for the next week, but is so busy with current offers that he doesn’t have time to pass the customers to another person. The planned invoices don’t match what we actually invoiced in the month, but no one has time to trace the data by customer and project; we only have the total amount of discrepancies….
Each of the situations described above can be easily controlled and communicated to the relevant specialists or managers before they affect the company’s performance or customer relationships. In practice, however, there is usually no one to delegate these simple control activities to. We learn about the problem only when there is a “fire" to be extinguished… The RPA bot is ideally suited for such tasks. It can log in to several systems and compare information from them (e.g. a list of support system requests, a list of meetings with customers in CRM, absences of employees in the HR system, planned invoices in ERP, etc.). If the established rules are not met, it sends warnings and escalates the case depending on its urgency. For example, if a customer visit is planned at the same time when a salesman is on vacation, a notification is sent to a team leader. If the amount of invoices issued is lower than the planned revenues from a given project, a warning is sent to a project manager that he forgot to enter a document or that an invoicing plan needs to be updated.
From the scenarios presented above, you can choose several general situations when RPA is worth considering:
- activities that are repetitive – daily, weekly or monthly – in a similar form,
- activities that can be described by unambiguous rules,
- processes ‘at the junction’ of two or more applications – this is not a necessary condition, but then usually we will save more time by eliminating manual combination or comparison of data that is currently performed by users.
If the above situations sound familiar to you and you come across such scenarios in your organization, then we have good news. The implementation of the solutions described in this article is a relatively simple project, compared to other projects at the junction of IT and business. Modern RPA tools allow you to prepare a proof of concept within a few days. In a short period of time, it is therefore possible to demonstrate the benefits of automation on a selected section of the real process and on actual samples of your organization’s data. At the initial project stage, the purchase of a license is not required; usually we can use a ‘trial’ version of the tools – e.g. a 30-day version – which is completely sufficient to assess the usefulness of the solution, without the risk of incurring expenses for the company and disappointment with the final result.
The subsequent “full” implementation of the RPA process does not impose a heavy burden on the organization either. This obviously depends on the scale and complexity of the automation that we are planning, but it is a project with a schedule calculated in weeks rather than months. RPA tools enable a part of the process and the processing logic to be “clicked" on the screen; only more complex automation elements require programming skills. Therefore, the maintenance of the ‘robot’ and current updates (e.g. changes in business rules) do not entail the need for support from an external company. The RPA implementation includes training for key users – process managers – who will take care of it in the future.
RPA for SAP – sample application scenarios
During the SAP implementation, the organization prepares a number of automatic mechanisms and reports using the ABAP programming language, SAP PI integration platform or SAP data warehouse. Over time, however, we discover new areas for improvement. There are also changes in the system environment, e.g. implementation of new applications that need to exchange data with SAP. Even if other applications do not offer suitable interfaces (APIs) or if we cannot carry out our own programming work in SAP (e.g. a strictly controlled central corporate system), the RPA bot – simulating the user’s work – will cope with these limitations.
Below we present examples of automation scenarios in SAP:
- Mass creation or change of master data
- Update of price lists
- Update of credit limits
- Periodical data posting based on files (fuel cards, settlements of corporate payment cards, etc.)
- Automatic sending of balance requests or generation of balance confirmations for counterparties, based on incoming e-mails
- Performance of other sequences of activities related to the month-end closing or year-end closing
- Supervision of the interface operation (e.g. comparison of the list of technical IDOC messages and invoices posted in the system, as a verification whether all messages have been processed correctly)
- Preparation of reports for the management board, combining information from several data sources in the system (e.g. costs, sales, working time)
SNP is a partner of Automation Anywhere Inc. – an RPA market leader. AAI solutions are used by more than 2000 enterprises around the world. Scalability and security are AAI priorities in product development. They cover the entire “robot life cycle", from designing through attended/unattended launching of robots to analytical tools and machine learning (IQ Bot).
In the online AAI Bot Store, customers will find over 250 ready-made ‘bots’, dedicated to various systems (including SAP), accelerating the RPA implementation.
Despite their great capabilities, AAI tools remain intuitive to use. Business users are able to define most of the necessary solutions without the involvement of programmers.
SNP Poland carries out RPA implementation projects both in the ‘proof of concept’ version and as a full implementation of tools used to automate processes in the organization.