The USD Accelerator – Technical Guide, Canvas Apps

In this section …

  • Introduction to Canvas Apps
  • Installing Canvas Apps
  • Announcements
  • Contact Verification
  • Reminders

Introduction to Canvas Apps

Canvas Apps are one type of Microsoft Dynamics PowerApps. (The other being Model Driven Apps which are the forms, views and dashboards we typically see in a Dynamics 365 solution.)

Canvas Apps allow us to create applications without writing any programming code. As The USD Accelerator extensively makes use of the Model Driven Apps that make up Dynamics 365 … why would Canvas Apps be needed?

In my opinion there are a couple of advantages available with Canvas Apps when considering them form a USD point of view;

  1. They are no code, meaning Canvas Apps are quick and easy to create. Yet can be customized to provide the exact user experience you require. Meaning they can sometimes be used in place of custom code.
  2. Canvas Apps are often aimed at a small form factor such as a mobile phone. Whilst you wouldn’t commonly use Canvas Apps in a desktop application they happen to fit quite nicely into the right panel in USD! (As shown below.)

Installing Canvas Apps

The USD Accelerator loads Canvas Apps via a navigate action. Why is this important! The navigate action will load the App using a URL, the URL references the unique App ID for the Canvas App. Each time you import a solution containing a Canvas App the newly created application will get a new App ID. This means that to enable a Canvas App in The USD Accelerator we first need to know its unique App ID.

There the steps will include;

  1. Find the Application ID for your app(s)
  2. Update options in Unified Service Desk settings
  3. Enable options for the Canvas Apps you wish to use
  4. First time usage

Step One – Find the Application ID for your app(s)

When you install The USD Accelerator Canvas Apps will have been included in a solution that was imported. You will need to find their application ID

Open PowerApps …

Check you are connected to the correct Dynamics 365 instance, you should be able to find the canvas apps that are included in The USD Accelerator. When you do click the “…” option.

Having selected “…” you should see a menu contains a details option. Select the “Details” option.

Here you will be able to find the App ID for your copy of the Canvas App. Simply copy it!

Step Two – Update options in Unified Service Desk settings

Now you have your App ID, you simply need to update an option in Unified Service Desk. One option will exist for each of Canvas Apps supplied with The USD Accelerator.

In the options area of Unified Service Desk settings you will find two options. “AnnouncementsCanvasAppID” and “VerifyContactCanvasAppID”. Set both of these to your correct App IDs.

Step Three – Enable options for the Canvas Apps you wish to use

By default the Announcements Canvas App and the Verify Contact Canvas App will be disabled. Therefore before you can use them you will also need to set a couple of options.

Two options exist to enable / disable using these canvas apps. “AnnoucementsCanvasApp” and “VerifyContactCanvasApp” must be set to “Y” to enable them.

Step Four – First time usage

When a Canvas App is first loaded you will need to grant it permission to use CDS. At this point you will need to click the “Allow” button, after which the Canvas App should load correctly.

NOTE: Additionally Canvas Apps will initially only be available to the administrator who imported the app. You may need to share the app with your users before it will show in The USD Accelerator for them!


A Canvas App exists which is designed to support broadcast announcements to your contact centre agents.

The announcements are held in a custom entity which will have been created when The USD Accelerator was installed.

Below you can see an example of how announcements might appear in the right panel of USD.

Notice that one of the announcements is highlighted in blue. This is a simple feature which helps to draw attention to certain content.

Selecting an announcement will show the agent addition detail. Including a title, sub title and detailed description.

Optionally announcements can have a start and end date. This will help ensure they display at the correct date / time.

Additionally the announcement can be linked to a URL. When this is done clicking the “More Details” button will open a webpage in the websites tab.

To maintain announcements you simply insert rows into the USD Announcements entity. This can be found in the UCI app that ships with The USD Accelerator. (Or you could simply locate it with advanced find!)

You can see below that the announcement record includes all of the fields mentioned above. Also notice that the entity image can be set and displays as part of the announcement within the Canvas App.

Contact Verification

Contact verification is a common challenge in most contact centre environments. In some you will no doubt need to build a custom approach. Consider, for example, the complex requirements that could exist in a Bank. A simple approach to contact verification will never be sufficient in some circumstances!!

But having said that it will be just as common to simply need to confirm a few key details about a contact. It’s quite normal that when we speak to a contact centre agents they start the call by asking us to confirm our name, post code etc.

The contact verification Canvas App is designed to support this common / simple scenario. The agent is presented with a number of possible verification questions. To progress forward they must flag that the contact has answered at least three questions correctly. Below you can see that a contact has correctly provided their date of birth, postcode and email address. Now the agent can select “submit”. This will close the verification app and open the agent script. Ready for the agent to handle the customer’s query.

Below, you can see that the customer has only been able to answer two questions. In this scenario the agent will be expected to enter a comment. Clicking the “Submit” button will advise the agent they should end the call. No agent scripts will be loaded!

Additionally, whenever a contact is verified a note is created to record the details of the verification. Meaning other agents can see if the contact has previously failed or passed verification.


The reminders app can be used a flag when customers require a call back.

Agents can open it manually as required. Or a UII option can be set that will automatically open the app if any due / overdue callbacks exist.

Three UII options control the reminders app.

RemindersCanvasApp – set to “Y” to enable.

RemindersCanvasApp_Popup – set to “Y” to automatically pop the app when reminders are due / overdue.

RemindersCanvasAppID – The ID of the reminders app in your instance. (Don’t forget to set this or the app won’t be found!)