Installation and configuration guide for the Product Badges plugin for nopCommerce 4.90.
In the admin area go to Configuration → Local plugins and press Upload plugin or theme. Choose the Widgets.ProductBadges.zip file.

Find “Product Badges” in the list and press Install. This creates the badge tables, settings and localization resources.

Open Configuration → Widgets, find “Product Badges” and make sure it is active.


Restart the app once so the plugin loads correctly.

Go to Configuration → Widgets and press Configure next to “Product Badges”, then press Manage badges → Add new badge.



Each badge has a type that determines how and when it appears on a product.
| Type | How it's applied |
|---|---|
| Discount (-X%) | Automatic. Appears when the product has an active nopCommerce discount applied (Promotions → Discounts, assigned to products). The label shows the computed percentage (e.g. -30%). |
| Low stock | Automatic. Appears when the product's stock quantity is ≤ the threshold you set. The label always shows “Only X left”. |
| New product | Automatic. Appears when the product has “Mark as new” ticked on the product edit page. |
| Category | Automatic. Appears on all products in the selected categories. |
| Manufacturer (brand) | Automatic. Appears on all products of the selected manufacturers. |
| Custom (manual) | Manual. Assign it per product (product edit → “Product Badges” tab) or in bulk (product list → “Assign badge”). |
Create a badge from Configuration → Widgets → Product Badges → Manage badges → Add new badge, pick the type, then follow the steps below. The form shows the fields for the selected type automatically. Each badge type also needs a small setup step in the store itself.
Automatic. The badge appears on products that have an active nopCommerce discount applied. The text (-X%) is computed automatically from the discount percentage.
Go to Promotions → Discounts → Add new, choose Use percentage and set the Discount percentage. Leave Requires coupon code unchecked and keep it active.
Scroll down to Applied to products, add your product(s) and Save.
Go to Catalog → Products, open your product, find the Discounts section, apply the discount and Save.
Add a badge of type Discount and publish it.


Automatic. The badge appears when a product's stock quantity is less than or equal to the Low stock threshold. The text (Only X left) is generated automatically.
In the badge's Low stock threshold field, enter the stock number that triggers the badge.
Edit the product, set its Stock quantity to a value equal to or below that threshold, then Save.


Automatic. The badge appears on products with “Mark as new” ticked.
Add a badge of type New product and publish it.
Edit the product, tick Mark as new, optionally set the start/end dates, then Save.


Automatic. The badge appears on all products in the selected categories.
The product must belong to a category (Catalog → Categories).
In the badge's Selected categories field, choose one or more categories and save.


Automatic. The badge appears on all products of the selected manufacturers.
Edit the product, go to the Manufacturers section, add the manufacturer and Save.
In the badge's Selected manufacturers field, choose one or more manufacturers and save.


Manual. The badge appears only on products you assign it to.
Add a badge of type Custom and publish it.
Edit a product, open the Product Badges tab, tick the custom badge and Save (save the tab, then save the product).
On the product list, select several products, press Assign badge, choose the badge and confirm.


You can show more than one badge on the same product. In the plugin configuration, enable Allow multiple badges and set Max badges per product.


Label text field is not used — the badge always shows a dynamic “Only X left” message, where X is the product's current stock quantity. To change the wording, edit the string resource Plugins.Widgets.ProductBadges.LowStockLabel in Configuration → Languages → String resources (default value: Only {0} left).
Image badge field, the badge is rendered as that image instead of the text label (and colors). The text is still used as the image's alt text.
Configuration → Settings → Media settings (it is disabled by default). There is no pixel dimension limit — any size is accepted, and you control the display size with the Image width / Image height fields on the badge (default 60px wide, height auto). Uploads are limited by nopCommerce's “Maximum image size” setting (default 1980 KB); larger images are automatically resized.
| Option | Description |
|---|---|
| Name | Internal name shown in the admin list. |
| Badge type | Determines the rule used to show the badge (see above). |
| Label text | The text shown on the badge. Ignored for Discount and Low stock — those generate the text automatically. |
| Background color / Text color | Colors for text badges. |
| Image badge | Upload an image to render the badge as an image instead of text. |
| Position | Which corner of the product image the badge appears in. |
| Display order | Lower value = higher priority when multiple badges match. |
| Published | Unpublished badges are never displayed. |
Configuration → Widgets), at least one badge is Published, and the products match the badge's rule.