Approval workflows for external users

Category: Blogs | Power Platform
Social media image for an approval workflow blog

Approval Workflows in Power Automate

Approval workflows quickly come to mind when we talk about Power Automate. They are super simple to set up and very valuable for business processes. Until two years ago, approval workflows could only be sent internally. So only to people who worked in the same organization.

This caused a lot of challenges for us and our customers, because it often happens that an approval workflow has to be sent to an external party. For example, when a customer wants to agree to a quote sent or when a new employee has to sign an employment contract that has been sent from the organization.

 

Approval workflow customer question

Recently we also received the question to build an approval workflow for external users. We received an email requesting the following:

1. We want to use Power Automate to build an approval workflow for external users
2. We want to prevent the external user from needing a Power Automate license to accept or decline something.

After reading the first customer question, it seemed like a good option to set up external users as guest users in the customer’s Azure Active Directory. The documentation for this can be found here. After reading the second sentence, I quickly realized that this option would not work, because the customer would still need Power Automate for the actual ‘approve’ or ‘reject’.

Not long after, we also found out that it was not possible to set up guest users, due to the tenant restrictions that were enforced at this customer.

 

Solution

How are we going to solve this? After all, there must be a way to meet this customer demand. And there is that way. It’s a workaround, so it may not be as effective as Approval Flow, but it works well and without errors.

Below we show you how to build an approval workflow for external users, without the use of a license.

 

Instructions

Start with the Manual Trigger

The next step is to set up an approval email. To do this, choose the action ‘Send email with options’.

The image below shows the settings for this action. In this case an email is sent to an Outlook address, but this can also be Gmail. You can even manually enter an email address.

In the ‘User Options’ field, we chose ‘Approve’ or ‘Reject’ in this case, because the assignment was executed for an international client. Using more than two options is also possible and it can also consist of dynamic content.

Here we have set ‘Show HTML confirmation dialog’ to ‘Yes’.

Then you add SelectedOption’ in the condition, to see what the recipient’s response has been.

This is all you need to do to create the approval workflow.

 

Result

Below you can see an example of the mail that is received when this cloud flow goes off.

When the recipient clicks on ‘Approve’ or ‘Reject’, they will see a confirmation:

When the recipient confirms, a confirmation message appears on the screen.

Below you can see that the flow has been successfully executed. The email action took 3 minutes and this is because in this case it took us 3 minutes to approve the email.

Above we have worked out a way to send approval workflows for an external user, without the recipient needing a Power Automate license. Please note, however, that this is not a replacement for the real Approval flows. When the recipient chooses to accept or decline, there is no option to add a reason or comment.

Ultimately, you would prefer to use Approval flows in Power Automate. but if a situation arises where this really is not possible, we hope to have offered you a solution.