What is Multiplexing?
The term “Multiplexing” is related to software licensing, this concept and terminology has been around for many years, but I learned this in a few years back when working on an enterprise application. A scenario or discussion that the customer was trying to use Dataverse (Previous name : Common Data Service – CDS) as data source for agents who is not a full time employee but contractors through another MVC application.
Multiplexing term mayn’t familiar to anyone who hasn’t worked in sales or license or buying enterprise applications. In Microsoft licensing guide is defined as follows that specific to Dynamics 365.
Multiplexing refers to the use of hardware or software that a customer uses to pool connections, reroute information, or reduce the number of devices or users that directly access or use the [X] service. Multiplexing does NOT reduce the number of subscription licenses of any type required to access the [X] service. Any user or device that accesses the [X] service – whether directly or indirectly – must be properly licensed”
[x] Means any service or software that Microsoft provides or supports. In our case we take Dynamics 365. Here is the Microsoft Dynamics 365 licensing Guide
Simple Example
To understand better, will walk through once simple scenario. Assume you are an employee that uses Field service app to serve the customer needs. While discussing with the customer, they are giving some other service opportunity or possibility to earn business. Obviously, as you know your needs to create LEAD. To create a new lead record employee require licensing (SL).
Alternate Option
We can create a custom entity called “Potential Customer” and store all the information. Then we can create workflow/power automate to integrate data from this custom table to Lead table. This is called multiplexing, which designed to eliminate the license.
Licensing Requirements
The Microsoft guide states the key phrase “Multiplexing does NOT reduce the number of SLs of any type required to access the Dynamics 365 service” which implies that you cannot circumvent licensing by multiplexing. Here is the guide which states that the license
“Dynamics 365 SLs are required for users or devices that directly input, query, or view data from the Dynamics 365 service. Similarly, Dynamics 365 SLs are required for users or devices that input data into, query, or view data from the Dynamics 365 service through a pooling device. Pooled connections use a non-interactive user account in Dynamics 365 that can access the system but only via the web service layer. Internal users and devices accessing Dynamics 365 data indirectly through a portal or via an API to a separate service such Microsoft Outlook must also be properly licensed, regardless of if they are set up as a Dynamics 365 user in the service.”
Users (Internal & External)
There is no complete definition of what an user (Internal user) on the guide. But based on my understanding, think of internal users are “employees, contractors, or agents of the customer or its affiliates”. In other words, someone who is on the payroll. Internal user accesses data for any operation, they need to be licensed for the software they use to access it as well the underlying software that the data is originating from or integrating to.
Microsoft guide for External User as
External users are not employees, contractors, or agents of the customer or its affiliates (i.e. a separate company, an independent contractor). External users are end customers and third-party users of the organization or its affiliates and do not require SLs to access Dynamics 365.
In addition, external users include off-site vendors not on an employee-like relationship with the organization or its affiliates (e.g. IT help desk support vendors serving multiple customer organizations).
Conclusion
Make sure to read the Microsoft Guide to licensing and discussing with the team to understand better that architect project that complaints free.