With Dynamics 365 Tenant Customization’s in Business Central, it is possible to customize tenants to individual needs. What does that mean?
Tenant customization’s In Business Central
That means that you can create an extension for a single Dynamics 365 Tenant Customizations in Business Central which can be deployed directly, without going through AppSource. In short, the Dynamics 365 Business Central is open for customizations in the 50000-99999 range. Use Visual Studio Code, the AL extension and the client-designer. Develop against the Dynamics 365 Business Central Sandbox or a Docker container. Deploy the app directly to the production tenant.
Why would Microsoft enable this? This is to enable the partner channel to deliver the customizations for Dynamics 365 Business Central that fit customer needs. In fact, this is placing the end user in the center, because it is possible to create bespoke customizations on the Business Central. It even allows the end-user to create the tenant customizations themselves because you don’t need a development license at all. Having said that, along with the positive aspects, we have to remember the flip side of a coin. First of all, it is all about the Extensions, AL code, and VS Code. Which means that with Business Central we cannot do exactly the same as we can with Dynamics NAV on-premise. Is that a problem?
I could easily come up with more than a handful scenario’s that could only be solved by modifying the source code. We are kind of spoiled by the NAV and C/SIDE, aren’t we? But that on itself does not prove the approach of the Dynamics 365 Business Central wrong. It proves that it is a platform with different possibilities. With pros and cons. You have to make choices like: do I accept less or less optimal functionality, compared to what I could do with code customizations, can I still run my business with that? Or should I accept the costs of code customizations (don’t forget the hidden costs!) and stick to on-prem deployment for a moment?
By the way, I don’t want to say that the Dynamics 365 Business Central is less optimal compared to on-prem deployment. From my experience, I can tell you that setting up the full Dynamics 365 experience like integration with the Office 365 or PowerBI in an on-prem scenario is not that simple and straightforward. Want I want to say is that you have to make the choice what is more important: get the full experience of an online solution and accept limited customization possibilities or get the full flexibility of an on-prem deployment but accept the complexity and costs.
Secondly, although it would be technically possible for end-users to create tenant extensions themselves, I would really recommend handling this with care. To create extensions for the Dynamics 365 Business Central you need to have in-depth knowledge of the architecture of the application. You don’t try to tune the engine of your car without knowledge, don’t you? So don’t customize the software solution you run your business with without knowing what you do! The possibility to adjust Dynamics 365 Business Central to individual needs of customers are meant to be used by Microsoft Dynamics 365 Resellers in the first place.
Developing And Deploying A Tenant Customizations In Business Central
Some important notes about developing and deploying tenant customization. You should develop with the VS Code against a Dynamics 365 Business Central sandbox or using a Docker container. With the Docker container, you will also have the possibility to develop for the next version.
Make sure that to set the correct number range in your app.json and to apply to correct code analyzers. When you develop tenant customization, set the number range to 50000-99999 and use the PerTenantExtensionCop code analyzer. When you develop the app for AppSource, then set the number range to the range you got assigned. And then you should use an AppSourceCop code analyzer.
Deploying the tenant customization is done through the Extension Management page (no PowerShell needed!). You can just upload the extension package file. During this process, you will have a possibility to deploy for the current version or for the next version. Here are some screenshots of upload extension wizard: