Build a Reminder Flow for Expiring Policies: Step-by-Step Setup
🔍 WiseChecker

Build a Reminder Flow for Expiring Policies: Step-by-Step Setup

You need to send automated reminders to employees when their signed policy documents are about to expire in SharePoint. Manually tracking expiration dates across hundreds of documents is error-prone and time consuming. Power Automate can handle this task by scanning a SharePoint list or library for upcoming expiration dates. This article explains how to build a reminder flow that checks for expiring policies and sends email notifications at a set interval before the expiration date.

Key Takeaways: Building a Policy Expiration Reminder Flow

  • Power Automate > Scheduled cloud flow: Runs daily to check a SharePoint list for items expiring within a set number of days.
  • SharePoint list column of type Date and Time: Stores the policy expiration date and must be present for the flow to filter correctly.
  • Send an email action: Sends a reminder to the policy owner or a manager list column when the expiration date is near.

ADVERTISEMENT

How the Reminder Flow Works

The flow uses a scheduled trigger to run once per day. It queries a SharePoint list for items where the expiration date falls within a defined window, such as 30 days from today. For each matching item, the flow sends a custom email to the person listed in the policy owner field. The flow also updates a status column on the list item to show that a reminder was sent. This approach prevents duplicate reminders for the same item.

Before you build the flow, confirm that your SharePoint list has the following columns:

  • Title – Single line of text (default). Contains the policy name.
  • ExpirationDate – Date and Time column. Stores the date the policy expires.
  • PolicyOwner – Person or Group column. Contains the email address of the person who receives the reminder.
  • ReminderSent – Yes/No column. Set to Yes after the first reminder is sent.

You can use different column names, but you must adjust the flow steps to match those names. The flow requires a SharePoint connection and a Microsoft 365 work or school account with Power Automate access.

Steps to Create the Scheduled Reminder Flow

  1. Sign in to Power Automate
    Go to make.powerautomate.com and sign in with your Microsoft 365 credentials. Select the environment that contains your SharePoint site.
  2. Create a new scheduled cloud flow
    In the left navigation, click Create. Then click Scheduled cloud flow. Name the flow Policy Expiration Reminder. Set the schedule to repeat every 1 day. Choose a start time that does not overlap with heavy server load, such as 2:00 AM. Click Create.
  3. Add a Get items action
    Click the + button under the trigger and select Add an action. Search for SharePoint and select Get items. Provide the site address and list name. In the Filter Query field, enter the following OData filter:
    ExpirationDate le '@{addDays(utcNow(),30)}' and ExpirationDate ge '@{utcNow()}' and ReminderSent eq 0
    This filter returns items where the expiration date is within the next 30 days and where no reminder has been sent yet. Adjust the number 30 to your preferred reminder window.
  4. Add an Apply to each control
    Click the + button under the Get items action. Search for Apply to each and select it. In the Select an output from previous steps field, add the value dynamic content from the Get items action. This control loops through each matching item.
  5. Add a Send an email action
    Inside the Apply to each loop, click Add an action. Search for Send an email and select Send an email (V2). In the To field, add the dynamic content PolicyOwner Email from the SharePoint list. In the Subject field, type Policy Expiration Reminder: and then add the dynamic content Title. In the Body field, write a message such as:
    This is an automated reminder. The policy titled '{Title}' expires on {ExpirationDate}. Please review and renew the policy before the expiration date.
    Use the correct dynamic content tokens for your column names.
  6. Add an Update item action to mark the reminder as sent
    After the Send an email action, click Add an action. Search for Update item and select it. Provide the same site address and list name. In the Id field, add the dynamic content ID from the SharePoint list. Set the ReminderSent column to Yes. This prevents the flow from sending a second reminder for the same item.
  7. Save and test the flow
    Click Save in the top-right corner. After saving, click Test. Choose Manually and then click Test. The flow will run once. Check the email inbox of the policy owner to confirm the reminder was sent. Also verify that the ReminderSent column changed to Yes in the SharePoint list.

ADVERTISEMENT

Common Issues and How to Avoid Them

Flow runs but no emails are sent

The filter query may not match any items. Verify that the ExpirationDate column contains dates in the future and that the ReminderSent column is set to No for those items. Check the OData filter syntax. A common mistake is using single quotes incorrectly. Use the expression addDays(utcNow(),30) without extra quotes inside the expression builder.

Email is sent to the wrong person

Confirm that the PolicyOwner column contains a valid person entry. If the column is empty or contains a name that does not resolve to an email address, the flow will fail. Use the Compose action to output the email address before sending to verify the value.

ReminderSent column is not updated

The Update item action must use the correct column internal name. If you renamed the column after creating it, the internal name may differ. Open the list settings and check the internal name of the column. Use that name in the Update item action instead of the display name.

Flow sends multiple reminders for the same item

This occurs when the Update item action fails or runs outside the Apply to each loop. Ensure the Update item action is inside the loop and that the ReminderSent column is correctly set to Yes. Also check that the filter query includes ReminderSent eq 0.

Scheduled Flow vs Instant Flow for Policy Reminders

Item Scheduled Cloud Flow Instant Cloud Flow
Trigger Runs automatically at a set time (daily, hourly) Runs when a user clicks a button or manually triggers it
Best use case Recurring checks for expiring policies across many items On-demand reminder for a single policy or one-time check
Setup complexity Requires OData filter and date math expressions Simpler, but requires manual initiation each time
Scalability Handles hundreds of items without user intervention Limited to individual items or small batches

You can now build a scheduled flow that automatically checks for expiring policies and sends email reminders. Start by creating the required SharePoint columns and then follow the seven steps to set up the flow. For more advanced scenarios, add a second reminder at 7 days before expiration by duplicating the flow with a different filter window. Use the Terminate action to stop the flow if no items match the filter, which reduces unnecessary runs.

ADVERTISEMENT