How to Install a Plugin in nopCommerce 4.80 (Step-by-Step)

Plugin development 12 min read September 18, 2026

How to Install a Plugin in nopCommerce 4.80 (Step-by-Step)

From the zip file in your downloads folder to a plugin that is installed, activated and actually doing its job on the storefront, with the restart, the second switch most people miss, and the fixes for a plugin that refuses to appear.

BE
nopCommerce Development Team · Bangladesh Software Solution
Lifecycle loop of a nopCommerce 4.80 plugin: upload, install, restart, configure and activate, then uninstall and delete

You bought a plugin on Friday. It is a zip file in your downloads folder, the vendor's install note is two lines long, and on Monday the marketing team expects the new payment option, the shipping calculator or the product-page widget to be live on the storefront. The question is how to install the nopCommerce plugin without taking checkout down in the middle of the morning.

The good news is that plugin installation in nopCommerce 4.80 is a short, repeatable process once you know its shape. The bad news is that the admin hides two traps: installed is not the same as active, and a plugin that is packaged even slightly wrong simply does not appear, with no error message to tell you why.

What this guide covers: the checks to run before you touch production, what "upload", "install" and "restart" each actually do, the two ways to get a plugin onto the server, the second switch that payment, shipping and widget plugins need, and a diagnosis path for a plugin that will not show up or will not install.

It is written for the person with admin access who has to make it work — a store owner, an operations lead or a developer doing it for the first time.

Before you install: three checks that save a weekend

Most failed plugin installs we are asked to rescue did not fail at the Install button. They failed earlier, when a plugin built for a different version, or with no rollback plan, went straight onto the live store. Five minutes of checking beats an evening of restoring.

Version match
The plugin must be built for 4.80. nopCommerce reads its supported versions from plugin.json and will not load a plugin that does not list yours.
Backup first
Back up the database and the site folder. Installing can create tables, settings and locale strings; a backup is your one-step undo.
Staging, then live
Install on a copy of the store first, walk the flow the plugin touches, and only then repeat the same steps in production.

How to read a plugin's version before you upload it

Open the zip and find the plugin's folder. Inside it sits a small file called plugin.json — nopCommerce's description of the plugin. According to the official nopCommerce documentation, the current nopCommerce version must appear in SupportedVersions for the plugin to load. A real example from a payment plugin looks like this:

{
  "Group": "Payment methods",
  "FriendlyName": "PayPal Commerce",
  "SystemName": "Payments.PayPalCommerce",
  "Version": "4.70.1",
  "SupportedVersions": [ "4.70" ],
  "Author": "nopCommerce team",
  "DisplayOrder": -1,
  "FileName": "Nop.Plugin.Payments.PayPalCommerce.dll",
  "Description": ""
}

That file says "4.70", so this particular build belongs on a 4.70 store. For a 4.80 store you want "4.80" in the list. Group is also worth noting: it is the category you will filter by on the Local plugins page, and SystemName is the plugin's unique internal name.

Don't just edit the version number

Changing "4.70" to "4.80" in SupportedVersions will make the plugin appear, but it was compiled against the older version's code, and 4.80 runs on .NET 9. It may install and then fail at checkout. Ask the vendor for the 4.80 build instead — the nopCommerce Marketplace guide covers how to confirm version support before you buy.

What "upload", "install" and "restart" actually do

With the right build in hand, it helps to know what the admin is doing behind each button, because every failure in the troubleshooting section below maps to one of these stages. The picture at the top of this article shows the whole loop; here it is in words.

Upload = files on disk
Uploading only unpacks the archive into the site's /Plugins folder. Nothing runs yet. The plugin appears in Local plugins as "not installed", and your store behaves exactly as before.
Install = the plugin sets itself up
Install runs the plugin's own setup code: it typically saves default settings, adds its text resources and, for many plugins, creates database tables. nopCommerce records the installed state in App_Data/plugins.json.
Restart = the change takes effect
Plugin assemblies are loaded when the application starts, so an install is applied on restart. That is why the admin shows "Restart application to apply changes" after you click Install.
Activate = customers can see it
For payment, shipping, tax, widget and sign-in plugins, "installed" still is not "switched on". Each has its own activation screen, covered in the activation section below.

Installed is not the same as active. Most "the plugin doesn't work" tickets are a plugin that was installed and never switched on.

BSS Engineering

Step by step: install a plugin from the admin panel

This is the route for almost everyone. It needs nothing but an admin login and the plugin's zip file, and it is the method the nopCommerce documentation describes first.

  1. Open Local plugins. In the admin area go to Configuration → Local plugins. This page lists every plugin in /Plugins, installed or not.
  2. Upload the archive. Click Upload plugin or theme, choose the zip file from your computer and confirm. Upload the zip as the vendor shipped it — don't unpack and re-zip it.
  3. Find the plugin in the list. Filter by Group (for example "Payment methods" or "Widgets") or search by name. It shows as not installed.
  4. Click Install. nopCommerce runs the plugin's setup and flags that a restart is needed.
  5. Restart the application. Click Restart application to apply changes. The store is briefly unavailable while it restarts, so do this in a quiet hour.
  6. Configure it. Back on Local plugins, the plugin now shows as installed; click Configure to enter API keys, account IDs or display settings.
  7. Activate it where it lives. If it is a payment, shipping, tax, widget or external sign-in plugin, switch it on in its own screen (next section).
  8. Test the storefront. Walk the path the plugin changes, in a private browser window, as a customer would.

What a good plugin archive looks like

Open the zip before you upload it. You should see the plugin's own folder, and plugin.json should sit directly inside that folder next to the plugin's .dll. An archive that wraps it in an extra folder layer, or scatters the files loose at the top, is the most common reason a plugin uploads "successfully" and then never appears in the list.

Editing the plugin's name, order and who can see it

Next to each installed plugin, Edit lets you change its friendly name and display order, enable or disable it, and limit it to specific stores or customer roles. That is how you offer a payment method only to wholesale customers, or only on one storefront of a multi-store install. Per the nopCommerce documentation, those limits only take effect if the sitewide Ignore ACL rules and Ignore "limit per store" rules settings are turned off.

Alternative: copy the plugin into /Plugins yourself

Sometimes the admin upload is not an option. Large archives can hit the web server's request size limit, some hosting setups block uploads from the admin, and developers deploying their own builds usually copy files rather than zip them up. The official documentation supports this route too: put the plugin's folder into /Plugins and restart the application.

After the files are in place, open Configuration → Local plugins. If the plugin is not listed, click Reload list of plugins — it restarts the application and rescans the folder. Then carry on from the Install step above exactly as before.

Approach Good for Watch out for Effort
Admin upload Store owners and admins installing a vendor's zip Request size limits on large archives; badly packed zips never appear Low
Manual copy to /Plugins Developers, large plugins, locked-down hosting Needs server or FTP access; wrong folder depth; file locks while the site runs Medium
Installed by a nopCommerce team Revenue-critical plugins such as payments and shipping, or several plugins at once Needs a staging copy and a short hand-over so you know what changed Lowest for you

If you are the developer and the plugin is your own code, the build itself can write straight into this folder. Our guide to creating a plugin in nopCommerce 4.80 shows the project setup that outputs to Presentation/Nop.Web/Plugins, so a fresh build turns up in Local plugins ready to install.

Activate and configure: the second switch most people miss

Back to Monday morning: the plugin installed cleanly, the restart went fine, and the new payment option is still nowhere on the checkout page. This is the moment the "installed is not active" rule bites. Several plugin types have their own on/off switch, separate from Local plugins, because a store can have many of them installed and choose which to offer.

Plugin type Where to switch it on What "on" means
Payment methods Configuration → Payment methods → Edit → Is active The method appears at checkout
Shipping Configuration → Shipping → Shipping providers The provider's rates are offered at checkout
Widgets Configuration → Widgets The widget renders in its widget zones
Tax Configuration → Tax → Tax providers Becomes the provider that calculates tax
External sign-in Configuration → External authentication The sign-in button shows on the login page

A payment plugin is the clearest example: after install you still open Configuration → Payment methods, edit the method, tick Is active, and save. For a full worked setup of one, including sandbox credentials and a test order, see setting up PayPal in nopCommerce. If your plugin is a widget and you want to understand why it shows on some pages and not others, our explainer on widget zones walks through exactly that.

When the plugin won't show up or won't install

If you have followed every step and something is still wrong, the fault almost always sits at one stage of the loop — the files, the version, the setup code or the restart. Work through it in that order; the decision tree below is the same path we follow on a support call.

Decision tree for a nopCommerce plugin that is missing from Local plugins, marked incompatible, or fails on install
Not in the list at all
Check the folder depth: /Plugins/<PluginFolder>/plugin.json, not one level deeper or shallower. Confirm plugin.json exists and is valid, then click Reload list of plugins.
Listed but won't load
A version mismatch. If SupportedVersions does not include 4.80, nopCommerce will not load it. Get the 4.80 build from the vendor rather than editing the file.
Install throws an error
Read the full message under System → Log. A missing dependency usually surfaces as "Could not load file or assembly"; a database permission problem shows up when the plugin tries to create its tables.
Site won't start after restart
Move the new plugin's folder out of /Plugins and restart; the store comes back without it. Then restore from your backup if the install had already changed the database.

Plugins that start failing after a nopCommerce upgrade rather than a fresh install are a different problem, with a different fix. For that, see how to test plugin and theme compatibility before upgrading.

Uninstalling and removing a plugin cleanly

Every plugin you install is one you may one day replace, so it is worth knowing how the exit works before you need it. Local plugins has two separate buttons for this, and they do very different things.

Uninstall — undo the setup
Runs the plugin's clean-up code, which usually removes its settings, text resources and database tables. Restart the application afterwards. The files stay on disk, so you can reinstall it later — but any data it stored is gone.
Delete — remove the files
Removes the plugin's physical files from the server. It is available only once the plugin is uninstalled. Use it for plugins you are sure you will never need again.

The nopCommerce documentation recommends uninstalling plugins you are not using, since every installed plugin is loaded on startup. For a payment plugin with order history attached, though, export anything you need before uninstalling, and do it on staging first.

Plugin install-day checklist

  • plugin.json lists 4.80 in SupportedVersions.
  • Database and site folder backed up, and you know how to restore them.
  • Installed and tested on staging with the same steps you will use live.
  • Archive checked: plugin.json sits directly in the plugin's own folder.
  • Uploaded, installed, and the application restarted in a quiet hour.
  • Configured, then activated in its own screen (payment, shipping, widget, tax or sign-in).
  • Store and customer-role limits set, if the plugin should not apply to everyone.
  • Storefront tested as a customer, and System → Log checked for new errors.

Frequently Asked Questions

Where is Local plugins in nopCommerce 4.80?
In the admin area, open Configuration and then Local plugins. It lists every plugin whose files are in the /Plugins folder, installed or not, and it is where you upload, install, edit, configure, uninstall and delete them.
Do I have to restart nopCommerce after installing a plugin?
Yes. Installing or uninstalling a plugin is applied when the application restarts, so click "Restart application to apply changes" after you install. The restart briefly interrupts the store, which is why production installs belong in a low-traffic window.
Why is my plugin not showing in Local plugins?
Usually one of three things: the files sit one folder too deep or too shallow inside /Plugins, the plugin folder has no valid plugin.json, or the application has not rescanned the folder yet. Fix the folder so plugin.json sits directly inside the plugin's own folder, then use "Reload list of plugins".
Can I install a nopCommerce 4.70 plugin on 4.80?
Not as a rule. nopCommerce only loads a plugin whose plugin.json lists the running version in SupportedVersions, and a plugin compiled against 4.70 may not work with 4.80 even if you edit that field. Ask the vendor for the 4.80 build, or have a developer recompile and test it first.
What is the difference between uninstalling and deleting a plugin?
Uninstalling runs the plugin's own clean-up code, which usually removes its settings, locale strings and database tables, but leaves the files on disk so it can be reinstalled. Deleting removes the plugin's physical files from the server, and nopCommerce only lets you delete a plugin that is not installed.

Final Thoughts

Go back to that zip file in the downloads folder. With the version checked, a backup taken and the steps run on staging first, Monday morning becomes routine: upload, install, restart, configure, switch it on in its own screen, and test the storefront as a customer. The payment option is at checkout, the widget is on the product page, and nobody noticed the restart.

If you are still choosing which plugins deserve a place on your store, our round-up of must-have nopCommerce plugins for 2026 is a good next read, and free vs paid nopCommerce plugins helps you decide which ones are worth paying for.