Home · Solutions · Management & planning

Solution · Management & planning

Every approved hour reaches an invoice in the month it was worked

From project hours to the invoice

Hours are chased and approved in Teams, priced from the contract, and turned into ERP invoice drafts with their own evidence pack; finance reviews the billing instead of rebuilding it.

DepartmentalMicrosoft TeamsHuman in the loopDeterministic automation
190client invoices a month leave this illustrative consultancy, and each one is assembled by hand from the time system, the contract and two spreadsheets.

Executive summary

Challenge

Consultants log hours late, finance rebuilds the billing in Excel, and invoices leave three weeks after the work.

What changes

We build the billing chain as one flow that starts in the working week, not on the billing date.

Business value

Invoices leave within days of the period close, so the payment term runs against recent work and cash arrives a cycle earlier.

Systems involved

SAP S/4HANA billing documents with attachments; the SharePoint billing archive; the Power BI semantic model

Business problem

Professional services economics

A services business turns time into revenue, and the invoice is where that conversion becomes real. Everything that decides the amount sits somewhere else: hours in the time system, the rate card in the CRM or a spreadsheet, the cap and milestone schedule in a signed contract, recharged costs in the ERP. Billing is the monthly act of joining those four sources by hand.

The joining is slow because the inputs arrive late. Consultants submit hours when a reminder reaches them, project managers approve shortly before the billing date, and finance starts once the approvals stop moving. By then a line that looks odd is billed as it stands or dropped.

The cost is not confined to finance. Project managers lose an evening to approvals they cannot check, account managers answer queries they cannot evidence, and the CFO sees two numbers: work in progress visible only at month end, and days sales outstanding starting three weeks after delivery.

At a few hundred active projects the variety matters more than the volume. Time and materials, capped engagements, retainers with a monthly draw-down, fixed-fee milestones and pass-through costs each bill differently, and every large client wants its backup in its own format.

How it works today

  1. PersonConsultants fill in timesheets at the end of the week, or on the Monday after a reminder; some fill in a month at once
  2. WaitingProject managers approve in batches, days before the billing date, because that is when someone asks
  3. PersonFinance exports approved hours and joins them to the rate card, the CRM terms and terms that exist only in the signed PDF
  4. PersonRecharged expenses and subcontractor costs come from a second export, marked billable or absorbed by project
  5. SystemDrafts are typed into the ERP and the backup assembled by hand: a timesheet extract, receipts, sometimes a milestone certificate
  6. WaitingDrafts wait for the engagement lead; a queried line goes back to the project manager by email and returns days later
  7. Risk of errorHours that miss the cut-off are carried to the next cycle, and a share is never billed
  8. PersonClient queries arrive weeks later, and the evidence for one line is rebuilt from the same exports
PersonWaitingSystemRisk of error

Why the current process costs more than it appears

Behind every exception is an hour nobody logged.

  • Late hours are a cash problem before a discipline problem. Work approved after the cut-off waits a full cycle, so the company finances it another month and the payment term starts later than the contract intended.
  • Rebuilding the billing file each month costs more than the hours it consumes, because the rebuild is where mistakes enter: a superseded rate, an expense recharged twice, a cap already reached.
  • Write-offs are decided quietly. When a line cannot be evidenced in the time available, dropping it is cheapest, and because nobody records the reason the same leak returns.
  • Disputes cost more than their number suggests. One queried line holds a five-figure invoice for weeks while people search exports for the day, the person and the task behind it.
  • Contract knowledge sits with whoever negotiated the engagement. When that person moves on, the billing rules are reconstructed from the PDF, usually after a complaint.

Cost of inaction

Twelve billing cycles at today's pace≈ €164,160
Three years of the same month-end rebuild≈ €492,000
If the practice grows to 240 invoices a month, per year≈ €207,000

The calendar can stay as it is without anything visibly failing. The billing week returns every month and work in progress is explained after the fact. What compounds is the cash: an invoice issued three weeks after the work carries those three weeks into days sales outstanding for the life of the engagement, and at this volume that is a permanent working-capital position funded for clients.

The second cost is the one nobody books. A write-off taken because a line could not be evidenced, an hour that missed a cut-off, a rate left at last year's level: all of it leaves as revenue earned and never charged.

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 European engineering consultancy, about 800 billable engineers and consultants in four countries, SAP S/4HANA for finance and project accounting, a CRM holding contracts and rate cards, Microsoft 365 E3 with Teams as the daily environment.

Volume

190 client invoices a month across roughly 340 active projects: time and materials, capped engagements, monthly retainers, fixed-fee milestones, and recharged travel and subcontractor costs on most.

Current process

Hours are recorded in the ERP time module and approved in batches. Two people in finance join them in Excel to rate cards, contract terms and cost postings, type the drafts into the ERP and assemble each client's backup by hand.

Bottleneck

About two hours of preparation per invoice, concentrated into five days a month, plus chasing that nobody records. Unbilled work is visible only once the period closes.

Solution

Reminders and approvals run in Teams during the week; robots price approved hours against contract terms held in the CRM and the ERP, rebuild the unbilled report nightly, create invoice drafts with attachments and assemble each client's billing pack.

Potential outcome

In the modelled case, billing preparation becomes a review of exceptions, invoices leave within three working days of the period close instead of around the twentieth, and unbilled work is a daily figure. These are modelled figures built on the assumptions of the illustrative model.

Proposed solution

We build the billing chain as one flow that starts in the working week, not on the billing date. A robot compares submitted hours against each person's working calendar and posts a Teams card naming only their missing days. Project managers approve their project's hours in the Microsoft Teams Approvals app, with the contract type, remaining cap and value released on the card.

Once hours are approved, pricing is a rule rather than a judgement. Robots read the rate card, cap, retainer balance, milestone schedule and recharge rules from the CRM and the ERP, apply them to the approved lines and set aside anything unpriceable with a reason code: an unmapped role, an expired rate, an expense above policy. The nightly output is an unbilled and work-in-progress report by client, project, engagement type and age, in a workbook for the billing team and a Power BI model for management.

On the billing date the same rules produce invoice drafts in the ERP with the evidence attached: the approved timesheet extract, the receipts, the milestone certificate, in the format each client's accounts payable expects. The engagement lead releases, holds or writes off each draft from a card in Teams, and when a client questions a line the robot rebuilds its evidence and approval trail into a dispute file the same day. Mientha bills project time itself, so none of these exceptions are theoretical to us.

Native capabilities used

Microsoft Teams Approvals app and Workflows with Adaptive Cards; Power Automate scheduled flows and approvals; UiPath Orchestrator queues, time triggers and audit log; UiPath Integration Service connectors for Microsoft Teams and Microsoft OneDrive & SharePoint with Excel Online activities; UiPath SAP automation with the SAP BAPI and OData connectors; Power BI semantic models

What we build

The billing rule layer (rates, caps, retainer draw-down, milestone triggers, recharge rules, cut-off calendar), missing-hours detection and escalation, the nightly unbilled report, invoice drafts with their evidence pack, client billing pack templates, the dispute file and the DSO and WIP dashboard

Custom integration

Contract terms and rate cards read from the CRM through the UiPath Integration Service connector for Microsoft Dynamics 365 CRM or Salesforce, or a REST endpoint where the CRM is not covered; an extract for a time module with no API

How the automated process works

  1. AutomationMidweek and again on Monday a robot compares submitted hours with each person's working calendar and posts a Teams card naming the missing days
  2. PersonProject managers approve their project's hours in the Teams Approvals app, with the contract type, remaining cap and value released in view
  3. AutomationApproved hours are priced against rate cards, caps, retainer balances, milestone triggers and expense rules from the CRM and the ERP; unpriceable lines carry a reason code
  4. AutomationEvery night the unbilled report is rebuilt by client, project, engagement type and age into the workbook and the Power BI model
  5. SystemOn the billing date robots create the ERP invoice drafts, attach the timesheet extract, receipts and milestone certificate, and assemble each client's billing pack
  6. PersonThe engagement lead releases, holds or writes off each draft from a card in Teams, with the write-off reason recorded
  7. AutomationReleased invoices are posted and sent through the ERP's own channel; the pack is filed on SharePoint against the invoice number
  8. AutomationWhen a client queries a line, the robot rebuilds its evidence and approval trail into a dispute file for the account manager
AutomationPersonSystem

Human-in-the-loop model

Automation handles

  • Missing-hours detection, reminders and escalation to the project manager, then the delivery lead
  • Pricing approved hours against rate cards, caps, retainer balances, milestone triggers and recharge rules
  • The nightly unbilled report, invoice drafts, attachments and client billing packs
  • Assembling dispute evidence from the approval trail and filing every pack against its invoice

People decide

  • Whether the hours booked to a project are correct, which stays with the project manager
  • Whether each draft is released, held or partly written off, within the engagement lead's limits
  • Departures from the contract: goodwill discounts, out-of-scope work, a milestone billed early
  • Rate cards and billing rules, owned and versioned by the commercial team

Before and after

BeforeAfter
Billing preparation per invoiceabout two hoursminutes, with review where a rule flags a line
Timesheet approvalin batches before billingweekly, from a card naming the missing days
Invoices sentaround the twentiethwithin three working days of the period close
Unbilled work older than a monthfound at month endvisible every morning by client and project
Evidence for a disputed linerebuilt from exports, days laterfrom the approval trail, same day

Systems and integrations

Everything below runs on licences and systems you already hold, or would need anyway.

Inputs

  • time entries from the ERP or time-recording tool
  • expense and subcontractor postings in SAP
  • contract terms and rate cards in the CRM
  • contracts and milestone certificates on SharePoint

Automation layer

  • UiPath Orchestrator
  • UiPath Robots
  • UiPath Integration Service
  • Power Automate

Target systems

  • SAP S/4HANA billing documents with attachments
  • the SharePoint billing archive
  • the Power BI semantic model

Human touchpoints: Teams Approvals for weekly hours; an Adaptive Card in Teams for invoice release; the dashboard as a Power BI tab in Teams

time entries from the ERPUiPath OrchestratorUiPath RobotsSAP S/4HANA billing documents with attachmentsTeams Approvals for weekly hours

Technologies used

UiPath Robots + Orchestrator

run the weekly, nightly and billing-date jobs; queues, retries, audit log

A
UiPath Integration Service (Microsoft Teams, Microsoft OneDrive & SharePoint connectors)

posts Teams cards, writes the workbook, files billing packs

A
Microsoft Teams (Approvals app, Workflows app with Adaptive Cards)

hour approvals, missing-hours reminders, the release card

A
Power Automate

schedules the reminder and approval flows and routes escalations

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

reads time, project and cost postings; creates draft billing documents with attachments

A
CRM (Microsoft Dynamics 365 CRM or Salesforce) via UiPath Integration Service

contract terms, rate cards, caps, retainer balances, milestones

A
Microsoft Excel (Excel Online activities)

the unbilled and work-in-progress workbook

A
Power BI

the DSO, WIP and billing-cycle dashboard, as a tab in Teams

A
Averified product capability (vendor documentation)

Illustrative economic model

A model, not a promise.

Illustrative model
190 invoices a month × 120 minutes of billing preparation= 380 h / month
380 h × €36 fully loaded hourly cost= €13,680 / month
× 12 months≈ €164,160 / year
Annual capacity released (illustrative)≈ €164,160

Assume nothing here was measured at a client; every input is stated and arguable. Two hours of preparation per invoice is a conservative average across a simple retainer and a capped engagement with forty consultants: the export, the joining, the checks, the draft and the backup, but not chasing or disputes. €36 is a fully loaded hourly cost for finance and project-management time in Europe. The model counts capacity released, not headcount removed.

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

  • Invoices leave within days of the period close, so the payment term runs against recent work and cash arrives a cycle earlier
  • Unbilled work stops ageing out of sight: each project shows what is approved, priced and waiting for a decision
  • Billing preparation becomes a review of exceptions, and the five days a month it occupies come back to finance
  • Revenue leakage narrows because rates, caps and recharge rules come from one table, and every write-off is a recorded decision
  • Client queries are answered the same day with the approval trail attached
  • Growth adds invoices without adding billing effort: the run takes the same time at 190 invoices and at 300

The management view

  • The unbilled position is a daily number by client, project and age, not a month-end reconstruction
  • Billing discipline becomes measurable: who approves on time, which projects bill late, which contracts generate exceptions
  • Rules are visible and owned by the commercial team, so a rate change takes effect in the next run
  • The process survives holidays and a new billing manager, because it is written as rules, not practised as a routine

Board-level KPIs

unbilled work in progress in days of revenuedays from period close to invoice sentrealisation against standard ratestimesheet compliance at the deadlinedays sales outstanding

Security and governance

Security is designed with the process, not after it.

  • Billing documents are created in draft only; the robots hold their own ERP and CRM accounts, able to read time and contract data
  • Releasing an invoice stays a human action logged against a named person, and approving hours is a separate right held by someone else
  • Rate cards and contract terms are read and never written back; the version used in each run is stored with that run
  • A consultant's reminder shows only their own missing days, and project views follow the membership of the project's Teams channel
  • The automation runs in UiPath Automation Cloud's EU region; the time entries, contracts and billing packs stay in your Microsoft 365 tenant and your ERP

Why now

01

A services business has two levers on margin: the rate it agrees and the share of worked time it bills. The second is administrative, and in the model it absorbs €13,680 a month

02

Payment terms count from the invoice, not from the work. Directive 2011/7/EU frames business-to-business terms in the EU, so late invoicing gives away financing inside an agreed term, and structured issuance through KSeF in Poland raises the bar on billing data as well

03

The parts are native now: approvals and cards in Teams, scheduled flows in Power Automate, ERP billing documents through standard interfaces, a Power BI model on top. Only the rule layer is yours alone

Relevant executive roles

CFO

Cash conversion begins at the invoice date; this shortens the distance between work delivered and cash due, and makes unbilled work a daily figure

COO

Project managers approve hours in minutes inside Teams instead of an evening on a batch, and delivery stops carrying the blame for a billing calendar it cannot see

CIO

Standard interfaces to the ERP and the CRM, one rule table under change control, no billing logic on a shared drive

Common questions and objections

We already have a time-recording system.

So does every company in this position. The time system records hours; it does not price them against a cap, a retainer balance or a milestone, and it does not build the invoice or its backup. This flow sits between the two and leaves both in place.

Every client wants their backup in a different format.

That is a template question rather than an automation question. We build one pack per format and attach the right one from the client record, so a new format is a new template, not a code change.

Won't this simply automate a rate card that is already wrong?

It will make it visible, which is usually the first result of discovery. Contracts whose terms exist only in a signed document become a decision for the commercial team first.

When this is not the right solution

  • Fewer than roughly forty invoices a month with one contract type and a stable cut-off, where an ERP template and a calendar cost less than automation
  • Contract terms exist only in signed documents and no system holds a rate card, so the contract register comes first: the rules have nothing to read
  • The business is entirely fixed-price with no time-based billing, where the value sits in the work-in-progress view rather than the billing run

A question for the next management meeting

Take the last hour worked in a period and the invoice that bills it: how many days lie between them, and what is that gap worth at our cost of working capital?

Implementation approach

The first week looks the same at every client: we look at the data.

We deliver

  • One billing cycle walked from timesheet to invoice: contract types, where rate cards live, the cut-off calendar, exception categories
  • The billing rule layer as a table your commercial team can read and change: rates, caps, retainer draw-down, milestone triggers
  • The Teams layer: missing-hours reminders, project approvals, escalation to the delivery lead, the release card
  • Robots that price approved hours, rebuild the unbilled report nightly and create ERP invoice drafts with attachments
  • Client billing pack templates, the SharePoint archive and the dispute file built from the approval trail
  • The DSO and WIP dashboard in Power BI, as a tab in the billing team's Teams channel

We need from you

  • Three months of time entries with their approvals and the invoices raised from them
  • Contract terms for a representative set of clients: rates, caps, retainers, milestones, expense rules
  • A process owner in finance and a delivery lead who can decide the exception rules
  • Technical accounts for the ERP, the CRM and the Teams workspace

Stages

Discovery

One billing cycle mapped end to end with finance, delivery and commercial

Design

Rule table, cut-off calendar, release thresholds, billing pack formats, security model

Build

Robots, Teams approvals, ERP drafts with attachments, the nightly report and the dashboard

Validation

Parallel run against a closed month, line by line, signed off by the billing team

Go-live

One country or practice first, supervised through a full cycle, then the rest

Departmental. Effort is driven by the number of contract types and billing pack formats, by whether rate cards and caps exist in a system or only in signed documents, and by how your ERP creates billing documents.

Month-end arrives and two people rebuild 190 invoices by hand in five days.

Give us one billing cycle: hours by approval date, the invoices raised from them, and your contract types. We come back with where the days go and a first draft of your billing rules as a table.

Walk us through one billing cycle

The neighbouring process usually has the same problem

Industries we deliver this in most oftenManufacturing & industryServices & IT

Browse all 115 solutions