Home · Solutions · Other solutions

Solution · Other solutions

The policy answer reaches the manager before the decision, not after the money moves

Expense approvals in Teams, policy check included

Every submitted report arrives in Teams with the policy check already done, and questions and cash advances run through the same card.

Quick winMicrosoft TeamsHuman in the loopAI where it earns its place
1,800expense reports a month wait for 60 approving managers at this illustrative distributor, and most of them are opened on the last working day.

Executive summary

Challenge

Approvals wait in email until month end, and the policy question gets answered after the click.

What changes

Nothing about the expense system changes and nothing new is bought.

Business value

Reimbursement gets faster because the decision happens where managers already work, not when a folder is opened at month end.

Systems involved

SAP Concur (approval decisions and comments); SAP S/4HANA (advance postings and clearing); Power BI

Business problem

Travel & expense

The expense system itself works. What breaks is the human layer around it. Approvals arrive as email notifications, so they compete with everything else in a manager's inbox and lose. When the manager finally opens a report, the screen shows amounts, dates and categories, but not the one thing that decides the answer: is this inside our policy? So managers approve on trust, or return a report with a one-line comment the employee disputes by email.

Employees cannot find the policy, or find a version and do not trust it. Questions go to colleagues, to finance and to the manager, and the answers vary by country and by who happens to reply. Finance answers the same twenty questions every month and files none of them; each inconsistent answer becomes an argument later, because people compare notes.

Cash advances sit outside the system entirely. Engineers travelling to a trade fair or an installation where cards are unreliable ask for money on a form, get a signature, receive a treasury transfer, and land in a spreadsheet that tries to remember who still owes what. Nobody owns the whole loop, because each of its three pieces is small enough to tolerate on its own.

How it works today

  1. PersonThe employee assembles the report in SAP Concur at the end of a trip and submits it
  2. SystemThe expense system emails the approving manager a notification with a link
  3. WaitingThe notification waits in the inbox, often until the last working day of the month
  4. PersonThe manager opens the report, sees amounts and categories, and applies policy from memory or not at all
  5. Risk of errorReports are approved on trust, or returned for reasons the employee could have been told at submission
  6. PersonPolicy questions go to finance, colleagues and the manager, and the answers differ between countries
  7. WaitingA cash advance is requested on a form, signed by hand, transferred by treasury and tracked in a spreadsheet
  8. SystemFinance audits a sample afterwards, so findings arrive when the money has moved
PersonSystemWaitingRisk of error

Why the current process costs more than it appears

Behind every exception is an hour nobody logged.

  • Reading a report is not deciding on one. A manager judging policy from amounts spends the minutes on comprehension rather than judgement, thirty times in one sitting.
  • Rework is built in. Reports come back for reasons that were knowable at submission, so the employee corrects, resubmits and waits another cycle, and the close waits with them.
  • Slow reimbursement lands hardest on the people who travel most: field staff fund company trips from their own accounts for two or three weeks, and remember it at the next salary conversation.
  • Bulk approval on the last working day is approval in name only, which is why the audit finding recurs; the control exists in the process map and not in the evidence.
  • Advances approved on paper are a cash exposure with no ageing report, and an open balance is usually discovered when the person who owed it hands in their notice.

Cost of inaction

Twelve months of approvals opened on the last working day≈ €77,760
The questions and the advances beside them, one year≈ €28,200
Eighteen more months of both at today's volumes≈ €158,940

Volume follows headcount and travel, and every new manager inherits the folder habit inside a quarter. Employee patience moves the other way: people who get an instant answer from a banking application do not accept three weeks and an unanswered chat, and this hits the field staff that is hardest to replace.

Advances are the quiet part. They accumulate in a spreadsheet nobody reconciles until somebody leaves with an open balance, and each audit finding about bulk approval produces a memo rather than a change. The cost is not one large number on a slide; it is 1,800 small delays a month, a policy nobody reads and a control that exists on paper.

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 medical devices distributor, 900 employees across four countries, 350 of them field sales and service staff who travel most weeks; SAP Concur for expenses, SAP S/4HANA as the ledger, Microsoft 365 as the workplace.

Volume

1,800 expense reports a month reach 60 approving managers; finance receives roughly 240 policy questions a month by email and chat; about 45 cash advances a month are requested by hand for trade fairs, installations and travel outside the card network.

Current process

Notifications arrive by email and are cleared in batches at month end. The 19-page policy sits on SharePoint and was last read in full by its author. Advances run on a form, a signature and a treasury spreadsheet.

Bottleneck

The approver sees the report last and knows least. The policy result does not exist at the moment of the decision, so the check happens afterwards in a finance sample.

Solution

Each submitted report is pre-checked by a robot; the manager receives a UiPath Action Center task in Microsoft Teams with the total, the largest lines, the verdict in plain words and one-click approve, return or reject. A conversational agent grounded in the policy answers eligibility questions with the clause quoted, and advances run through the same place.

Potential outcome

In the modelled case, manager time per approval falls from about five minutes to about two, most policy questions are answered without finance touching them, and open advances appear on one list with an age and an owner. The figures are a model, not a measurement.

Proposed solution

Nothing about the expense system changes and nothing new is bought. We move the decision, the policy answer and the advance into Microsoft Teams, and put the checking in front of the decision. A submitted report fires the UiPath Integration Service trigger for SAP Concur; a robot reads header, lines and receipt status, then runs a pre-check: country limits by category and per diem, missing receipts, dates with no trip behind them, duplicates against the employee's last three months.

The manager receives a UiPath Action Center task as an actionable notification in Teams. The card carries the total, the three largest lines, the verdict in one readable sentence with the clause it rests on, and three buttons: approve, return with the flagged reason, reject. The robot writes the decision back in the approver's name and records it in UiPath Orchestrator with the pre-check attached, so an approval given despite a flag is visible as exactly that.

The other two flows share the surface. A UiPath conversational agent published as a Teams app, grounded with UiPath Context Grounding in the policy and its country supplements on SharePoint, answers eligibility questions and quotes the passage it used; below a confidence threshold it hands over to finance rather than guessing. An advance is requested through the same agent, approved as another Action Center task, posted to the employee's SAP account, and cleared against the report that follows the trip.

The stack stays small on purpose: one execution layer, one approval surface, one policy index. AI is used at exactly one step, answering a written question from a written policy, and every answer carries the passage it came from.

Native capabilities used

UiPath Action Center tasks as actionable notifications in Microsoft Teams; UiPath Integration Service connectors for SAP Concur and Microsoft Teams; UiPath conversational agents published as a Teams app; UiPath Context Grounding over SharePoint; UiPath Orchestrator triggers, queues, credential stores and audit; Microsoft Entra ID sign-in for approver identity

What we build

The pre-check rule set and the plain wording of its verdict, the task card and its actions, the write-back, the advance request, posting and clearing logic, the agent's topics, hand-over rules and tested answers, and the Power BI reporting

Custom integration

Advance postings and clearing in SAP S/4HANA through UiPath SAP activities (BAPI/OData); Connector Builder for any expense-system operation the standard connector misses

How the automated process works

  1. AutomationA submitted report triggers the flow; the robot reads header, lines and receipt status
  2. AutomationThe pre-check applies the rule set: country limits, required receipts, dates against the travel calendar, duplicates against recent claims
  3. SystemThe result becomes an Action Center task and reaches the manager as an actionable notification in Microsoft Teams
  4. PersonThe manager approves, returns with the flagged reason, or approves with a written justification where the exception is warranted
  5. AutomationThe decision is written back in the approver's name and logged with the pre-check attached
  6. AutomationA policy question in Teams is answered from the current policy with the clause quoted; below the confidence threshold it goes to finance
  7. SystemAn advance requested in Teams becomes a manager task, then an SAP posting to the employee account, then a clearing against the later report
  8. AutomationPower BI refreshes approval age by manager, ranked return reasons and advances older than 60 days
AutomationSystemPerson

Human-in-the-loop model

Automation handles

  • Reading every submitted report, its lines and receipt status
  • The policy pre-check, including duplicates across the employee's recent claims
  • The Teams task, the write-back and the audit record behind both
  • Policy answers with a quoted clause; the posting and clearing of advances

People decide

  • Every approval, return and rejection
  • Exceptions to policy, recorded with a written justification, not a silent click
  • The treasury release of an approved advance
  • The content of the policy and its country supplements

Before and after

BeforeAfter
Manager time per approvalabout 5 minabout 2 min
When the policy check happensafter approval, in a finance samplebefore the click, on the card
Where the decision is takenan email opened at month enda Teams task the day the report arrives
Answer to a policy questiona colleague's memory, days laterthe current policy, clause quoted
Cash advancesform, signature, spreadsheetrequested, approved, posted and cleared in one flow

Systems and integrations

We do not add technology to make an architecture look serious. Every element below has a specific job in this process.

Inputs

  • SAP Concur submitted-report events
  • the expense policy and country supplements on SharePoint
  • advance requests raised in Microsoft Teams

Automation layer

  • UiPath Orchestrator
  • UiPath Robots
  • UiPath Integration Service
  • UiPath Action Center
  • UiPath Agents
  • UiPath Context Grounding

Target systems

  • SAP Concur (approval decisions and comments)
  • SAP S/4HANA (advance postings and clearing)
  • Power BI

Human touchpoints: Action Center tasks in Microsoft Teams; the conversational agent in Teams; the finance escalation queue

SAP Concur submitted-report eventsUiPath OrchestratorUiPath RobotsSAP ConcurAction Center tasks in Microsoft Teams

Technologies used

UiPath Integration Service (SAP Concur and Microsoft Teams connectors)

triggers on a submitted report, reads lines and receipt status, writes the decision back

A
UiPath Robots + Orchestrator

run the pre-check, hold queues, triggers, credentials and the audit record

A
UiPath Action Center

approval, return and advance tasks completed as actionable notifications in Teams

A
Microsoft Teams

the single surface for decisions, questions and advance requests

A
UiPath Agents (conversational agent published as a Teams app)

answers eligibility questions, takes advance requests, escalates to finance

A
UiPath Context Grounding

indexes the policy and country supplements on SharePoint so answers quote a clause

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

posts approved advances and clears them later

A
Power BI

approval age by manager, ranked return reasons, ageing open advances

A
Averified product capability (vendor documentation)

Illustrative economic model

What it is worth, with the arithmetic shown.

Illustrative model
1,800 expense reports a month × 3 minutes of manager time released= 90 h / month
90 h × €72 fully loaded manager cost= €6,480 / month
× 12 months≈ €77,760 / year
Annual manager capacity released (illustrative)≈ €77,760

Managers are the expensive half of this loop, so they are the only half inside the calculator: 1,800 reports a month, three minutes less on each once the policy result arrives with it (about five minutes today against two), at €72 an hour fully loaded. The finance side carries a different rate, so it sits outside the box: 240 policy questions at ten minutes and 45 advances at 25 minutes are 58.75 hours a month at €40, roughly €2,350 a month or €28,200 a year. None of it was measured at a client.

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

  • Reimbursement gets faster because the decision happens where managers already work, not when a folder is opened at month end
  • Returned reports fall, because employee and manager see the same policy result at the same moment
  • Policy answers stop depending on who replies first: the agent reads the document current today and quotes the clause
  • The approval becomes a control that can be evidenced, with the check in front of the decision and both recorded together
  • Cash advances leave the spreadsheet: requested, approved, posted and cleared in one flow with an ageing list
  • Finance gets the edges of its month back, because the twenty questions that repeat every month stop arriving as email

The management view

  • Approval age becomes a service level readable by manager and by country, which is usually enough on its own to change behaviour
  • Return reasons rank themselves, so the clauses people misread are identified rather than guessed at in the next training deck
  • Every decision, an approval given despite a flag included, is held with its pre-check result, so audit questions are answered from a log
  • Open advances appear as one list with an age and an owner, instead of a spreadsheet reconciled when somebody remembers

Board-level KPIs

median approval ageshare of reports returned and the leading return reasonfirst-answer resolution of policy questionsadvances open beyond 60 daysout-of-policy value stopped before payment

Security and governance

The automation holds exactly the rights it needs, and not one more.

  • The robot's service account may read reports and record a decision for the named approver; it holds no approval right of its own, and the approver's identity comes from the Teams sign-in through Microsoft Entra ID
  • Requester, approver and treasury release stay three different people, and the flow enforces that sequence rather than trusting it
  • Secrets sit in the UiPath Orchestrator credential store or an external vault such as Azure Key Vault, and every robot action reaches the Orchestrator audit record with the pre-check attached
  • The agent is grounded only in approved policy documents; the UiPath AI Trust Layer restricts which models may be used, masks personal data and logs prompts and answers
  • Receipt images and personal data stay in the expense system: the Teams card carries amounts, flags and a link, never the document
  • UiPath Automation Cloud runs in its EU region, Teams and SharePoint stay inside the Microsoft 365 EU Data Boundary, and Microsoft Purview holds the audit on the Microsoft side

Why now

01

Field staff are the hardest group to keep, and reimbursement speed is one of the few levers finance controls directly; the modelled €6,480 a month of manager time is the smaller half of that argument

02

Expense systems now publish events, so the trigger is immediate rather than a nightly export, and the task can be placed where the decision is actually taken

03

Grounded answers with a quoted clause, a confidence threshold and a hand-over to a person are mature enough for eligibility questions: a narrow, checkable use of AI rather than a general assistant

Relevant executive roles

CFO

An approval control that operates before the money moves, and advances that carry an age and an owner

Finance Director

Fewer returned reports, fewer repeated questions, and approval time that can be measured by manager and by country

Sales Director

Field teams stop financing company travel themselves, and stop losing selling days to policy arguments

Common questions and objections

Our expense system already has a mobile approval app.

It does, and adoption is usually low because the notification still arrives without the policy answer. What changes here is the content, not the channel: the decision arrives with the check done, in the application managers keep open all day.

Advances are rare, so why automate them?

Rare and manual is exactly where control fails, because nobody reconciles what nobody tracks. The volume is small; the open balance discovered when somebody resigns is not.

Our policy changes too often for an agent.

The agent reads the document current on the day the question is asked, so a change takes effect as soon as the file is republished. That is more than can be said for a colleague's recollection of last year's rules.

When this is not the right solution

  • A few hundred reports a month with a handful of approvers who already decide within days
  • Teams is not the working channel here, in which case the task lands in an application nobody opens
  • No maintained policy document exists, so the agent has no source of truth; writing the policy comes first
  • A replacement of the expense system is under way; waiting for its events and permission model is cheaper

A question for the next management meeting

When our managers approved last month's expense reports, what did the screen in front of them say about policy, and on which day of the month did most of those clicks happen?

Implementation approach

What we deliver, and what we need from you to start.

We deliver

  • An analysis of three months of approval timestamps, return comments and the policy questions in the finance mailbox
  • The pre-check rule list, agreed with finance and worded so a manager reads the verdict in one line
  • The Action Center task, its delivery in Teams and the write-back of the decision
  • The conversational agent, its Context Grounding index over the policy and supplements, and a tested answer set
  • The cash-advance request, the manager task, the SAP posting and the clearing against the later report
  • Power BI reporting on approval age, return reasons and open advances, with onboarding material for managers

We need from you

  • Three months of report history with approval timestamps and return comments
  • The expense policy and its country supplements, in the version finance considers authoritative
  • An administrator for the expense system and a named policy owner in finance
  • Technical accounts for the expense system and for SAP test and production, plus a test tenant

Stages

Discovery

Approval timestamps, return reasons and the real question list from the finance mailbox

Rule design

The pre-check written with finance: thresholds, wording, and where it must escalate

Pilot

One country and ten managers, the pre-check advisory at first and then the approval path

Rollout

The remaining countries and their supplements, then the cash-advance flow

Run

Monitoring in Orchestrator, a monthly review of return reasons, a change process for the policy

Quick win. Effort is driven by the number of country supplements, how cleanly the expense system exposes its events and its approval step, and whether advances are in scope from the start.