July 01, 2025

How to Remove a Model or ISV Solution from Dynamics 365 Finance and Operations (D365FO)

Hi Folks, 


Removing a model or ISV solution from a Dynamics 365 Finance and Operations (D365FO) environment can be a necessary step during system cleanup, decommissioning unused features, or resolving conflicts. However, it must be done carefully to avoid breaking dependencies or corrupting the application metadata.

In this post I’ll Walk through the safe and structured process of removing a model or ISV solution from D365FO.

Before you begin, ensure:

  • You have access to a development environment (Tier 1).
  • You have admin rights in Visual Studio and Lifecycle Services (LCS).
  • You’ve taken a full backup of model you want to delete/remove.
  • You’ve identified dependencies and verified that no other models rely on the one you’re removing.

1. Identify the Model

Open Visual Studio in your D365FO development environment:

·       Go to Dynamics 365 > Model Management > Model Management.

·       Use the Model Util tool or PowerShell to list installed models:

Get-AXModel -Details

Identify the model name, publisher, and layer (e.g., ISV, VAR, CUS).

2. Check for Dependencies

Use the Model Dependencies Report in Visual Studio:

·       Go to Dynamics 365 > Model Management > Model Dependencies.

·       Select the model and generate the report.

·       Ensure no other models depend on the one you want to remove.

3. Uninstall the Model

If the model was installed via a deployable package (e.g., from an ISV), you’ll need to:

·       Remove the package from the AOSService\PackagesLocalDirectory.

·       Delete the model folder manually.

·       Optionally, use PowerShell: (This command only works for models installed via XPO or model store, not for package-based deployments.)

Uninstall-AXModel -Model <ModelName

4. Rebuild and Synchronize

After removal:

  • Open Visual Studio.
  • Rebuild the solution to ensure no broken references.
  • Run Database Synchronization to update the schema.

5. Check in the changes

Do the code check in for deleted objects, make sure you select all deleted objects from your ‘pending changes’ tab.

6. Prepare package for Sandbox

·       Create DefaultModelDelete.txt This file tells the system which models to remove. It must contain the exact model name as registered in the model manifest. Just add exact model name in this file, if there are multiple models pl add into next line for example,

§  Model1

§  MyISVModel

  • Create a new deployable package using your build pipeline or manually.
  • Place the DefaultModelDelete.txt file in the root of the deployable package folder (same level as AXDeployablePackage).
  • Ensure the model binaries and metadata are not included in the package.

7. Package deployment

·       Upload the package to LCS Asset Library.

·       Apply it to your sandbox or production environment.

·       Monitor the deployment logs for confirmation that the model was removed.

Removing a model—especially in production—requires precision and planning. Using the DefaultModelDelete.txt method ensures a clean and supported way to decommission ISV or custom solutions without manual intervention in higher-tier environments.