How to safely remove partner modules

Edit: Added Yotpo_Yotpo (05-12-19)
Edit: Added Dotdigitalgroup_Chat (01-02-20)
Edit: Added Vertex_AddressValidation (02-03-20)
Edit: Edited Vertex_Temando_Shipping Ref 2.3.5 (16-06-20)

There are some features that come built into Magento that require signing up to additional services in order to use them. Well, in this video I’ll show you how to declutter Magento by safely removing these modules.

Magento is a business and it has its Partners. So, understandably it comes with modules built into the software that introduces you to these paid services. That’s fine and all, but if you’re not interested in using these services then you may as well disable them. Best case scenario is that it improves performance and declutters the menu and settings in the backend.

So far, I’ve identified five modules that are pretty much useless unless you sign up to a paid service. These are:

  • Engagement Cloud: dotmailer/dotmailer-magento2-extension
  • New Relic Reporting: magento/module-new-relic-reporting
  • Signfyd: magento/module-signifyd
  • Temando Shipping: temando/module-shipping-m2 (N/A in 2.3.5+)
  • Vertex: vertex/module-tax and vertex/module-address-validation
  • YotPo yotpo/magento2-module-yotpo-reviews

Now, I could just attempt to disable them and see what happens. If these were some 3rd party modules that I installed myself then I know it would be safe to remove because I put it there. However, modules that come packaged with Magento out-the-box require a bit more attention.

You’ll often find that modules depend on other modules. So, I couldn’t just disable Module A because it could stop Module C from working and this would normally lead to a cascading effect.

If you’re not interested in learning the safety steps to safely remove partner modules, then head right to the bottom of this article where you can simply copy and paste the necessary commands.

Dependencies Command Check

So, let’s start with the dependencies command. In order to run this command, you’ll need to be signed in as the “magento” user and sitting in your Magento Root Directory - Which I currently am.

Then you’ll want to run the following command [01:50]:

bin/magento info:dependencies:show-modules-circular

This command will generate a csv in the location where I ran the command from, which was the Magento Root Directory.

So, right now your looking at the file that I’ve gone ahead and downloaded via FTP. If you’re not familiar with a CSV file, it can be opened in common Spreadsheet applications like Microsoft Excel or Google Sheets. At a push you can use something like Notepad but the data won’t be presented in columns, so it’s a little harder to read.

In the file, you’ll find a list of Magento Modules that depend on other modules. As you can see, it’s quite overwhelming. However, all we want to know is if the module we want to disable actually exists in the CSV. So, the rule is:

  • If it is in the list, it is not safe to remove
  • If it is not in the list, then it is safe to remove

And to do that I’m simply going to use the Search function of Excel to look for the modules. It’s important to mention that you’ll be searching for the Component Name, not the Module Name. You can find this information inside the Web Setup Wizard under Module Manager.

On-the-fly Check

The second method is to simply attempt to disable the module, which is a bit more cavalier approach - But it’s an option none-the-less.

So, if I attempt to disable a module that I know has a dependency (and would therefore break Magento if I tried to disable it) then I’d receive a warning. To show you this, I’m going to attempt to disable the Magento_Catalog module [03:30]:

bin/magento module:disable Magento_Catalog

And as you can see I’m shown a wall of red, highlighting all of the modules that would be affected by my command. Therefore, it hasn’t been executed.

Now, if I try to disable a Module that is safe to remove [03:48]:

bin/magento module:disable Dotdigitalgroup_Email

Then I would see a green success message confirming that the module has been disabled.

How to safely remove partner modules

Using the 2 methods I’ve just mentioned, I was able to confirm that I could safely remove the 5 partner modules that I mentioned at the beginning of this video. I’ve listed the Disable Module Commands for each of these below:

Feb 2020: Added “Dotdigitalgroup_Chat” which is applicable in 2.3.4 onwards. Otherwise, disabling one without the other will cause an Exception Error

Disable Engagement Cloud: (dotmailer/dotmailer-magento2-extension)

bin/magento module:disable Dotdigitalgroup_Email Dotdigitalgroup_Chat

Disable New Relic Reporting: (magento/module-new-relic-reporting)

bin/magento module:disable Magento_NewRelicReporting

Disable Signfyd: (magento/module-signifyd)

bin/magento module:disable Magento_Signifyd

Disable Temando Shipping: (temando/module-shipping-m2) (N/A in 2.3.5+)

bin/magento module:disable Temando_Shipping

Disable Vertex: (vertex/module-tax)

bin/magento module:disable Vertex_Tax Vertex_AddressValidation

Disable YotPo (yotpo/magento2-module-yotpo-reviews)

bin/magento module:disable Yotpo_Yotpo

In future updates, Magento will probably add more partner modules that might not be of any use to you. But now you should have the confidence to take what you’ve learned to safely remove them yourself.