A Power Automate project · Insurance claims processing · Built on Microsoft 365
Power Automate Excel Online (Business) Office 365 Outlook OneDrive
🎯 The business problem
A claims team tracks cases in a spreadsheet while the core system catches up. When a claim's status changes, the claimant isn't told automatically — someone emails each person by hand. It's slow, the wording is inconsistent, and people get missed or emailed twice. I built seven flows that read the claims table, send the right message for each status, attach documents where needed, and write back so no claimant is contacted twice.
| Metric | Value |
|---|---|
| Flows built | 7 |
| Claim statuses handled | 6 |
| Connectors used | 3 |
| Sample claims | 24 (scales to 500) |
Table of Contents
Every claim sits in one of six states. The whole project hangs on this: each state deserves a different message. An approved claimant wants payout details; a rejected one needs appeal rights; someone with missing paperwork needs a nudge — not the same template.
Submitted → Under Review → Pending Documents → Approved / Rejected → Paid
.png)
Grouped into four problems. Each pair shows two ways to reach the same result — and why I'd choose one over the other in production. That trade-off is the real point.
Problem. Only claimants whose claim is Approved should receive the payout email — nobody else.
Approach. Two ways. 2A loops every claim and uses a Condition to decide per row. 2B filters at the source with an OData filter query (ClaimStatus eq 'Approved') so only approved claims are ever loaded.
Why it matters. Both send the same emails, but 2A processes all 24 rows to email 6; 2B pulls back only the 6 it needs. On a real book of thousands of claims, 2B scales and 2A doesn't — filtering at the source is the production-ready choice.

