# Admin Extensions

# Magento 2 Update Order Email Address

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Update Order Email Address Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Update Order Email Address* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Update Email Address from Order Detail View Page*
    - *Updated Email Address Visible on the Order Detail View Page*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to Account section and click on My Downloadable Products and download the extension package.

[![image (7).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Z9Yimage-7.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Z9Yimage-7.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Update Order Email Address</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Update Order Email**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (5).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/zE3image-5.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/zE3image-5.jpg)

- <span style="color: #f97316;">**Update Email Address from Order Detail View Page -**</span> You can update email address from **Admin &gt; Sales &gt; Orders &gt; Select Order &gt;** Click on "**Change**" then add new email address **&gt;** Click "**Save**".

[![image (6).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/ovbimage-6.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/ovbimage-6.jpg)

- <span style="color: #f97316;">**Updated Email Address Visible on the Order Detail View Page -**</span> The updated email address will be shown on the order detail view page under "Account Information" section.

[![image (7).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/BFcimage-7.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/BFcimage-7.jpg)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento2-update-order-email-address.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Order Tagger

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Order Tagger Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Order Tagger*](#bkmrk-configuration-settin)
    - *Order Tags Logs*
    - *Order Tags Grid*
    - *General Settings*
3. [*Types of Tags*](#bkmrk-types-of-tags)
    - *Static Tags*
    - *Dynamic Tags*
    - *Predefined Tags*
4. [*Assign Tags*](#bkmrk-assign-tags)
    - *Manually Assign/Remove Tags*
    - *Assign Tags Based on Conditions*
5. [*Tags in Action*](#bkmrk-tags-in-action)
    - *Order Grid*
    - *Filter Order Grid*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Order Tagger</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Order Tagger**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/FO1image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/FO1image.png)

#### <span style="color: #f97316;">Order Tags Grid</span>

Go to **Admin&gt;Sales&gt;Scommerce Order Tagger&gt;Order Tags**

**[![image-1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/t28image-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/t28image-1.png)**

- **Name–** Enter the name of the tag.
- **Type–** Select "Static" or "Dynamic" or "Predefined". Static tags can be manually assigned and dynamic tags can be assigned using conditions. Predefined tags already have conditions set so you only to select the predefined tag type.
- **Sort Order–** Define the priority of the tag(0 being the highest priority), the highest priority tag will be displayed first.
- **Text Color–** Add the text color for the tag.
- **Background Color–** Add the background color for the tag

[![image-_1__1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/XT5image-1-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/XT5image-1-1.png)

**Conditions–** Add the conditions using order or address attributes.

[![image (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Chjimage-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Chjimage-1.png)

#### <span style="color: #f97316;">Order Tags Logs</span>

Go to **Admin&gt;Sales&gt;Scommerce Order Tagger&gt;Order Tags Logs**

The logs keep track of all the dynamic tags that are assigned to orders. It has its own set of filters which can be used to identify a specific assigned tag.

[![image-_1__2.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-1-2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-1-2.png)

### <span style="color: #3b82f6;">Types of Tags</span>

There are three of tags within the extension static, dynamic, and predefined tags.

#### <span style="color: #f97316;">Static Tags</span>

After creation, these types of tags are added manually via Magento order grid. Conditions are not added in these types of tags. They are not shown in order tags logs.

[![image-5.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/7Smimage-5.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/7Smimage-5.png)

#### <span style="color: #f97316;">Dynamic Tags</span>

After creation, these types of tags are added automatically to the orders applicable.Conditions are added in these types of tags.They are shown in the Order tags logs.

[![image-6.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/boGimage-6.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/boGimage-6.png)

#### <span style="color: #f97316;">Predefined Tags</span>

After creation, these types of tags are added automatically to the orders applicable.Conditions are not added in these types of tags as they are already set. They are shown in the Order tags logs Irrespective of the name, only one type of tag can be created for one 'Predefined' field.

[![image_1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/dZdimage-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/dZdimage-1.png)

There are five types of predefined tags to choose from:-

1. **Out of Stock :-** Gets automatically assigned to the orders whose products are out of stock. As soon as the product is available the tag gets removed automatically.
2. **Partially Shipped Order:-** Gets automatically assigned to orders that are partially shipped i.e only a few quantities are shipped from the order. As soon all the entire order is invoiced the tag gets removed automatically.
3. **Partially Invoiced Order:-** Gets automatically assigned to orders that are partially invoiced i.e only some quantity of the order is invoiced. As soon all the entire order is invoiced the tag gets removed automatically.
4. **Back Order:-** Gets automatically assigned to backorders. This tag doesn't work with downloadable and virtual products. As soon as all the items in the order are shipped the tag gets removed automatically.
5. **First Time Customer:-** Gets automatically assigned to the orders that are placed by first-time customers. This works for both guest/registered users.

### <span style="color: #3b82f6;">Assign Tags</span>

The tags can be assigned either manually or automatically using conditions set during the tag creation.

#### <span style="color: #f97316;">Manually Assign/Remove Tags</span>

Go to **Admin&gt;Sales&gt;Orders** then select the order or multiple orders then click on the Actions dropdown and click on 'Add tags' or 'Remove tags'. Select the tag that you want add with the order from the 'Select Tags' dropdown and finally click on Add tags.

**Note:-** Only static Tags can be manually assigned.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/uf6image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/uf6image.png)

#### <span style="color: #f97316;">Assign Tags Based on Conditions</span>

Dynamic Tags are automatically assigned based on the conditions set while creating the tag. Go to **Admin&gt;Sales&gt;Scommerce Order Tagger&gt;Order Tags** then create a new tag and set conditions from the left menu.

### <span style="color: #3b82f6;">Tags in Action</span>

#### <span style="color: #f97316;">Order Grid</span>

The Tags are displayed in the order grid in a separate column. Multiple tags can be assigned and displayed for a single order.

[![image (1)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-1-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-1-converted.png)

#### <span style="color: #f97316;">Filter Order Grid</span>

Orders can be filtered based on the tags. New filter option can be found in the filters where orders can be sorted based on the tags selected. Go to **Admin&gt;Sales&gt;Filters** and click on the Tags dropdown to select the tags.

[![image (2)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-2-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-2-converted.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-order-tagger.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Export Custom Product Attribute

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Export Custom Product Attribute Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Export Custom Product Attribute*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Exporting Custom Product Attributes*](#bkmrk-exporting-custom-pro)

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Export Custom Product Attribute</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Export Product Attribute**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Allowed Attributes –** Select the product attributes that you want to list in separate columns while exporting the catalog products.

[![image (3)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-3-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-3-converted.png)

### <span style="color: #3b82f6;">Exporting Custom Product Attributes</span> [](#bkmrk--4)

Make sure the custom attributes that you want to import are selected under **Admin&gt;Stores&gt;Configuration&gt;Scommerce Configuration&gt;Export Custom Attributes&gt;Allowed Attributes**. Please follow the steps below to do the export.

**Step 1:-** Go to Admin&gt;System&gt;Export

[![image (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/p8Aimage-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/p8Aimage-1.png)

**Step 2:-** Select product from the 'Entity Type' dropdown list and select the attributes that you want to exclude from the export.

[![image (2).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/UChimage-2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/UChimage-2.png)

**Step 3:-** Click on continue and when the cron runs the export will be generated and added in the list below

[![image (4)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-4-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-4-converted.png)

**Step 4:-** Finally, download the export file from the select dropdown.

[![image (6)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-6-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-6-converted.png)

**Step 5:-** You can see in the export file that our custom attributes new and sale are present in separate columns.

[![image (7)_converted.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-7-converted.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-7-converted.png)

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-export-custom-product-attribute.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Subcategory Grid/List Extension

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Subcategory Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Subcategory Extension* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Subcategories Widget*
    - *Display Mode Selection Drop-down "Subcategories Only"*
    - *Sub-categories Settings Dropdown*
3. [*Front-end Screenshots* ](#bkmrk-front-end-screenshot)
    - *Subcategories Grid View on the Front- end*
    - *Subcategories List View on the Front- end*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Subcategory Extension</span> [](#bkmrk--1)

#### Go to Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; SubCategory

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Subcategories Background Color –** Please select the Subcategories background colour.
- **Thumbnail Placeholder –** Please choose the file of Thumbnail placeholder
- **Thumbnail width –** Please add the Thumbnail width.
- **Thumbnail height –** Please add the Thumbnail height.

[![image.jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/tSiimage.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/tSiimage.jpg)

#### <span style="color: #f97316;">Subcategories Widget</span> [](#bkmrk--4)

Subcategories widget will allow you to display subcategories in a Grid/list view on any page. Navigate to **Content &gt; Pages,** edit the page that where you want to display the subcategories. Go into Content and then simply click on insert widget and you will have options such as widget type where you have to select the widget named "Subcategories List" then select the category and the number of columns you want to display the subcategories in. Then Lastly click on insert widget.

[![image (4).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/tA8image-4.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/tA8image-4.png)

#### <span style="color: #f97316;">Display Mode Selection Drop-down "Subcategories Only"</span> [](#bkmrk--6)

Go to any of the categories page where you want to display subcategories on by navigating to **Catalog &gt; Categories**. Next go to display settings where you can select the display mode as "subcategories only" so that the page can display subcategories instead of products.

[![image (1).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Z6Simage-1.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Z6Simage-1.jpg)

#### <span style="color: #f97316;">Sub-categories Settings Dropdown</span> [](#bkmrk--8)

Go to any of the categories pages where you can select the settings by going into

**Sub-categories settings** dropdown. You can change the following settings: -

- **Thumbnail Category Image –** Here you can upload a thumbnail image for the category.
- **Sub-category Short Description –** You can add a short description here.
- **Number of columns –** Select the number of columns you want to display your subcategories in.

[![image (2).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/us8image-2.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/us8image-2.jpg)

### <span style="color: #3b82f6;">Front-end Screenshots</span> [](#bkmrk--10)

#### <span style="color: #f97316;">Subcategories Grid View on the Front- end</span> [](#bkmrk--11)

After successfully enabling subcategories you can see them listed in a Grid view on the frontend. You can select the number of columns depending upon that the frontend will review the Grid view. To select the columns Navigate to **Catalog &gt; Categories** and then select the category. Scroll down to **Sub-Categories Settings**. Here you will have the option to upload the thumbnail image, short description and number of columns. Each of the subcategories will be listed with a description, background and image as defined by you.

[![image (3).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/O2Limage-3.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/O2Limage-3.jpg)

#### <span style="color: #f97316;">Subcategories List View on the Front- end</span> [](#bkmrk--13)

Navigate to **Catalog &gt; Categories**, select the category, and then scroll down to **Sub-Categories settings.** You can select the number of columns here. Similarly display the subcategories in a list view by selecting the number of columns as "1".

[![image (4).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/VDpimage-4.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/VDpimage-4.jpg)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-subcategory-grid.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Admin Action Log

<span style="color: #3b82f6;">Installation and User Guide for Magento 2 Admin Activity Logger Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for* *Security Base*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Configuration Settings for Admin Activity Logger* ](#bkmrk-configuration-settin-1)
    - *General Settings*
    - *Modules Activity Logger*
    - *Admin Activity Logger*
    - *Admin Activity Grid*
    - *Admin Logger Detailed View for Admin Activities*
    - *Admin Logger Detailed View for Item Info*
    - *Login Activity Grid*
    - *Active Sessions Grid*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to Account section and click on My Downloadable Products and download the extension package.

[![image (5).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/lYJimage-5.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/lYJimage-5.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Security Base</span> [](#bkmrk--2)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Base**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--3)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (8).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Umaimage-8.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Umaimage-8.png)

### <span style="color: #3b82f6;">Configuration Settings for Admin Activity Logger</span> [](#bkmrk--5)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Activity Logger**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--6)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <core@scommerce-mage.com>
- **Admin Users Login Activity Enabled -** Enable / Disable activity. It will log login activity of the admin users.
- **Page visit History Enabled -** Enable / Disable page history visiting log.
- **Clear Admin Activity Logs After -** Enter value. Clear all admin activity logs will be cleared after X days.
- **Enabled Profiler -** Enable / Disable time profiler. Duration of the operations will be logged.

[![image (5).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/IPzimage-5.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/IPzimage-5.jpg)

#### <span style="color: #f97316;">Modules Activity Logger</span> [](#bkmrk--8)

- **Order -** Select "Yes" to enable. It will log order related activities.
- **Product -** Select "Yes" to enable. It will log product related activities.
- **Category -** Select "Yes" to enable. It will log category related activities.
- **Customer -** Select "Yes" to enable. It will log customer related activities.
- **Promotion-** Select "Yes" to enable.
- **Email Template -** Select "Yes" to enable.
- **Page -** Select "Yes" or "No" to Enable / Disable.
- **Block -** Select "Yes" or "No" to Enable / Disable.
- **Widget -** Select "Yes" or "No" to Enable / Disable.
- **Theme -** Select "Yes or "No" to Enable / Disable.
- **System Configuration -** Select "Yes" or "No" to Enable / Disable.
- **Product Attributes -** Select "Yes" or "No" to Enable / Disable.
- **Admin User -** Select "Yes" to enable. It will log all users activities.
- **SEO -** Select "Yes" or "No" to Enable / Disable.

[![image (6).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/NuPimage-6.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/NuPimage-6.png)

- <span style="color: #f97316;">**Admin Activity Logger -**</span> You can view admin activity logger from, **Admin &gt; System &gt; Scommerce Admin Activity Logger &gt; Admin Activity / Login Activity.**

**[![image (10).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/67timage-10.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/67timage-10.png)**

- <span style="color: #f97316;">**Admin Activity Grid -**</span> In the back-end under Admin Activity Logger grid you can view all the admin activities details from **Admin &gt; System &gt; Admin Activity Logger**. This grid will have, Admin Username, Name, Activity Type, Store View, Module, Full Action, IP, Item, Revert and Action columns.
    
    
    - **Date: -** The exact date and time of the activity performed.
    - **Admin Username: -** user name of the admin.
    - **Name: -** The name of the admin.
    - **Activity Type: -** Type of activity performed
    - **Store view: -** Name of the store view
    - **Module: -** The name of the module used in the activity.
    - **Full Action: -** It contains the URL path of the activity performed.
    - **IP Address: -** The IP address of the user.
    - **Item: -** Activity related item such as a product or system configuration changes.
    - **Revert: -** If the action is not complete then the REVERT column will have the notification.
    - **Action: -** It contains view where you can see the key details of the activity such as general and item info.

[![image (6).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/4Cjimage-6.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/4Cjimage-6.jpg)

#### <span style="color: #f97316;">Admin Activity Logger</span>

- <span style="color: #f97316;">**Admin Logger Detailed View for Admin Activities -**</span> To get more details about each particular action simply click on the 'View' link from **Admin &gt; System &gt; Admin Activity Logger &gt; Select Log &gt; Click on 'View' &gt; General, to view all the detailed data.**
    
    
    - You can view all the general details of the user's activity in the general tab.

[![image (7).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/ucqimage-7.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/ucqimage-7.jpg)

- <span style="color: #f97316;">**Admin Logger Detailed View for Items Info -**</span> You can view the item details from **Admin &gt; System &gt; Admin Activity Logger &gt; Select Log &gt; Click on 'View' &gt; Items info.**
    
    
    - This section contains all granular information. For instance if you place an order from the admin panel then all the details of the order such as price, store, etc. Are visible in this section.

[![image (8).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/eXZimage-8.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/eXZimage-8.jpg)

- <span style="color: #f97316;">**Login Activity Grid -**</span> You can view login activities from **Admin &gt; System &gt; Scommerce Admin Activity Logger &gt; Active Sessions**. It logs details of each and every single activity along with what value being changed by who and when. This section contains following information: -
    
    
    - **Date: -** The precise date and time of the log.
    - **Type: -** whether logged in or logged out.
    - **Username: -** Username of the person is stored here.
    - **Name: -** Name of the user
    - **Ip Address: -** You can see the IP address here.
    - **User Agent: -** The browser and device details of the user are shown here.
    - **Status: -** If the login fails then the status will show FAILED and if the login or logout is successful then it shows SUCCESS

[![image (9).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/YGMimage-9.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/YGMimage-9.jpg)

- <span style="color: #f97316;">**Active Sessions Grid-**</span> You can view Active Sessions from **Admin &gt; System &gt; Login Activity &gt; Login Acti**. It logs details of every active admin session on the store. The active session is listed with various useful details. Also, it gives the admin the option to terminate any active admin session through the "Terminate" button under the action column. Once terminated that admin will be logged out of the account automatically. Furthermore, the grid is completely filterable using various columns. This section contains the following information: -
    
    
    - **Id: -** A Unique ID for each active session.
    - **Admin Username: -** Username of the admin of that particular active session.
    - **IP: -** IP address of the admin of that session.
    - **Last Action: -** Last action performed by the admin of this session.
    - **User Agent: -** Various platform, device, and browser information of the admin of this session.
    - **Action: -** Contains the option to terminate this particular session.

[![image (11).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/eDlimage-11.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/eDlimage-11.png)

If you have a question related to this extension please check out our [**FAQ Section** ](https://www.scommerce-mage.com/magento-2-admin-action-log.html#customfaq)first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Content Security Policy (CSP) Whitelist Manager

<span style="color: #3b82f6;">Installation and User Guide for Magento 2 Content Security Policy (CSP) Whitelist Manager</span>

**Table of Contents**

1. [*Installation*](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Content Security Policy (CSP) Whitelist*](#bkmrk-configuration-settin)
    - *General Settings*
    - *CSP Directives*
    - *Critical Security Overrides*
3. *[CSP Reports Grid](#bkmrk-csp-reports-grid)*
4. [*Working of the extension*](#bkmrk-working-of-the-exten)
    - *Steps to Check and Fix Console CSP Errors through CSP Grid*
    - *Steps to Check and Fix Console CSP Errors*
5. [*Fixing Inline Script and Inline Style Content Security Policy Issues*](#bkmrk-fixing-inline-script)
    - *Inline Style Error Example*
    - *Inline Script Error Example*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to My Account section and click on My Downloadable Products and download the extension package.

[![image (7).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/lWaimage-7.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/lWaimage-7.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy en_GB en_US
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Content Security Policy (CSP) Whitelist</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; CSP Whitelist**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--3)

- **IMPORTANT INFORMATION**- When adding or changing whitelist, ensure to include only those domains that are recognized and trustworthy. This precaution is crucial because unauthorized or compromised domains may contain malicious scripts.
- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Report Only Mode -** Set "Yes" to enable Report Only mode for CSP ( it will only report CSP vulnerabilities in the CSP reports grid and browser console. Make sure to add Report URL in Configuration&gt;Security&gt;CSP for the CSP grid to collect reports. Set "No" to enable Strict Mode ( it will prevent data from loading or code from getting executed to prevent vulnerabilities).
- **Report Collection Enabled:-** Set "Yes" to enable collecting CSP reports in the CSP grid, Set "No" these errors will only be available in the browser console
- **Report URL Configuration:-** Please add following URLs in *Security &gt; CSP section* of your Store config **Admin Default** - *https://BASE\_URL/scommercereporturi/report/admin **Storefront***\*\* Default\*\* - *https://BASE\_URL/scommercereporturi/report/storefront*

*[![image (12).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Casimage-12.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Casimage-12.png)*

#### <span style="color: #f97316;">CSP Directives</span> [](#bkmrk--3)

- **Default Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for default-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (13).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Xghimage-13.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Xghimage-13.png)

- **Base Uri**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for base-uri
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (14).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-14.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-14.png)

- **Child Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for child-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (15).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-15.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-15.png)

- **Connect Src**
    
    
    - **Enabled-** Select "Yes" or "No" to enable or disable csp whitelist for connect-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (16).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-16.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-16.png)

- **Font Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for font-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (17).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-17.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-17.png)

- **Form Action**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for form-action
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (9).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/lqHimage-9.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/lqHimage-9.png)

- **Frame Ancestors**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for frame-ancestors
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (18).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-18.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-18.png)

- **Frame Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for frame-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (19).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-19.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-19.png)

- **Img Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for img-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (20).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-20.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-20.png)

- **Manifest Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for manifest-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (21).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-21.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-21.png)

- **Media Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for media-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (22) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-22-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-22-1.png)

- **Object Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for object-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (23) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-23-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-23-1.png)

- **Script Src**
    
    
    - **Enabled**- Select "Yes" or "No" to enable or disable csp whitelist for script-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (23).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-23.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-23.png)

- **Style Src**
    
    
    - **Enabled-** Select "Yes" or "No" to enable or disable csp whitelist for style-src
    - **Whitelist entries**- Please add URLs that you want to whitelist. By default, the type of entry added would be host. You can also delete this entry and add multiple entries.

[![image (24).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-24.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-24.png)

<span style="color: #f97316;">**Critical Security Overrides**</span>

- **Enable Unsafe Inline Script-** This setting permits the execution of unsafe inline scripts, which can be introduced by your developers / third party extensions / attackers. Make sure you assess these unsafe inline scripts before setting this to YES.

<span style="color: #f97316;">**Caution**</span>: Enabling unsafe inline scripts is a temporary measure and should only be done under the guidance of your developer. You must ask your developers or third party extension providers to whitelist their inline scripts. This setting must NOT be left on 'YES' permanently, as it significantly increases the risk of security vulnerabilities, making your site an easy target for attackers. Always prioritise the security of your site and user data.

[![image (24) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-24-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-24-1.png)

### <span style="color: #3b82f6;">**CSP Reports Grid**</span>

The CSP Reports Grid collects and displays all the CSP errors on both frontend and backend. To enable report collection please make sure to add the following URLs in *Security &gt; CSP section* of your Store config:-

- **Admin Default** - *https://BASE\_URL/scommercereporturi/report/admin*
- ***Storefront***\*\* Default\*\* - *https://BASE\_URL/scommercereporturi/report/storefront*

*[![image (25).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-25.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-25.png)*

To access the grid go to Admin&gt;System&gt;Scommerce CSP Records&gt; CSP Report Only Grid

[![image (26).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-26.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-26.png)

- **ID:-** Id of the record
- **Blocked URL:-** The URL reported in the CSP error
- **Report Type:-** Store Front (frontend) or Admin(backend), where the error was reported
- **Source URLs:-** The Source URL of the page where this error was reported
- **Policy violation:-** The CSP directive which was violated in this record.
- **Last report date:-** When was this error last reported.

### <span style="color: #3b82f6;">**Working of the extension**</span>

<span style="color: #f97316;">**Steps to Check and Fix Console CSP Errors thorugh CSP Reports Grid**</span>

Go to Admin&gt;System&gt;Scommerce CSP Records&gt; CSP Report Only Grid, select the error records that you want to whitelist then from the Actions dropdown, select whitelist.

[![image (27).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-27.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-27.png)

Please clear caches as prompted:-

[![image (28).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-28.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-28.png)

Once done all the selected entries will be whitelisted into their specific CSP directive and should be visible in the admin configuration.

[![image (30).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-30.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-30.png)

<span style="color: red;">**Note:-**</span> *If you have already whitelisted the entries manually in the configuration then you can delete these records from the grid by selection the records that you want to delete and then click on Action dropdown and select delete.*

*[![image (31).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-31.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-31.png)*

<span style="color: #f97316;">**Steps to Check and Fix Console CSP Errors Manually**</span>

- Check the errors present in the frontend's console.

[![image (32).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-32.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-32.png)

- Check the source of these errors.

[![image (33).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-33.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-33.png)

- Check the URL present in these errors.

[![image (29).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-29.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-29.png)

- In the backend, add the URL to the source to which that error belongs to.

[![image (34).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-34.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-34.png)

- You would no longer see the error on the frontend

[![image (34) (2).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-34-2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-34-2.png)

### <span style="color: #3b82f6;">**Fixing Inline Script and Inline Style Content Security Policy Issues**</span>

In this section, we will show you how to fix the inline script and style related console errors for Content Security Policy. Please check the image below:

[![image (35).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-35.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-35.png)

- Identify the script or style tag that's causing the console error.
- Create SHA256 hash of contents of with the script or style tag and then use bas64 to encode this hash. It can be done all together :- [https://emn178.github.io/online-tools/sha256.html](https://emn178.github.io/online-tools/sha256.html)
- Alternatively you can generate the hash using PHP as shown below.
    
     ```php
    $whitelistHash = base64_encode(hash('sha256', $content, true));
    ```
- Next we add this hash to our module in the correct section i.e either style or script.

Let us look at examples to understand this process better:

<span style="color: #f97316;">**Inline Style Error Example**</span>

- Suppose we identified the style thats causing the issue as follows:

```php
<style>
body {
background-color: #f3f3f3;
}
</style>
```

- Next we will go the site and create a SHA256 hash as well as the base64 encode of this hash of the contents of the style tag as shown in screengrab below:

[![image (35) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-35-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-35-1.png)

- Now copy this hash and go to **Stores&gt;Configuration&gt;Scommerce Configuration&gt;CSP Whitelist** and scroll down to find the **Style Src** section. Add the hash here as shown in the image below:

[![image (36).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-36.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-36.png)

- Please make sure hash is selected in the type dropdown. This should resolve the console error.

<span style="color: #f97316;">**Inline Script Error Example**</span>

- The identified script tag causing the issue is as follows:

```php
<script>
console.log('Hello, world!');
</script>
```

- We will go the site([https://emn178.github.io/online-tools/sha256.html](https://emn178.github.io/online-tools/sha256.html)) and create a SHA256 hash as well as the base64 encode of this hash of the contents of the style tag as shown in screengrab below:

[![image (36) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-36-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-36-1.png)

- Now copy this hash and go to **Stores&gt;Configuration&gt;Scommerce Configuration&gt;CSP Whitelist** and scroll down to find the **Script Src** section. Add the hash here as shown in the image below:

[![image (37).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-37.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-37.png)

- Please make sure hash is selected in the type dropdown. This should resolve the console error.

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-csp-whitelisting.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 OTP Login

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 OTP Login Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for OTP Login*](#bkmrk-configuration-settin)
    - [*General Settings* ](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4)
    - [*OTP Configuration*](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-1)
    - [*API Configuration*](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-2)
    - [*Emails* ](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-3)
    - [*Messages*](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-4)
3. [*Sign in using OTP*](#bkmrk-sign-in-using-otp)
    - [*Login with Mobile*](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-5)
    - [*Login with Email*](https://docs.scommerce-mage.com/magento-2-otp-login.md#bookmark4-6)
4. *[Registration using OTP](#bkmrk-registration-using-o)*
5. *[Update Mobile Number](#bkmrk-update-mobile-number)*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for OTP Login</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; OTP Login**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--17)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. Please go to *Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Core* and click on "Verify" to verify the license key.
- **Enable Login with Mobile** - Select "Yes" or "No". If set to "Yes" then users will be able to login to the store using their mobile number.

[![image (37).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/JLlimage-37.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/JLlimage-37.png)

#### <span style="color: #f97316;">OTP Configuration</span> [](#bkmrk--17)

- **Allowed Countries-** Select the countries allowed to be used for sending via SMS.
- **OTP Type -** You can select the OTP type that sent via sms from Number, Alphabets, and Alphanumeric.
- **OTP Length** - Enter the length of the OTP sent.
- **Expire Time-** Add the time after which the OTP is expired and can't be used after this duration.
- **Time Between Resend (sec)-** Enter the time in seconds after which users will be able to resend the otp.
- **Retry Count-** Enter the number of retries allowed to resend otp before the user is locked out.
- **Lock Time (minutes)-** Add the lock time on multiple otp failures
- **Channel on Register-** Select the countries allowed to be used for sending via SMS.

[![image (8).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/RG1image-8.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/RG1image-8.png)

#### <span style="color: #f97316;">API Configuration</span> [](#bkmrk--17)

This section is to configure TWILIO as the SMS provider used for sending OTPs. Please visit [https://www.twilio.com/en-us](https://www.twilio.com/en-us) to create an account and extract the information to be added below:-

- **Sender ID-** Add the sender ID from Twilio.
- **Authorization Key -** Add the authorization key from Twilio
- **Mobile Number**- Add the mobile number from Twilio without the "+" sign

[![image (9).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/oG1image-9.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/oG1image-9.png)

#### <span style="color: #f97316;">Emails</span> [](#bkmrk--17)

This section is to configure the Sender Email and the Email template used to send OTPs via Email:-

- **Success Email Sender-** Select the Email to be used for sending successful login emails.
- **Otp Email Template -** Select the Email template to be used for OTP emails.

[![image (10).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/sQJimage-10.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/sQJimage-10.png)

#### <span style="color: #f97316;">Messages</span> [](#bkmrk--17)

This section is to configure the Sender Email and the Email template used to send OTPs via Email:-

- **Register Channel Message-** Enter the message to be displayed on the registeration page for the users.

[![image (11).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/1nkimage-11.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/1nkimage-11.png)

### <span style="color: #3b82f6;">Sign In Using OTP</span> [](#bkmrk--23)

#### <span style="color: #f97316;">Login with Mobile</span> [](#bkmrk--17)

Go to the frontend and click on Sign In, you will it opens a popup to signin with Mobile. Add your Mobile number and click on Send OTP. Make sure Sign in with Mobile is enabled in the configuration only then you will be able to sign in using Mobile Number.

[![image (5).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/bL9image-5.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/bL9image-5.png)

Enter the OTP to sign in

[![image (12).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/eadimage-12.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/eadimage-12.png)

If the OTP is expired click on resend to resend the otp.

[![image (13).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/uFbimage-13.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/uFbimage-13.png)

#### <span style="color: #f97316;">Login with Email</span> [](#bkmrk--17)

Go to the frontend and click on Sign In, you will it opens a popup, select Signin with Email.

[![image (14).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/X21image-14.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/X21image-14.png)

Add credentials and proceed an OTP will be sent to your email, add to login to the store.

[![image (15).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/yi0image-15.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/yi0image-15.png)

### <span style="color: #3b82f6;">Registration using OTP</span> [](#bkmrk--23)

Go to the store and click on "Create an account", the registration will popup, add your details alongwith your phone number.

[![image (6).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/BUrimage-6.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/BUrimage-6.png)

Finally click on Create Account and an OTP will be sent to your mobile number use it to register on the store.

[![image (7).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Fsaimage-7.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Fsaimage-7.png)

### <span style="color: #3b82f6;">Update Mobile Number</span> [](#bkmrk--23)

Users can update their Phone Number with the Account by signing in to the store and then going to the "My Account" section. From the left menu click on "OTP Settings". Add your new number and password to update the mobile number.

[![image (16).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Rlkimage-16.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Rlkimage-16.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-otp-login.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Order Delete or Archive

### <span style="color: #3b82f6;">Installation and user Guide for Magento 2 Order Delete or Archive Extension</span>

**Table Of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Order Delete or Archive* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Order Archive Settings*
    - *Order Delete Settings*
3. [*Order Grid* ](#bkmrk-order-grid)
    - *Archive or Delete Orders from Order View Page*
4. [*Archive Grid* ](#bkmrk-archive-grid)
    - *Restore*
    - *Restore Orders From Archived Order View Page*
5. [*Automatically Archive Orders* ](https://docs.scommerce-mage.com/magento-2-order-delete-or-archive.md#bookmark12)

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Order Delete or Archive</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Archive Orders**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Module Enable -** Select "Yes" or "No" to enable or disable the module.
- **License Key -**. Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (5).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/U99image-5.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/U99image-5.jpg)

#### <span style="color: #f97316;">Order Archive Settings</span> [](#bkmrk--4)

- **Enabled (Yes / No) -** Select "Yes" to archive orders automatically.
- **Retention Period -** Please define retention period. This setting will automatically archive orders older than specified number of days
- **Cron Schedule -** Schedule the cron job to automatically archive the orders (**Default - Midnight**)
- **Send Email (Yes / No) -** Select "Yes" to send email after successfully archival orders.
- **Sender -** Please enter sender/from email address to send an email to administrator after the successful archival of order(s).
- **Email Template -** Please select email template for order archival email.
- **Receiver -** Please add email addresses of administrators who will receive order archival email (comma separated).
- **Order Statuses (Multi-select) -** Please select certain order statuses to be allowed by administrators to be archived.

[![image (6).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/DJximage-6.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/DJximage-6.jpg)

[![image (7).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/oG9image-7.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/oG9image-7.jpg)

#### <span style="color: #f97316;">Order Delete Settings</span> [](#bkmrk--7)

- **Enabled (Yes / No) -** Please select "Yes" or "No". If set to "Yes" then it will permanently delete orders.
- **Sender -** Please enter sender/from email address .
- **Email Template -** Please select email template for order deletion email.
- **Receiver -** Please add email addresses of administrator, who will receive order deletion email (comma separated).
- **Order Statuses (Multi-select) -** Please select certain order statuses for order deletion.

[![image (8).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/neUimage-8.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/neUimage-8.jpg)

### <span style="color: #3b82f6;">Order Grid</span> [](#bkmrk--9)

When you enable the "Order Archive" and "Order Delete" settings from **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Archive Orders &gt; Order Archive / Order Delete Settings &gt; Enabled - "Yes"** , then it adds two additional options "Archive" and "Delete " under the "Actions" drop-down at **Admin &gt; Sales &gt; Order &gt; Actions.**

- <span style="color: #f97316;">**Archive -**</span> It moves/archives order(s) to another storage(archive grid) instead of deleting them. This action can be restored from the archive order view page.
- <span style="color: #f97316;">**Delete -**</span> It deletes order(s) permanently. The "Delete" action cannot be reversed and erases all order(s) and related information.

[![image (17).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/fZUimage-17.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/fZUimage-17.png)

- <span style="color: #f97316;">**Archive or Delete Orders from Order View Page -**</span> You can delete and archive order(s) from, **Admin &gt; Sales &gt; Orders &gt; Select Order &gt; View**. The order view page will have two additional options "Delete" and "Archive" and using these two buttons you can perform "Delete" and "Archive" actions. Buttons will only be visible when the module is enabled and the administrator has right role to archive/delete order(s).

[![image (9).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Rscimage-9.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Rscimage-9.jpg)

### <span style="color: #3b82f6;">Archive Grid</span> [](#bkmrk--12)

To view archived orders, go to **Admin &gt; Sales &gt; Archive Orders**. This grid will have an additional option "Restore "under "Actions" drop-down to restore the archived orders.

- <span style="color: #f97316;">**Restore -**</span> By selecting "**Restore**" from **Admin &gt; Sales &gt; Archive Orders&gt; Actions** drop-down you can easily restore archived order(s).

[![image (18).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/7p4image-18.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/7p4image-18.png)

- <span style="color: #f97316;">**Restore Orders From Archived Order View Page -**</span> You can restore archived orders from **Admin &gt; Sales &gt; Archive Orders &gt; Select Order &gt; View &gt;** Click **"Restore".**

**Restore -** It restores archived orders.

[![image (10).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Yabimage-10.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Yabimage-10.jpg)

### <span style="color: #3b82f6;">Automatically Archive Orders</span> [](#bkmrk--15)

When you enable the module and define the number of days for "Retention Period" from, **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Archive Orders &gt; Order Archive Settings,** then it automatically archives order(s) older than defined days. After each successful order archival process, it sends an email to an administrator with details like how many numbers of orders being archived etc..

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-delete-or-archive-order.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Custom Stock Status Extension

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Custom Stock Status Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Custom Stock Status* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Stock Status Rules Grid*
    - *Add New Rule*
    - *Custom Stock Status and Rule Name at Product Level*
    - *Salable Quantity*
    - *Assign Custom Stock Status Rule to Products Automatically or Manually*
    - *Manually*
    - *Automatically on Cron Run*
    - *Multi Websites Selection*
    - *Custom Stock Status Product Attribute*
3. [*Front-end Site View* ](#bkmrk-front-end-site-view)
    - *Custom Stock Message for Simple Products on the Product Page*
    - *Custom Stock Message for Configurable Products on the Product Page*
    - *Custom Stock Message on the Cart &amp; Checkout Pages*
    - *Custom Stock Message on Related, Cross-sells and Up-sells Products*
    - *Status Message in the Order Confirmation Email*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Custom Stock Status</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Custom Stock Status**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Custom Stock Message on Related Product –** Select "Yes" to enable the custom stock message on related product.
- **Custom Stock Message on Up-Sells Product –** Select "Yes" to enable the custom stock message on Up-sells product.
- **Custom Stock Message or Cross-Sells Product –** Select "Yes" to enable the custom stock message on Cross-sells product.
- **Cron Schedule –** Schedule cron job to automatically update custom stock status based on correct rule.

[![image (11).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-11.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-11.jpg)

<span style="color: #f97316;">**Stock Status Rules Grid –**</span> This will be a grid in admin &gt; Catalog &gt; Stock Status Rules, with below column: -

- **ID:** ID, this is auto generated and non-editable
- **Rule Name:** Name of the rule
- **Status:** Status of the rule, Enabled/Disabled
- **Website:** Name of the website
- **Priority:** Priority of the rule
- **Action:** Edit/Delete

[![image (12).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/4Tlimage-12.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/4Tlimage-12.jpg)

- **Add New Rule –** You can add new rule by clicking "Add New Rule" from **Admin &gt; Catalog &gt; Products &gt; Stock Status Rules &gt;Add New Rule**, it redirects to the detailed view for Rule from where you can create a new rule by filling the required fields.
- **Rule Name -** Add generic name for rule
- **Website -** Select website from multi-select, from here you can select multiple website
- **Enable -** Please enable/disable rule by slider
- **Priority -** You can add priority (int) for the rule. In case of conflicting rules for a product the lowest number will have highest priority like 0 will be given priority over 1. If no priority defined then any random rule will apply
- **Conditions -** Add the conditions to match, leave blank for all products
- **Default Stock Message -** You can select default stock message from the drop- down, which will be shown on the frontend and replace availability (In Stock / Out Stock) message.
- **Apply Stock Quantity Ranges:** You can enable it by turning "On" this option. If it is enabled then it shows below grid where you can define stock ranges and corresponding status. Please note that if the range is not provided for given stock quantity then the default message will be shown.

[![image (19).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/XG9image-19.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/XG9image-19.png)

### <span style="color: #3b82f6;">Add New Stock Status Rules - Admin Site View</span>

<span style="color: #3b82f6;">[![image (16) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-16-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-16-1.png)</span>

- <span style="color: #f97316;">**Custom Stock Status and Rule Name at Product Level -**</span> You can view the associated rule to product from **Admin &gt; Catalog &gt; Products &gt; Select product.**

<span style="color: #f97316;">**Salable Quantity -**</span> On product save it updates the stock status message based on the salable quantity and the quantity rule. To view salable quantity go to **Admin &gt; Catalog&gt; products &gt; Select Product &gt; Product Salable Quantity.**

**[![image (20).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/WQNimage-20.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/WQNimage-20.png)**

#### <span style="color: #f97316;">Assign Custom Stock Status Rule to Products Automatically or Manually</span> [](#bkmrk--8)

- <span style="color: #3b82f6;">**Manually -**</span> You can assign rules to product manually from **Admin &gt; Catalog&gt; Products &gt; Select Product &gt; Rule Name -** Select rule from the "Rule Name" drop-down list.

[![image (21).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/dcuimage-21.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/dcuimage-21.png)

- <span style="color: #3b82f6;">**Automatically on Cron Run -**</span> You can schedule the Cron job from **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Custom Stock Status**, on cron run the rule will be automatically assigned to products based on the matched condition and set the correct message.

<span style="color: #f97316;">**Multi Websites Selection -**</span> It fully supports multi-store and websites, you can select websites from **Admin &gt; Catalog &gt; Products &gt; Select Product &gt; Product in Websites-** check websites.

[![image (13).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/ctXimage-13.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/ctXimage-13.jpg)

- <span style="color: #f97316;">**Custom Stock Status Product Attribute -**</span> You can add values to custom stock status product attribute from **Admin &gt; Store &gt;Attribute &gt; Product&gt; Product Attribute&gt;Select - custom\_stock\_status &gt; Properties &gt; Add option**, the added values will be populated in the default /custom stock status message drop-down.

[![image (14).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-14.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-14.jpg)

### <span style="color: #3b82f6;">Front-end Site View</span> [](#bkmrk--12)

- <span style="color: #f97316;">**Custom Stock Message for Simple Products on the Product Page –**</span> It displays stock status message for simple product based on salable qty and quantity ranges rule.

[![image (15).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Idkimage-15.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Idkimage-15.jpg)

- #### <span style="color: #f97316;">Custom Stock Message for Configurable Products on the Product Page :-</span> For configurable product it displays stock status based on variant selection**.** [](#bkmrk--14)

**[![image (16).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/9Uuimage-16.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/9Uuimage-16.jpg)**

- <span style="color: #f97316;">**Custom Stock Message on the Cart &amp; Checkout Pages –**</span> You can see the stock status message on cart and checkout pages.

[![image (17).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/dbAimage-17.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/dbAimage-17.jpg)

- <span style="color: #f97316;">**Custom Stock Message on Related, Cross-sells and Up-sells Products –**</span> When you select "Yes" for "**Custom Stock Message on Related Product / Up-Sells/ Cross- Sells**" from **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Custom Stock Status,** then it shows stock status message on related/up-sells/cross- sells products.

[![image (18).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/qt6image-18.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/qt6image-18.jpg)

- <span style="color: #f97316;">**Status Message in the Order Confirmation Email –**</span> In the order confirmation email you can see the added stock status message.

[![image (19).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-19.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-19.jpg)

If you have a question related to this extension please check out our [**FAQ Section** ](https://www.scommerce-mage.com/magento-2-custom-stock-status.html#customfaq)first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Ajax Login and Add to Wishlist

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 AJAX Login and Add to Wishlist</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Ajax Login &amp; Wishlist* ](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Front-end site view* ](#bkmrk-front-end-site-view)
    - *Ajax Add to Wishlist - Ajax SignIn Popup*
    - *Ajax Add to Wishlist – Ajax Create an Account Popup*
    - *Ajax Add to Wishlist – Mini Cart Drop-Down Slider*
    - *Limit The Quantity of Products to Show In The Cart Slider*
    - *Ajax Add to Wishlist – Ajax Add to Wishlist Popup*
    - *Ajax Add to Wishlist – Ajax Add to Wishlist Confirmation Message*
    - *Ajax Add to Wishlist – Wishlist Products Under my Account – My Wishlist Section*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Ajax Login &amp; Wishlist</span> [](#bkmrk--1)

#### Go to Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Ajax Login &amp; Wishlist

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Enable Ajax Wish List –** Select "Yes" or "No" to enable or disable the Ajax Wish List.
- **Enable Ajax Login –** Select "Yes" or "No" to enable or disable the Ajax Login
- **Enable Slide Down Mini Cart –** Select "Yes" or "No" to enable or disable slide down effect of mini cart after adding item to the basket.

[![image (20).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-20.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-20.jpg)

### <span style="color: #3b82f6;">Front-end site view</span> [](#bkmrk--4)

#### <span style="color: #f97316;">Ajax Add to Wishlist - Ajax SignIn Popup</span> [](#bkmrk--5)

No more waiting to be redirected to the Sign In page. When you click on Sign in a pop-up will appear on your screen and you will be able to login to the site without reloading the page. It is great for ease of access as well as saves time. Also, it does not matter which page you are browsing the pop-up will work with most pages. To enable the Ajax login feature first login to your admin panel.

[![image (22).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-22.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-22.png)

#### <span style="color: #f97316;">Ajax Add to Wishlist – Ajax Create an Account Popup</span> [](#bkmrk--7)

Enables users to create an account or register on the website via a pop-up. Initially upon clicking on create an account users were redirected to a different page but now you can stay where you are browsing and create an account without having to reload or redirect the page. It makes convenient for new users to gain access.

You can toggle this feature on or off by loggin into your admin panel and then going to the path **Stores &gt; Configuration &gt; Scommerce Configuration &gt; Ajax Login &amp; Wishlist**. There will be flag named Enable Ajax Login you can select "Yes" or "No" from the drop-down that will turn this feature on or off.

[![image (23).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/zcXimage-23.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/zcXimage-23.png)

#### <span style="color: #f97316;">Ajax Add to Wishlist – Mini Cart Drop-Down Slider</span> [](#bkmrk--9)

When products are added to the cart a drop-down slider appears in the mini cart. It makes easy for users to keep track of their products that they have added to the cart. You can scroll down to browse your products in the cart. The number of products to appear in the list can be changed from settings.

This feature can be enabled or disabled from the admin panel. First Login to your admin panel then go to the following path **Stores &gt; Configuration &gt; Scommerce Configuration &gt; Ajax Login &amp; Wishlist**. There you will have an option named

Enable slide down mini cart, from the drop-down menu select "Yes/No" to Enable/Disable this feature.

#### <span style="color: #f97316;">Limit the Quantity of Products to Show in the Cart Slider</span> [](#bkmrk--10)

Also, you can limit the quantity of products to show in the cart slider. You can do that by going into **Stores &gt; Configuration &gt; Sales &gt; Checkout &gt; Shopping cart sidebar**. There you will see an option named Number of items to display scrollbar. Here enter your quantity and the scrollbar will appear after that many number of products are added to the cart.

[![image (21).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-21.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-21.jpg)

#### <span style="color: #f97316;">Ajax Add to Wishlist – Ajax Add to Wishlist Popup</span> [](#bkmrk--12)

Generally, when a product is added to the wishlist you are redirected to another page but while this setting is enabled you will be able to add products to wishlist without redirecting or reloading the page. If you are not signed In, a pop-up will appear on the screen saying either sign in or create an account. This feature can be enabled

or disabled by log in to your admin panel then going to the path **Stores &gt; Configuration &gt; Scommerce Configuration &gt; Ajax Login &amp; Wishlist.** Here you will see an option named Enable Ajax Wish List, from the drop-down select Yes/No to Enable/Disable this functionality.

[![image (22).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-22.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-22.jpg)

#### <span style="color: #f97316;">Ajax Add to Wishlist – Ajax Add to Wishlist Confirmation Message</span> [](#bkmrk--14)

While this option is enabled when any product is added to the cart you will receive a pop-up message on the screen showing your product has been successfully added to the wishlist. Keep in mind you need to be logged in to add products to wishlist.

[![image (24).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/G0mimage-24.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/G0mimage-24.png)

#### <span style="color: #f97316;">Ajax Add to Wishlist – Wishlist Products Under my Account – My Wishlist Section</span> [](#bkmrk--16)

All the products added to the wishlist should be visible under your account under the wishlist section. Add multiple products to Wishlist without reloading the page every time and view them listed in the wishlist section of your account.

[![image (23).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-23.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-23.jpg)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-ajax-login-add-to-wishlist.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Associated or Linked Product Stock Update

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Associated or Linked Product Stock Update Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Associated Product* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Product Association at Product Level*
    - *Product Association for Simple Product*
    - *Product Association for Configurable/Child Product*
    - *Product Grid at Product Level*
    - *Associated or Linked Product Stock Update*
3. *[Fix Product Associations](#bkmrk-fix-product-associat)*
4. [*Import / Export* ](#bkmrk-import-%2F-export)
    - *Import*
    - *Export*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Associated Product</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Associated Product**

### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Optimise Stock save** - Select "Yes" or "No". If set to "Yes" then it will optimise stock save for better performance on products with large amounts of associated products.

[![image (25).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/TOJimage-25.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/TOJimage-25.png)

- <span style="color: #f97316;">**Product Association at Product Level –**</span> You can associate products from **Admin &gt; Catalog &gt; Products &gt; Select Product &gt; Product Association &gt; Click "AddProduct".**

### <span style="color: #3b82f6;">Product Association for Simple Product</span> [](#bkmrk--4)

<span style="color: #3b82f6;">[![image (24).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-24.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-24.jpg)</span>

### <span style="color: #3b82f6;">Product Association for Configurable/Child Product</span> [](#bkmrk--6)

<span style="color: #3b82f6;">[![image (25).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-25.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-25.jpg)</span>

- <span style="color: #f97316;">**Product Grid at Product Level –**</span> You can add products from **Admin &gt; Catalog&gt; Products &gt; Select Product &gt; Product Association &gt;** Click **"Add Product" &gt; Product Grid &gt; Select Products &gt; Click "Add Selected Products".**

**[![image (26).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/4drimage-26.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/4drimage-26.png)**

- <span style="color: #f97316;">**Associated or Linked Product Stock Update -**</span> Associated product stock/quantity will be updated based on the main product, which you can see in the below screen grab. It supports multiple linking where one product can have multiple associated products.

[![image (26).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-26.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-26.jpg)

### <span style="color: #3b82f6;">Fix Product Associations</span> [](#bkmrk--11)

Product associations can be fixed to make sure the following criterias are met:-

- Same product is not associated with itself
- One product is associated with only 1 parent

To fix product associations run the command given below:-

```php
php bin/magento scommerce:associatedproducts:fixassociations -f
```

### <span style="color: #3b82f6;">Import / Export</span> [](#bkmrk--11)

#### <span style="color: #f97316;">Import</span> [](#bkmrk--12)

To import associated products go **system &gt; Data transfer &gt; Import**. Then select product association from the drop down list. You will see the importing menu opening on your screen as shown in the image below. Select the import file and add import behavior settings as per your preferences. Lastly click on check data button on the right corner of your screen.

[![image (27).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/8U6image-27.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/8U6image-27.png)

[![image (28).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/1Duimage-28.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/1Duimage-28.png)

- <span style="color: #f97316;">**Export –**</span> Go to **System &gt; Data Transfer &gt; Export**. Select product associated in the entity type dropdown list. You should see the export menu popup on your screen as shown in the image below: -

[![image (17) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-17-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-17-1.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-associated-or-linked-product-stock-update.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Repeat Order

### <span style="color: rgb(53, 152, 219);">Installation and User Guide for Magento 2 Repeat Order</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Repeat Order Subscription* ](#bkmrk-configuration-settin)
    - *General Settings*
    - *Repeat Order Subscription Email*
    - *Payment / Order Failed Emailed*
    - *Subscription Status Update Notification*
3. [*Manage Subscription Grid* ](#bkmrk-manage-subscription-)
    - *Re-start/Pause, Cancel Subscriptions*
    - *Subscribed Items and Order History on the Edit Subscription Page*
    - *Backend Order Page Link through Subscription Order*
4. [*Subscriptions Payment Grid* ](#bkmrk-subscriptions-paymen)
    - *View Subscription Payment Details*
5. [*Front-end Site View* ](#bkmrk-front-end-site-view)
    - *Subscription Options on the Checkout Page*
    - *Frequency Selection Drop-down*
    - *My Subscription Section on the My Account Page*
    - *Subscription Details on the My Subscriptions Page*
    - *View / Edit Subscription Information from the Front-end/ My Account*
    - *Subscription Confirmation Email*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
     ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Repeat Order Subscription</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Repeat Order Subscription**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Module Enable -** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Subscription Title –** Enter the title of subscription, which will be shown on the front-end.
- **Subscription Frequency Drop down Title –** Enter the title of subscription frequency.
- **Subscription Frequency Drop down Options –** Select the frequency option from the dropdown list.
- **Subscription Discount Percent –** Enter the discount percent, this will be offered on subscription orders. If left blank, then no discount will be offered.
- **Use Tier Prices in Subscription –** Select "Yes" to use tier prices in subscription.

[![image (27).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-27.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-27.jpg)

#### <span style="color: #f97316;">Repeat Order Subscription Email</span> [](#bkmrk--4)

- **Email Sender –** Please enter sender/from email address for Repeat Order Confirmation Email.
- **Email Template –** Select order confirmation email template for repeat order. The template will contain Subscription Id, Order Amount, Discount Subscription Frequency, Subscription Start Date, Billing address, Shipping address, Payment Method, Subscribed items.
- **Email CC –** Please add CC email addresses for Repeat Order emails in comma separated format.

[![image (18) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-18-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-18-1.png)

#### <span style="color: #f97316;">Payment / Order Failed Emailed</span> [](#bkmrk--6)

- **Email Sender –** Please enter sender/from email addresses for Payment order failed email.
- **Email Template –** Select Order/Payment failure email template for repeat order. The template will contain Subscription Id, Due Order Date (for which payment/order failed).
- **Email CC –** Enter CC email address.

[![image (19) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-19-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-19-1.png)

#### <span style="color: #f97316;">Subscription Status Update Notification</span> [](#bkmrk--8)

- **Email Sender –** Please enter sender/from email addresses for Subscription status update email.
- **Email Template for Subscription Pause/Suspend –** Select notification template for subscription pause.
- **Email Template for Subscription Pause/Suspend for admin –** Notification template for Subscription Pause for Admin.
- **Email Template for Subscription Restart –** Select notification template for subscription Re-start.
- **Email Template for Subscription Restart for Admin –** Notification template for subscription Re-start for Admin.
- **Email Template for Subscription Cancellation –** Select notification template for Subscription Cancellation.
- **Email Template for Subscription Cancellation for Admin –** Notification template for Subscription cancellation for admin.
- **Email CC –** Enter CC from email address.
- **Email Receiver –** Enter receiver email address to receive Card Expiration notification email.
- **Email Template for Card Expiration for Admin –** Email template for Card Expiration for admin.
- **Email Template for Card Expiration –** Select email template for Card Expiration.

[![image (28).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-28.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-28.jpg)

### <span style="color: #3b82f6;">**Manage Subscription Grid**</span>

You can manage subscriptions from, **Admin &gt; Scommerce Mage &gt; Repeat Order &gt; Manage Subscriptions**. This grid will have all the details about the subscriptions like Subscription ID, Frequency, Customer Email, Last Order date, Status, Action (Edit). With the action 'Edit' you can easily update subscription details and can also perform Cancel/Pause/Re-start actions.

[![image (20) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-20-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-20-1.png)

- <span style="color: #f97316;">**Re-start/Pause, Cancel Subscriptions -**</span> You can re-start, pause and cancel subscriptions from **Admin &gt; Scommerce Mage &gt; Repeat Order &gt; Manage Subscriptions &gt; Select Subscription &gt; Edit.**

**[![image (29).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-29.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-29.jpg)**

- <span style="color: #f97316;">**Subscribed Items and Order History on the Edit Subscription Page -**</span>\*\* You\*\* can see the subscribed items and order history from **Admin &gt; Scommerce Mage &gt; Repeat Order &gt; Manage Subscriptions &gt; Select Subscription &gt; Edit.**

**[![image (30).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-30.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-30.jpg)**

- <span style="color: #f97316;">**Backend Order Page Link through Subscription Order –**</span> When you click on subscription order URL visible under Orders History section at **Admin &gt; Scommerce Mage &gt; Repeat Order &gt; Manage Subscriptions &gt; Select Subscription &gt; Edit,** then it redirects to backend order page.

[![image (21) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-21-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-21-1.png)

**Subscription order link redirected to order view page**

**[![image (31).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-31.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-31.jpg)**

### <span style="color: #3b82f6;">**Subscriptions Payment Grid**</span>

To see subscriptions payment details go to **Admin&gt; Scommerce Mage &gt; Repeat Order &gt; Subscription Payments**. This grid will provide a view of payment status for the Payment transactions processed for automated subscription order. This will mainly have Subscription Id, First name, Transactions date and time, Transaction error/response.

[![image (22) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/KAGimage-22-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/KAGimage-22-1.png)

- <span style="color: #f97316;">**View Subscription Payment Details -**</span> You can view payment details from Admin**&gt; Scommerce Mage &gt; Repeat Order &gt; Subscription Payments &gt; Select Subscription &gt; View.**

[![image (32).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-32.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-32.jpg)

### Front-end Site View [](#bkmrk--17)

- <span style="color: #f97316;">**Subscription Options on the Checkout Page -**</span> When you enable the module then it shows subscription options on the checkout page, by checking "Yes please I would like to receive future discounts" you can subscribed for the repeat order.

[![image (23) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/YW9image-23-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/YW9image-23-1.png)

- <span style="color: #f97316;">**Frequency Selection Drop-down -**</span> On the checkout page when you check the subscription option then it shows frequency drop down, from where you can select the repeat order frequency.

[![image (33).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-33.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-33.jpg)

- <span style="color: #f97316;">**My Subscription Section on the My Account Page -**</span> On the front-end you can see the subscription details at My Account &gt; My Subscriptions

[![image (34).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-34.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-34.jpg)

- <span style="color: #f97316;">**Subscription Details on the My Subscriptions Page -**</span> To view subscriptions details go to My Account &gt; My Subscriptions.

[![image (24) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/Ftsimage-24-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/Ftsimage-24-1.png)

- <span style="color: #f97316;">**View / Edit Subscription Information from the Front-end/ My Account -**</span> On the front-end you can view and edit the subscriptions from My **Account &gt; My Subscriptions &gt; Select Order &gt; Edit.**

**[![image (35).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-35.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-35.jpg)**

- <span style="color: #f97316;">**Subscription Confirmation Email –**</span> When you subscribed for repeat order, it sends subscription confirmation email.

[![image (36).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-36.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-36.jpg)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-repeat-order.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 AI Content Generator

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 AI Content Generator</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for AI Content Generator*](#bkmrk-configuration-settin)
    - *General Settings*
    - *Product Settings*
    - *Category Settings*
    - *CMS Page Settings*
3. [*AI Content Generator Settings on Product Pages*](#bkmrk-ai-content-generator)
    - *Short Description*
    - *Description*
    - *Meta Title*
    - *Meta Description*
    - *Meta Keywords*
4. [*AI Content Generator Settings on Catgory Pages*](#bkmrk-ai-content-generator-2)
    - *Description*
    - *Meta Title*
    - *Meta Description*
    - *Meta Keywords*
5. [*AI Content Generator Settings on CMS Pages*](#bkmrk-ai-content-generator-3)
    - *Page Content*
    - *Meta Title*
    - *Meta Description*
    - *Meta Keywords*
6. *[AI Content Generator API Logs](#bkmrk-ai-content-generator-5)*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to My Account section and click on My Downloadable Products and download the extension package.

[![image - 2025-06-05T172432.087.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t172432-087.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t172432-087.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    composer require orhanerday/open-ai
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy en_GB en_US
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for AI Content Generator</span> [](#bkmrk--51)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; AI Content Generator**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--49)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/scaled-1680-/IbYimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/IbYimage.png)

#### <span style="color: #f97316;">Chat GPT</span>

- **AI Service** - Please select the AI Service from the dropdown "**ChatGPT**".
- **Chat GPT versions -** Please select the Chat GPT versions from the dropdown "**ChatGPT3.5**".
- **Chat GPT API key-** Please enter the Chat GPT API key.
- **Retention Days -** Define the retention days for the logs that are kept in the database.
- **Cron Job -** Define Cron schedule for purging of the log data.
- **Purge Log -** Select 'Yes' to enable purging of log data in the database

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/scaled-1680-/UJ5image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/UJ5image.png)

#### <span style="color: #f97316;">Gemini</span>

- **AI Service** - Please select the AI Service from the dropdown "**Gemini**".
- **Gemini API version -** Please select the Gemini API version from the dropdown "Gemini Flash".
- **Gemini API key-** Please enter the Gemini API key.
- **Retention Days -** Define the retention days for the logs that are kept in the database.
- **Cron Job -** Define Cron schedule for purging of the log data.
- **Purge Log -** Select 'Yes' to enable purging of log data in the database

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/scaled-1680-/Au1image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/Au1image.png)

#### <span style="color: #f97316;">Groq</span>

- **AI Service** - Please select the AI Service from the dropdown
- **Groq Versions -** Please add the Groq versions. The AI will generate content based on the selected version. Choose 'Custom' to enter a custom value
- **Groq API Key -** Enter the API key from Groq (<span style="text-decoration: underline;">**[https://console.groq.com/](https://console.groq.com/))**</span>
- **Retention Days -** Define the retention days for the logs that are kept in the database.
- **Cron Job -** Define Cron schedule for purging of the log data.
- **Purge Log -** Select 'Yes' to enable purging of log data in the database

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/scaled-1680-/AE5image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-03/AE5image.png)

**Note:-** Switch store view or website to expose the settings below:-

#### <span style="color: #f97316;">Product Settings</span> [](#bkmrk--49)

- **Meta Title Character Prompt–** Add the prompt for Meta Title on product pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Product Meta Title. This data can be overwritten or custom prompt can be used at the product level. Google recommendation for Meta title limit is up to 70 characters.
- **Meta Description Prompt –** Add the prompt for Meta Description on product pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Product Meta Description. This data can be overwritten or custom prompt can be used at the product level. Google recommendation for Meta Description limit is up to 160 characters.
- **Meta Keywords Prompt–** Add the prompt for Meta Keywords on product pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Product Meta Keywords. This data can be overwritten or custom prompt can be used at the product level. Google recommendation for Meta keyword limit is up to 10 keyword phrases or 160 characters.
- **Short Description Prompt –** Add the prompt for Short Description on product pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Product Short Description Title. This data can be overwritten or custom prompt can be used at the product level. Google recommendation for Short Description is up to 200 words.
- **Product Description Prompt –** Add the prompt for Product Description on product pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Product Description. This data can be overwritten or custom prompt can be used at the product level. Google recommendation for Page Description limit is up to 3600 characters.

[![image (50) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-50-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-50-1.png)

#### <span style="color: #f97316;">Category Settings</span> [](#bkmrk--49)

- **Meta Title Character Prompt–** Add the prompt for Meta Title on category pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Category Meta Title. This data can be overwritten or custom prompt can be used at the category level. Google recommendation for Meta title limit is up to 70 characters.
- **Meta Description Prompt –** Add the prompt for Meta Description on category pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Category Meta Description. This data can be overwritten or custom prompt can be used at the category level. Google recommendation for Meta Description limit is up to 160 characters.
- **Meta Keywords Prompt–** Add the prompt for Meta Keywords on category pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Category Meta Keywords. This data can be overwritten or custom prompt can be used at the category level. Google recommendation for Meta keyword limit is up to 10 keyword phrases or 160 characters.
- **Category Description Prompt –** Add the prompt for Category Description on category pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Category Page Description. This data can be overwritten or custom prompt can be used at the category level. Google recommendation for Page Description limit is up to 3600 characters.

[![image - 2025-06-05T173041.098.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173041-098.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173041-098.png)

#### <span style="color: #f97316;">CMS Page Settings</span> [](#bkmrk--49)

- **Meta Title Character Prompt–** Add the prompt for Meta Title on CMS Pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Content Meta Title. This data can be overwritten or custom prompt can be used at the CMS page level. Google recommendation for Meta title limit is up to 70 characters.
- **Meta Description Prompt –** Add the prompt for Meta Description on CMS Pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Content Meta Description. This data can be overwritten or custom prompt can be used at the CMS page level. Google recommendation for Meta Description limit is up to 160 characters..
- **Meta Keywords Prompt–** Add the prompt for Meta Keywords on CMS Pages. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Content Meta Keywords. This data can be overwritten or custom prompt can be used at the CMS page level. Google recommendation for Meta keyword limit is up to 10 keyword phrases or 160 characters.
- **Page Content Prompt –** Add the prompt for CMS pages content. This prompt setting will be used to extract AI generated content from either ChatGPT or Google Gemini for Content Page Description. This data can be overwritten or custom prompt can be used at the CMS Page level. Google recommendation for Page Description limit is up to 3600 characters.

[![image - 2025-06-05T173139.927.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173139-927.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173139-927.png)

### <span style="color: #3b82f6;">AI Content Generator Settings on Product Pages</span> [](#bkmrk--51)

AI content generator works with the following fields on the product pages. Go to **Admin&gt;Catalog&gt;Product** and then select any product.

#### <span style="color: #f97316;">Short Description</span> [](#bkmrk--49)

Click on **Fetch Content** and Based on the prompt set in the configuration the content is generated and populated automatically into this field.

[![image - 2025-06-05T173217.934.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173217-934.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173217-934.png)

In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image (51) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-51-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-51-1.png)

#### <span style="color: #f97316;">Description</span> [](#bkmrk--49)

Edit the description with page builder and when add a HTML element the AI Content Generator options are present. Click on **Fetch Content** and Based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image (52) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-52-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-52-1.png)

#### <span style="color: #f97316;">Meta Title</span> [](#bkmrk--49)

Go to Product settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Title and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173511.451.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173511-451.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173511-451.png)

#### <span style="color: #f97316;">Meta Description</span> [](#bkmrk--49)

Go to Product settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Description and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173540.580.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173540-580.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173540-580.png)

#### <span style="color: #f97316;">Meta Keywords</span> [](#bkmrk--49)

Go to Product settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Keywords and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173607.960.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173607-960.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173607-960.png)

### <span style="color: #3b82f6;">AI Content Generator Settings on Category Pages</span> [](#bkmrk--51)

#### <span style="color: #f97316;">Description</span> [](#bkmrk--49)

Edit the description with page builder and when add a HTML element the AI Content Generator options are present. Click on **Fetch Content** and Based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image (53) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-53-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-53-1.png)

#### <span style="color: #f97316;">Meta Title</span> [](#bkmrk--49)

Go to Category settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Title and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173749.393.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173749-393.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173749-393.png)

#### <span style="color: #f97316;">Meta Description</span> [](#bkmrk--49)

Go to Category settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Description and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173812.504.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173812-504.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173812-504.png)

#### <span style="color: #f97316;">Meta Keywords</span> [](#bkmrk--49)

Go to Category settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Keywords and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T173853.829.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t173853-829.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t173853-829.png)

### <span style="color: #3b82f6;">AI Content Generator Settings on CMS Pages</span> [](#bkmrk--51)

#### <span style="color: #f97316;">Page Content</span> [](#bkmrk--49)

Edit the content with page builder and when add a HTML element the AI Content Generator options are present. Click on **Fetch Content** and Based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image (54) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-54-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-54-1.png)

#### <span style="color: #f97316;">Meta Title</span> [](#bkmrk--49)

Go to Page settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Title and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T174037.290.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t174037-290.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t174037-290.png)

#### <span style="color: #f97316;">Meta Description</span> [](#bkmrk--49)

Go to Page settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Description and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T174108.710.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t174108-710.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t174108-710.png)

#### <span style="color: #f97316;">Meta Keywords</span> [](#bkmrk--49)

Go to Page settings&gt;Search Engine Optimization. Click on **Fetch Content** below Meta Keywords and based on the prompt set in the configuration the content is generated and populated automatically into this field. In case you want to add a custom prompt for this product simply click on **AI Content Using Custom Prompt** and add your prompt then when you click **Fetch Content** the content is generated based on your custom prompt.

[![image - 2025-06-05T174129.738.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t174129-738.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t174129-738.png)

### <span style="color: #3b82f6;">Frontend</span> [](#bkmrk--51)

AI content generator generates content on all Category, Product, CMS Pages. Please check some of the frontend screengrabs of the generated content:-

#### <span style="color: #f97316;">Product Pages</span> [](#bkmrk--49)

<span style="color: #f97316;">[![image - 2025-06-05T174155.536.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t174155-536.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t174155-536.png)</span>

#### <span style="color: #f97316;">Category Pages</span> [](#bkmrk--49)

<span style="color: #f97316;">[![image (55) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-55-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-55-1.png)</span>

#### <span style="color: #f97316;">CMS Pages</span> [](#bkmrk--49)

<span style="color: #f97316;">[![image (56) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-56-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-56-1.png)</span>

#### <span style="color: #f97316;">Meta Keywords</span> [](#bkmrk--49)

<span style="color: #f97316;">[![image (57) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-57-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-57-1.png)</span>

### <span style="color: #3b82f6;">AI Content Generator API Logs</span> [](#bkmrk--51)

Go to **Scommerce AI Content Generator&gt;API Logs** to view logs of each API request used by AI content Generator.

[![image - 2025-06-05T174813.572.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-05t174813-572.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-05t174813-572.png)

The grid contains request response and the AI engine used:-

[![image (58) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-58-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-58-1.png)

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-ai-content-generator.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Admin Account Switcher

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Admin Account Switcher</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Admin Account Switcher*](#bkmrk-configuration-settin)
    - *General Settings*
3. *[Admin Account Switcher Workflow](#bkmrk-admin-account-switch)*
4. [*Admin Account Switcher Role*](#bkmrk-admin-account-switch-1)

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Admin Account Switcher</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Account Switcher**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. Please go to *Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Core* and click on "Verify" to verify the license key.

[![image (59) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-59-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-59-1.png)

### <span style="color: #3b82f6;">Admin Account Switcher Workflow</span> [](#bkmrk--6)

Using this extension an admin can login into another admin's account directly from admin edit form section without requiring a password which allows them to debug easily without having to reset the other admin's password.

The admin can only use this functionality if they have the "Scommerce Switch Admin Account" (***Admin&gt;System&gt;Permissions&gt;User Roles&gt;Select Role&gt;Role Resources***)selected under role resources for their user role.

Go to Admin&gt;System&gt;Permissions&gt;All Users, here select(click edit) the admins account in which you want to login.

From the top menu click on "Switch User" and you will be logged into that admin's account without password authentication.

[![image (60) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-60-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-60-1.png)

### <span style="color: #3b82f6;">Admin Account Switcher Role</span> [](#bkmrk--6)

The "Switch to User" button is displayed **only if** the current admin user has the **"Scommerce Switch Admin Account"** permissions in their user role.

To check this, you can go to *Admin&gt;System&gt;Permissions&gt;User Roles&gt;Role Resources* and check whether the user role has "Scommerce Switch Admin Account Role" selected.

[![image (61) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-61-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-61-1.png)

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-admin-account-switcher.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Admin Message Manager

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Admin Message Manager</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Admin Message Manager*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Admin Message Manager Workflow*](#bkmrk-admin-message-manage)
    - *Step 1: Access the Admin Message Grid*
    - *Step 2: Create a New Message*
    - *Step 3: Edit or Delete Messages*
4. [*Display logic for Admin Messages*](#bkmrk-display-logic-for-ad)
    - *Why do messages appear?*
    - *How do messages appear?*
    - *HTML Support*
5. [*View Messages in Admin Panel*](#bkmrk-view-messages-in-adm)
    - *Notice Message*
    - *Warning Message*
    - *Success Message*
    - *Error Message*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Admin Message Manager</span> [](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Message Manager**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. Please go to *Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Core* and click on "Verify" to verify the license key.

[![image (62) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-62-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-62-1.png)

### <span style="color: #3b82f6;">Admin Message Manager Workflow</span> [](#bkmrk--3)

Using this extension an admin create custom messages for the other admins and pass on critical updates based on user roles.

The admin can only use this functionality if the have the "Scommerce Admin Message Manager Section" selected under role resources for their user role.

#### <span style="color: #f97316;">**Step 1: Access the Admin Message Grid**</span>

- Navigate to **Admin&gt;System&gt;Admin Message Manager**
- Only users with **"Scommerce Admin Message Manager Section"** permission can access this grid.

[![image (63) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-63-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-63-1.png)

#### <span style="color: #f97316;">**Step 2: Create a New Message**</span>

- Go to **Admin&gt;System&gt;Admin Message Manager**
- Click **"Add New Message"**.

[![image (64) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-64-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-64-1.png)

- Fill in the form: 
    - **Enabled :-** Turn it on to enable the message (Active/Inactive toggle)
    - **Message Label** (Optional identifier)
    - **Severity Type** (Notice, Warning, Success, Error)
    - **User Roles** (Multi-select roles that should see the message)
    - **Message Text** (Supports HTML links, bold, italics via WYSIWYG editor)
- Click **"Save"**.

[![image (65) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-65-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-65-1.png)

**Note:**

- Required fields: **Enabled, Message Label, Severity, at least one User Role,** **Message Text.**
- HTML is sanitized for security (only `<a>`, `<strong>`, `<em>` allowed).

#### <span style="color: #f97316;">**Step 3: Edit or Delete Messages**</span>

**Edit A Message**

1. In the grid, click **"Edit"** on the desired message.
2. Modify any field (Label, Text, Severity, User Roles, Enabled).
3. Click **"Save"** or **"Delete"** (if removing the message).

[![image (66) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-66-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-66-1.png)

**Delete A Message**

**Option 1: Single Deletion (From Grid)**

- Click **"Delete"** on the Edit row then confirm deletion

[![image (67) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-67-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-67-1.png)

**Option 2: Single Deletion (From Edit Form)**

- Open the message&gt;Click **"Delete Message"**&gt;Confirm.

[![image (68) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-68-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-68-1.png)

**Option 3: Mass Delete (Bulk Action)**

1. Select checkboxes next to messages.
2. From the **Actions** dropdown, choose **"Delete"**.
3. Confirm by clicking **"OK"** in the popup.

[![image (69) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-69-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-69-1.png)

### <span style="color: #3b82f6;">**Display Logic for Admin Messages**</span>

#### <span style="color: #f97316;">**When Do Messages Appear?**</span>

A message is displayed in the admin panel if:

- **Status = Active**
- **Admin user's role matches at least one selected role** in the message.

<span style="color: #f97316;">**How Do Messages Appear?**</span>

- **Sticky banner** at the top of the admin panel.
- **Severity-based styling** (colors match Magento's standard alerts): 
    - **Success** (Green)
    - **Notice** (Blue)
    - **Warning** (Yellow)
    - **Error** (Red)

#### <span style="color: #f97316;">**HTML Support**</span>

- Allowed tags: `<a>`, `<strong>`, `<em>`.
- Links are clickable.

### <span style="color: #3b82f6;">**View Messages in Admin Panel**</span>

- Messages appear as **sticky banners** at the top of the admin panel.
- Only **active** messages matching the user's role are displayed.

#### <span style="color: #f97316;">Notice Message</span>

<span style="color: #f97316;">[![image (70) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-70-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-70-1.png)</span>

#### <span style="color: #f97316;">Warning Message</span>

<span style="color: #f97316;">[![image (71) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-71-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-71-1.png)</span>

#### <span style="color: #f97316;">Success Message</span>

<span style="color: #f97316;">[![image (72) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-72-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-72-1.png)</span>

#### <span style="color: #f97316;">Error Message</span>

<span style="color: #f97316;">[![image (73) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-73-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-73-1.png)</span>

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-admin-message-manager.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Advanced Admin Login Security

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Advanced Admin Login Security Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Security Base*](#bkmrk-configuration-settin)
    - *General Settings*
3. *[Configuration Settings for Advanced Login Security](#bkmrk-configuration-settin-1)*
4. [*Scommerce Admin Login Security*](#bkmrk-scommerce-admin-logi)
    - *Admin Login Attempts*
    - *Blacklist*
    - *Whitelist*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to the Account section, click on My Downloadable Products, and download the extension package.

[![image - 2025-06-06T185804.978.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t185804-978.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t185804-978.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run the below commands on the Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Security Base</span> [](#bkmrk--11)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Base**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--17)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image - 2025-06-06T185846.982.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t185846-982.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t185846-982.png)

### <span style="color: #3b82f6;">Configuration Settings for Admin Login Security</span> [](#bkmrk--5)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Login Security**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--6)

- **Enabled Admin Login Security –** Select "Yes" or "No" to enable or disable the module.
- **Failed Attempts Limit :-** Set the attempt limit for admin login. Once exceeded the account will be locked out or blacklisted as per further configuration. Make sure this limit is less than default Magento configuration.
- **Apply Action On Exceed Limit:-** Choose the penalty for exceeding the failed attempt limit, between "Lockout" or "Blacklist. **Lockout** - When the number of failed attempts exceeds, the IP will remain blacklisted until the 'Valid till' time limit. The 'Valid till' limit can be defined by the configuration 'Locked out period (in hours)'  
    **Blacklist** - This action will be applied when the 'Failed Attempts Limit' is exceeded and the IP will be blacklisted until it is manually removed.
- **Locked out period (in hours):-** Set the "Valid Till" limit for the Lockout feature. The accounts will be locked out for period entered in this configuration.
- **Block Email Enabled:-** Enable Emails when any lockout or blacklist occurs. The email is sent to the Store Owner as well as the blacklisted/locked-out user.

[![image - 2025-06-06T185921.450.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t185921-450.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t185921-450.png)

- **IP Block Email Template:-** Select the email template to be used to send the email when a lockout/blacklist occurs.
- **Block And Lock Event Email Sender:-** Select the sender email from your Default Magento configuration in case of lockout or blacklist.
- **Recipient Block Email:-** Add the email (store owner) which will get emails about each and every lockout/blacklist. Whenever a lockout/blacklist happens the email will be sent to this address as well as the user.
- **Enabled Clear Login Attempts Logs Cron Job:-** Set "Yes" or "No" to enable or disable clear logs cron job.
- **Clear Login Attempts Logs Cron Schedule:-** Set the cron job to define how often you want to clear Login Attempts logs

[![image - 2025-06-06T185958.131.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t185958-131.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t185958-131.png)

- **Clear Login Attempts Logs Older Than X Days:-** Set the number of days based on which the Login attempts Logs will be cleared based which are older than the set days. For eg:- if set 2, any login attempts logs older than 2 days will be cleared.
- **Enabled Clear Lockouts Cron Job:-** Set "Yes" or "No" to enable or disable clear of not active lockouts by cron job
- **Clear Lockouts Cron Schedule:-** Set the cron job to define schedule how often you want to clear logs
- **Allowed Countries:-** Block users from one or multiple countries. If no country is selected, all countries are allowed.

[![image - 2025-06-06T190050.422.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t190050-422.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t190050-422.png)

- **Enabled Whitelist:-** Set "Yes" or "No" to enable or disable whitelisting for an IP. If enabled, the user won't be allowed to log in until the IP is whitelisted.
- **Whitelist Email Enabled:-** Set "Yes" or "No" to enable or disable whitelist Email. If this is enabled, the user will be sent an email with a link that allows them to either approve or deny the login.  
    **Approve** - By approving, the IP will be added to the whitelist.  
    **Deny** - The IP will be added to the blacklist if denied.
- **Whitelist request lifetime:-** Set the request lifetime to define how long whitelist request will be valid in hours By default 1 hour.
- **IP Whitelist Email Template:-** Select the email template for the login approval email that is sent to the user, based on the approval the user is whitelisted or blacklisted.
- **Whitelist Event Email Sender:-** Select the sender email to be used to send out the User approval/whitelist email to the user.
- **Recipient Email:-** Add the email (store owner) which will get emails about User approval/Whitelist emails. Whenever a user-approval/whitelist happens the email will be sent to this address as well as the user so store owner can also approve or deny the user from the email.

[![image - 2025-06-06T190159.078.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-06t190159-078.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-06t190159-078.png)

### <span style="color: #3b82f6;">Scommerce Admin Login Security</span> [](#bkmrk--11)

Go to **Admin &gt; System &gt; Scommerce Admin Login Security&gt;**

#### <span style="color: #f97316;">Admin Login Attempts</span> [](#bkmrk--17)

The Admin Login Attempts grid keeps a record of every login attempt made to the admin panel with various key details such as:-

- ID
- IP Address
- Success
- Admin Username
- Created At

The grid is completely filterable with various columns such as ID, IP Address, Admin Username, Created At etc.

[![image (74) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-74-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-74-1.png)

#### <span style="color: #f97316;">Blacklist</span> [](#bkmrk--17)

The blacklist records grid contains information about all the blacklist users with several details such as ID, IP Address, Admin Username, Valid till, Created At, and Action. This grid is completely filterable. Each of the record can be deleted or edited from the Action column.

[![image (75) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-75-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-75-1.png)

Go to **Action&gt;Edit** and you can change various details for each of the records such as IP Address, Username, and Valid till date.

[![image (76) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-76-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-76-1.png)

#### <span style="color: #f97316;">Whitelist</span> [](#bkmrk--17)

The Whitelist records grid contains information about all the blacklist users with several details such as ID, IP Address, Admin Username, Created At, and Action. This grid is completely filterable. Each of the records can be deleted or edited from the Action column.

[![image (77) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-77-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-77-1.png)

Go to **Action&gt;Edit** and you can change various details for each of the records such as IP Address, and Username.

[![image (78) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-78-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-78-1.png)

If you have a question related to this extension please check out our <span style="text-decoration: underline;">[**FAQ Section**](https://www.scommerce-mage.com/magento-2-admin-login-security.html#customfaq) </span>first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Admin Security Checklist

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Security Checklist Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Security Base*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Configuration Settings for Security Checklist*](#bkmrk-configuration-settin-1)
    - *General Settings*
4. [*Security Checklist Report*](#bkmrk-security-checklist-r)
    - *Security Checklist Report*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to the Account section, click on My Downloadable Products, and download the extension package.

[![image - 2025-06-09T170625.411.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t170625-411.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t170625-411.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run the below commands on the Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Security Base</span> [](#bkmrk--5)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Base**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--6)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image - 2025-06-09T170845.230.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t170845-230.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t170845-230.png)

### <span style="color: #3b82f6;">Configuration Settings for Security Checklist</span> [](#bkmrk--3)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Checklist**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--4)

- **Enabled Security Checklist –** This setting will be used to enable or disable admin security checklist
- **Enable Database prefix check :-** This setting will be used to enable or disable check for DB prefix. Database prefix added in file, to make it work you also need to make changes in database.
- **Enable FE Captcha check:-** This setting will be used to enable or disable checks for Frontend Captcha. Go to **Stores &gt; Configuration &gt; Security &gt; Google reCAPTCHA** Storefront in order to verify it.
- **Enable BE Captcha check:-** This setting will be used to enable or disable checks for Backend Captcha. Go to Stores &gt; **Configuration &gt; Security &gt; Google reCAPTCHA** Admin Panel and **Stores &gt; Configuration &gt; Admin &gt; CAPTCHA** Storefront in order to verify it.
- **Enable Magento version check-** This setting will be used to enable or disable check for Magento Version and latest security patches.

[![image - 2025-06-09T170929.075.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t170929-075.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t170929-075.png)

- **Enable Admin Users check-:-** This setting will be used to enable or disable check for Admin Users Security. Especially usernames, password lifetime policy and login activity. **Go to Stores &gt; Configuration &gt; Advanced &gt; Admin &gt; Security** Or **Go to System &gt; Permission &gt; All users to manage admin users**
- **Admin Usernames Stop List:-** You can add list of usernames that shouldn't be used for admin accounts. Comma separated.
- **Enabled Admin Path Check:-** This setting will be used to enable or disable check for Admin Path Security. Admin Path is configured in file or go to **Advanced &gt; Admin &gt; Admin Base URL &gt; Use Custom Admin Path** to change it
- **Admin Path Stop List:-** You can add list of paths that shouldn't be used for admin. Comma separated.
- **Enable Content Script Check:-** This setting will be used to enable or disable check for scripts added in your content or configuration

[![image - 2025-06-09T171114.153.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t171114-153.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t171114-153.png)

- **Enabled Checklist Check Cron Job:-** If enabled the security checklist also checks whether admin 2FA is enabled or not.
- **Enabled Checklist Check Cron Job:-** This setting will be used to enable or disable checklist cron job
- **Checklist Cron Schedule:-** This will allow you to define schedule how often you want to clear Login Attempts logs cron.

[![image - 2025-06-09T171333.441.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t171333-441.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t171333-441.png)

### <span style="color: #3b82f6;">Security Checklist Report</span> [](#bkmrk--5)

Go to **Admin &gt; System &gt; Scommerce Security&gt; Security Checklist**

#### <span style="color: #f97316;">Security Checklist Report</span> [](#bkmrk--6)

The Security checklist grid has several distinctions for various checks: Warning, Error and Success

- **Admin password Protection:** - For Admin password protection, if a password change is not forced, the user will see an error. If the lifetime is more than 90 days, the user will see a warning. If a password change is forced and the lifetime is less than 90 days, then the user will see success.
- **Magento version check**: - For a Magento version check, if the version is outdated, the user will see an error. Otherwise, the user will see success.
- **Database Prefix check**: - For the Database prefix check, if the table prefix is not set in the configuration file, the user will see an error. Otherwise, the user will see success.
- **Frontend ReCaptcha Protection** - For Frontend ReCaptchaProtection, if all frontend forms are protected with recaptcha, the user will see a success. When some forms are protected, the user will see a warning. If none of the forms are protected, the user will see an error.
- **Admin Captcha Protection**:- For Admin Captcha protection, if all backend forms are protected with Captcha, the user will see a success. When some forms are protected, the user will see a warning. If none of the forms are protected, the user will see an error.
- **Admin path protection**: - For Admin path protection, if the user's admin path doesn't contain words from the stop list, doesn't contain numbers or capital letters, and is at least 15 characters long, the user will see a success. If any of the criteria mentioned are not fulfilled, the user will see a warning.
- **Admin usernames check**:- For Admin usernames check, if the username contains words from the stop list or if the username contains numbers, the user will see a warning. Otherwise, success.
- **Admin users activity check**: - For Admin admin user activity check, if the account is unused, the user will see a warning. Otherwise, success.
- **Check for static scripts inserted from Config and CMS Pages**: - For Static scripts in Configuarion, CMS Blocks, and CMS Pages, if a text field has a static script, the user will see a warning. Otherwise, success.
- **Check for static scripts inserted from Product Attributes**: - For Static scripts inserted by any product attributes the user will see a warning with the name of the attribute otherwise, success.
- **Check for Admin 2FA**: - It also checks whether admin 2FA is enabled or not.

[![image (86) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-86-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-86-1.png)

[![image (87) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-87-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-87-1.png)

[![image (88) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-88-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-88-1.png)

If you have a question related to this extension please check out our <span style="text-decoration: underline;">[**FAQ Section**](https://www.scommerce-mage.com/magento-2-security-checklist.html#customfaq) </span>first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Security Suite

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Security Suite Extension</span>

**Table of Contents**

1. [*Installation*](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Security Base*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*<span style="color: #3b82f6;">Configuration Settings for Security Checklist</span>*](#bkmrk-configuration-settin-1)
    - *General Settings*
4. [*Configuration Settings for Admin Activity Logger* ](#bkmrk-configuration-settin-2)
    - *General Settings*
    - *Modules Activity Logger*
    - *Admin Activity Logger*
    - *Admin Activity Grid*
    - *Admin Logger Detailed View for Admin Activities*
    - *Admin Logger Detailed View for Item Info*
    - *Login Activity Grid*
    - *Active Sessions Grid*
5. *[Configuration Settings for Advanced Login Security](#bkmrk-configuration-settin-3)*
6. [*Scommerce Admin Login Security*](#bkmrk-scommerce-admin-logi)
    - *Admin Login Attempts*
    - *Blacklist*
    - *Whitelist*
7. [*<span style="color: #3b82f6;">Security Checklist Report</span>*](#bkmrk-security-checklist-r)
    - *Security Checklist Report*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to the Account section, click on My Downloadable Products, and download the extension package.

[![image (98).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/W47image-98.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/W47image-98.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run the below commands on the Magento 2 root directory.
    
    ```
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via Composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Security Base</span> [](#bkmrk--14)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Base**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--15)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (99).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/dOMimage-99.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/dOMimage-99.png)

### <span style="color: #3b82f6;">Configuration Settings for Security Checklist</span> [](#bkmrk--8)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Checklist**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--9)

- **Enabled Security Checklist –** This setting will be used to enable or disable admin security checklist
- **Enable Database prefix check :-** This setting will be used to enable or disable check for DB prefix. Database prefix added to make it work you also need to make changes in database.
- **Enable FE Captcha check:-** This setting will be used to enable or disable checks for Frontend Captcha. Go to **Stores &gt; Configuration &gt; Security &gt; Google reCAPTCHA** Storefront in order to verify it.
- **Enable BE Captcha check:-** This setting will be used to enable or disable checks for Backend Captcha. Go to Stores &gt; **Configuration &gt; Security &gt; Google reCAPTCHA** Admin Panel and **Stores &gt; Configuration &gt; Admin &gt; CAPTCHA** Storefront in order to verify it.
- **Enable Magento version check-** This setting will be used to enable or disable check for Magento Version and latest security patches.

[![image (100).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/8Tmimage-100.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/8Tmimage-100.png)

- **Enable Admin Users check-:-** This setting will be used to enable or disable check for Admin Users Security. Especially usernames, password lifetime policy and login activity. **Go to Stores &gt; Configuration &gt; Advanced &gt; Admin &gt; Security** Or **Go to System &gt; Permission &gt; All users to manage admin users**
- **Admin Usernames Stop List:-** You can add list of usernames that shouldn't be used for admin accounts. Comma separated.
- **Enabled Admin Path Check:-** This setting will be used to enable or disable check for Admin Path Security. Admin Path is configured and go to **Advanced &gt; Admin &gt; Admin Base URL &gt; Use Custom Admin Path** to change it
- **Admin Path Stop List:-** You can add list of paths that shouldn't be used for admin. Comma separated.
- **Enable Content Script Check:-** This setting will be used to enable or disable check for scripts added in your content or configuration

[![image - 2025-06-09T190900.579.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t190900-579.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t190900-579.png)

- **Enabled Checklist Check Cron Job:-** This setting will be used to enable or disable checklist cron job
- **Checklist Cron Schedule:-** This will allow you to define schedule how often you want to clear Login Attempts logs cron.

[![image - 2025-06-09T191003.386.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t191003-386.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t191003-386.png)

### <span style="color: #3b82f6;">Configuration Settings for Admin Activity Logger</span> [](#bkmrk--8)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Activity Logger**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--9)

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <core@scommerce-mage.com>
- **Admin Users Login Activity Enabled -** Enable / Disable activity. It will log login activity of the admin users.
- **Page visit History Enabled -** Enable / Disable page history visiting log.
- **Clear Admin Activity Logs After -** Enter value. Clear all admin activity logs will be cleared after X days.
- **Enabled Profiler -** Enable / Disable time profiler. Duration of the operations will be logged.

[![image (68).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/7XTimage-68.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/7XTimage-68.jpg)

#### <span style="color: #f97316;">Modules Activity Logger</span> [](#bkmrk--7)

- **Order -** Select "Yes" to enable. It will log order related activities.
- **Product -** Select "Yes" to enable. It will log product related activities.
- **Category -** Select "Yes" to enable. It will log category related activities.
- **Customer -** Select "Yes" to enable. It will log customer related activities.
- **Email Template -** Select "Yes" to enable.
- **Page -** Select "Yes" or "No" to Enable / Disable.
- **Block -** Select "Yes" or "No" to Enable / Disable.
- **Widget -** Select "Yes" or "No" to Enable / Disable.
- **Theme -** Select "Yes or "No" to Enable / Disable.
- **System Configuration -** Select "Yes" or "No" to Enable / Disable.
- **Product Attributes -** Select "Yes" or "No" to Enable / Disable.
- **Admin User -** Select "Yes" to enable. It will log all users activities.
- **SEO -** Select "Yes" or "No" to Enable / Disable.

[![image - 2025-06-09T191308.372.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-09t191308-372.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-09t191308-372.png)

- <span style="color: #f97316;">**Admin Activity Logger -**</span> You can view admin activity logger from, **Admin &gt; System &gt; Scommerce Admin Activity Logger &gt; Admin Activity / Login Activity.**

**[![image (46) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/mjzimage-46-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/mjzimage-46-1.png)**

- <span style="color: #f97316;">**Admin Activity Grid -**</span> In the back-end under Admin Activity Logger grid you can view all the admin activities details from **Admin &gt; System &gt; Admin Activity Logger**. This grid will have, Admin Username, Name, Activity Type, Store View, Module, Full Action, IP, Item, Revert and Action columns.
    
    
    - **Date: -** The exact date and time of the activity performed.
    - **Admin Username: -** user name of the admin.
    - **Name: -** The name of the admin.
    - **Activity Type: -** Type of activity performed
    - **Store view: -** Name of the store view
    - **Module: -** The name of the module used in the activity.
    - **Full Action: -** It contains the URL path of the activity performed.
    - **IP Address: -** The IP address of the user.
    - **Item: -** Activity related item such as a product or system configuration changes.
    - **Revert: -** If the action is not complete then the REVERT column will have the notification.
    - **Action: -** It contains view where you can see the key details of the activity such as general and item info.

[![image (69).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/grCimage-69.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/grCimage-69.jpg)

#### <span style="color: #f97316;">Admin Activity Logger</span>

- <span style="color: #f97316;">**Admin Logger Detailed View for Admin Activities -**</span> To get more details about each particular action simply click on the 'View' link from **Admin &gt; System &gt; Admin Activity Logger &gt; Select Log &gt; Click on 'View' &gt; General, to view all the detailed data.**
    
    
    - You can view all the general details of the user's activity in the general tab.

[![image (70).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/R9gimage-70.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/R9gimage-70.jpg)

- <span style="color: #f97316;">**Admin Logger Detailed View for Item Info -**</span> You can view the item details from **Admin &gt; System &gt; Admin Activity Logger &gt; Select Log &gt; Click on 'View' &gt; Items info.**
    
    
    - This section contains all granular information. For instance if you place an order from the admin panel then all the details of the order such as price, store, etc. Are visible in this section.

[![image (71).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/m8Iimage-71.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/m8Iimage-71.jpg)

- <span style="color: #f97316;">**Login Activity Grid -**</span> You can view login activities from **Admin &gt; System &gt; Scommerce Admin Activity Logger &gt; Active Sessions**. It logs details of each and every single activity along with what value being changed by who and when. This section contains following information: -
    
    
    - **Date: -** The precise date and time of the log.
    - **Type: -** whether logged in or logged out.
    - **Username: -** Username of the person is stored here.
    - **Name: -** Name of the user
    - **Ip Address: -** You can see the IP address here.
    - **User Agent: -** The browser and device details of the user are shown here.
    - **Status: -** If the login fails then the status will show FAILED and if the login or logout is successful then it shows SUCCESS

[![image (72).jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/946image-72.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/946image-72.jpg)

- <span style="color: #f97316;">**Active Sessions Grid-**</span> You can view Active Sessions from **Admin &gt; System &gt; Login Activity &gt; Login Acti**. It logs details of every active admin session on the store. The active session is listed with various useful details. Also, it gives the admin the option to terminate any active admin session through the "Terminate" button under the action column. Once terminated that admin will be logged out of the account automatically. Furthermore, the grid is completely filterable using various columns. This section contains the following information: -
    
    
    - **Id: -** A Unique ID for each active session.
    - **Admin Username: -** Username of the admin of that particular active session.
    - **IP: -** IP address of the admin of that session.
    - **Last Action: -** Last action performed by the admin of this session.
    - **User Agent: -** Various platform, device, and browser information of the admin of this session.
    - **Action: -** Contains the option to terminate this particular session.

[![image (47) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/MrRimage-47-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/MrRimage-47-1.png)

### <span style="color: #3b82f6;">Configuration Settings for Admin Login Security</span> [](#bkmrk--8)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Admin Login Security**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--9)

- **Enabled Admin Login Security –** Select "Yes" or "No" to enable or disable the module.
- **Failed Attempts Limit :-** Set the attempt limit for admin login. Once exceeded the account will be locked out or blacklisted as per further configuration. Make sure this limit is less than default Magento configuration.
- **Apply Action On Exceed Limit:-** Choose the penalty for exceeding the failed attempt limit, between "Lockout" or "Blacklist. **Lockout** - When the number of failed attempts exceeds, the IP will remain blacklisted until the 'Valid till' time limit. The 'Valid till' limit can be defined by the configuration 'Locked out period (in hours)'  
    **Blacklist** - This action will be applied when the 'Failed Attempts Limit' is exceeded and the IP will be blacklisted until it is manually removed.
- **Locked out period (in hours):-** Set the "Valid Till" limit for the Lockout feature. The accounts will be locked out for period entered in this configuration.
- **Block Email Enabled:-** Enable Emails when any lockout or blacklist occurs. The email is sent to the Store Owner as well as the blacklisted/locked-out user.

[![image - 2025-06-10T142356.133.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-10t142356-133.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-10t142356-133.png)

- **IP Block Email Template:-** Select the email template to be used to send the email when a lockout/blacklist occurs.
- **Block And Lock Event Email Sender:-** Select the sender email from your Default Magento configuration in case of lockout or blacklist.
- **Recipient Block Email:-** Add the email (store owner) which will get emails about each and every lockout/blacklist. Whenever a lockout/blacklist happens the email will be sent to this address as well as the user.
- **Enabled Clear Login Attempts Logs Cron Job:-** Set "Yes" or "No" to enable or disable clear logs cron job.
- **Clear Login Attempts Logs Cron Schedule:-** Set the cron job to define how often you want to clear Login Attempts logs

[![image - 2025-06-10T142448.372.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-10t142448-372.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-10t142448-372.png)

- **Clear Login Attempts Logs Older Than X Days:-** Set the number of days based on which the Login attempts Logs will be cleared based which are older than the set days. For eg:- if set 2, any login attempts logs older than 2 days will be cleared.
- **Enabled Clear Lockouts Cron Job:-** Set "Yes" or "No" to enable or disable clear of not active lockouts by cron job
- **Clear Lockouts Cron Schedule:-** Set the cron job to define schedule how often you want to clear logs
- **Allowed Countries:-** Block users from one or multiple countries. If no country is selected, all countries are allowed.

[![image - 2025-06-10T142852.674.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-10t142852-674.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-10t142852-674.png)

- **Enabled Whitelist:-** Set "Yes" or "No" to enable or disable whitelisting for an IP. If enabled, the user won't be allowed to log in until the IP is whitelisted.
- **Whitelist Email Enabled:-** Set "Yes" or "No" to enable or disable whitelist Email. If this is enabled, the user will be sent an email with a link that allows them to either approve or deny the login.  
    **Approve** - By approving, the IP will be added to the whitelist.  
    **Deny** - The IP will be added to the blacklist if denied.
- **Whitelist request lifetime:-** Set the request lifetime to define how long whitelist request will be valid in hours By default 1 hour.
- **IP Whitelist Email Template:-** Select the email template for the login approval email that is sent to the user, based on the approval the user is whitelisted or blacklisted.
- **Whitelist Event Email Sender:-** Select the sender email to be used to send out the User approval/whitelist email to the user.
- **Recipient Email:-** Add the email (store owner) which will get emails about User approval/Whitelist emails. Whenever a user-approval/whitelist happens the email will be sent to this address as well as the user so store owner can also approve or deny the user from the email.

[![image - 2025-06-10T142943.998.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-10t142943-998.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-10t142943-998.png)

### <span style="color: #3b82f6;">Scommerce Admin Login Security</span> [](#bkmrk--14)

Go to **Admin &gt; System &gt; Scommerce Admin Login Security&gt;**

#### <span style="color: #f97316;">Admin Login Attempts</span> [](#bkmrk--15)

The Admin Login Attempts grid keeps a record of every login attempt made to the admin panel with various key details such as:-

- ID
- IP Address
- Success
- Admin Username
- Created At

The grid is completely filterable with various columns such as ID, IP Address, Admin Username, Created At, etc.

[![image (48) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/Bsximage-48-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/Bsximage-48-1.png)

#### <span style="color: #f97316;">Blacklist</span> [](#bkmrk--15)

The blacklist records grid contains information about all the blacklist users with several details such as ID, IP Address, Admin Username, Valid till, Created At, and Action. This grid is completely filterable. Each of the record can be deleted or edited from the Action column.

[![image (49) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/LnGimage-49-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/LnGimage-49-1.png)

Go to **Action&gt;Edit** and you can change various details for each of the records such as IP Address, Username, and Valid till date.

[![image (50) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/jQximage-50-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/jQximage-50-1.png)

#### <span style="color: #f97316;">Whitelist</span> [](#bkmrk--15)

The Whitelist records grid contains information about all the blacklist users with several details such as ID, IP Address, Admin Username, Created At, and Action. This grid is completely filterable. Each of the records can be deleted or edited from the Action column.

[![image (51) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/oIAimage-51-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/oIAimage-51-1.png)

Go to **Action&gt;Edit** and you can change various details for each of the records such as IP Address, and Username.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image.png)

### <span style="color: #3b82f6;">Security Checklist Report</span> [](#bkmrk--14)

Go to **Admin &gt; System &gt; Scommerce Security&gt; Security Checklist**

#### <span style="color: #f97316;">Security Checklist Report</span> [](#bkmrk--15)

The Security checklist grid has several distinctions for various checks: Warning, Error, and Success

- **Admin password Protection:** - For Admin password protection, if a password change is not forced, the user will see an error. If the lifetime is more than 90 days, the user will see a warning. If a password change is forced and the lifetime is less than 90 days, then the user will see success.
- **Magento version check**: - For a Magento version check, if the version is outdated, the user will see an error. Otherwise, the user will see success.
- **Database Prefix check**: - For the Database prefix check, if the table prefix is not set in the configuration file, the user will see an error. Otherwise, the user will see success.
- **Frontend ReCaptcha Protection** - For Frontend ReCaptchaProtection, if all frontend forms are protected with Recaptcha, the user will see success. When some forms are protected, the user will see a warning. If none of the forms are protected, the user will see an error.
- **Admin Captcha Protection**:- For Admin Captcha protection, if all backend forms are protected with Captcha, the user will see a success. When some forms are protected, the user will see a warning. If none of the forms are protected, the user will see an error.
- **Admin path protection**: - For Admin path protection, if the user's admin path doesn't contain words from the stop list, doesn't contain numbers or capital letters, and is at least 15 characters long, the user will see a success. If any of the criteria mentioned are not fulfilled, the user will see a warning.
- **Admin usernames check**:- For Admin usernames check if the username contains words from the stop list or if the username contains numbers, the user will see a warning. Otherwise, success.
- **Admin users activity check**: - For Admin admin user activity check if the account is unused, the user will see a warning. Otherwise, success.
- **Check for static scripts inserted from Config and CMS Pages**: - For Static scripts in Configuration, CMS Blocks, and CMS Pages, if a text field has a static script, the user will see a warning. Otherwise, success.

[![image (54) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/QdOimage-54-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/QdOimage-54-1.png)

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-security-suite.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Advanced Reporting Extension

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Advanced Reporting Extension</span>

### Table of Contents

1. [*Installation* ](#bkmrk-installation)
    - *Upload Package*
    - *Install Extension*
2. [*Configuration Settings for Advanced Reporting* ](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Reports of Advanced Reporting* ](#bkmrk-reports-of-advanced-)
    - *Sales Detailed Report*
    - *Sales Item Detailed Report*
    - *Sales Summary Report*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory. ```php
    php bin/magento setup:upgrade 
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Advanced Reporting</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Advanced Reporting**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled -** Select "Yes" or "No" to enable or disable the module.
- **License Key -** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image - 2025-06-11T132522.508.jpg](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-2025-06-11t132522-508.jpg)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-2025-06-11t132522-508.jpg)

### <span style="color: #3b82f6;">Reports of Advanced Reporting</span>

#### Go to Admin &gt; Scommerce Configuration &gt; Reports &gt; Advanced Reporting

#### <span style="color: #f97316;">Sales Detailed Report</span>

You can see the sales detailed report at, **Admin &gt; Reports &gt; Advanced Reports &gt; Sales Detailed Report.**

#### The grid will have following columns:

- Increment Id - Order number
- Store - Store name
- Status - Status of the order, pending/processing/complete/closed
- Order Date
- Customer Name
- Billing Country
- Billing Postcode
- Billing Currency
- Base Currency
- Payment Method
- Total Shipping Price (Excl. VAT)- Base Currency
- Total Shipping Price (Incl. VAT) - Base Currency
- Total Shipping Price (Excl. VAT) - Billing Currency
- Total Shipping Price (Incl. VAT) - Billing Currency
- Total Discount - Base Currency
- Total Discount - Billing Currency
- Total Shipping VAT - Base Currency
- Total Shipping VAT - Billing Currency
- Total VAT - Base Currency
- Total VAT - Billing Currency
- Grand Total (Excl. VAT) - Billing Currency
- Grand Total (Incl. VAT) - Billing Currency
- Grand Total (Excl. VAT) - Base Currency
- Grand Total (Incl. VAT) - Base Currency
- Total Cost
- Gross Profit Margin (%) = ((Grand Total (Excl. Vat) - (Total Cost + Total Shipping Price (Excl. VAT) + Total Discount (Excl. VAT))) / Grand Total (Excl. Vat)) \* 100
- Gross Profit Margin (value) = (Grand Total (Excl. Vat) - (Total Cost + Total Shipping Price (Incl. VAT) + Total Discount (Incl. VAT))))

[![image (67) (2).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/image-67-2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/image-67-2.png)

[![image (68) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/7U2image-68-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/7U2image-68-1.png)

#### <span style="color: #f97316;">**Sales Item Detailed Report**</span>

It shows you the item based report with Item Price, Item Cost, Item Discount and Gross Profit Margin (%, value) and with the arranged data, you can immediately change the strategies for the better sales. You can see the report at **Admin &gt; Reports &gt; Advanced Reports &gt; Sales Item Detailed Report.**

#### The grid will have following columns:

- Increment Id - Order number
- Store - Store name
- Status - Status of the order, pending/processing/complete/closed
- Order date
- Customer Name
- Billing Country
- Billing Postcode
- Billing Currency
- Base Currency
- Payment Method
- Sku
- Item Name
- Item Qty
- Item Price (Excl. Vat) - Billing Currency
- Item Price (Incl. Vat) - Billing Currency
- Item Price (Excl. Vat) - Base Currency
- Item Price (Incl. Vat) - Base Currency
- Item Discount - Billing Currency
- Item Discount - Base Currency
- Item Total Cost - Base Currency
- Item VAT - Billing Currency
- Item VAT - Base Currency
- Item Total (Excl. Vat) - Billing Currency
- Item Total (Incl. Vat) - Billing Currency
- Item Total (Excl. Vat) - Base Currency
- Item Total (Incl. Vat) - Base Currency
- Gross Profit Margin (%) = )=((Item Price Excl. Vat) - (Item Cost + Item Discount (Incl. Vat))) \* Item Qty / Item Price (Excl. Vat)\*Item Qty) \* 100
- Gross Profit Margin (value) = (Item Price (Excl. Vat) - (Item Cost + Item Discount (Incl. Vat))) \* Item Qty

[![image (69) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/KKMimage-69-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/KKMimage-69-1.png)

#### <span style="color: #f97316;">**Sales Summary Report**</span>

You can see the summary report at **Admin &gt; Reports&gt;Advanced Reports &gt; Sales Summary Report.** Based on date selection you can see the overall order based report with Grand Total and Gross Profit Margin (%, value).

#### The grid will have following columns:

- Period - It will be Day/Month/Year as a period based on "From" and "To" date selection.
- Store - Store name
- Number of orders - Total number of orders based on filter and date selection
- Ordered Items - Total number of ordered items during the selected period
- Total VAT - Total VAT of all orders
- Total Shipping Price (Incl. VAT) - Billing Currency
- Total Shipping Price (Excl. VAT) - Billing Currency
- Total Shipping Price (Incl. VAT) - Base Currency
- Total Shipping Price (Excl. VAT) - Base Currency
- Total Discount - Billing Currency
- Total Discount - Base Currency
- Total Cost
- Grand Total Ordered (Excl. VAT) - Billing Currency
- Grand Total Ordered (Incl. VAT) - Billing Currency
- Grand Total Ordered (Excl. VAT) - Base Currency
- Grand Total Ordered (Incl. VAT) - Base Currency
- Grand Total Invoiced (Excl. VAT) - Billing Currency
- Grand Total Invoiced (Incl. VAT) - Billing Currency
- Grand Total Invoiced (Incl. VAT) - Base Currency
- Grand Total Refunded (Excl. VAT) - Billing Currency
- Grand Total Refunded (Incl. VAT) - Billing Currency
- Grand Total Refunded (Excl. VAT) - Base Currency
- Grand Total Refunded (Incl. VAT) - Base Currency
- Gross Profit Margin (%) = (((Grand Total (Invoiced (Incl. VAT)) - Grand Total (Refunded (Incl. VAT))) - (Total Cost + Total Shipping Price (Incl. VAT) + Total Discount (Incl. VAT))) / (Grand Total (Invoiced (Incl. VAT))) \* 100
- Gross Profit Margin (value) = (((Grand Total (Invoiced (Incl. VAT)) - Grand Total (Refunded (Incl. VAT))) - (Total Cost + Total Shipping Price (Incl. VAT) + Total Discount (Incl. VAT)))

[![image (70) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/scaled-1680-/hNEimage-70-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-06/hNEimage-70-1.png)

If you have a question related to this extension please check out our [**FAQ Section** ](https://www.scommerce-mage.com/magento-2-advanced-reporting.html#customfaq)first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Product Packs & Bulk Quantity Sync

### <span style="color: rgb(59, 130, 246);">Installation and User Guide for Magento 2 Product Packs &amp; Bulk Quantity Sync</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Download Extension*
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Bundle Items*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Workflow*](#bkmrk-workflow)
4. [*Setting Up Bundle Items Association*](#bkmrk-setting-up-bundle-it)
    - *Associating Bundle Items &amp; Defining Quantities*
    - *Updating or Removing Bundle Associations*
5. [*Inventory Automation*](#bkmrk-inventory-automation)
    - *On Purchase*
    - *On Refund*
    - *Out-of-Stock Handling*
6. *[What Customers See](#bkmrk-what-customers-see)*
7. [*Bulk Import &amp; Export*](#bkmrk-bulk-import-%26-export)
    - *Bulk Import*
    - *Bulk Export*

### <span style="color: #3b82f6;">Installation</span> [](#bkmrk-)

- <span style="color: #f97316;">**Download Extension:**</span> Once you have placed the order from our site then go to Account section and click on My Downloadable Products and download the extension package.

[![image (84) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image-84-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image-84-1.png)

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Magento 2 Product Packs &amp; Bulk Quantity Sync</span>[](#bkmrk--1)

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Bundle Items**

#### <span style="color: #f97316;">General Settings</span> [](#bkmrk--2)

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image - 2025-07-31T164813.407.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image-2025-07-31t164813-407.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image-2025-07-31t164813-407.png)

### <span style="color: #3b82f6;">Workflow</span> [](#bkmrk--3)

The **Magento 2 Bundle Items Inventory** extension allows store administrators to associate any number of component products with simple items in their catalogue—each with a precise quantity. This setup enables inventory deduction and restoration for both main and associated (bundle) items during purchases and refunds, streamlining complex product management and keeping total inventory accurate.

### <span style="color: #3b82f6;">**Setting Up Bundle Item Associations**</span> [](#bkmrk--7)

#### <span style="color: #f97316;">**Associating Bundle Items &amp; Defining Quantities**</span>

1. **Navigate to Products:**  
    `Catalog > Products` in your Magento Admin.
2. **Edit a Simple Product:**  
    Open the product you want to add bundle items to (e.g., "Deluxe Gift Set").
3. **Find the 'Bundle Items' Tab:**  
    (This extension will add a new tab or section named **Bundle Items**)
4. **Add Bundle Items:**
    - Click **'Add Bundle Item'**.
    - Use the search/picker to select products you'd like to include (e.g., "Gift Box", "Greeting Card", "Ribbon").
    - Enter the number of each item required per unit (e.g., 1 ribbon per gift set, 2 cards per set).
5. **Save** the main product to commit changes.

**Example:**  
If "Family Baking Kit" requires 1 rolling pin, 2 spatulas, and 3 mixing bowls per kit, add each as a bundle item and specify quantities accordingly.

#### <span style="color: #f97316;">**Updating or Removing Bundle Associations**</span>

- **To change quantities:** Edit the relevant field next to each bundle item.
- **To remove an item:** Use the remove/delete option within the grid.

[![image - 2025-07-31T164933.254.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image-2025-07-31t164933-254.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image-2025-07-31t164933-254.png)

### <span style="color: #3b82f6;">**Inventory Automation**</span> [](#bkmrk--7)

#### <span style="color: #f97316;">**On Purchase**</span>

When an order containing the main product is placed:

- The main product stock decreases by the quantity purchased.
- Each bundle item's stock decreases based on the quantity defined per main product **×** number of mains sold.

**Example:**  
Purchasing 4 "Spa Kits" (each requires 2 candles and 1 bottle of oil):

- Main product: 4 deducted
- Candles: 8 deducted (4 × 2)
- Oil bottles: 4 deducted (4 × 1)

#### <span style="color: #f97316;">**On Refund**</span>

When an order for the main product is refunded:

- The main product stock increases by the quantity refunded.
- Each bundle item's stock increases based on the refund quantity and their association.

**Example:**  
Refund 2 "Family Baking Kits":

- Main product: +2
- Rolling pins: +2
- Spatulas: +4 (2 × 2)
- Mixing bowls: +6 (2 × 3)

#### <span style="color: #f97316;">**Out-of-Stock Handling**</span>

By default, the main product can be purchased even if bundle items are out of stock.  
(*Future versions will allow configuration to prevent purchase if bundle items are unavailable.*)

### <span style="color: #3b82f6;">**What Customers See**</span> [](#bkmrk--7)

On the main product's page, your customers will see all associated bundle items and the quantities per unit (e.g. "Includes: 2 Candles, 1 Essential Oil Bottle per kit").

### <span style="color: #3b82f6;">**Bulk Import &amp; Export**</span> [](#bkmrk--7)

#### <span style="color: #f97316;">**Bulk Import**</span>

1. **Prepare a CSV File:** Each row should include: 
    - Main Product SKU
    - Bundle Item SKU
    - Quantity per main product
2. **Go to:**  
    `System > Data Transfer > Import`
3. **Choose Entity Type:**  
    "Bundle Item Associations"
4. **Upload and Import:**
    - The system validates: 
        - All SKUs exist
        - Quantities are whole numbers
        - No duplicate relationships are present
    - Errors will appear with guidance to fix.

### **Sample CSV Format**

<table id="bkmrk-main_product_sku-bun" style="height: 131px; width: 89.7619%;"><thead><tr><th style="width: 33.3833%;">main\_product\_sku</th><th style="width: 33.3833%;">bundle\_item\_sku</th><th style="width: 33.3833%;">quantity\_per\_unit</th></tr></thead><tbody><tr><td style="width: 33.3833%;">spa-kit</td><td style="width: 33.3833%;">candle</td><td style="width: 33.3833%;">2</td></tr><tr><td style="width: 33.3833%;">spa-kit</td><td style="width: 33.3833%;">oil-bottle</td><td style="width: 33.3833%;">1</td></tr><tr><td style="width: 33.3833%;">baking-kit</td><td style="width: 33.3833%;">spatula</td><td style="width: 33.3833%;">2</td></tr></tbody></table>

[![image - 2025-07-31T165218.847.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image-2025-07-31t165218-847.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image-2025-07-31t165218-847.png)

#### <span style="color: #f97316;">**Bulk Export**</span>

1. **Go to:**  
    `System > Data Transfer > Export`
2. **Choose "Bundle Item Associations" as entity.**
3. **Download the CSV:**  
    The export will show: 
    - Each main SKU
    - Associated bundle SKUs
    - Quantities for each link

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image.png)

If you have a question related to this extension please check out our [<span style="text-decoration: underline;">**FAQ Section**</span>](https://www.scommerce-mage.com/magento-2-bundle-items-inventory.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Affiliate Program

### <span style="color: rgb(59, 130, 246);">Installation and User Guide for Magento 2 Affiliate Program</span>

****Table of Contents****

1. [**Installation**](#bkmrk-installation)
    - **Download Extension**
    - **Installation via app/code**
    - **Installation via Composer**
2. **Configuration Settings for Affiliate**
    - **General Settings**
3. **Workflow**
4. **Setting Up Bundle Items Association**
    - **Associating Bundle Items &amp; Defining Quantities**
    - **Updating or Removing Bundle Associations**
5. **Inventory Automation**
    - **On Purchase**
    - **On Refund**
    - **Out-of-Stock Handling**
6. **What Customers See**
7. **Bulk Import &amp; Export**
    - **Bulk Import**
    - **Bulk Export**

### <span style="color: rgb(59, 130, 246);">Installation</span>

- ****Download Extension:****<span style="white-space: pre-wrap;"> Once you have placed the order from our site then go to Account section and click on My Downloadable Products and download the extension package.</span>

[![image (84) (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/scaled-1680-/image-84-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-07/image-84-1.png)

- ****Installation via app/code:****<span style="white-space: pre-wrap;"> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.</span>  
    <span style="white-space: pre-wrap;"> </span>  
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
    
      
    <span style="white-space: pre-wrap;"></span>
- ****Installation via Composer:****<span style="white-space: pre-wrap;"> Please follow the guide provided in the below link to complete the installation via composer.</span>

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: rgb(59, 130, 246);">Configuration Settings for Affiliate Program</span>

<span style="white-space: pre-wrap;">Go to </span>****Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Security Base****

#### <span style="color: rgb(249, 115, 22);">General Settings</span>

- ****Enabled –****<span style="white-space: pre-wrap;"> Select "Yes" or "No" to enable or disable the module.</span>
- ****License Key –****<span style="white-space: pre-wrap;"> Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at </span><support@scommerce-mage.com>.
- ****Select Commission Rates****<span style="white-space: pre-wrap;"> </span>****–****<span style="white-space: pre-wrap;"> Select commission rate type Fixed/Tier</span>
- ****Fixed****<span style="white-space: pre-wrap;"> </span>****–****<span style="white-space: pre-wrap;"> In case commission tier is "Fixed" then enter the commission percentage.</span>
- ****Tier****<span style="white-space: pre-wrap;"> </span>****–****<span style="white-space: pre-wrap;"> Define different tiers and their commission percentage</span>
    - <span style="color: rgb(48, 48, 48); background-color: rgb(239, 239, 239);">Min value of purchase</span>
    - <span style="color: rgb(48, 48, 48); background-color: rgb(239, 239, 239);">Max value of purchase</span>
    - <span style="color: rgb(48, 48, 48); background-color: rgb(239, 239, 239);">Commission (Percentage)</span>
    - <span style="color: rgb(48, 48, 48); background-color: rgb(239, 239, 239);">Action:- Delete</span>
- ****Terms and conditions****<span style="white-space: pre-wrap;"> </span>****–**** Set "Yes" to display Terms and Conditions on the affiliate program page on the frontend.
- ****Terms and conditions enabled by default –**** Set "Yes" to enable Terms and Conditions by default
- ****Checkbox text –**** Enter the text for Terms and Conditions Checkbox
- ****Terms and Conditions Title –**** Enter the title for Terms and Conditions
- ****Terms and Conditions Page –**** Select the page to be used to display Terms and Conditions

[![sett1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/sett1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/sett1.png)

#### <span style="color: rgb(249, 115, 22);">Payout Settings</span>

- ****Methods –****<span style="white-space: pre-wrap;"> Select payment methods to be used for making payouts for affiliates</span>
- ****Default Method –****<span style="white-space: pre-wrap;"> Select the payment method/payout method to make payout automatically via cron</span>
- ****Threshold –****<span style="white-space: pre-wrap;"> Enter the minimum amount required to make payouts.</span>
- ****Schedule –****<span style="white-space: pre-wrap;"> Select Manual/weekly/monthly, when "Manual" is selected payouts need to be done manually by admin and in case "weekly/monthly" is selected payout will be made automatically using CRON in 7 or 30 days.</span>
- ****Email From –****<span style="white-space: pre-wrap;"> Enter the email address to send payout notification</span>
- ****Email Template –****<span style="white-space: pre-wrap;"> Select </span><span style="color: rgb(48, 48, 48); background-color: rgb(255, 255, 255);">the email template used to notify affiliates when a payout has been processed.</span>
- ****Order Status –****<span style="white-space: pre-wrap;"> </span><span style="color: rgb(48, 48, 48); background-color: rgb(255, 255, 255);">Select order statuses to qualify for payout.</span>

[![sett2.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/sett2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/sett2.png)

[![sett3.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/sett3.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/sett3.png)

#### <span style="color: rgb(249, 115, 22);">Share Settings</span>

- ****Enable share in socials –****<span style="white-space: pre-wrap;"> Enable or disable social media links to share the affiliate link.</span>
- ****Socials –****<span style="white-space: pre-wrap;"> Select different social media channels to appear on frontend, by clicking on these users can share their affiliate link on these platforms</span>

[![sett4.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/sett4.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/sett4.png)

### <span style="color: rgb(59, 130, 246);">Workflow</span>

The extension empowers Magento 2 stores with a robust affiliate program, enabling customers to promote your products in exchange for commissions and allowing admins to efficiently monitor, pay, and manage program performance.

### <span style="color: rgb(59, 130, 246);">For Customers: Join and Use the Affiliate Program</span>


#### <span style="color: rgb(249, 115, 22);">Affiliate Registration</span>

- <span style="white-space: pre-wrap;">Go to </span>****My Account &gt; Affiliate Program****<span style="white-space: pre-wrap;"> after logging in.</span>
- <span style="white-space: pre-wrap;">Review the affiliate program description and </span>****Terms and Conditions****.
    - Accept the Terms by checking the box; the box text and content depend on admin configuration.
- <span style="white-space: pre-wrap;">Click </span>****"Join Program"****. Once enrolled, you’ll see your unique referral link.

[![front1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/front1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/front1.png)

#### <span style="color: rgb(249, 115, 22);">Referral Links</span>

- Your referral link is displayed prominently.
    - <span style="white-space: pre-wrap;">Use </span>****Copy****<span style="white-space: pre-wrap;"> to quickly copy it to your clipboard.</span>
    - <span style="white-space: pre-wrap;">Use </span>****Share****<span style="white-space: pre-wrap;"> to distribute via Facebook, Twitter, Reddit, or Instagram with one click.</span>
- You can now share this link anywhere. Anyone using your link is tracked for commission.

[![front2.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/front2.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/front2.png)

#### <span style="color: rgb(249, 115, 22);">Affiliate Dashboard</span>

- <span style="white-space: pre-wrap;">In </span>****My Account &gt; Affiliate History****, view:
    - ****Increment ID****
    - ****Order Amount****
    - ****Expected Payout****
    - ****Payout Status****
    - ****Order Date****

[![reffrered_orders.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/reffrered-orders.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/reffrered-orders.png)

### <span style="color: rgb(59, 130, 246);">For Admins: Managing the Affiliate Program</span>

#### <span style="color: rgb(249, 115, 22);">Affiliate Dashboard</span>

- <span style="white-space: pre-wrap;">Navigate to </span>****Marketing &gt; Affiliates****<span style="white-space: pre-wrap;"> in the admin panel.</span>
- The dashboard grid lists for each affiliate:
    - Customer ID, Name, Email
    - Total Orders, Sales Amount, Commissions (pending/paid)
- ****Action:****
    - Make Payout

[![aff_table.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/eIFaff-table.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/eIFaff-table.png)

### <span style="color: rgb(59, 130, 246);">Referred Orders Overview (Admin)</span>

- Examine which orders were generated by each affiliate from the dashboard.
- View and validate predicted commissions, manage disputes or issues.

#### <span style="color: rgb(249, 115, 22);">Payout Management</span>

- View a list of affiliates eligible for payouts:
    - Payouts are only due for orders with approved statuses (e.g., Complete, Shipped).
    - <span style="white-space: pre-wrap;">Set </span>****minimum payout threshold****<span style="white-space: pre-wrap;"> and </span>****payout schedule****<span style="white-space: pre-wrap;"> (weekly, monthly, manual).</span>
- ****Payout Processing:****
    - Select payout method (Bank Transfer or PayPal).
    - Mark payouts as “Paid”–affiliate’s balance resets to 0.
    - All payouts and payment history are tracked for each affiliate.
    - Affiliates receive email notification templates you configure.
- ****Refunds and Cancelations:****
    - If an order is refunded or canceled after commission has been paid, commission is deducted or reversed automatically.

[![mak_payout.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/mak-payout.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/mak-payout.png)

#### <span style="color: rgb(249, 115, 22);">Multi-tier Commission Structure</span>

- <span style="white-space: pre-wrap;">Enable/Disable tiered commission system from </span>****Affiliate Settings****.
- Configure slabs and rates, e.g.:
    - £1–£999.99: 10% commission
    - £1,000–£1,999.99: 15% commission
    - £2,000+: 20% commission

---

### <span style="color: rgb(59, 130, 246);">Order &amp; Affiliate Tracking</span>

#### <span style="color: rgb(249, 115, 22);">How Order Attribution Works</span>

- When a prospect clicks your referral link:
    - A browser cookie stores your affiliate ID for 30 days.
- Any purchase in that period is attributed to you.
- After 30 days or if no link is used, no commission is awarded.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/K3uimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/K3uimage.png)

#### <span style="color: rgb(249, 115, 22);">Cookie Lifecycle</span>

- ****Creation:****<span style="white-space: pre-wrap;"> On link click.</span>
- ****Active period:****<span style="white-space: pre-wrap;"> 30 days from last click.</span>
- ****Expiry:****<span style="white-space: pre-wrap;"> After 30 days.</span>

<span style="white-space: pre-wrap;">If you have a question related to this extension please check out our </span>[FAQ Section](https://www.scommerce-mage.com/magento-2-affiliate-program.html#customfaq)<span style="white-space: pre-wrap;"> first. If you can't find the answer you are looking for then please contact </span>[****support@scommerce-mage.com****](mailto:support@scommerce-mage.com)****.****

# Magento 2 Distance Based Shipping

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Distance Based Shipping Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Distance Based Shipping*](#bkmrk-configuration-settin)
    - *Order Tags Logs*
    - *Order Tags Grid*
    - *General Settings*
3. [*Shipping Cost*](#bkmrk-shipping-cost)
4. [*Pick Store / Website Address from*](#bkmrk-pick-store-website-address-from)

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Distance Based Shipping</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Sales&gt; Delivery Methods &gt; Distance Based Shipping**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled Shipping Method –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Title -** Please enter the Title of Distance based Shipping.
- **Method Name -** Please enter the Method name of Distance based Shipping.
- **Shipping Cost -** The range is defined as: greater than or equal to "Distance From" and less than "Distance To".
- **Ship to Applicable Countries -** Select the applicable shipping destination(s).
- **Show Method if Not Applicable -** Select “Yes” or “No” to display the method when it is not applicable
- **Displayed Error Message -** Please enter the error message to be displayed
- **Sort Order -** Please enter the Sort order
- **Google Maps Api key -** Use a secure API key provided by Google to authenticate distance calculation requests via the Distance Matrix API.
- **Distance Unit -** Select whether to compare distances in miles or kilometers.
- **Pick Store / Website Address From -** **Select the method for sourcing the store address:**
    
    
    - **Website Source**: Uses the address defined in the MSI configuration. *(Visible only when MSI is enabled.)*
    - **General → Store Information**: Pulls the address from the store’s configuration settings.
    - **Enter Address Manually**: Allows the admin to input latitude and longitude directly.
- **Enabled Debug -** Select “Yes” to enable debug mode, or “No” to disable it.
- **Filter Methods by Distance -** Select “Yes” to enable distance-based filtering, or “No” to disable it
- **Distance Threshold -** Please add the Distance Threshold.
- **Shipping Methods -** Select the shipping methods to hide when the store-to-customer distance exceeds the defined threshold.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/iDHimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/iDHimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/EIBimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/EIBimage.png)

#### <span style="color: #f97316;">Shipping Cost </span>

Go to **Admin&gt; Stores &gt; Sales &gt; Delivery Methods &gt; Distance Based Shipping**

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/Jyfimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/Jyfimage.png)

### **Shipping Method Configuration**

- **Enable this Method (Yes / No)**
    
    
    - Turns this specific shipping method on or off within the distance-based filter.
    - When set to **Yes**, the related configuration fields below become active.
- **Shipping Title**
    
    
    - The user-friendly name shown to customers during checkout (e.g., "Standard Delivery").
    - Helps customers differentiate between multiple shipping options.
- **Shipping Method Name**
    
    
    - An internal name used for programmatic reference, logging, and in the admin panel.
    - Not typically visible to customers.
- **Shipping Cost**
    
    
    - The cost applied to this shipping method.
    - Its calculation depends on the **Type** field (see below):
        
        
        - Can be a fixed value (e.g., `5.99`).
        - Or a percentage of the cart's subtotal (e.g., `5` for 5%).
- **Distance From**
    
    
    - The **minimum** distance (in miles or kilometers) from the store for this method to be available.
    - Defines the start of the valid range.
- **Distance To**
    
    
    - The **maximum** distance (in miles or kilometers) from the store for this method to be available.
    - Defines the end of the valid range.
- **Type**
    
    
    - Determines how the **Shipping Cost** is calculated.
    - **Fixed:** Applies the cost as a flat fee.
    - **Percentage:** Calculates the cost as a percentage of the order's subtotal.
- **Show Method if Not Applicable (Yes / No)**
    
    
    - **Yes:** The method will be displayed even if the customer is outside the distance range, but will show an error message.
    - **No:** The method will be completely hidden if the customer is outside the distance range.
- **Displayed Error Message**
    
    
    - The custom message shown to customers when "Show Method if Not Applicable" is set to **Yes** and they are outside the valid distance range.
    - Example: "This shipping method is not available for your location."
- **Ship to Applicable Countries**
    
    
    - Defines the geographical availability of the method:
        
        
        - **All Allowed Countries:** Available to all countries your store ships to.
        - **Specific Countries:** Limits the method to a selected list of countries.
- **Ship to Specific Countries**
    
    
    - A multi-select list to choose which countries this shipping method is available to.
    - This field only appears if "Ship to Applicable Countries" is set to **Specific Countries**.
- **Sort Order**
    
    
    - A number that determines the order in which this method appears in the checkout list compared to other methods.
    - Lower numbers (e.g., 0, 1) are displayed first.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/ugcimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/ugcimage.png)

When a customer enters an address on the checkout page, the system calculates delivery cost based on the distance from the origin address and the distance ranges configured are as follows: -

- **Zone 1: 0–10 km**: Delivery cost is 2
- **Zone 2: 11–20 km**: Delivery cost is 10
- **Zone 3: 21–90 km**: Delivery cost is 10

Refer to the screenshot below to validate the shipping methods based on calculated distance fall under the above configured distance ranges: -

### **<span style="color: rgb(53, 152, 219);">Frontend images based on above configured distance ranges:</span>**

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/ZvPimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/ZvPimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/kOAimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/kOAimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/z0Uimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/z0Uimage.png)

#### <span style="color: #f97316;">Pick Store / Website Address from</span>

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/oGTimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/oGTimage.png)

**Website Source -** To add a website source, navigate to: **Admin &gt; Stores &gt; Configuration &gt; Sources** From there, you can enter the required source details.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/Jfdimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/Jfdimage.png)

**General - Store Information** – Displays the store address as configured in the **Store Settings** section. This information is automatically pulled from the predefined store configuration. To configure, navigate to **Admin &gt; Stores &gt; General &gt; Store Information** and enter the store address. This address will be used as the source (origin) for distance-based calculations.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/ugcimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/ugcimage.png)

**Enter Address Manually –** Enables administrators to input geographic coordinates—**latitude** and **longitude**—directly, bypassing automated location detection or map-based selection.

To configure this manually, navigate to: **Admin &gt; Stores &gt; Sales &gt; Delivery Methods &gt; Distance-Based Shipping** From there, enter the desired latitude and longitude values. These coordinates allow Google Maps to accurately detect and associate the location for distance-based calculations.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/scaled-1680-/oIBimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-08/oIBimage.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-order-tagger.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 VAT Switcher

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 VAT Switcher Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for VAT Switcher*](#bkmrk-configuration-settin)
    - *General Settings*
3. <span style="color: rgb(249, 115, 22);">[<span style="text-decoration: underline;">*Show Price without VAT*</span>](#bkmrk-order-tags-grid)</span>
4. [<span style="text-decoration: underline; color: rgb(230, 126, 35);">*<span style="color: rgb(249, 115, 22); text-decoration: underline;">Show Price with VAT</span>*</span>](#bkmrk-show-price-with-vat)

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for VAT Switcher</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; VAT Switcher**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Customer Groups -** Select a customer group from the available options. The VAT Switcher is accessible only to users who belong to customer groups with explicitly granted access.
- **Include VAT by Default -** This setting determines whether product prices are shown inclusive or exclusive of VAT by default. If set to **"Yes"**, prices will be displayed with VAT included
    
    [![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/scaled-1680-/NKkimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/NKkimage.png)

#### <span style="color: #f97316;">Show Price without VAT </span>

The **VAT switcher** is prominently displayed on all product listing and product detail pages. It is positioned within the header.

When a user selects **“Show prices without VAT”**, all product prices are dynamically updated to exclude applicable VAT.

**VAT rates** are calculated based on the customer’s **shipping address** or the store’s **default tax zone**. Displayed prices accurately reflect tax inclusion or exclusion in accordance with **Magento’s tax configuration settings**.

From the backend, **administrators** can fully manage VAT switcher behavior, including:

- Enabling or disabling the VAT switcher
- Setting the default display mode (inclusive or exclusive) per store view
- Defining which customer groups have access to the switcher

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/scaled-1680-/KGTimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/KGTimage.png)

#### <span style="color: #f97316;">Show Price with VAT</span>

<span style="color: rgb(0, 0, 0);"><span data-teams="true">When a user selects **“Show prices with VAT”**, all product prices are recalculated to include the applicable VAT.</span></span>


[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/scaled-1680-/HYRimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/HYRimage.png)

#### <span style="color: #f97316;">Customer Groups</span>

<span data-teams="true">You can set a customer group by going to Admin &gt; Customers, then choosing a customer and picking a group in the 'Group' field</span>. The available groups include: *Not Logged In*, *General*, *Wholesale*, and *Retailer*.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/scaled-1680-/VoQimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/VoQimage.png)

Customer groups that are not selected in the configuration settings will not have access to the VAT switcher option on the front end.

[![image - 2025-09-08T201313.050.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/scaled-1680-/image-2025-09-08t201313-050.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-09/image-2025-09-08t201313-050.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-vat-switcher.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Custom Currency Manager

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Custom Currency Manager Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Custom Currency Manager*](#bkmrk-configuration-settin)
    - *General Settings*
3. [*Custom Currency Manager*](#bkmrk-custom-currency-mana)
4. *[Error Message When Adding Duplicate currency in Configuration settings](#bkmrk-error-message-when-a)*
5. *[Error for Deleting Currency for Configuration settings](#bkmrk-error-for-deleting-c)*
6. *[Frontend Screenshots](#bkmrk-frontend-screenhots)*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Custom Currency Manager</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Custom Currency Manager**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Custom Currencies -** Please add the defined list of custom currencies.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/kK6image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/kK6image.png)

#### **<span style="color: rgb(230, 126, 35);">Custom Currency Manager</span>**

As a customer using the Custom Currency Manager extension, you can create and configure various custom currencies such as BTC, ZWG, and others to suit your store's needs.

To add a Custom Currency like **BTC** add from **Configuration, path - Admin &gt; Stores &gt; Configuration &gt; Custom Currency Manager**

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/TD3image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/TD3image.png)

Once you configure custom currencies by adding the currency code, symbol, plural name, and precision in the configuration, the newly added currency appears in the "Allowed Currencies" dropdown under Magento’s default currency setup section.

<span class="fabric-text-color-mark" data-renderer-mark="true" data-text-custom-color="#ff991f">To configure your store’s currency settings, go to </span>**<span class="fabric-text-color-mark" data-renderer-mark="true" data-text-custom-color="#ff991f">Admin Panel &gt; Stores &gt; Configuration &gt; General &gt; Currency Setup</span>**<span class="fabric-text-color-mark" data-renderer-mark="true" data-text-custom-color="#ff991f">, where you can choose the base currency, default display currency, and allowed currencies. </span>Please refer to the screenshots below for visual guidance on setting up custom currencies.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/DCIimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/DCIimage.png)

To configure currency rates for your store:

1. Go to **Admin Panel &gt; Stores &gt; Configuration &gt; Currency Rates**.
2. From this section, you can manually set exchange rates or import them from supported services.
3. Make sure to save your changes to apply the updated rates across your storefront.

[![image - 2025-10-15T193428.520.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/image-2025-10-15t193428-520.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/image-2025-10-15t193428-520.png)

##### **<span style="color: rgb(249, 115, 22);">Error Message When Adding Duplicate Currency in Configuration Settings</span>**

Since GBP already exists in the default Magento, you cannot add it again. Attempting to do so will trigger a warning message.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/yIzimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/yIzimage.png)

##### **<span style="color: rgb(249, 115, 22);">Error for Deleting Currency for configuration settings</span>**

The '**Test**' currency has been selected in the Allowed Currency list for the UK site, Default Configuration, and Default Store View.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/G0mimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/G0mimage.png)

#### <span style="color: rgb(249, 115, 22);">**Frontend Screenhots**</span>

**<span style="color: rgb(0, 0, 0);">Currency Options available on the frontend - Default store view.</span>**

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/gadimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/gadimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/eJUimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/eJUimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/scaled-1680-/mJwimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-10/mJwimage.png)

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-custom-currency-manager.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Sample Product

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Sample Product extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Sample Product*](#bkmrk-configuration-settin)
    - *General Settings*
    - *Sample Product Settings*
3. [*Configure a Sample Product* ](#bkmrk-configure-a-sample-p)
    - *Free Sample*
    - *Sample with Cost Associated*
4. [*Sample products are not Eligible for Coupon Discounts* ](#bkmrk-sample-products-are-)
    - *Coupon Code Validation for Free Sample Product*
    - *Coupon Code Validation for Sample with Cost Associated product*
5. [*Email Received for a Sample Product* ](#bkmrk-configure-a-sample-p)

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">[https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer](https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Sample Product</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Sample Product**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (52).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-52.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-52.png)

#### <span style="color: #f97316;">Sample Product Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.
- **Default Free Sample Text –** Please add the Default Free Sample Text
- **Default Sample with Cost Associated Text –** Please add the Default Sample with Cost Associated Text
- **Default Sample Price with Cost Associated -** Please add the Default simple price with cost associated
- **Default Max Qty to order samples -** Please add the Default max qty to order samples

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/image.png)

### <span style="color: #3b82f6;">**Configure a Sample product**</span>

- #### <span style="color: rgb(0, 0, 0);">**Free Sample**</span>

Log in to the Admin Panel and navigate to **Catalog → Products**. Select the product you want to edit and click **Edit**. Scroll down to the **Sample Product** section and choose **Free Sample** from the **Sample Type** dropdown.

**1. When the fields are empty**

If all fields are left blank, the system will use the default configuration values.  
On the frontend product page:

- The default quantity of **3** is applied, allowing the item to be added to the cart.
- The label **Free Sample** is displayed (e.g., for product *24‑WB07*).

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/Cnoimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/Cnoimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/t4oimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/t4oimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/3s1image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/3s1image.png)

**2. When the fields have values set**

If any fields in the **Sample Product** section contain values, those product‑level values override the defaults and are used on the frontend.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/iapimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/iapimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/xOVimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/xOVimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/uZSimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/uZSimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/tFcimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/tFcimage.png)

- #### **Sample with Cost Associated**

Log in to the Admin Panel and go to **Catalog → Products**. Open the product you want to update by clicking **Edit**. Scroll down to the **Sample Product** section.

From the **Sample Type** dropdown, select **Sample with Cost Associated**.

- If you leave all fields empty, the system will automatically use the default price, title, and quantity from the configuration settings.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/PQCimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/PQCimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/t4oimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/t4oimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/8Czimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/8Czimage.png)

- If you enter values in these fields, the system will use the product‑level values set in the **Sample Products** section instead.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/wEiimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/wEiimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/3arimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/3arimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/AoBimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/AoBimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/8tfimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/8tfimage.png)

### <span style="color: #3b82f6;">**Sample Products are not Eligible for Coupon Discounts**</span>

- #### <span style="color: #000000;">**<span data-teams="true">Coupon Code Validation for Free Sample Product</span>**</span>

Log in to the Admin Panel and go to **Marketing → Cart Price Rules**. Create a new coupon code, for example **“testcode”**. When you apply this coupon on the frontend for the sample products, it should display a validation error, even if the code itself is valid, because coupon codes are **not meant to work for sample products**

<span style="color: #000000;">**[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/QlEimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/QlEimage.png)**</span>

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/Oehimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/Oehimage.png)

- #### <span style="color: #000000;">**<span data-teams="true">Coupon Code Validation for Sample with Cost Associated product</span>**</span>

We’ve created a coupon code called **“testcode”** in the Admin Panel. This code works normally for regular products, but it **won’t apply to the Sample product (e.g. 24‑WB07)**. When a customer tries to use the coupon code for the sample products, the system will show a validation message saying the code isn’t valid.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/QlEimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/QlEimage.png)

[![nzbimage_1.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/nzbimage-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/nzbimage-1.png)

<div id="bkmrk--20"></div>### <span style="color: #3b82f6;">**Email Received for a Sample Product**</span>

<span style="color: #3b82f6;">**[![MicrosoftTeams-image (1).png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/microsoftteams-image-1.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/microsoftteams-image-1.png)**</span>

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-sample-products.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Barcode Scanner

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Barcode Scanner extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Barcode Scanner*](#bkmrk-configuration-settin)
    - *General Settings*
    - *Sample Product Settings*
3. *[Configure a Sample Product](#bkmrk-configure-a-sample-p)*
4. *[Configure a Simple Product](#bkmrk-configure-a-simple-product)*
5. *[Coupon code doesn't work for a Sample product](#bkmrk-coupon-code-doesn%27t-)*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```
    php php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer</p>

### <span style="color: #3b82f6;">Configuration Settings for Sample Product</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Sample Product**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image (52).png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/image-52.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/image-52.png)

#### <span style="color: #f97316;">Barcode Scanner Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/Ivcimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/Ivcimage.png)

- **Barcode Attribute –** Please select the Barcode attribute from the options.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/khtimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/khtimage.png)

- **Order Statuses to pick –** Please select the Order Statuses from the options.
- **Change Status on Pick -** Select Yes or No to Change the status on pick.
- **Pick Order Status -** If you select Yes, then choose the Pick Order Status from the options.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/uaFimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/uaFimage.png)

- **Order Statuses to pack –** Please select the Order Statuses from the options.
- **Change Status on Pack -** Select Yes or No to Change the status on pack.
- **Allow Partially Picked Items -** Select Yes or No to Allow Partially Picked Items.
- **Pack Order Status -** Please select the Pack Order Status from the options.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/Rc8image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/Rc8image.png)

- **Progressbar Color –** Please select the Color code for Progressbar
- **Progressbar Text Color –** Please select the Color code for Progressbar Text Color
- **Progress Status Color –** Please select the Color code for Progress Status Color
- **Complete Status Color –** Please select the Color code for Picking and Packing Complete Status

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/scaled-1680-/PUwimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-01/PUwimage.png)

### <span style="color: #3b82f6;">**Add a Barcode Scanner to a Product**</span>

Log in to the Admin Panel, navigate to **Admin &gt;Catalog &gt; Products**, and select the product you want to edit. Click *Edit*, then scroll down to the Barcode field. Enter the value **12345678**, save the changes, and create an order for the product to which you added the Barcode (24-MB01).

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/image.png)

### <span style="color: #3b82f6;">**Scan Orders**</span>

Go to **Admin &gt; Sales &gt; Scan Orders**. Enter the order number in the Scan Order field. The system will then display the status as Pending under Order Status, Pick Status, and Pack Status.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/o8Eimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/o8Eimage.png)

Then go to **Admin &gt; Sales &gt; Orders**. Create the invoice and ship the order. Once completed, the order status will display as Complete in Scan Orders.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/iJQimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/iJQimage.png)

Next, enter the Barcode value **12345678** in the Scan Items field for Pick and again in the Scan Items field for Pack. Once completed, the status will update to Complete

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/h7oimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/h7oimage.png)

You can check the Barcode Scan Logs by navigating to **Admin &gt; Sales &gt; Orders &gt; Edit &gt; Barcode Scan Logs**. All order statuses will be shown as Success.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/Jq6image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/Jq6image.png)

### <span style="color: #3b82f6;">**Configuring “Change Status on Pick” and Barcode Scanner Workflow**</span>

When you set **“Change Status on Pick”** to Yes and configure the Picked from Pick Order Status under **Admin &gt; Stores &gt; Configuration &gt; Barcode Scanner**, then place an order and click on **Scan Items for Pick**, you can enter the barcode scanner value in front of the item. The status should then update to Picked and Complete. Please refer to the screenshot below for reference.

<div id="bkmrk--12">  
</div>[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/ERsimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/ERsimage.png)

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/scaled-1680-/9teimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-02/9teimage.png)

<div id="bkmrk--25"></div>If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-sample-products.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**

# Magento 2 Content Protection

### <span style="color: #3b82f6;">Installation and User Guide for Magento 2 Content Protection Extension</span>

**Table of Contents**

1. [*Installation* ](#bkmrk-installation)
    - *Installation via app/code*
    - *Installation via Composer*
2. [*Configuration Settings for Content Protection*](#bkmrk-configuration-settin)
3. *[Protecting a CMS Page](#bkmrk-order-tags-grid)*
4. *[Protecting a Product Page](#bkmrk-order-tags-logs)*
5. [*Protecting a Category Page*](#bkmrk-protecting-a-categor)
6. [*Frontend - The Gate Page* ](#bkmrk-installation)
    - *Gate Page Layout*
    - *Entering the Password*
    - *Session Unlock Behaviour*
7. [*Disabling Protection* ](#bkmrk-installation)
8. [*Technical notes for Developers* ](#bkmrk-technical-notes-for-)
    - *Module Structure*
    - *Database Changes*
    - *Plugin Interception*
    - *Admin UI Component Injection*
    - *Customising the Gate Page*
    - *Hyva Theme Compatibility*
    - *Full-page Cache Compatibility*

### <span style="color: #3b82f6;">Installation</span>

- <span style="color: #f97316;">**Installation via app/code:**</span> Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
    
    ```php
    php bin/magento module:enable Scommerce_ContentProtect  
    php bin/magento setup:upgrade  
    php bin/magento setup:di:compile  
    php bin/magento setup:static-content:deploy -f  
    php bin/magento cache:flush  
    ```
- <span style="color: #f97316;">**Installation via Composer:**</span> Please follow the guide provided in the below link to complete the installation via composer.

<p class="callout success">(https://docs.scommerce-mage.com/magento-2-extensions/installation-via-composer/installation-via-composer)</p>

### <span style="color: #3b82f6;">Configuration Settings for Content Protection</span>

Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Content Protection**

#### <span style="color: #f97316;">General Settings</span>

- **Enabled –** Select "Yes" or "No" to enable or disable the module.
- **License Key –** Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at <support@scommerce-mage.com>.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/scaled-1680-/FO1image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2025-05/FO1image.png)

#### <span style="color: #f97316;">Password Configuration</span>

<span style="color: rgb(0, 0, 0);">Go to **Admin &gt; Stores &gt; Configuration &gt; Scommerce Configuration &gt; Content Protect &gt; Password Configuration**</span>

- **Global Access Password –** Enter the password that visitors must provide to unlock access to any password-protected page. The password is stored using Magento's native encryption and will never appear in plain text in the database or configuration files.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/8Pnimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/8Pnimage.png)

**Note:** If the Global Access Password field is left empty, the gate page will be displayed but no password will unlock it. Always ensure a password is set before enabling protection on any page.

#### <span style="color: #f97316;">Protecting a CMS Page</span>

Go to **Admin &gt; Content &gt; Pages**

Open any existing CMS page or create a new one. Scroll down to find the Page Protection fieldset. Set the Password Protected toggle to Yes and save the page. The page is now gated any visitor attempting to access it without an unlocked session will be redirected to the password gate page.

- **Password Protected –** Select "Yes" to enable password protection on this CMS page. Select "No" (default) to leave the page publicly accessible.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/QY7image.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/QY7image.png)

#### <span style="color: #f97316;">Protecting a Product Page</span>

Go to **Admin &gt; Catalog &gt; Products**

Open any existing product or create a new one. Scroll down to find the Page Protection fieldset. Set the Password Protected toggle to Yes and save the product. Visitors attempting to access the product page without an unlocked session will be redirected to the gate page.

- **Password Protected –** Select "Yes" to enable password protection on this product page. Select "No" (default) to leave the product page publicly accessible.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/B1ximage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/B1ximage.png)

**Note:** The Password Protected attribute is scoped to store view level. This means you can enable protection on a product for one store view (e.g. your trade store) while leaving it accessible on another (e.g. your retail store). Make sure you are in the correct store view scope when editing the attribute.

#### <span style="color: #f97316;">Protecting a Category Page</span>

Go to **Admin &gt; Catalog &gt; Categories**

Select any category from the category tree on the left. Scroll down to find the Page Protection fieldset in the category edit form. Set the Password Protected toggle to Yes and save the category. Visitors attempting to access the category page without an unlocked session will be redirected to the gate page.

- **Password Protected –** Select "Yes" to enable password protection on this category page. Select "No" (default) to leave the category publicly accessible.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/kNximage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/kNximage.png)

**Note:** Protecting a category gates the category listing page only. Individual product pages within the category are not automatically protected — you must enable protection on each product separately if required. The attribute is scoped to store view level.

### <span style="color: #3b82f6;">Frontend - The Gate Page</span>

When a visitor attempts to access any password-protected page without an active session unlock, they are automatically redirected to the ContentProtect gate page. The gate page URL is:

```
/contentprotect/page/gate?return=<base64-encoded-return-path>
```

**<span data-teams="true">Restricted Page (About Us)</span>**

```
https://demo4.scommerce-mage.co.uk/contentprotect/page/gate/return/L2Ntcy9wYWdlL3ZpZXcvcGFnZV9pZC81/
```

**Restricted Category Page (Women)**

```
https://demo4.scommerce-mage.co.uk/contentprotect/page/gate/return/L2NhdGFsb2cvY2F0ZWdvcnkvdmlldy9pZC8yMA%3D%3D/
```

**Restricated Product Page (SKU: MH01)**

```
https://demo4.scommerce-mage.co.uk/contentprotect/page/gate/return/L2NhdGFsb2cvcHJvZHVjdC92aWV3L2lkLzYy/
```

#### <span style="color: #f97316;">Gate Page Layout</span>

The gate page uses your store's active theme layout (1-column, full width) and contains two sections:

- **Restricted Area (info block) –** Displayed at the top of the page. Contains a message informing the visitor that the content is restricted. The message text can be customised by editing view/frontend/templates/gate.phtml.
- **Enter Password to Continue (form block) –** Displayed below the info block. Contains a password input field, an Unlock button, and a Required Fields note.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/lRcimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/lRcimage.png)

#### <span style="color: #f97316;">Entering the Password</span>

The visitor enters the global password configured in Stores Configuration Scommerce Configuration Content Protect and clicks the Unlock button.

- **Correct password –** The visitor is redirected directly to the page they originally requested not to the homepage. The return URL is preserved throughout the process.
- **Incorrect password –** The gate page is redisplayed with an error message: "Incorrect password. Please try again." The return URL parameter is retained so a correct entry on the next attempt still redirects to the original page.
- **Empty password submission –** Client-side validation prevents the form from being submitted with an empty password field.

[![image.png](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/scaled-1680-/Ewiimage.png)](https://docs.scommerce-mage.com/uploads/images/gallery/2026-04/Ewiimage.png)

#### <span style="color: #f97316;">Session Unlock Behaviour</span>

Once the correct password is entered, an unlock flag is set in the visitor's Magento customer session. This flag applies to the entire session the visitor can then access any passwordprotected page (CMS, product, or category) on the store without being prompted again.

- **Session duration –** The unlock flag persists for the duration of the browser session. Closing the browser or session expiry will require the visitor to enter the password again on their next visit.
- **Guest and logged-in visitors –** The session unlock works for both guest visitors and authenticated customer account holders.
- **Multiple protected pages –** A single password entry unlocks all protected pages across all page types (CMS, product, category) for that session.

### <span style="color: #3b82f6;">Disabling Protection</span>

Protection can be disabled at two levels:

- **Per page –** Open the CMS page, product, or category in the admin and set the Password Protected toggle to No. Save the record. The page immediately becomes publicly accessible no cache flush required.
- **Globally (entire module) –** Go to Stores Configuration Scommerce Configuration Content Protect and set Enabled to No. This immediately disables all gate redirects across every page on the store, regardless of individual page toggle states. Your per-page settings are preserved in the database and will be restored if you re-enable the module.

**Tip:** If you need to quickly make all protected pages public — for example, on public launch day after a pre-launch review — setting Enabled to No in the global configuration is the fastest method. No individual page changes are needed.

### <span style="color: #3b82f6;">Technical notes for Developers</span>

#### <span style="color: #f97316;">Module Structure</span>

- <span style="color: rgb(0, 0, 0);">**Vendor / Module name –** Scommerce\_ContentProtect </span>
- <span style="color: rgb(0, 0, 0);">**Module path –** app/code/Scommerce/ContentProtect/ </span>
- <span style="color: rgb(0, 0, 0);">**Frontend route –** /contentprotect/page/gate and /contentprotect/page/unlock </span>
- <span style="color: rgb(0, 0, 0);">**Session key –** content\_protect\_unlocked (stored in Magento customer session)</span>

#### <span style="color: #f97316;">Database Changes</span>

<span style="color: rgb(0, 0, 0);">The module applies the following database changes via Magento's patch system on setup:upgrade:</span>

- <span style="color: rgb(0, 0, 0);">**cms\_page table –** Adds is\_password\_protected column (SMALLINT, default 0) via SchemaPatchInterface DDL-safe, runs outside of a transaction. </span>
- <span style="color: rgb(0, 0, 0);">**catalog\_product\_entity (EAV) –** Adds is\_password\_protected attribute (int, store view scope, default 0) via DataPatchInterface.</span>
- <span style="color: rgb(0, 0, 0);">**catalog\_category\_entity (EAV) –** Adds is\_password\_protected attribute (int, store view scope, default 0) via DataPatchInterface.</span>

#### <span style="color: #f97316;">Plugin Interception</span>

<span style="color: rgb(0, 0, 0);">Content Protect uses Magento's around plugin system to intercept the execute() method on three controllers:</span>

- <span style="color: rgb(0, 0, 0);">**Magento\\Cms\\Controller\\Page\\View –** Handles CMS page protection loads the page by identifier or ID and checks the is\_password\_protected flag. </span>
- <span style="color: rgb(0, 0, 0);">**Magento\\Catalog\\Controller\\Product\\View –** Handles product page protection loads the product by ID via ProductRepositoryInterface. </span>
- <span style="color: rgb(0, 0, 0);">**Magento\\Catalog\\Controller\\Category\\View –** Handles category page protection loads the category by ID via CategoryRepositoryInterface.</span>

<span style="color: rgb(0, 0, 0);">All three plugins are registered in etc/frontend/di.xml and apply on the frontend area only. No core files are modified.</span>

#### <span style="color: #f97316;">Admin UI Component Injection</span>

<span style="color: rgb(0, 0, 0);">The Page Protection fieldset and Password Protected toggle are injected into the three admin forms via Magento's UI component merge system:</span>

- <span style="color: rgb(0, 0, 0);">**view/adminhtml/ui\_component/cms\_page\_form.xml –** Injects the fieldset into the CMS page edit form</span>
- <span style="color: rgb(0, 0, 0);">**view/adminhtml/ui\_component/product\_form.xml –** Injects the fieldset into the product edit form. </span>
- <span style="color: rgb(0, 0, 0);">**view/adminhtml/ui\_component/category\_form.xml –** Injects the fieldset into the category edit form.</span>


#### <span style="color: #f97316;">Customising the Gate Page</span>

<span style="color: rgb(0, 0, 0);">The gate page template is located at:</span>

```
app/code/Scommerce/ContentProtect/view/frontend/templates/gate.phtml
```

Edit this file to customise the info message text, the password form labels, or the page layout. To customise styles, edit:

```
app/code/Scommerce/ContentProtect/view/frontend/web/css/content-protect.css  
```

**Note:** If you customise the template or CSS, copy the files to your active theme's directory structure rather than editing the module files directly. This ensures your customisations are not overwritten by future module updates.

#### <span style="color: #f97316;">Hyva Theme Compatibility</span>

<span style="color: rgb(0, 0, 0);">The backend logic plugins, session handling, configuration, and redirect is fully themeagnostic and works with any Magento 2 theme including Hyva. The gate page template (gate.phtml) uses standard Magento HTML and the module's own CSS file. For Hyva, we recommend copying gate.phtml to your Hyva theme and adapting the markup to use Tailwind utility classes to match your storefront styling. The CSS file can then be omitted as Tailwind will handle all styling.</span>

#### <span style="color: #f97316;">Full-page Cache Compatability</span>

<span style="color: rgb(0, 0, 0);">ContentProtect intercepts requests at the controller plugin level, which fires before Magento's full-page cache (Varnish or built-in FPC) would serve a cached response. Protected pages that redirect to the gate page are not cached. Once a visitor's session is unlocked, the page proceeds to render normally and may be served from FPC on subsequent requests within that session.</span>

If you have a question related to this extension please check out our [**FAQ Section**](https://www.scommerce-mage.com/magento-2-order-tagger.html#customfaq) first. If you can't find the answer you are looking for then please contact [**support@scommerce-mage.com**](mailto:core@scommerce-mage.com)**.**