A Power Automate flow can email your customers a Simplesat survey when their Dynamics 365 case is resolved, without connecting Dynamics 365 to Simplesat. If you connect them, Simplesat also writes each response's rating, sentiment and comment into columns on the case it rates and on the customer's contact.
What the Microsoft Dynamics CRM integrations do
You switch on each integration on the Microsoft Dynamics CRM page separately, with Activate integration.
Integration | Listed under | What it does | Where it shows |
Update case with Simplesat feedback | Ticket integrations | Writes the response's feedback to the case the survey was sent for | Three Simplesat columns on the case |
Update contact with Simplesat feedback | Survey integrations | Writes the response's feedback to the contact with the customer's email | The same three columns on the contact |
Both write the answer to the question your metric rating comes from: its rating, its sentiment and the comment the customer left on it.
Update case with Simplesat feedback runs only on surveys connected to Dynamics 365, and only for responses that came in with the case's ID. A survey counts as connected in either of these cases:
Its delivery method is External email embed with the Microsoft Dynamics 365 option.
It's an Event-based or Web-embed survey with Connected service set to Microsoft Dynamics CRM.
Update contact with Simplesat feedback runs on responses from any survey, however it was sent.
Note: If we've changed one of your Dynamics integrations for you, it can work differently from what's described here. Contact us to check what yours does.
Before you start
The Dynamics integrations are available on every Simplesat plan. You'll need:
The Manage integrations permission in Simplesat, to connect Dynamics 365 and switch integrations on. Owner and Admin have it by default.
A Microsoft account to connect with. The integrations act as that user. Choose someone who will keep their Dynamics 365 access and whose security role lets them read contacts and update contacts and cases.
The three Simplesat columns in Dynamics 365, on the Case table, the Contact table or both. See Add the Simplesat columns.
What a connected tool can read and write is set out in Integration security, permissions and data flow.
Connect Microsoft Dynamics CRM
In Dynamics 365, create the Simplesat columns for the integrations you'll use.
In Simplesat, go to the Integrations page and open Microsoft Dynamics CRM.
Click Authenticate, and in Domain enter your instance URL, including
https://. For example,https://acme.crm.dynamics.com. Click Authenticate.Sign in with your Microsoft account. If Microsoft asks you to approve the permissions requested, accept them.
When the page shows Authenticated with Microsoft Dynamics CRM, click Activate integration on each integration you want.
Before you rely on an integration, test it with a real case using the steps in Testing an integration end to end.
Send surveys from Dynamics 365
The survey goes out in an email that a Power Automate flow sends, so Dynamics 365 decides which cases get a survey and when. The flow here sends it when a case is resolved. If you haven't settled on how to send surveys yet, compare the options in Choosing a survey delivery method.
First, get the survey code in Simplesat:
Create or open the survey and choose External email embed.
Under Choose where to add your survey, choose Microsoft Dynamics 365.
On Publish, click Generate embed code.
Choose HTML and click Copy survey.
Next, build the flow in Power Automate:
Create an automated cloud flow that starts with the Microsoft Dataverse trigger When a row is added, modified or deleted.
Set Change type to Modified, Table name to Cases and Scope to Organization. Organization runs the flow for every case in the environment, not only the cases you own.
In the trigger's advanced parameters, select Show all. In Filter rows, enter
statecode eq 1so the flow runs when a case is resolved.Add a Microsoft Dataverse Get a row by ID step and rename it Owner. Set Table name to Users and Row ID to the case's Owner (Value).
Add a second Get a row by ID step and rename it Customer. Set Table name to Contacts and Row ID to the case's Customer (Value).
Add a step that sends an email, such as Office 365 Outlook's Send an email (V2). Set To to the Email from the Customer step, and write a subject.
Switch the email body to code view, paste the survey HTML, and save the flow.
Heads up: Name the two steps exactly Owner and Customer. The survey code reads the case's owner and customer from steps with those names.
Tip: If you use Update case with Simplesat feedback, enter statecode eq 1 and new_simplesatrating eq null in Filter rows instead of statecode eq 1. That way, a case that already has a rating is skipped, including when it's reopened and resolved again.
To test the flow, create a case with yourself as the customer, resolve it, and click a rating in the email. The response appears in Simplesat.
Power Automate fills in these expressions in the survey code when it sends the email:
What the code carries | Power Automate expression |
Case ID (ticket ID) |
|
Case title (ticket subject) |
|
Case number, saved as the ticket field |
|
Customer ID |
|
Customer email |
|
Customer first name |
|
Customer last name |
|
Team member email |
|
Team member ID |
|
Team member first name |
|
Team member last name |
|
For how placeholders work in every tool, see Placeholders and merge fields.
Feedback in Dynamics 365
Simplesat waits at least five minutes after a response arrives before it writes to Dynamics 365. It writes again whenever the response changes, for example when the customer adds a comment.
Under When should this integration run?, you can limit each integration to the surveys you choose. You can also limit it to positive, neutral or negative responses, with or without a comment. These settings, and more on timing, are in Writing feedback back, and mapping the fields.
Add the Simplesat columns
Create these columns on the Case table for Update case with Simplesat feedback, on the Contact table for Update contact with Simplesat feedback, or on both:
Display name | Name | Data type |
Simplesat rating |
| Single line of text |
Simplesat sentiment |
| Single line of text |
Simplesat comment |
| Multiple lines of text |
The integrations write only to columns with exactly these names. Create all three on each table you use. If one is missing, Dynamics 365 refuses the update, and none of the three are written.
To create a column:
In Power Apps, open the table, go to Columns and click New column.
Enter the display name and data type.
Under Advanced options, check that the Schema name matches the column's name, for example
new_simplesatrating.
The part of the name before the underscore is your solution publisher's prefix. If yours isn't new, create the columns inside a solution whose publisher prefix is new. A column with another prefix, such as contoso_simplesatrating, is a different column, and the integrations won't write to it.
Heads up: Give Simplesat comment a maximum length that fits your longest comments. If a comment is longer than the column allows, Dynamics 365 refuses it, and none of the three columns are updated.
To see the values on a record, add the columns to the case form and the contact form, then save and publish the form. Each column holds:
Simplesat rating: the metric rating, from 1 to 5 for CSAT and 5-star, 0 to 10 for NPS, and 1 to 7 for CES.
Simplesat sentiment:
positive,neutralornegative.Simplesat comment: what the customer wrote about that rating.
Update case with Simplesat feedback
Simplesat uses the case ID in the survey link to find the case. That ID is in the link because your flow sends the survey code from the Microsoft Dynamics 365 option.
Update contact with Simplesat feedback
Simplesat looks for every contact whose main Email column matches the customer email on the response, and writes to each one. It doesn't check other email columns. If a response has no email, or no contact has that email, nothing is written.
Change the Dynamics 365 environment or account
To connect a different environment, or to sign in as a different Microsoft user:
Note which integrations are on.
Click Revoke access.
Click Authenticate, enter the instance URL in Domain, click Authenticate and sign in.
Click Activate integration on each integration you use.
Connecting again doesn't switch any integration back on. Their settings are kept.
Heads up: Responses that arrive between Revoke access and activating again aren't written to Dynamics 365.
In a new environment, create the three Simplesat columns and build the flow there too, because a flow belongs to one environment. The survey HTML stays the same.
If the Microsoft user who connected loses their access, or their access is revoked, the integrations stop working. The page still shows Authenticated with Microsoft Dynamics CRM. Reconnect with the same steps.
Troubleshooting
The Simplesat columns on my cases stay empty
Check each of these:
The columns are named exactly
new_simplesatrating,new_simplesatsentimentandnew_simplesatcomment.The survey's delivery method is External email embed with Microsoft Dynamics 365, and the flow sent the survey code generated for it. That code puts the case ID in the link.
At least five minutes have passed since the response arrived.
Update case with Simplesat feedback is active, and When should this integration run? includes the survey and the response's sentiment.
The comment isn't longer than Simplesat comment allows.
Dynamics 365 allows updates to resolved cases. In Copilot Service admin center, under Customer Support, select Case Settings, then select Manage for Other settings. In Case update after resolution, Allow updates for must be set to Resolved and canceled cases or Resolved cases.
The case has a customer. Dynamics 365 refuses the update on a case without one.
If none of these explains it, send us the response's link.
The rating doesn't reach my contacts
Update contact with Simplesat feedback looks for contacts whose main Email column matches the customer email on the response. It won't find a contact that has the address in a different email column. A response without a customer email writes nothing. The Contact table also needs the three columns with the exact names.
My flow sends surveys only for my own cases
The trigger's Scope is set to User, which covers only the cases you own. Set it to Organization.
Power Automate won't save my flow and mentions Owner or Customer
The survey code reads from steps named Owner and Customer. Rename your two Get a row by ID steps to exactly those names.
My flow fails at the Customer step
The Customer step looks up the case's customer in the Contacts table. If the case's customer is an account rather than a contact, the step finds nothing. If your cases name the person in the case's Contact field, set the step's Row ID to Contact (Value).
A customer got the survey again when their case was resolved a second time
The flow runs every time a case is resolved. To skip cases that already have a rating, turn on Update case with Simplesat feedback and change Filter rows to statecode eq 1 and new_simplesatrating eq null.
Microsoft says I need an admin's approval to connect
Your organization doesn't let users approve apps themselves, so an admin in your organization has to approve the app before you can connect. If approval requests are turned on, you can send one from that screen.
My Dynamics integrations stopped working, but the page still says Authenticated with Microsoft Dynamics CRM
Simplesat doesn't check the connection after you connect. If the Microsoft user who connected loses access, or the access is revoked, the integrations fail but the page still shows Authenticated with Microsoft Dynamics CRM. Click Revoke access, then Authenticate, then Activate integration on each integration. Integration error messages and what they mean explains what the page shows.
FAQ
Do I need to connect Dynamics 365 to send surveys from it?
No. The Power Automate flow sends the survey without a connection. Connecting is what lets Simplesat write ratings back to cases and contacts.
Can the integrations write to columns with other names?
No. They write only to new_simplesatrating, new_simplesatsentiment and new_simplesatcomment. If your publisher prefix isn't new, create the columns in a solution whose publisher prefix is new.
Which answer goes into the Simplesat columns when my survey has several questions?
The answer to the question your metric rating comes from: its rating and sentiment, and the comment on it.
Does a contact keep every rating, or only the latest?
Only the latest. Each response from that customer replaces the values in the contact's three columns.