Importing Multi-Select Picklist Data in Dynamics 365

Multi-select picklist was one of the most requested features in the Dynamics community and was introduced in Dynamics 365 from ver. 9.0

The issue

Although introduced, importing multi-select picklist data can be a problem using the CRM Import Tool. Below is the sample csv file with a multi-select column named ‘Hobbies’.

Multi-Select Picklist data

Although it as 2 distinct values in the ‘Hobbies’ column (data in the multi-select field is available in the field separated by a semicolon), the CRM Import Tool does not consider the same. Refer screenshot below.

map fields dynamics 365

Importing the above will result in CRM automatically creating a new option set value called ‘Running; Swimming’ which is not the intended purpose.

The good news

The CRM Import Tool supports both CREATE and UPDATE of records. Although the tool does not support multi-select picklist data during record creation, it does support multi-select picklist data during the update of records.

Workaround steps

  • On the CSV file which you plan to import (for record creation) add a new column (e.g.: Unique Id) and populate it with a sequential number value.unique id dynamics 365

 

 

  • Create a similar field in CRM (datatype: whole number) on the entity.
    While mapping the columns during Data Import ensure the map the ‘Unique ID’ column with the newly created field.
    Do the map the Multi-select field. (We will be handling this after the import)
  • Now proceed with the Import. Once successfully importedyou should have all the records created in CRM with the ‘Unique ID’ field.
  • Include the ‘Unique ID’ field and the Multi-select field in a new view and sort it based on the ‘Unique ID’. Now export the view to Excel as a ‘Static worksheet’.
  • You now have 2 files:
    • Original import file
    • Exported data file from CRM
  • Ensure that the data in both files have been sorted by the Unique ID field. Carefully copy the multi-select column data from the original file and paste it over the multi-select column on the file exported from CRM. (Do not overwrite the header column)
  • Simply import back the updated file using the CRM Import Tool. CRM will identify it as an updated job and update back all the records in CRM with the multi-select values.

Alternatively, you could even use the ‘Open in Excel Online’ feature to do the same.

Limitations of Multi Select pick Lists

  1. The default value for a multi-select picklist cannot be set from within Customizations; however, you could use custom code approach to set a default value.
  2. You could define any number of options for a multi-select picklist, however, only a maximum 150 options can be selected for a multi-select picklist field
  3. Although multi-select picklist is available as a ‘Trigger’ for workflows, it cannot be used within a ‘Check Condition’ on a Step.
  4. Bulk-Edit does not support multi-select picklist fields.
  5. If you plan to use the CRM SDK to create/update multi-select picklist values, ensure that you are using the ver. 9 or above of the SDK assemblies.

More details on how to interact with multi-select picklist via CRM SDK here

 

 

Transform Your Business in 4 ways with Dynamics 365 Portals

Dynamics 365 Portals are shipped with every Dynamics tenant* along with multiple ready to use templates which can be quickly configured and customized to suit business needs to build and extend channels of communication and Collaborate with specifically invited customers, partners or employees.

What are Portals for Dynamics 365?

  • Portals are an External website platform which is deeply integrated into CRM
  • They provide channels for various Customer Engagement Scenarios
  • They are an opportunity to extend CRM modules to the web for external customers and partners, without the added burden of building, hosting and customizing

dynamics 365 portals

The Microsoft Promise

  • High Availability: 9% Guaranteed Uptime with Financially backed SLA
  • Performance & Scalability: Enterprise-grade scale and Performance for your portals
  • Disaster Recovery: Making sure your Portals are always up and running.
  • Data Protection: Compliance with Microsoft Data protection standards to make sure your data is safe.
  • Global Availability: Available Worldwide from your nearest Datacenter.
  • Security: Modern TLS crypto standards, DDOS protection, X-site scripting protection, etc.

LISTEN TO THOSE WHO MATTER

THE PORTAL provides a single view to the customer of all his activity with your organization. Every single Account – be it Partner or a customer, has a distinct view of all his activities with your organization.

  • Sales – Products Purchased, change Logs, Invoices
  • Customer Service – Knowledgebase for Self-Service, Case history, Live Assist channel
  • Marketing – White papers, Product Collateral, New Launches, events, news, and Webinars

SHARE AND COLLABORATE IN REAL-TIME

The portal provides an Out of the box Collaboration tool in the form of forums. Easy Moderation capabilities and discussion views make responding to customer queries and discussion with Partners on Opportunities seamless and easy

While the Support team resolves cases and creates the knowledge base articles in its routine daily activities, the same can be surfaced on the portal. Customers and partners can create and track queries and issues to closure and rely on Self- Service for any urgent issues. The Search feature and the classified display of KB is a default feature available on specific portal templates

ENGAGE – INTERACT WITH YOUR CUSTOMERS

Embed a chat widget onto a portal to proactively engage with customers. Be it for sales inquiries or requests from partners or issues which need to be responded to and resolved, personal touch and availability of someone to address it, always creates a positive experience. Live Assist or any other Third-party app can easily integrate and reside within the Dynamics portal

dynamics 365 portals 2

Engage customers with a modern case management system, which can Search through the Knowledge Base – one of the most powerful features of the platform – and scan through key terms and phrases to show results. Activities and correspondence tracking and quick views of Active and Resolved cases all reduce the burden on Call center and the helpdesk teams.

TRANSFORM – LEVERAGE THE PLATFORM FOR MORE

Dynamics Portals literally has all the capability available in Dynamics and more.

Social collaboration – Polls, Discussion Forums, Knowledge Base Search and Self Service are items just on the surface. Add to it, the mobile capability where its device ready and plays well even when you are on the move.

Dynamics 365 portal 3

Surface your product and Service collateral and use the platform for marketing, highlight your featured products and enable the Sales team, share newsletters and webinar links and create a Knowledge store which becomes a reference Library for all, link it to an eCommerce portal and a payment gateway and shorten the sales-to-pay- time.

*Check the license requirements

 

 

Dynamics 365 Portal – Best Practices for Success

Automation has become a necessity in every type of business and Dynamics 365 CRM is one of the most preferred automation systems implemented by various organizations around the globe. But its success totally depends upon its users, which leads us to the question, how to make the portal good so that adoption is high.

Dynamics 365 Portal Best Practices

  • Brand it- make it look good. 

Your portal can be branded!

While it was a complex activity earlier, with bootstrap framework becoming the standard, your portal is responsive and views fantastically on devices too.

Use your brand colors and fonts to make as close to your Org. brand guidelines. The bottom line – Give it the same detailed attention as your Internet-facing site!

  • Give it a Title and a Name

The simplest name is to continue with the Microsoft nomenclature – Portal. But, give it some thought – this is the site which is going to be used by your existing esteemed clientele. You need to title it as you want them to perceive the Portal. A few other simple name options – Engage, Connect, Collaborate!

  • Update the URL

Give your portal a URL which your clients can relate your Org with. A “microsoftdynamicscrmportal” or “powerappportal” should be updated to your org. domain name

Create a subdomain on your DNS and if there is consensus, link it to the Internet site as a database portal

This portal, linked to your Dynamics database will potentially hold secure information, so remember to encrypt the data via an SSL certificate

  • Simplify and channelize Authentication and Authorization

While there are several modes of authentication mechanisms available, choose one or more as required, which your clients may need and more importantly, which you and your team can maintain and troubleshoot with time

Simplify the registration process and sending of invitations – out of the box it’s cumbersome ​!

Set up the right roles and provide authorized gated access to teams to access correct and specific data shared with them.

  • Consolidate all knowledge – forums, KB articles, manuals and guides

Use the Portal to share collateral with your clients – be it documents, Live Help, helpdesk Support or discussion forums.

Consolidate all knowledge – forums, KB articles, manuals, and guides. The

search is a great feature, but it can only work if the content is one place. ​

  • Drive Adoption internally

Train and educate your team so that they are enabled and realize how the portal can increase their productivity.

Once the content is surfaced, it will be your team whose usage and constant reference to the portal and data sharing on it will bring the customer to it.

  • Portals are work in progress

Customer experience is about choice. Portals are an extension and provide an alternate mode of engagement. It is not a substitute.

Kick-off the project go Live with a basic portal and use anyone data share with your clients – like any below and then keep adding more

  • Case creation Or
  • Invoice sharing Or
  • Knowledgebase Or
  • Project data Or
  • Invoices

Get feedback from your clients and scale-up.

Lastly, add analytics and identify Dynamics 365 portal traffic to find out what is working and what needs to change!

Dynamics 365 Portal Invitation – Issue with invitation redemption

Dynamics 365 Portal Invitation Issues

  1. One of the available ways to invite a user to the portal is to generate an Invitation on a Contact and email this invitation with the one time “redemption code” to the user
  2. Every invitation email sent has a unique invitation code which is valid only for the contact to whom it was emailed. It’s a long alphanumeric set of characters which is unique to the email id of this Contact.
  3. In case this redemption link is redeemed by some other user before the intended user uses it, the intended user will not be able to log in. Further, if the incorrect user, later wants an invitation to the portal for his own profile, he too will face issues.

Follow the below steps, to fix the issue in such scenarios

  • Consider “Invited Contact” as the contact to whom the portal invitation was sent and “Other Contact” as the contact who redeemed the invitation
  • Open the “Other Contact” record in CRM and navigate to the Portal Contact form. Clear out the ‘User Name’ field and save the record. Navigate to ‘External Identities’ sub-grid and delete the applicable record.

Web Authentication

Portal Contacts

  • Open the “Invited Contact” record in CRM and navigate to the Portal Contact form and ensure that the ‘User Name’ field is blank. Navigate to ‘External Identities’ sub-grid and ensure that there are no records.
  • Open Advanced Find, and search and delete the Invitation sent to the “Invited Contact”.

  • Send a new invitation to the” Invited Contact” by clicking the Work365 ‘Sent Portal Invite’ button OR the OOTB Portal ‘Create Invitation’ button

Create Invitation

Contact Management from Dynamics 365 Portal – Part 2

Situation

  • The Portal Contact form was being used by Admin for managing contacts to Create, Edit & Deactivate from Portal.
  • When new Portal contacts were created from the portal, Duplicate records were getting created despite the Duplicate Detection rule on Dynamics. It, however, showed a system message which was not understandable.
  • If the new user to be created was an Inactive user, he needed to be activated rather than be created.

Challenges

  • Liquid code could not be used since it could not be triggered on change event of the email address field.
  • Defining a custom solution which worked in parallel with existing features.

Requirement

  • To detect and restrict duplicate contacts getting created from the portal and provide an appropriate message there.
  • If contact is “Inactive” in CRM, rather than create a new contact, the same should be activated.

Solution

Since the duplicate detection Rule on dynamics could not be extended to the Portal, a custom process to be created using JavaScript and Liquid code  –

  • JavaScript to trigger the event of the Create Page
  • Liquid to query data on another Page.
  1. The Redirect web template:
    • Go to Portals ➤ Web Templates and Create Web Template “My Custom Web Template”, paste the below code in source property

      {% fetchxml contacts %}

      <fetch version=”1.0″ output-format=”xml-platform” mapping=”logical” distinct=”false” count=”1″ returntotalrecordcount=”true” page=”1″ >

           <entity name=”contact”>

           <attribute name=”contactid” />

           <attribute name=”statuscode” />

          <filter type=”and”>

             <condition attribute=”emailaddress1″ value=”{{request.params[’emailId’]}}” operator=”eq”/>     

          </filter>

        </entity>

      </fetch>

      {% endfetchxml %}{  

        {% if contacts.results.total_record_count > 0 %}

        “value”: [{  

            “contactid”: “{{contacts.results.entities[0].contactid}}”,

            “statuscode”: “{{contacts.results.entities[0].statuscode.label}}”}      

        ]

         {% else %}

         “value”: []

         {% endif %}

        }

  1. Its Page template

    Go to Portals ➤ Page Templates and create page template named “My Custom page template”, Website->Select your website, Type ➤ Web Template, Web Template ➤ “My Custom Web Template”, Entity Name ➤ Web Page(adx_webpage). Click Save.
  2. Its Web page so that it can be accessed.

Go to Portals->Web Pages and create web page give any name “My Custom Web Page”, Website ➤Your website, Parent Page->Home, Partial URL ➤”any name of your choice”, Page Template➤ “My Custom page template”, Publishing State->Published and click Save.

  1. On the Create Contact page – add the below JavaScript to trigger on the change event of the Email ID Text field.

Go to Portal ➤ Web Pages->Open your page and click on a web template and paste the below code in source property of web template and click Save.

Note: If you are using default web template then create a new one

  <script type=”text/javascript”>   

      $(document).ready(function () {  

   $(“#emailaddress1”).change(function() {

       $(‘.notifications’).remove()        

      var httpReq = CreateHTTPRequest(“GET”, “/mycustomwebpage/?emailId=” + $(“#emailaddress1”).val(), false);

        httpReq.send(null);

        if (httpReq.status == 200) {

      var contactId = JSON.parse(httpReq.responseText).value;

            if(contactId.length > 0)

            {

                if(contactId[0].statuscode == “Inactive”)

                {

                   $(‘.breadcrumb’).append(‘<div class=”notifications” style=”display: block;”> <div class=”notification alert alert-danger error alert-dismissible” role=”alert”><button type=”button” class=”close” data-dismiss=”alert” aria-label=”Close”><span aria-hidden=”true”>×</span></button><span class=”fa fa-exclamation-triangle” aria-hidden=”true”></span> Note: This contact already exists in CRM, in InActive mode. Click <a href=”/updatecontact?id=’+ contactId[0].contactid +'” target=”_blank”>here</a> to open the record and Activate.</div></div>’); 

                   $(‘#InsertButton’).attr(‘disabled’,true); 

                }

                else{

                   $(‘.breadcrumb’).append(‘<div class=”notifications” style=”display: block;”> <div class=”notification alert alert-danger error alert-dismissible” role=”alert”><button type=”button” class=”close” data-dismiss=”alert” aria-label=”Close”><span aria-hidden=”true”>×</span></button><span class=”fa fa-exclamation-triangle” aria-hidden=”true”></span> Note: This contact is already exists in CRM</div></div>’); 

                   $(‘#InsertButton’).attr(‘disabled’,true);

                }              

            }

            else{ $(‘#InsertButton’).attr(‘disabled’,false); }       

        }

        });

      });

      CreateHTTPRequest = function (action, url, async) {

    try {

        var httpReq = new XMLHttpRequest();

        httpReq.open(action, url, async);

        httpReq.setRequestHeader(“Accept”, “application/json”);

        httpReq.setRequestHeader(“Content-Type”, “application/json; charset=utf-8”);

    }

    catch (ex) {

        throw ex;

    }

    return httpReq;

}

</script>

Note: In the above script change the click here to open and the activate link to your edit contact page. Steps to create Edit contact page below.

  • Create Edit contact page to activate contact on portal
  • Create a new web Contact form in CRM. Fields
    • Full Name
    • Account
    • Work Email address
    • Contact details
  • The update contact form on Portal
    • Go to Portals ➤ Entity Forms ➤ New and Create new entity form for update Contact. Select Entity name ➤ Contact, Form Name as created above in Dynamics, Select mode as Edit, Record Source type ➤ Query String, Record ID Query String Parameter  ➤ id. Website ➤ Select your website.
    • In Additional setting ➤ Action Button Configuration ➤ Actions ➤ Click on +Activate
    • Go to Portals ➤Web Pages ➤ New and Create a web page for update contact entity form.

You can add some emails and templates to be triggered on any changes to be tracked!

Also, check out Contact Management from Dynamics 365 Portal – Part 1

Contact Management from Dynamics 365 Portal – Part 1

Situation

  • The Customer service Portal using Azure AD authentication was being used by the client to collaborate on products changelogs, consumption changes, Invoices, project documents and updates, customer service tickets and Company information management
  • Customers have multiple users belonging to different departments who need to access the portal and review and update information in different capacities.
  • Every time a new client stakeholder needs to be given access/ removed to the portal, the CRM admin team needed to action it.
  • The onus of security of critical client information management was entirely on the CRM team.

Requirement

  • Transfer onus of security:
    • CRM Admin to create one portal user from the customer Contacts who would have permission to create, update and deactivate other contacts from his organization – the client “portal user manager”
  • Managing users:
    • He should be able to assign the required Roles and even create other Portal user managers.
    • He should be able to deactivate these users and also update their portal role if needed. However, they should not be deleted from CRM.
  • User Access:
    • Users should be sent an invitation to be redeemed via email when they are created.

Solution

  • Go to Portals ➤Web Roles and create web roles
    • Portal user manager
    • Portal Finance User
    • Portal IT User
    • Portal Project user
  • Create a two-options field for each Web role above on the Contact entity
  • Create a new web Contact form in CRM. Fields
    • Full Name
    • Account
    • Work Email address
    • Contact details
    • Web role two-options [for as many roles defined]
      • Go to field properties ➤ Formatting ➤ Control Formatting ➤ Select Checkbox
    • Is Portal contact
  • Create a copy of the above form for the update contact process
  • Create a view in CRM – “Show Portal Contacts
    • Add filter Status Reason=Active and Is Portal Contact=Yes
  • New Portal Contact page
    • Go to Portals ➤ Entity Forms ➤ New and Create new entity form for new Contact. Select mode as Insert.
      • Add the below script to set the ‘Is Portal contact ‘ to true and hidden

$(document).ready(function() {

$(‘#iotap_isportalcontact’).prop(‘checked’, true);

$(‘#iotap_isportalcontact’).hide();

 $(‘#iotap_isportalcontact_label’).hide();

});

  • Go to Portals ➤ Web Pages ➤ New and Create web page for new contact entity form.
  • Update Portal Contact page
    • Go to Portals ➤ Entity Forms ➤ New and Create new entity form for update Contact. Select mode as Edit.
    • Go to Portals ➤ Web Pages ➤ New and Create a web page for update contact entity form.
  • The default “Invitation” entity and the workflow “send Invitation” will be used

Create an on-demand workflow on Contact entity to trigger when “Record is created” to associate web role and send a portal invitation when a new contact is created from the portal.

record is created

  • Manage Users page
  • Go to Portals ➤ Entity Lists ➤ New and enter Name, Entity Name-Contact(contact), Website-your website, click +view button select view “Show Contacts Portal” and then again select +view button and select “Active Contacts
  • Grid Configuration ➤ Item Actions ➤ +Edit and set Target Type as Entity Form, Entity Form- “Update Contact” and Button Label as “Edit
  • Grid Configuration ➤ Item Actions ➤ +Deactivate and set Button Label as “Deactivate
  • Go to Portals ➤ Web Pages ➤ New and create a web page for “Manage users” entity list
  • Create a navigation Link – “Manage users” which is accessible only to the Portal user manager role
    • Go to Portals ➤ Web Link Sets ➤ Primary Navigation ➤ Links ➤ Add New Web Link with Name, Publishing state as Published, Parent WebLink as Home, Page as “Manage users”.
    • Go to Portals ➤ Web Page Access Control Rules ➤ New and create Access rule with Name, Right as “Restrict Read”, select “Web Page” and select “Web Role” “Portal user Manager”.
  • Create a duplicate detection rule [if not available] based on the contact email Id, so that duplicate contacts are not created by the user manager.
    • Go to Settings ➤ Data Management ➤ Duplicate Detection Rules ➤ NewNew Rules
    • Publish.
  • New button
    • Go to Portals ➤ Entity List->Select entity list “Manage users” set Web Page for create and Create Button Label as “New

The completed customization

completed customization

Also, check out Contact Management from Dynamics 365 Portal – Part 2

Dynamics 365 Portals Authentication – Options and Features

Dynamics 365 Portals

Dynamics 365 Portals provide multiple authentication mechanisms and features which are very easy to configure. Having said that, rather than allow all modes [which may ultimately result in clutter and confusion] answers to a quick survey of the below questions should be collated when finalizing them.

  1. Who are the Potential portal users – Internal employees and Partners who are available as dynamics contacts or prospects and customers who are external?
  2. Which mechanism would make it easier for them to login?
  3. Do you have the required manpower and systems to manage any requests/ issues which may be reported?
  4. What is the information/ collaboration expected on the Portal?

While authentication is the gateway for a user to access the portal, the below 2 configurations are equally important to be set up for user access.

Basic set up for a Dynamics 365 Portal User

  1. Contact set up: In a portal application, an authenticated portal user is associated with either a Dynamics 365 Contact or System User. The default portals configuration is contact-based. The contact can be created
  2. Web Role: Portal users must be assigned to a web role to gain permissions beyond unauthenticated users.

Authentication

Portal users can sign in ether with authentication provided by Dynamics 365 contact membership provider or with an external account based on ASP.NET Identity.

Local authentication: Local authentication is the common forms-based authentication uses the contact records of a Dynamics 365 for Customer Engagement organization for authentication.

External authentication: External authentication is provided by the ASP.NET Identity API. In this case, account credentials and password management are handled by a third-party identity provider. This includes OpenID based providers such as Yahoo! and Google and OAuth 2.0 based providers such as Twitter, Facebook, and Microsoft. Users sign up to the portal by selecting an external identity to register with the portal. After it is registered, an external identity has access to the same features as a local account.

Options available

  1. Windows Authentication
  2. Windows Live ID Web Authentication
  3. Form Authentication
    • External (social provider) user sign-in through third-party identity providers
    • Open registration

The Dynamics 365 Portals login screens

Sign in by using a local identity or external identity

auto account setup

Sign up by using a local identity or external identity

register for new account

Redeem an invitation code manually

redeem-an-invitation

Dynamics 365 Portal Features

  1. Email address confirmation
    1. Authenticated users manage their user accounts through the Security navigation bar of the profile page. The profile page is also where the user is reminded to confirm their email address by requesting a confirmation email to be sent to their email account.
  2. Password recovery and Password reset
    1. Returning visitors who require a password reset (and have previously specified an email address on their user profile) can request a password reset token to be sent to their email account
  3. Redeem invitation
    1. Both local and external account registration can use invitation codes for sign up, as well as the email confirmation workflow. These invitations can be generated and sent out from Dynamics by permission users by email
    2. Redeeming an invitation code allows a registering visitor to be associated with an existing contact record that was prepared in advance specifically for that visitor.
    3. With open registration enabled, however, users are not required to provide an invitation code to complete the sign-up process.
  4. Two-factor authentication with email
    1. The two-factor authentication feature increases user account security by requiring proof of ownership of a confirmed email in addition to the standard local or external account sign-in.
    2. A user trying to sign in to an account that has two-factor authentication enabled is sent a security code to the confirmed email associated with their account. The security code must be submitted to complete the sign-in process
  5. User Lockout
    1. When a certain number of failed password attempts are detected in a short period of time, the user account is locked for a period of time. The user can try again after the lockout period elapses

Meanwhile, another interesting related information about the portal which supersedes authentication is that while the Dynamics 365 for Customer Engagement Portal is public when provisioned and accessible by anyone from any computer, now you can restrict access to your portal from a list of IP addresses.

For example, a government organization might want to surface their content only within their corporate network. A commercial organization might want to display the portal only when it is published and not while it is in development to avoid any data leak.

When a request to the portal is generated from any user, their IP address is evaluated against the allow list. If the IP address is not on the list, the portal displays a web page with an HTTP 403 status code!

Use Cases for Dynamics 365 Portals

Microsoft made a strategic move with the transition to the Dynamics 365 product by dividing the previous modules into standalone apps – Customer Engagement henceforth referred to as CE Apps 

Organizations, whether we are using one or even all the apps on CE, are constantly engaging with the customer, building the data in the App or sharing the output from it.

use cases dynamics 365

Documents and data for Customers go through different organizations from Marketing to Billing. Sales department create quotes, Accounts and Finance create and share Invoicing details or Customer Service Desk share statuses on Cases resolutions, and Project teams share Plans, Tasks, Milestone updates.  

All this Process Redundancy, Email Clutter and Dual Data Entry can be streamlined by sharing data directly with the end customers through the Microsoft CRM – Dynamics 365 Portal for the Customer Engagement and Custom applications.

The Dynamics 365 Portal is the tool to surface specific entities and records from within the Customer Engagement apps to enable processes with external collaborators and stakeholders like your customers and partners. 

On the Dynamics 365 Portal, the Organization can define the audience it wants to invite, define the data it wants to be exposed, define the Role of the User logging in and define the entire User Experience.

Also, read – Top 10 Reasons to Invest in a Dynamics 365 Portal 

Dynamics 365 Portals Use Cases

Customer service

Customer Service departments receive inbound calls and emails every day to request help. These interactions can often result in cases, incidents or trouble tickets that need to be resolved for the customer. In case of Organizations using CE Apps when cases are surfaced via a portal, users can create, update, add attachments or even comment on cases themselves, bypassing the need to Search/Speak directly with people in the organization, just use the inherent routing rules.

Exposing Knowledgebase articles helps deflect a lot of repetitive cases and prompts customers towards SelfServicing.  The Analytics on time spent, Entitlements remaining and consumed, Service related invoices are data points which can be made available on the Portal. An added dimension of Live Chat can be added for a more focused service.

Finance and Accounts

Invoicing is another common usecase for customers with Recurring or consumption-based billing. Work 365’s recurring invoices are automatically made available for customers to view and download from the self-service portal. Enabling integration to an ECommerce portal and a Payment Gateway can make the experience 360 degrees complete for the Customer.

Sales and Marketing

Partners and Sales Consultants can access Marketing collateralflyers, decks, etc. from CE Apps using secure access to the Portal 

They can add/ update the Accounts, Leads, Opportunities* and Contacts using the welldefined Dynamic Role Matrix. Working directly on the same CE application, the Sales Pipeline is always updated and information, correct. 

The Marketing department and New product team can use the Portal Dashboard to announce upcoming events and Product Launches to the Customer/ Partners. Customer can request new Products and services and schedule meetings with the Account Manager. 

Projects

Teams can Collaborate on projects not only for sharing Proposals, Kickoff decks, Scope documents, etc., but also to get approval on Time Spent, discuss and escalate Risks, surface Upcoming Tasks and share Invoices from the Portal 

As a closing note – The key to any successful engagement is delivering the right information to the right users at the right time. Since Portals are device agnostic, Organization business operations can extend from the back (and front) office to the smartphones, tablets, and desktops of customers always available and always on!

 

Top 10 Reasons to Invest in a Dynamics 365 Portal

While each Organization must find its own trigger, I’ve laid out some common underlying set of reasons which resonate across Organizations 

1) Productivity

  • Repeated and redundant Tasks of creating, updating and maintaining data, especially when it is worked on by multiple groups within and outside the organization is done away with.  
  • Setting notifications and alerts on relevant Portal activity, ensures users are informed of updates pertaining to their concerned areas. 
  • Effective use of Dashboards can showcase synopsis of updated information 
  • Allowing external users to create, update and view requisite information – data and documents, using inbuilt application validations and security, saves the Organization time and effort consumed to update it on the System from the shared location

2) Cost-effective 

  • Did you know that you have a free portal? Every Organization who has 10 Enterprise licenses has a Portal which can be used for Collaboration and Service 
  • Its hosted for free on the Microsoft cloud – which means that there is no monthly hosting charge 
  • It comes with an inbuilt SSL certificate and a domain name– so no hassle of any purchase or renewal there too 
  • The only cost is what it takes to build and configure it. Provided that the required skillsets on Html, JavaScript, and Liquid are available, adding pages and content are completely do-able tasks

3) Inherent Integration

  • The Portal has seamless Integration with all CRM objects and entities. No external tools or services are needed for the communication
  • Real-time data updates and transfers make it an extended arm of the core CRM application.  

4) Secure sharing 

  • Multiple authenticating options – LinkedIn, Facebook, Azure AD, etc. are available along with the ability to implement Single Sign-on with O365 enable sharing data from secure CRM   
  • Being equipped with SSL, data transfer over the web transfer over an Encrypted pipe which is backed up with Microsoft certifications  

5) Real-time 

  • While the Organization can easily only surface specific data which it wants to from within CRM, real-time updates make it seem like working on the same database with 2 front ends  

6) Choice of interaction 

  • The portal allows Organizations to provide an alternative mode of communication to its Customers, Employees and Partners. Take an example of a Customer Service department being able to service not merely through Email, Chat and Phone, but now through the web too.
  • Time can be booked for Field Service Visits and PreSales meetings from within the Portal itself and directly integrate with the CRM Resource Board and Target achievements, making it a great choice or Self- servicing 

7) Transparency 

  • Being real-time, Sales and Customer Service Organizations are benefitted. Be it the closure of Opportunities or meeting and beating SLAs, everything can be easily recorded and shared transparently. 

8) Always on 

  • Portals come in build with the Microsoft assurance of being 99.99% on. 

9) Marketing, Analytics, and Insights 

  • Quickly link your Portal web pages to Google Analytics to understand adoption and effectiveness.  
  • Link to the Portal from your corporate website for users to Login to create a seamless experience of viewing secure information pertaining to their engagement only 
  • Display Events and Announcements on your Portal to inform your niche audience about the most important happenings, achievements, and Offers 
  • Understand if your Portal draws an audience to your knowledge base, your Shared Invoices, Project Status/ timesheets, or available field service schedules.

10) Choose your Audience and Content 

  • Send invitations to your niche clients and partners and let them view and add to your data store. You can roll out the portal in phases and expose data as its ready. 
  • Grant roles in CRM to your Portal Users and allow them to access only to specifically surfaced data

If you are an organization using Dynamics 365, and you have identified that the time is right to invest in a Dynamics 365 portal *– do it now. Your free to use Portal is lying wasted!

*Check the blogIntroduction to the Dynamics 365 portal 

**check the blog The right time to invest in the dynamics portal

When is the Right Time for Businesses to Invest in a Dynamics 365 Portal?

Where there are other financial* and IT** considerations which may impact the decision, there are 2 main situations which can be used to identify if the Organization is ready for/ needs a Portal.  

 1) When Dynamics data/ documents need to be regularly be viewed/ shared with external users – customers or partners.  

Client and partner engagements at every step need the information to be exchanged in the form of data and documents. Sharing these over emails or shared locations very often results in duplication and redundancy. Furthermore, the team is losing productive time maintaining this update. 

Sharing controlled data right from its source in Dynamics to secure external Roles can easily remedy the situation. 

Activities to look out for when identifying that the Organization should surface information via Portals 

  • When you see that the CRM users are frequently having to share reports, request data, send alerts, expose status’, etc.,
  • Where you want to ensure that the external user always has the most updated information residing in Dynamics
  • Provide access to KBs, Blogs and access Discussion forums, ensuring that the partner/ customer is engaged and enabled

2) When external users need to create or update data/ documents which are maintained by the Organization in Dynamics 

While any license impact based on the user and the kind of activity performed must be clearly understood and adhered to before investing in the portal, the Portal is a great tool to allow Partners and customers restricted and secure access to add/ update specific sections of the Organization Dynamics 365 apps. 

Some simple use cases where Dynamics may need such updates – 

  1. When Partners, Distributors and sales channels need to share new/update their sales opportunities 
  2. When Appointments need to be booked 
  3. Cases – create and updates 
  4. Moderated Discussion Channels re needed Questions and Common Update and need to be,  
  5. update time and expenses on Projects. 

Some thoughts on the “How”

The Dynamics Organization can provide a seamless experience to external users,  by linking it from its corporate site, replicating the branding and using Azure AD authentication. Roles defined can showcase targeted content to different roles within the same client organization.  Keeping the Portal content and forms simple but relevant will help in increasing footfalls on the portal. 

While the Internal users need to be cognizant of their actions on Dynamics and the fact that some of it will be visible to the customer, per se, the Portal need not have all the data saved and managed on Dynamics surfaced.

* while 1 instance of the CRM portal is available for free to all Dynamics 365 Organizations, provided they fit in [ check the previous blog “Dynamics 365 Portal – Introduction”], any UAT and Test environments have a cost attached 

** Portal development needs some development skills on HTML, JavaScript and “Liquid” apart from having a good handle on Administration of Administration and Security on Dynamics. The Portal developer will need System Customizer, Portal Admin and in some cases, Global Admin credentials on Dynamics.