Dynamics 365 Portal Add-on

Dynamics 365 Portal Add-on

Dynamics 365 Portal Add-on
365 Portal add-on setup
Portal configuration
365 Roles and in-line editing toolbox
365 portal entity permissions
365 Knowledge base articles

Dynamics 365 Portal Add-on

Portals, by their very definition, are a doorway to a location that was not accessible before without the portal.

Every portal then will have a starting location, an entry point that will ‘teleport’ the portal user from the starting point to a new environment.

With web portals, the same can be said. Web portals will, through authenticated registration, allow the portal user access to personal information, a specialized community and give them the ability to interact with the portal owner in a way that is outside of the normal communication channels (phone call, email and face to face).

We have all come into contact with a portal in one way or another, registering an account with our banks, shopping and day to day service centers. What we find is that most of these portals are setup in businesses that can afford them. The reason this is, is because portals are very expensive! They are complex to setup; authentication, continuous customization, developer resources time and skills.

In this blog post I will seek to show you how to setup your own portal without utilizing any development and showcase how to use the portal once setup is done.

365 Portal add-on setup

Items to keep in mind before you start configuring the portal add-on:

  • Available for the entire organization with at least one plan 1 license
  • Can only be setup by a user with the global administrator role

To setup the portal add-on, login into office 365 via the following link: https://login.microsoftonline.com

Figure 1: Office 365 welcome screen

Click on the Admin icon to access the admin centre seen in Figure 1.

Under the Admin Centers tab on the left hand side, select this tab to open the list of subscriptions you currently have.

Figure 2: Dynamics 365 Admin Center

When you select Dynamics 365, this will open a new window where you can view your instances, updates, service health (including storage usage) and applications.

Figure 3: Dynamics 365 admin center

Select the Applications tab under the Dynamics 365 admin center to view the applications available.

These applications include:

  • Portal Add-On
  • Voice of the Customer
  • Gamification

Figure 4: Dynamics 365 applications

Select the Portal Add-on and then click on the manage button.

Figure 5: Dynamics 365 Portal Add-on configuration

Complete the following fields:

  • Name of the portal add-on
  • Portal Url
  • Instance – which instance this application will apply too.
  • Default language for the portal
  • Portal administrator
  • Portal Audience
  • Portal to be deployed
    • Community Portal

Has a minimal set of pre-defined page templates. Leverages peer-to-peer interactions through blogs and forums.

  • Customer self-service Portal

Allows customers to login and view /create / manage support cases.

  • Custom Portal

Allows customer and external audiences login access. Includes profile management, configurable business components, web content publishing and design.

The portal type can be updated later, but you can only use one at a time.

Figure 6: Dynamics 365 Portal Add-on feature list

Reference: Microsoft Provisioning a Portal

Figure 7: Dynamics 365 Portal Add-on configuration

Click Submit once you have completed the above.

Read through the terms of service and then click on the Accept button.

Figure 8: Dynamics 365 Portal Add-on terms of services

You will receive the following message once you click accept.

Figure 9: Dynamics 365 Portal Add-on submission

Finally, once the portal add-on has been setup, you will be taken to the portal management screen.

Figure 10: Dynamics 365 Portal Add-on management

Here you will be able to view the portals details, actions and analytics.

Actions available are:

  • Restarting the portal
  • Upating the dynamics 365 url
  • Installing the project service automation extension for partner portals
  • Installing the field service extension for partner portals
  • The Public key of the portal
  • Getting the latest metadata translations

For the portal analytics, you will need to configure the interaction tracking before you can begin viewing the reporting.

To do this, click on the Configure Portal Interaction Tracking button.

Figure 11: Dynamics 365 Portal Add-on analytics

Figure 12: Dynamics 365 Portal interaction tracking

Please keep in mind that to access this tracking analytics, you will need an active customer insights subscription.

Finally, under the details section, the url for the portal you have setup can be found under the Base Portal Url. Use this url to access the portal to access the portal.

Figure 13: Dynamics 365 Portal welcome screen

Portal configuration

The portal has many different sections that help configure how the portal looks to how the portal is meant to operate.

Figure 14: Dynamics 365 Portals module

We will break the above module down into their ordered sections.

The structure, theme and setup of the portal is controlled by the following entities:

  • Website
  • Web Pages
  • Entity Forms
  • Entity Lists

To understand the structure, consider the diagram below.

Figure 15: Dynamics 365 Portals module

(Reference: https://blogs.technet.microsoft.com/lystavlen/2017/01/18/using-portal-capabilities-in-dynamics-365-crm/)

The website will contain the following sets of details:

  • Default Language
  • Primary Domain Name
  • Header Template
  • Footer Template
  • Supported Languages
  • Root Pages

The landing / home page

  • Child Pages

All pages associated to the website that are connected to other pages within that website

  • Content Snippets

Content snippets are used by a developer to place snippet values into a website

  • Web Link Sets
  • Site Settings
  • Site Markers
  • Page Templates
  • Publishing States
  • Website Access Permissions
  • Web Roles

Web roles are quite important to how you manage what certain groups of portal users can interface with on the portal, but we will get to that later.

When we get to Web Pages, the source of material for each Website, you will be able to influence the following:

  • Parent Page
  • Page Template
  • Partial URL
  • Publishing State (visible to the portal users)
  • Display Date (What date should this page be displayed)
  • Expiration Date (What date should this page no longer be displayed)
  • Enable ratings
  • Enable tracking
  • Hidden from sitemap
  • Comment policy
    • Inherit
    • None
    • Open
    • Open to Authenticated Users
    • Moderated
    • Closed
  • Exclude from search

What is equally important is the child pages connected to this page. With the ability to expire a home page and release a new home page, you can set specific marketing material to the forefront without having to schedule a developer to work on its release overnight.

Under the child files, you can set a repository of images, bootstrap CSS and Javascript into the web page itself. For the types of extensions allowed, please head over to Dynamies 365, then navigate to Settings > Administration and select System Settings. Under the general tab, find the Set Blocked File Extensions for attachments and either add, remove or confirm the extensions allowed within these child files.

Web pages also allow for custom Javascript and CSS to be added to update certain aspects of the page itself.

For example, if you want a different background colour and font, you can set it into the custom CSS section to change the web pages look and feel.

CSS example:

  • body{

background-color: #FF0000;

color: #4DA88C;


  • body{

background-color: #4DA88C;

color: #FF0000;


Figure 16: CSS example code effect

You can also add to the custom Javascript and CSS from the editing tool available to all portal admins which we will discuss shortly.

Entity forms are a great way to introduce CRM capture forms into the web pages.

Figure 17: Entity form example

When creating a new entity form, enter in a name, then choose from the list of entities on the right of the form (Custom entities includes as seen in figure 18).

Figure 18: Entity form example

As for the forms being used, once an entity is selected, the main forms available will be referenced.

For example, figure 18 shows how the main form for accounts (Customer Account Web Form (Create)) is being visually shown in the portals web page.

Figure 19: Entity form visualization

A couple of questions regarding the entity forms are the profile page and the registration page.

First, the profile page. When looking at the web page associated to the profile, you will notice that there is no entity form connencted to it.

Stress not, the form is located under the default solution under Contacts; Profile Web Form. Use this form to add in custom fields you want mapped back to the contact record.

Another is on the lookups and how they filter. When using an account lookup, the accounts are automatically filtered based on the accounts the portal user is connected too. For example, if the portal is a primary contact on one account AND associated to another account, not necessarily being the primary contact, then both accounts will be displayed on the account lookup. This means that you do not need to filter the lookup field, the entity permissions are governing what the portal user can and cannot see.

If you want to replace this profile page, simply add another entity form that looks to another entity and deactivate the profile form in Dynamics 365. This will then allow you to use another profile type form as seen in figure 19 where I used the lead Contact us form.

Figure 20: Profile form

As for the resgistration page, this form is not available for customization like the entity pages. If you want to influence this page, you will need to include JQuery and Javascript onto the page to hide / add / influence certain aspects of the page.

Outside of affecting the registration web page through code, the registration page will always create a new contact record unless the username and or email is already taken as seen in figure 21.

Figure 21:  Duplicate detection

For a full review on the functionality behind the authentication identity, please view the Microsoft post.

This will give portal users the ability to create their own Dynamics 365 entities, like creating a new case for example.

Entity lists will then allow the users the ability to see these new records they have created or are associated to them.

Figure 22: Entity list setup

In figure 19 you can clearly see that you will be able to show case more than one view to the portal user, but base it off the system views you currently have. Each additional view you add will be made available to the portal user in a drop-down list.

Figure 23: Entity list views

For additional columns, default sorting and updating the view properties, head into the default solution and update the view you wish to influence.

365 Roles and in-line editing toolbox

In order to have the in-line editing toolbox available, there are a couple of steps you will need to follow. During these steps, the reason for roles will explain itself.

First, register a user account on the portal (https://[PortalName].microsoftcrmportals.com).

Figure 24: Portal registration

Once you have logged in, update your information and confirm your email address.

Figure 25: Profile information update

Then log into Dynamics 365, navigate to Portals > Contacts and search for the user account you registered.

Figure 26: Portal contacts

Under the associated records, choose Web Roles.

Figure 27: Contact associated web roles

Choose to add an existing web role, namely; Administrators.

Figure 28: Adding existing web role

Once this role has been assigned, head back to the portal and refresh/log back into the portal.

Figure 29: In-line editing tool

Now that you have the administrator role, you will be given the ability to use the in-line editing tool.

This the power that web roles have. You can influence the the actions and protected content the portal user has access to on the portal. The different scenarios where this could come into play is on a community portal, you could influence who can publish contentand who cannot.

For new and existing web roles, the authenticated and anonymous user’s role control the following:

  • Authenticated user’s role:

By selecting this option, this role will become the default role for all authenticated users. This role will then be associated to all users who are not associated to any other web role. While the system does not warn you of this, you should only ever have one authenticated user role, even though a user can have multiple user roles.

  • Anonymous user’s role:

Much like the authenticated user role, this role will be the default role for all unauthenticated users who do not have any roles associated to them.

Figure 30: Web role form

Let us take a look at the in-line editing tool and what it is you can accomplish with it.

The first item to note is that you are able to view all the children web pages associated to the web page you are currently on. You will be able to delete or edit the page.

Figure 31: Children page view

The edit button allows you the ability to edit the web page you are currently viewing.

You will be able to update the name, parent page and page template.

Figure 32: Editing a web page

Under the options tab you will also be able to add:

  • Description
  • Custom Javascript
  • Custom CSS
  • Display Date
  • Subject
  • Comment Policy
  • Enable Ratings (Yes/No)
  • Hidden from sitemap
  • Exclude from search

Delete will allow you to delete the page.

New will allow you to create a new child page, child file, child forum and child shortcut.

Outside of the tool, with administrator rights, you are also given the ability to edit every bit of content on the web pages. Hover over a set of content and click on the Edit button.

Figure 33: Editing web page content

A loading window will appear and open up the segment of content you are choosing to edit.

There you can update the text, font, styles, images (externally hosted) and so on.

Figure 34: Editing web page content window

Options include:

  • Link
  • Anchors
  • Image
  • Flash
  • Table
  • Horizontal line
  • Special Character
  • IFrame
  • Template
365 portal entity permissions

Web roles can also be influenced by entity permissions, which then allows you to define entity record permissions.

Figure 35: Editing web page content window

These permissions must be connected to a web role, meaning entity record permissions are controlled by by a combination of web roles and entity permissions.

If you ever needed to include code that controls entity records outside of these two records based on the users login, have a look at the SMS Management & Technology blog post.

365 Knowledge base articles

Using the Dynamics 365 engagement hub, you will be able to create new knowledge base articles and display these out to your portal users.

To create new knowledge based articles, log into your engagement hub (https://{PortalName}.crm4.dynamics.com/nga/engagementhub.aspx), then navigate to Service > Knowledge Articles. Click on the New button to create a new knowledge base article.

Enter in the following details:

  • Title
  • Keywords
  • Description
  • Content (Plain text and HTML)

Figure 36: Content HTML source

You are able to reference other KB articles in the content box only after the article has been approved and is visible on the portal. To get the link, open the article via the portal and copy the link out of your browser.

Please keep in mind that you cannot alternate between different contents, it must be either HTML or plain text. If you were using HTML and switch to plain text, the HTML code will not render, instead it will display the code itself.

This has been updated in Dynamics 365 version 9.0 whereby it allows you to preview the KB article on different platforms, mobile, desktop and tablet.

Once you have setup the KB article. You will need to approve and then publish the article for it to appear on the portal.

Figure 37: Approving / Publishing a KB Article

I would suggest following the business process flow to get the article approved before publishing the article immediately.

Figure 38: New Knowledge base article

When the users wish to view the knowledge base, they will be able to view the knowledge base based on the categories they fall under.

Figure 39: Knowledge base categories

This would help the users search by category instead of keywords.

To view the categories you currently have, navigate to Settings > Service Management > Categories

Figure 40: Dynamics 365 categories

There you will be able to build out a tree like structure for the types of categories your knowledge base would fall under.

Then, to associate a new or existing knowledge base article to the category, navigate to the KB article and open it. Select the More button and choose to associate the KB article to a category.

Figure 41: Associate KB article to category