Power Automate for HR: how an HR team got leave, onboarding and deadlines out of the inbox

A service company with around 180 employees, Microsoft 365 for everyone, no HR system. Leave requests came by email, onboarding tasks lived in an Excel list, and one colleague knew from memory when each fixed-term contract ended. Three months later three flows ran in the company's own tenant, with standard connectors only, and the works council had seen every one of them on paper before it went live.

5.0 out of 5 · 15+ reviewsGoogleProvenExpertTrustpilotRead all
In short

Power Automate is the automation service in Microsoft 365. According to Microsoft's licensing documentation, Microsoft 365 licences include the right to build cloud flows with standard connectors; premium connectors and AI Builder are not included. In this project an HR team without an HR system built three processes with it: leave approval through a form with a manager approval step and an entry in the team calendar, the onboarding task list in Planner from a SharePoint entry, and a weekly deadline reminder for probation periods, fixed-term contracts and reference letters. I built them with HR and the Microsoft 365 admin in the company's own tenant. The works council (Betriebsrat, the elected employee representation) sat at the table from week one; the agreement was signed after three months.

Nick Schäfer, AI for HR teams, Frankfurt am Main
At a glance

The project in three months

No new system, no new licence, no data outside the tenant. The flows were built from week one together with HR, the admin and the works council; the agreement ran in parallel and took three months. Then the team ran alone.

0months
0routines
0team that carries on

Starting point

The company, a service provider with around 180 employees at two sites, had Microsoft 365 for everyone and nothing else for HR. An HR system had been evaluated twice and postponed twice because the budget was needed elsewhere. The HR team was two people. A leave request was an email to the manager with HR in copy, the team calendar was maintained by hand. For onboarding, HR opened the Excel list from the last new hire, copied the sheet and sent separate emails to IT, the department and reception. Probation periods, fixed-term contracts and promised reference letters sat in a spreadsheet one colleague reviewed on Mondays, when she was in.

The moment it tipped was a fixed-term contract. An employee's contract ended on a Friday, nobody had noticed, and she came to work on Monday as always. With that the employment became permanent, not because anyone had decided it, but because nobody had looked. The colleague with the spreadsheet had been off sick that week. In the same month a leave request sat for two weeks in the inbox of a manager who was also off sick, and the employee booked his trip without approval. The head of HR called me after she had explained both to the managing director.

At the first meeting the head of HR, the Microsoft 365 admin and the works council chair sat at the table. The admin said Power Automate had long been enabled in the tenant, nobody from HR had ever asked for it. The works council chair said a flow that records who approved what and when is a technical system, and he wanted to see every single one before it runs. I agreed to both: no new licence, no data outside the tenant, and no flow without his signature on the sketch.

Approach

Week one belonged to the stopwatch, as always. For one week both people in the HR team noted which task came how often, how long it took and which person it depended on. In parallel I settled with the admin which licence the HR accounts hold, where flows and lists may live and who may create them. At the end of the week three processes were at the top: the leave request, because it generated the most emails, onboarding, because it hung on an Excel list, and the deadlines, because they hung on one person. All three consisted of forwarding, reminding and entering.

In week two the first flow began, not on screen but on paper. The works council chair sat at the table, and we wrote the leave request down as a sketch: what triggers it, which fields it reads, who receives which message, where a human decides. Only when HR, the admin and the works council had signed off the sketch was it rebuilt in Power Automate, in the company's tenant, with an owner in the HR team. The employee fills in a form in Microsoft Forms, the flow looks up the manager in the directory, the manager approves or rejects with one click in Teams or Outlook. On approval an all-day entry appears in the team calendar, first name and dates only, no reason and no remark. Both receive the outcome, HR sees everything in one SharePoint list.

The snag came in the test with the first team. One request landed with a colleague who had not been a manager for a year. The flow had done nothing wrong; it read the manager field from Microsoft 365, and that field had not been maintained since the last reorganisation. Roughly every fifth account still showed the old manager. The admin and the head of HR updated the field for all accounts in two days, and since then it is part of every joiner and every team change. The lesson mattered more to the team than the flow itself: an automation is only as reliable as the directory it reads from.

Onboarding and deadlines followed the same pattern, sketch first, then flow. For onboarding, HR adds the new hire as an entry in the SharePoint list with first name, role, department, start date and manager, no contract data. The flow creates the house task list in Planner from it, with owners and due dates counted from the start date, and sends a summary of open tasks to HR and the manager seven days before day one. For the deadlines, the spreadsheet now lives as a SharePoint list with type, date, owner and status. Every Monday at eight the flow checks what falls due in the next six weeks and sends the overview to the HR mailbox. The team agreed two rules: every new contract gets an entry when it is created, and finished items are set to done, not deleted. None of the three processes needed AI Builder or premium connectors, and so it stayed that way.

The works agreement ran in parallel. Because every flow records who requested and approved what and when, it was clear that it is subject to co-determination. The text grew out of the signed-off sketches: which three flows run, which fields they read, who may see the lists and the run history, when they are deleted, and that every new flow is shown to the works council first. We defined the access rights on the SharePoint lists with the data protection officer: only HR writes, managers see only their own team in the calendar, the admin manages the environment and has no access to the contents of the lists. After three months the agreement was signed, the three flows ran in production, and the HR team maintained them with the admin without me.

Outcome

A leave request today is a form, one click by the manager and an entry in the team calendar that nobody makes by hand any more. If someone is off sick, no request sits in an inbox, because the request no longer starts in an inbox. Onboarding begins with an entry in the list, and IT knows on the day of signature when someone starts. On Mondays at eight the deadline list arrives, whether the colleague is in or not.

No new licence, no data outside the tenant; that was the condition, and it held. The works agreement names the three flows, the fields read, the access rights, the deletion periods and the procedure for new flows. At the six-month review the team presented a fourth process, the leaver with the return of devices and access rights, built with the admin on its own, sketch first, works council first. That it needed nobody from outside for that was the goal.

The frame

Built with the works council, settled by month 3

Power Automate in your own tenant answers the question of where data lives and the question of the licence. It does not answer the question of co-determination: a flow that records who approved what and when is a technical system. That is why the works council sat at the table from the first sketch.

0points settled
0months, in parallel
0new licences

Does this fit your company?

  1. You have Microsoft 365, but no HR systemThe most common case. The three flows do not replace an HR system, they take out the three processes that generate the most emails today. If a system arrives later, the lists remain as the data source.
  2. Your org chart in Microsoft 365 is not maintainedThen that is the first task, not the flow. An approval flow reads the manager from the directory, and it is only as reliable as that field.
  3. Your works council sees surveillance in every flowRightly so, because an approval log is a record of behaviour. That is exactly why the sketch is drawn on paper with them before anything is built.

Frequently asked questions

Do we need an extra licence for the three flows?

According to Microsoft's licensing documentation, Microsoft 365 licences include the right to create and run cloud flows with standard connectors. Forms, SharePoint, Outlook, Planner and approvals are among them. Premium connectors and AI Builder are not included and need their own licence. What is enabled in your tenant is settled in week one with your admin, not around them.

Why does a leave flow need a works agreement?

Because it stores who submitted which request when and who approved it when. That is a technical facility suited to monitoring behaviour, and under Section 87 (1) No. 6 of the German Works Constitution Act (BetrVG) it is subject to co-determination, even if nobody intends to monitor. Whether that applies in a specific case is for the works council and a lawyer to clarify, not me. In the project the agreement was a given from the start.

What happens after the three months?

The team owns the three flows, the lists sit in the HR site in SharePoint, the documentation per flow is one page, the review date is set. New flows go to the works council first. Whoever later wants to build the leaver process or the remaining-leave check does that in the next project.

How many hours do your HR routines take each week?

Three numbers, one result. The detailed calculation with every assumption arrives by email.

Hours tied up per week, estimated45 h
27 hof that freed up every week with clean routines, in my experience

The detailed breakdown shows every assumption.

3
5
6
Assumptions: 6 h per open role per week, 1 h per reference letter, 3 h of questions per HR headcount. Each one adjustable.

Thanks. The breakdown with your figures comes personally by email within one working day.

Shall we look at your routines?

30 minutes, directly with me. You describe what takes the hours, I tell you which three routines this tool carries in your team and what the works council will ask.

5.0 out of 5 · 15+ reviewsGoogleProvenExpertTrustpilotRead all