Connecting Legacy Software Without an API: The Legacy ERP Case in German SMEs
How to connect a legacy ERP without an API using RPA: MSAA selectors, attended/unattended modes, and the limits of Power Automate in SMEs.
Many businesses in the German SME sector have been running the same ERP or inventory management software for twenty years or more. The system runs stably, everyone knows the screens by heart, but it never got a modern interface. You type in orders by hand, maintain master data screen by screen, and pull reports into Excel via copy-paste. Robotic process automation, or RPA for short, was developed for exactly this gap: Power Automate teaches a digital worker to operate the mouse and keyboard the way a human would, automating even software that has no API at all. As of: July 2026.
In this guide, we'll show you how Power Automate distinguishes between API-based automation and UI-based RPA, how desktop flows recognize even ancient Windows applications without a modern user interface, and what a typical SME case looks like when a legacy ERP is connected to modern triggers such as email or Excel. By the end, you'll know which execution mode fits your system and where the limits of RPA lie.
Why do so many SMEs still run software without an API?
Software vendors usually only build interfaces once enough customers ask for them, and for a warehouse management system that has been in place for years, it often no longer pays off for the vendor. Microsoft's documentation puts the starting point this way: what do you do when an application exists for which there is neither a ready-made connector nor an API you could use to build one yourself? This is exactly where RPA comes in, because it lets you automate even older systems without an API by teaching Power Automate to mimic a human's mouse movements and keystrokes, as if a robot were operating the computer (Microsoft Learn: Types of process automation). For you, that means you don't have to wait for an ERP update or a new interface to automate data entry.
What's the difference between API-based automation and RPA?
Power Automate offers two fundamental automation paths. Digital process automation, or DPA for short, runs via cloud flows and more than 380 ready-made, API-based connectors that let you connect, for example, SharePoint, Outlook, or Dynamics 365, without writing any code yourself. Robotic process automation, or RPA for short, runs via desktop flows instead and operates applications the same way you would yourself on screen. These two paths complement rather than replace each other:
- Cloud flow (DPA): uses an API, is stable against visual changes to the application, and runs entirely in the cloud.
- Desktop flow (RPA): needs no API, but is sensitive to changes in the screen layout, field names, or window structure of the target application.
This exact combination is what makes Power Automate interesting for SMEs: you connect modern systems via APIs and close the gap at your legacy ERP via RPA (Microsoft Learn: Types of process automation).
How does Power Automate recognize a legacy ERP without a modern interface?
For a desktop flow to know which button to click or which field to fill in at all, Power Automate captures so-called UI elements via three possible selector types. UI Automation, or UIA for short, is Microsoft's modern accessibility framework and works reliably with applications built using WPF, WinForms, or UWP. But many legacy ERP clients date from before these frameworks and were built with VB6 or classic Win32, so they don't expose any UIA information. For exactly this case there's Microsoft Active Accessibility, or MSAA for short: an older accessibility technology that provides less detail than UIA but is often the only way to reach buttons, text fields, and tables at all in legacy applications. If even MSAA isn't enough, Power Automate also offers UIA3 Raw, which exposes an application's complete, unfiltered element structure, useful for particularly unconventionally rendered interfaces (Microsoft Learn: Automate using UI elements). When recording a desktop flow, you can switch the capture mode directly, so you can deliberately switch to MSAA mode for a legacy ERP instead of relying on the UIA default setting.
What the legacy ERP case looks like in practice
The classic SME case runs in two layers. A cloud flow handles the trigger: it detects an incoming order email, a new row in an Excel table, or a form on your website. The cloud flow then calls a registered desktop flow, which takes over the actual work in the legacy ERP, opens the relevant screen, enters customer number, item, and quantity via MSAA selectors, and confirms the transaction, exactly as an employee would otherwise do by hand. Microsoft's documentation itself cites, as a typical example, data entry into an ERP system by employees of a larger company, as well as the automation of terminal emulators for older systems (Microsoft Learn: Introduction to desktop flows). For you, that means specifically: you change nothing about the legacy ERP itself; the digital worker only operates the existing interface, just as it has been in use for years.
Attended or unattended: which mode fits your legacy ERP?
Two modes are available for running a desktop flow, and the choice depends heavily on how you use your legacy ERP. In attended mode, the automation runs on an employee's computer while they are logged in; they can watch the process and step in if questions arise. In unattended mode, Power Automate logs itself into a registered machine on its own, completes the desktop flow without an audience, and logs itself out again afterward, ideal for a nightly batch run against your legacy ERP. This isn't a minor licensing detail: the Power Automate Premium license comes with an attended bot for attended mode, while unattended runs require a Process license with its own unattended bot, and if you want to automate without your own machine at all, you turn to the Hosted Process license for a bot hosted in Azure (Microsoft Learn: Power Automate license types). With a digital worker operating your legacy ERP in attended mode, you automate the clicks but keep control over every approval and every exception.
Where are the limits of RPA on a legacy ERP?
RPA is not a substitute for a real interface, but a bridge for as long as none exists. Unlike an API, which software vendors deliberately keep stable, a desktop flow is sensitive to every visual change: a moved field, a renamed button, or a new pop-up can send a selector nowhere. That's why, during setup, you need to define precisely what the digital worker should do, for example whether it always selects cell B3 or the first empty cell in a column, because RPA only does what you've actually taught it, not what you actually meant (Microsoft Learn: Types of process automation). If you don't want to shoulder this effort alone, our Power Automate consulting helps you build robust MSAA selectors and secure attended and unattended runs cleanly against edge cases.
Frequently asked questions
Does RPA replace a real interface to the legacy ERP?
No. A desktop flow operates the existing interface of your legacy ERP but doesn't create an API itself. If the system eventually gets a structured interface, it's usually worth switching to a cloud flow with a matching connector, because that runs significantly more stably and with less maintenance than UI automation.
How does Power Automate recognize controls in an old ERP screen without UIA support?
Via Microsoft Active Accessibility, or MSAA for short. This older accessibility technology provides less detail than the modern UIA framework, but it does make buttons, text fields, and lists visible in applications built with older technologies such as VB6 or classic Win32. You select MSAA mode directly in the UI element picker or while recording the desktop flow.
Attended or unattended: which fits automating a legacy ERP better?
For tasks involving questions to employees, or processes meant to run alongside normal work, attended fits better. For plannable batch runs outside business hours, such as loading all of the day's orders overnight, unattended is the better choice, because nobody needs to be logged in for it.
Which license do you need for unattended RPA on a legacy ERP?
The Power Automate Premium license alone isn't enough for unattended execution. You additionally need a Process license, which includes an unattended bot and is assigned to a machine, or alternatively a Hosted Process license if the desktop flow should run on a machine hosted by Microsoft in Azure instead of your own hardware.
NordFlux UG (haftungsbeschränkt)
NordFlux builds digital employees for organisations: automations and AI agents that take over repetitive work. You stay in control.
Concrete questions about automation or AI?
In a free initial analysis we discuss your case directly. No strings attached.