Home · Solutions · Finance & accounting

Solution · Finance & accounting

The group's cash at 07:30 in Teams, built by robots from statements and the ledger

The daily cash position without the 7 a.m. spreadsheet

Robots collect every bank balance and statement, add expected inflows and outflows from the ERP and publish the group cash position with a 13-week view in Teams before the office opens.

Quick winMicrosoft TeamsHuman in the loopDeterministic automation
10:30is when the CFO of this illustrative construction group receives the daily cash position. The balances behind it were downloaded by hand three hours earlier.

Executive summary

Challenge

Stop building the daily cash number by hand from four bank portals; it arrives late and nobody quite trusts it.

What changes

Mientha delivers a scheduled, unattended cash-position process on the UiPath Platform and your Microsoft 365 tenant.

Business value

The position exists at 07:30 with intraday files included; 150 minutes of collection become 20 to 30 minutes of exception review (modelled).

Systems involved

treasury data store (SharePoint workbook first, Azure SQL later); Power BI semantic model and report; SharePoint statement archive

Business problem

Treasury

Every morning a group needs to know how much cash it has, where it sits, what leaves today and what should arrive. In construction the question is sharp: milestone receipts, subcontractors paid at month end, payroll on fixed days, and restricted accounts such as split-payment VAT and escrow.

No single system holds the answer: the bank knows the balances, SAP the open items and the payment proposal, HR the payroll date, project controllers which client will pay. An analyst with a spreadsheet, a token and a list of logins puts these together.

So the analyst loses half of every day, the CFO and the treasurer decide on sweeps, drawdowns and FX with numbers three hours old, and project directors are chased for inflow estimates in chat threads. Each acquisition adds a bank and a tab, and the 13-week forecast for the covenant review is rebuilt by hand every second Friday.

How it works today

  1. PersonAt 07:00 the analyst signs in to four bank portals with hardware tokens, downloads balances and yesterday's statements for 23 accounts and pastes them into Cash_daily.xlsx
  2. SystemThe payment proposal is exported from SAP (F110) and vendor items due from FBL1N; the two non-SAP entities send payment lists in Excel
  3. PersonExpected inflows are collected by asking: project controllers in Teams, HR for payroll, the tax team for VAT dates
  4. WaitingThe sheet reaches the CFO by email around 10:30; questions come back before eleven and the analyst reopens the portals
  5. Risk of errorAn unexpected debit (a leasing instalment, a guarantee fee, a duplicate payment) is noticed only if someone reads the lines; covenant headroom is checked monthly, by hand
PersonSystemWaitingRisk of error

Why the current process costs more than it appears

The budget shows headcount, not what it is spent on.

  • The visible cost is two and a half analyst hours a day. The invisible one is a position three hours old when read: same-day receipts and returned payments are missing from every decision made before noon.
  • Idle cash and overdraft coexist: one company draws on its overdraft while another holds a surplus, because the sweep needs a view that does not exist before 10:30.
  • Distrust is expensive. When nobody is sure of the number, every company keeps a cushion; a €1.5 million buffer at an assumed 6% costs €90,000 a year, almost four times the analyst's time (illustrative).

Cost of inaction

Twelve months of manual bank downloads≈ €23,100
Three years of the same mid-morning answer≈ €69,300
One year of a €1.5 million precautionary buffer at an assumed 6% (illustrative)≈ €90,000

Buffers, not hours, are where this costs real money. A group unsure of its cash before half past ten keeps cushions in several companies, draws overdraft in one while cash idles in another, and learns about covenant headroom at the review. At an assumed 6%, a €1.5 million buffer costs €90,000 a year; the numbers are ours, the mechanism is yours to check. Meanwhile late-found debits are harder to recall, and a routine living in one spreadsheet cannot be audited or handed over.

Illustrative scenario

A plausible organisation with realistic proportions. The figures are there to be recalculated on your data; they are not a client result.

Organisation

A Central European construction group: general contractor, regional subsidiaries, a precast plant, a residential developer; 9 legal entities, about 1,800 employees, SAP S/4HANA (two acquired entities on a local package), Microsoft 365 E3, a treasury team of two.

Volume

23 bank accounts in 4 banks: operating accounts in PLN and EUR, split-payment VAT and escrow accounts, a cash-pool header, loan-servicing accounts; 22 working days a month.

Current process

Portal downloads pasted into Cash_daily.xlsx; outflows from the SAP payment proposal and two non-SAP payment lists, inflows from project controllers on request; the file reaches the CFO around 10:30.

Bottleneck

About 150 minutes of collection and pasting every working day, a position three hours old when read, no check of unexpected debits, covenant headroom computed monthly.

Solution

Unattended robots collect end-of-day and intraday statements (camt.053, camt.052, MT940, or portal export where a bank offers no files), read open items, the payment proposal and the treasury calendar, apply the rules and publish position, exceptions and 13-week view to Teams and Power BI by 07:30.

Potential outcome

In the modelled case the analyst spends 20 to 30 minutes on exceptions instead of 150 minutes on downloads, the CFO reads the position at 07:30 with intraday files included, and the 13-week view is refreshed daily. The figures are a model, not a measurement.

Proposed solution

Mientha delivers a scheduled, unattended cash-position process on the UiPath Platform and your Microsoft 365 tenant. Where a bank delivers camt.053 or MT940 files by host-to-host channel, SFTP or the SAP bank statement import, robots parse them; camt.052 intraday reports are pulled again before publication. Where a bank offers neither files nor an API, a robot with a technical user exports the data from the portal, subject to the bank's terms and authentication, confirmed per bank in discovery.

Expected flows come from where they already live: open items and the payment proposal from SAP; payroll and tax calendar, loan schedules, facility limits and covenant thresholds from a treasury workbook on SharePoint. A rule set then does what the analyst does in her head: restricted funds out of free cash, foreign currency at the group's rate table, flows by value date, every account checked against its minimum balance and debit threshold.

At 07:30 an Adaptive Card lands in the Treasury channel in Microsoft Teams: group free cash by currency, movement since yesterday, a table per company, the exceptions with their statement lines. A Power BI report pinned as a tab adds per-account detail, the 13-week view and covenant headroom over time. No language model is involved and the process never moves money; cash application is a separate solution on our site.

Native capabilities used

UiPath Orchestrator time triggers with a non-working-day calendar and the Azure Key Vault credential store; UiPath unattended Robots; UiPath Integration Service connector for Microsoft OneDrive & SharePoint; Power BI semantic model, scheduled refresh, data alerts, subscriptions, report tab in Microsoft Teams; Teams Workflows webhook trigger posting Adaptive Cards

What we build

Statement parsers, the collection workflow per bank with "not received" handling, the rule set (restricted accounts, minimum balances, debit thresholds, FX, covenant headroom), expected-flow extraction, the 13-week model, the Power BI report, card templates, the runbook

Custom integration

SAP S/4HANA reads through UiPath SAP activities (BAPI/OData); host-to-host or SFTP file pick-up; UI automation of portals without file delivery or API

How the automated process works

  1. AutomationAt 05:30 on working days an Orchestrator time trigger with the bank-holiday calendar starts the process, one queue item per account
  2. AutomationRobots collect camt.053 and MT940 files from host-to-host folders and SAP and parse them; for the portal-only bank, a robot signs in with the technical user and exports the data
  3. SystemRobots read open items and the payment proposal from SAP, and the calendar, loan schedule and non-SAP payment lists
  4. AutomationAt 07:00 camt.052 intraday reports are pulled again where offered; the rule engine then builds the position and flags exceptions
  5. AutomationThe data store is updated, Power BI refreshes, and at 07:30 the Adaptive Card is posted through the Workflows webhook
  6. PersonThe analyst works the exceptions from the card and records each explanation in the thread; the treasurer decides sweeps, drawdowns and FX
AutomationSystemPerson

Human-in-the-loop model

Automation handles

  • Collection of balances and statements from every account every working day, with retries and an explicit "not received" flag
  • Extraction of expected flows, consolidation, FX conversion, the 13-week roll-forward and exceptions delivered to Teams with evidence

People decide

  • Whether an unexpected debit is legitimate, and the sweeps, drawdowns and FX conversions the position makes visible
  • Thresholds, the account list and covenant parameters, and forecast assumptions no ledger contains

Before and after

BeforeAfter
Time the position is availablearound 10:3007:30 every working day
Analyst time on the daily routineabout 150 min20 to 30 min on exceptions (modelled)
Unexpected debits and covenant headroomnoticed if someone reads the lines; monthlyflagged on the 07:30 card with evidence

Systems and integrations

The stack is deliberately short: one engine, one execution layer, one place where a person decides.

Inputs

  • statement files camt.053, camt.052, MT940 (host-to-host, SFTP, SAP import)
  • e‑banking portals without file delivery
  • SAP S/4HANA open items and payment proposals
  • treasury workbook on SharePoint
  • non-SAP payment lists

Automation layer

  • UiPath Orchestrator
  • UiPath unattended Robots
  • UiPath Integration Service
  • UiPath SAP activities

Target systems

  • treasury data store (SharePoint workbook first, Azure SQL later)
  • Power BI semantic model and report
  • SharePoint statement archive

Human touchpoints: Adaptive Card at 07:30 in the Treasury channel in Microsoft Teams; exception cards; Power BI report tab and data alerts

statement files camt.053UiPath OrchestratorUiPath unattended Robotstreasury data storeAdaptive Card at 07:30 in the Treasury channel in Microsoft Teams

Technologies used

UiPath Robots + Orchestrator

unattended robots on a time trigger with a bank-holiday calendar; queues, credential store, retries, audit

A
UiPath Integration Service (Microsoft OneDrive & SharePoint connector)

reads the treasury workbook and payment lists, writes the daily data, archives statements

A
SAP S/4HANA (BAPI/OData via UiPath SAP activities)

open items, payment proposal, imported statements

A
Power BI (in Microsoft Fabric)

semantic model with scheduled refresh; daily cash and 13-week report; data alerts and subscriptions

A
Microsoft Teams (Workflows app, Adaptive Cards, Power BI tab)

the 07:30 card, exception cards and the report tab; Power Automate runs the webhook

A
Microsoft Excel (Excel Online on SharePoint)

the treasury workbook: calendar, loan schedules, facility limits, thresholds, explanations

A
Averified product capability (vendor documentation)

Illustrative economic model

Numbers you can check against your own data.

Illustrative model
22 working days × 150 minutes of daily consolidation= 55 h / month
55 h × €35 fully loaded hourly cost= €1,925 / month
× 12 months≈ €23,100 / year
Annual capacity released (illustrative)≈ €23,100

Illustrative inputs, not client measurements: 22 working days a month, 150 minutes (2.5 hours) of daily collection and consolidation for 23 accounts in four banks, €35 fully loaded hourly cost of a treasury analyst in Central Europe. Only the routine is counted, so the figure is conservative; the larger value, fresher decisions and smaller buffers, is illustrated under the cost of inaction.

Run the numbers on your data

hours released per month
of annual capacity released

An illustrative estimate from your own inputs. It models released capacity; it is not a promise of savings.

Business benefits

  • The position exists at 07:30 with intraday files included; 150 minutes of collection become 20 to 30 minutes of exception review (modelled)
  • Sweeps and drawdowns are decided on today's numbers, so a surplus in one company funds another the same morning
  • Unexpected debits, returned payments and balances under the minimum surface the same day with the statement line; restricted funds are never counted as free cash
  • The 13-week view is refreshed every working day, and adding an account is a line in a list

The management view

  • One daily number for the whole group, timestamped, with its sources and any bank that did not deliver
  • Covenant headroom and facility utilisation visible daily rather than computed at month end
  • Every exception carries who explained it and when; the audit trail sits in Orchestrator and SharePoint

Board-level KPIs

time of day the position is availableshare of accounts with same-day balancescovenant headroomidle cash versus overdraftforecast accuracy at 13 weeks

Security and governance

Control is not an add-on.

  • Bank access is read-only: portal users and SFTP credentials download statements and cannot create, release or approve payments; credentials sit in Azure Key Vault through the Orchestrator credential store
  • SAP access is a dedicated read-only service user; every job, retry and failure is logged in Orchestrator
  • Execution happens in one of two places you choose: UiPath Automation Cloud, EU region, or virtual machines you own; the statement files, the data store and the report never leave your Microsoft 365 tenant
  • The Treasury channel sits in a private team; the Power BI workspace is limited to treasury, the CFO and named deputies via Microsoft Entra ID groups; rule changes are versioned and approved by the treasurer

Why now

01

Every day of waiting is a day of decisions taken on stale numbers, and the routine itself absorbs about €1,925 of analyst time a month in the modelled case

02

ISO 20022 camt.053 and camt.052 statements are delivered by European banks alongside MT940, so the structured input a deterministic robot needs is widely available

03

The building blocks are verified and mostly licensed: Orchestrator time triggers with non-working-day calendars, Adaptive Cards through the Teams Workflows webhook without a premium licence, Power BI scheduled refresh; on Microsoft 365 E3 only Power BI Pro is added

Relevant executive roles

CFO

The morning number is on the phone before the day's decisions; covenant headroom is a daily figure, not a month-end calculation.

Group Treasurer

Sweeps, drawdowns and FX are decided on a complete position at 07:30; the team works on exceptions instead of downloads.

CIO

Bank connectivity, ERP reads and reporting run as governed, logged automations with read-only service accounts instead of personal tokens.

Common questions and objections

Our banks do not offer APIs. Can this work?

Most of the position comes from statement files: camt.053 and MT940 arrive by host-to-host channel, SFTP or the SAP import, and robots parse them without a bank interface. A portal-only bank is handled by a robot with a technical user, if the bank's terms allow it.

We already have SAP Cash Management. Why add robots?

If every entity, bank and statement is in one S/4HANA with Cash Management configured, we add only the Teams delivery and the exception rules. In most groups at least two entities, one bank or the payroll calendar sit outside SAP; the workbook bridges that gap.

Isn't the 13-week forecast a judgement?

The baseline is mechanical: open items by due date, payment proposals, payroll and tax calendar, loan schedules. The robot rebuilds it daily; the treasurer's judgement goes in as adjustments in the workbook, not into rebuilding the baseline.

When this is not the right solution

  • A single company with a few accounts in one bank, where the portal summary or SAP already answers the question
  • No reliable register of accounts and restricted balances yet, or main banks that do not deliver statements daily: the register comes first, and the robot is only as fresh as its inputs

A question for the next management meeting

At what time of day does the group know its cash position, how old are the balances behind it, and how much cushion do we carry because we are not sure?

Implementation approach

A scope without ambiguity, before anything is signed.

We deliver

  • Discovery of the account map: banks, accounts, currencies, purpose, file delivery per bank, the analyst's unwritten rules
  • Statement collection per bank: file pick-up, reuse of the SAP import, portal automation only where nothing else exists
  • The rule engine and the 13-week roll-forward, tested on three months of your daily workbooks
  • The Power BI report and the Treasury channel with the 07:30 card and exception cards
  • Runbook, Orchestrator monitoring and hand-over, including how to add an account

We need from you

  • The current daily workbook with three months of history and the latest 13-week forecast
  • The account list with bank, entity, currency, purpose and each bank's statement delivery
  • Read-only technical users for bank portals and SAP, the treasurer as process owner, the covenant definitions

Stages

Discovery and design

Account map, statement formats, rules, thresholds, card layout, access model

Build

Statement parsers, SAP reads, rule engine, Power BI report, Teams delivery

Validation

Parallel run against the analyst's workbook, every difference reconciled

Go-live and optimisation

The card replaces the email, the workbook stays as a fallback, then threshold tuning

Quick win when every bank delivers statement files; each portal automated instead, each extra ERP instance and currency adds effort.

At 10:30 the CFO finally sees a cash number built by hand since seven.

Send us your account list (bank, entity, currency, purpose) and one week of your daily workbook. We come back with a collection plan per bank, the rules we would automate and the economics on your figures.

Rebuild your morning cash number

The neighbouring process usually has the same problem

Industries we deliver this in most oftenManufacturing & industryRetail & e‑commerceServices & IT

Browse all 115 solutions