Mass Product Import & Update allows you to update and import products massively in Magento in record time through CSV or XML files available from your website
Start with the 4 included sample profiles and export/import profiles pattern.
Content
Mass Product Import & Update allows you to update or import massively products in Magento in a record time thanks to CSV and XML files available from your website's server, from remote servers through FTP or HTTP.
Mass Product Import & Update allows you to create and/or update the below product attributes for all store views or specific store views:
All system attributes (SKU, type, attribute set, visibility, status)
All product attributes created within Magento (input, dropdown, yes/no, multi-select, text...)
All product image attributes (image gallery, base image, thumbnail, small images... )
Enable log Allows you to activate the log file available under the var/log directory. The file is named Wyomind_MassProductImportAndUpdate.log.
M2E Pro update
Notify M2E Pro globally about some change in products
If enabled, updates are transferred to M2E Pro whatever the modification is.
If disabled, the module will only notify M2E Pro that there is an update if the price or the quantity changes.
Mapping preview
Number of rows in mapping preview Allows you to define the number of rows returned in the browser data of the preview when editing a profile.
Cron job reporting
With Mass Product Import & Update, you have the possibility to enable cron job reporting.
Enable cron job reporting Allows you to define whether you want to enable the reporting or not in order to get notified each time a profile runs and if an error happens. The more important is the number of rows, the more the load time increases. A good compromise could be 1000 rows.
Sender Email Type the email of the sender.
Sender Name Define the name of the sender.
Send the reports to Specify the email addresses to which the report must be sent. Emails must be separated with a comma (,).
Report title Define your own title for the report.
Cron interval
By default, cron tasks can be scheduled for each period of 30 minutes.
If you need a more precise hour, you can change that interval in the Cron interval field.
Create an import profile with Mass Product Import & Update
With Mass Product Import & Update, you can update Magento products or create new ones.
For this, edit one of the sample profile patterns or create a new profile by clicking CREATE A NEW PROFILE from: System › Data Transfer › Mass PRODUCT IMPORT & Update
Black Box
The black-box is a tool that will help you configure your mapping seamlessly. It is composed of 3 major features.
Input Data
To get a preview of the input data, click on INPUT DATA.
Library
The library allows you to check what are the values you can use for each attribute. You will also find some examples to help you.
Output Data
Clicking on OUTPUT DATA will give you a preview of the data as they'll be updated.
Settings
In this section, you will be able to define the source of the data.
Profile settings
Define the settings for your profile.
Enabled You can enable/disable the profile. Note that the profile is disabled by default when it results from a duplication.
Profile Name Only alphabetic and number are allowed + hyphens (-) and underscores (_). The profile's name must be unique.
SQL mode When SQL mode is enabled, no data are updated. Running the profile will only produce a SQL file. This file could be executed directly in your database manager. If you activate SQL mode, you'll need to fill in several fields:
SQL file name Name of the SQL file to generate.
XML_sample.sql
SQL file path Is the path where the SQL file will be generated (relative to Magento root folder).
var/sample
Profile method You can choose the action that the profile will trigger: Update products only Import new products only Update products and import new products
Filter lines Leave empty to export all lines:
e.g:
means all lines will be imported
Type the numbers of the lines you want to import, making sure to separate each line or range with a comma (,):
e.g: 2,4,6,8,10
means lines 2,4,6,8,10 will be imported
Use a dash (-) to denote a range of lines:
e.g: 8-10
means lines 8,9,10 will be imported
Use a plus (+) to import all lines from a line number:
e.g: 4+
means all lines from line 4 will be imported
Use regular expressions surrounded by # to indicate a particular group of identifiers to import:
e.g: #ABC-[0-9]+# means all lines with an identifier matching the regular expression will be imported
When the Profile method option is on Update products and import new products, in the Mapping & Rules tab, you can define for each Target attribute dropdown if the value applies to the new products, or/and to the existing products:
New products only
Existing products only
Both, new and existing products
File Location
This section allows you to specify where the source data file is stored and what is the file path including the file name and the extension as it appears in the file system of the server. Note that you won't be able to save the source file path if the path is invalid.
You have several options:
Magento File System The file is stored in the Magento root directory or a subdirectory of the Magento root directory. File path relative to the Magento root folder. See how to use regular expression in the file name.
FTP server The file is stored on a remote server available from FTP or SFTP. Do not prefix the domain name or the IP with FTP://. You'll be able to check if the FTP connexion is valid. The file path is relative to the FTP user root folder. You can also use regular expression in the file name when it is stored remotely via FTP.
URL The file is stored on a remote server available from HTTP or HTTPS.
Webservice The file is available on a remote server accessible as web services. The extension uses the CURL PHP library to connect the web service. The file path is the URL of the web services. You can provide the web service a login/password couple and any parameters formatted as URL parameters, as follows:
For the URL and Web service locations, the extension checks the SSL certificate of the server of an https address, and that it matches the name of the server, before downloading the file. The option is set to Yes by default, including for the profiles created before version 11.3.0.
Yes The certificate is verified. An invalid, expired or self-signed certificate stops the import with an explicit error, and the file is not imported.
No The certificate is not verified. Only use this setting for a server with a self-signed certificate that you trust, for example on your own network.
File Type
Allows you to specify the file type used for the update, XML, JSON, or CSV.
File type You have the choice between CSV, XML, and JSON files.
For CSV files, define:
Column separator Define the column separator.
Text delimiter Select the text delimiter.
The first line is a header Specify when the first line is a header.
Magento export file Magento default export files are made of empty rows with values related to main rows, activating this option will merge the values into the main rows.
For XML and JSON files, define:
Path to products Fill in the path that targets the products. The path is case-sensitive. See how to define the path to your products for XML or JSON files.
Data structure You have two options: Automatic detection or Predefined structure The automatic detection fits for simple files made of only one nesting level. If you've selected the Predefined structure, see how to define your own file structure for XML or JSON source file.
Post Process Action
You have the possibility to define an action after the file is processed.
Action Do Nothing Delete the import file Move import file
Move to folder Define the file path where you want to move the import file, relative to your Magento root folder.
Run indexers You can choose to run the indexers after the import or not: No: no indexer will run and you will have to reindex manually from the CLI Only the required indexers: automatically decides which indexers must run Only the selected indexers: let you decide which indexers to run
In the System Settings, define the automatic action for missing products from the data file. You have several options:
Do Nothing
Disable the product
Delete permanently the product
Mark the product as out of stock
Mark the product as out of stock and set qty to 0
When you decide to mark products that are missing from the data file as out of stock, you must select the targeted sources impacted by the action.
Great Lake Store
When a product is imported using Mass Product Import & Update, it is associated with the profile. If you've selected action for missing products, you'll need to choose the targeted products:
Only products related to current profile: products that are imported/updated with the same profile.
Only products not related to current profile: all the products that are not created/updated by the profile.
All products
Stock Settings
From the Stock Settings, you can define:
Automatic stock status update You can choose to automatically update the stock status (in stock / out of stock).
Use relative quantity update Quantity will be added/subtracted to/from the current quantity.
Image Settings
Indicates the path to the directory in which the images to import are stored.
Images location Http server (URL) Magento File System Ftp server
Depending on what you've selected as the location of the images, you'll need to fill in several fields.
For the HTTP server:
Download the image again if it has changed: Yes or No
For the FTP server:
Use SFTP
Use SSL
Use active mode
Host
Port
Login
Password
For the FTP Server and the Magento file System:
Path to images directory
Category Settings
Mass Product Import & Update allows you to create categories on the fly.
Create categories on the fly Yes or No.
New categories active by default Yes or No.
New categories included in menu by default Yes or No.
Category tree auto-detection To automatically detect the category tree. You need to use the complete path to the category. The category levels must be separated with slashes: A/B/C. For example, instead of "Shirts", you should write:
Default Category/Men/Shirts
New categories are children of Choose the parent category.
Configurable Product Settings
Create parent of configurable products on the fly You can also create/update a configurable product from the simple products available in the source file by enabling this option.
When that option is enabled, in the Mapping & Rules tab, you can find for each Target attribute dropdown an option for the configurable products to create on the fly. You have the choice to apply the settings on:
The current product only
The configurable product created on the fly only
Both, configurable product created on the fly and simple product associated
System attributes of the configurable products created on the fly must receive a value either by mapping a field from the source file for the simple product and the configurable product or for the configurable product only.
So that the configurable product and the simples variants are linked, the following attributes must be mapped:
In this section, you can map each column of the file with one of the stock attributes.
Column Mapping
Each column can be mapped with one of the stock attributes. Note that at any time, you can preview the input and output data in the black box directly.
Target Attribute Select the target attribute from the ones available in your system. You can find all the attributes grouped by type in our documentation. The first line is where you define the identifier of your products. The identifier must be unique,
SKU
Data source In the Data source, you can define the attribute source that matches with the target attribute from your source file.
id
Default value Sometimes, some columns can be missing. For example, when updating all stocks, the file does not necessarily include all stock attributes (backorders, minimum quantity in the cart...). In that case, you can choose custom value in the Data source and apply a default value.
yes
QUICK OVERVIEW OF THE INTERFACE
Add as many columns as you want by clicking on + ADD A NEW ROW. In many cases, the update file may contain more columns than necessary; you don't need to add these columns and match them.
DELETE a row easily.
Change the order of each row using the drag and drop.
Deactivate a line while conserving the settings by clicking on the LINK symbol.
Add your own custom script </>. These scripts can be previewed in the output. Note that when there is a script filled in, </> is underlined. See how to use the PHP API.
Add your own replacement rule by clicking on the b icon. These rules can be previewed in the output. Note that when there is a rule selected, a b is underlined. See how to create your replacement rules.
Apply the color of your choice to the row.
Apply a label to the row.
Define to which store view(s) you want to apply these settings by clicking APPLY TO DEFAULT VALUE.
Find all the attributes grouped by type in the LIBRARY.
Check the data as they'll be updated by clicking OUTPUT DATA.
Scheduled tasks
You can schedule the profile to be executed for all days of the week and with a default interval of 30 minutes between each execution.
You have the possibility to change the cron task interval from the General Settings tab.
Action History
In the Action History tab, you can find a history of your previous generation and configurations.
You'll find:
ID It is the ID of the history line.
Version ID It is the ID of the profile configuration version.
Origin The origin of the action can be: Backend / Cron / CLI / API
Username It is the name of the user behind the action.
Action The available actions are: create / generate / update / delete
Details If you click on Moredetails, you can see the detail of the profile update from a grid.
If you click on a line of the above grid, you can check the differences of the updated field: red parts are the removed data and green parts are the inserted data.
Date It is the date of the modification.
Export and import your profiles pattern
Mass Product Import & Update also allows you to import and export patterns into and from your Magento 2 admin.
Export
To export a profile, edit an existing feed from: System › Data Transfer › Mass Product Import & Update
Edit a profile and click on Export.
You should find the profile pattern in your Downloads folder.
Import
Before anything, to import a profile pattern, it must be a .conf file, which is specific to theMass Product Import & Update extension.
Click on Import a Profile from: System › Data Transfer › Mass Product Import & Update
Browse the .conf file and click on Import.
The profile pattern should have been added to the list.
Run your Mass Product Import & Update profiles
From the profiles grid
To run the profile from the grid, you just need to click on RUN PROFILE from the action menu on the right column. Then the status will be updated with a progress bar.
From the profile page
Edit the profile and then click on RUN PROFILE NOW.
Once the import/update process has ended, a message appears with details about how many products have been updated/imported and how many products have been ignored.
With the cron tasks
When the scheduled tasks are configured for the profile, then the profile will be automatically run at the day and the time selected.
So that the scheduled tasks work well in Mass Product Import & Update, the main cron task in Magento must be configured properly.
You will receive an email each time the cron task is run if you have enabled the reporting in: Stores SETTINGS › onfiguration › Wyomind › Mass Product Import & Update
With the Command Lines Interface
Mass Product Import & Update includes command lines available from any shell console.
Updating or importing products massively may keep your server busy some times, especially when the update or the import includes numerous products and/or many attributes.
For better performances Mass Product Import & Update splits the process into two distinct steps:
Source file analysis: the data are collected and the SQL queries for the update/import are built.
The SQL file execution: the database is updated with the new data. This step may be executed asynchronously when the SQL option is enabled.
Generate the SQL file
If you prefer to generate the SQL file without executing it, you must enable the SQL mode in your profile configuration.
Then run the profile by clicking on RUN NOW.
Execute the SQL file
Once the file is generated in the working directory, you only need to update the database with the generated file from the command line as follows:
mysql -h host -p DbPassword -u DbLogin DatabaseName < path/to/mysql/file.sql
Advanced use
With Mass Product Import & Update, several events are triggered:
massupdateimport_start Triggered when the update/import process starts.
massupdateimport_success Triggered when the profile is run and the data successfully updated/imported.
massupdateimport_failure Triggered when the profile is not run and the data are not updated/imported.
The events can be used in your custom observers.
The argument passed is an instance of Wyomind/MassProductImport/Model/Profile.
From app/code/Editor/Module/Observer/MassUpdateImportSuccess.php:
<?php
namespace EditorModuleObserver;
class LassUpdateImportSuccess implements MagentoFrameworkEventObserverInterface
{
public function execute(MagentoFrameworkEventObserver $observer){
$profile= $observer->getEvent()->getProfile();
// TODO: Implement your own logic.
}
}
Attribute specifications to import or to update
Mass Product Import & Update allows you to import/update all attributes, even those with a custom model.
System attributes
The below attributes are required when importing new products.
If these attributes are not available in the mapping, then the imported products will be visible neither in the front-end or the back-end.
Sku
The unique identifier of the product to update or to import.
sku1
Attribute set
The attribute set to apply to the product.
You can either use the attribute set name (case insensitive) or the attribute set ID.
bag
15
To know the attribute sets available in your system, go to: Stores › Attributes › attributE Sets
Type
The product type.
You must use the product type name (case insensitive).
It can be:
simple
configurable
grouped
bundle
virtual
downloadable
custom product type
simple
Website
The website(s) to which belongs the product separated by a comma.
1
1,2
You can either use the website IDs orthe website names (case insensitive).
Main Website Store
Main Website Store,Second Website Store
To know the names and the ids of the websites available in your system, go to: Stores › Settings › All Stores
Tax Class
The product tax class.
You can either use the tax class name (case insensitive) or the tax class ID of the product.
Taxable Goods
2
To know the names and the ids of the tax classes available in your system, go to: StoresSettingsConfigurationSalesTaxtax classes
Visibility
The product visibility.
You can either use the visibility name (case insensitive) or the numerical value associated.
Not visible Individually
Catalog
Search
Catalog & Search
Catalog,Search
4
Status
The status of the product: enabled or disabled.
You can use any of the below values:
enabled / disabled
enable / disable
true / false
yes / no
1 / 0
enabled
Products attributes
All attributes created in your stores and/or any attributes that are listed in another section are available in the product attributes section.
Text or textarea attribute
The text or textarea attributes accept any value without any restriction.
Your text
Yes/no attribute
The yes/no attributes can be updated with any of the below values:
enabled / disabled
enable / disable
true / false
yes / no
1 / 0
true
Dropdown attributes
The drop-down attributes can be updated with:
the option id
4
the option label
red
The values of dropdown attributes can be translated to the different store view languages as below with the color attribute:
red[de=rot|fr=rouge|es=rojo]
For each store view language, you can choose to use the default value by using #empty#. Below, the DE translation will be empty and the default value red will be used (the default store is FR):
red[fr=rouge,de=#empty#]
If you want to use a fixed value, you can select one from the dropdown.
Multi-select attributes
The multi-select attributes can be updated either with a list of option labels or a list of option ids separated with a comma.
Men, Boys
Note that all the multi-select options are now automatically populated and you can directly select multiple values:
To know the labels and ids of the drop-down and multi-select attributes, go to: Stores › Attributes › Product › edit attribute › Manager label / option
Date attributes
The date attributes must be formatted with the date and time GMT: YYYY-MM-DD hh:mm:ss
2019-06-11 15:09:52
Null value
EAV attributes can now be updated with null values.
For example, you can set a null value for the price attribute. To do so, NULL must be written in uppercase and without any space.
NULL
Prices attributes
Price
The price attribute can be a float number or an integer number.
It must be formatted with a dot as a decimal separator.
15.50
Special price
The special price attribute can be a float number or an integer number.
It must be formatted with a dot as a decimal separator.
10.50
Special price from/to date
The special price from/to date must be formatted with the date and the time GMT as below: YYYY-MM-DD hh:mm:ss
2019-06-17 11:29:51
Tier price/Group price
You have two possibilities:
Add Tier price/Group price Creates a new Tier price/Group price that is added to the existing ones.
Replace Tier price/Group price Replaces all the existing Tier prices/Group prices with the new ones.
The list of tier prices must be separated by ~ as below: [Group id 1]|[Qty 1]|[Price 1]~[Group Id 2]|[Qty 2]|[Price 2]~...
*|5|9.99~*|10|7.99~...
To import your tier prices as discounts, add % at the end of each price. Otherwise, your tier prices will be imported in cash.
*|5|10%~*|10|5%~...
Below is the list of the codes to use for the customer groups ids:
*: All groups
0: Not logged in
1: General
2: Wholesale
3: Retailer
4: VIP Member
5: Private Sales Member
Weee tax
The list of taxes must be separated by ~ as below: country1|region1|tax1~country2|region2|tax2~...
Country code It can be: FR, US, CA, NZ...
Region Use * for all states
Tax This is a fixed value
FR|*|13~UK|*|18
Stock attributes
All attributes related to the stock management in Magento are available in this section.
All these attributes must be updated with numeric values or boolean values.
Boolean values
Boolean values must be updated with one of the below values:
1 / 0
yes / no
true / false
enable / disable
enabled / disabled
in stock / out of stock
in stock
Numeric values
Numeric values must be updated with one of the below types:
Integer number (no white space)
Float number (decimal separated by a dot)
10.50
MSI attributes
Mass Product Import & Update allows you to update all attributes related to the Magento Multi-Source Inventory Management (MSI).
All these attributes must be updated with numeric or Boolean values and mapped as follow.
Quantity
The stock for the source.
9
Notify Qty
Notify the quantity for the source.
1
Use default for notify Qty
Use default to notify the quantity for the source.
true
Stock Status
Stock status for the source.
true
MSI Backorders attributes
Mass Product Import & Update also allows you to update all attributes coming with the MSI Backorders extension, also available in the MSI Suite.
You can retrieve these attributes in the products pages from: Catalog › Products
Backorders
Choose the status of the backorder among:
Allow Qty Below 0
Allow Qty Below 0 and Notify Customer
No Backorders
Allow Qty below 0
Backorders date
Backorders date in the following format: YYYY-MM-DD hh:mm:ss
2020-03-25
Backordered qty
Backordered quantity.
50
Dynamic attributes
You have the possibility to create a dynamic mapping giving you more flexibility in the configuration of your profile. In your source file, for the same column, you can indicate the Magento attribute to map as well as the associated value.
Dynamic attribute
Code of the Magento attribute to map and the associated value.
The syntax to use is: attribute_code=value
length=150
You can also use several dynamic attributes separated by a pipe in the same mapping row.
color=red|size=XL|description=description
Media attributes
All attributes related to the media management are available in this section.
The image/video source directory must be defined in the Image Settings tab.
Media Gallery
The images to insert in the image gallery must be listed in the Image Gallery field as the relative path to the image source directory specified in the Image Settings tab for local storage or FTP storage and as an absolute path if hosted on a remote server.
Each image path must be separated by one of the below characters:
| (pipe)
, (comma)
; (semi-colon)
Attention, we strongly advise you not to use the pipe separator if you use the parameters below because the image separator must be different from the parameter separator.
You can use the below parameters:
media_type image (default value) external-video
disabled Default value is 0. You have the possibility to assign values by storeview by suffixing disabled with the store code.
label Default value is empty. You have the possibility to assign values by storeview by suffixing label with the store code.
position Default value is 0. You have the possibility to assign values by storeview by suffixing position with the store code.
destination Default value is empty. It is the name of the new image.
To remove the existing color for the swatch, you can import the color property using the empty value.
indigo[color=empty]
Category attributes
The categories associated with the products can be imported/updated with new values.
You have the possibility to choose the action between:
Replace all categories with
Add to the categories
Remove from the categories
Category mapping
List your category names (case sensitive) or category ids separated with a comma: category ID 1 [position],category ID 2 [position]...
You can use the below parameter to define the position of the products in the categories:
position Default value is empty.
For example, to import your product in position 2 in the category ID 10 and in position 1 in the category ID 13, you can write:
10[2],13[1]
10[position=2],13[position=1]
The values will be translated into category paths according to the parameters you have defined in your profile configuration from: Advanced Settings › Category Settings
In the case where you don't add the parameter in the syntax, the default value will be used.
For example, to import products in the New Arrivals (ID: 10) and Dresses & Skirts (ID: 13) categories, from the Mapping & rules tab of your profile configuration, map the product attribute of your choice, for example, Add to the categories with a custom value.
In the following field, you can define:
10,13
If you prefer using the category names, you could have written:
Categories will be created/updated according to what you've defined in the Advanced Settings tab
Merchandising attributes
The related/up-sell/cross-sell products can be imported/updated with new values.
Related / Cross sell / Up sell products
List of related product SKU's separated by commas.
SKU1,SKU2,SKU3...
Configurable product attributes
With Mass Stock Import & Update you can create configurable products on the fly and create relationships between children and parents.
Parent SKU
Specify the parent SKU.
skuparent
When updating/creating a simple product, you can add the configurable product reference so that the simple products will be automatically associated with the configurable product.
Children SKUs
List of the children SKUs separated by commas.
sku1,sku2,sku3
When updating/creating a configurable product, you can add the children references so that the simple products will be automatically associated to the configurable product.
Configurable attributes
Attribute code or attribute IDs separated by commas as below: attribute code 1[position],attribute code 2[position]
You can use the below parameter to define the position of the configurable attributes:
position Default value is empty.
size[1],color[2]...
In the case where you don't add the parameter in the syntax, the default value will be used.
When creating/updating a configurable product, the configurable attributes must be specified.
Downloadable product attributes
With Mass Stock Import & Update you can import or update downloadable products.
Links title
Title of the downloadable resource.
Downloadable file
Samples title
Title of the downloadable resource.
Downloadable sample
Link URLs
Link to the file (relative or absolute path) and optional file's name separated by a pipe (|). Link | File name
http://www.example.com/filename.ext | My downloadable file
Sample URLs
Link to the file (relative or absolute path) and optional file's name separated by a pipe (|). Link | File name
http://www.example.com/filename.ext | My downloadable sample
Grouped product attributes
With Mass Stock Import & Update you can create grouped products and create relationships between children and parents.
Parent SKUs
When updating/creating a grouped product, you can add the parent references so that they will be automatically associated with the grouped product.
List of related parent product SKU's separated by commas
parentsku
Children SKUs
When updating/creating a grouped product, you can add the children references so that they will be automatically associated to the grouped product.
List of related children product SKU's separated by commas
You can use the below parameter:
position Default value is empty.
sku1[position=2],sku2[position=1]
Bundle product options
With Mass Stock Import & Update you can add/update or remove options from bundle products.
Add/update an option
Bundle items option title as below: Bundle items option title [type=select|required=1|option_position=1 |sku=SKU ABC|selection_qty=1|is_default=0|selection_price_type=0|selection_price_value=0 |selection_can_change_qty=0|position=1] [sku=SKU XYZ|selection_qty=2|is_default=1|selection_can_change_qty=0|position=2]
You can use the below option parameters:
type select / radio / checkbox / multi Default value is select.
required Default value is 1.
option_position Default value is 1.
And you can use the below product parameters:
sku SKU of the option's products It is a required value.
selection_qty Default value is 1.
is_default Default value is 0.
selection_price_type Default value is 0.
selection_price_value Default value is 0.
selection_can_change_qty Default value is 0.
position Default value is 1.
Primary bag [type=select|required=1|option_position=1|sku=24-MB01|selection_qty=2|is_default=0|selection_can_change_qty=1|position=1][sku=24-MB05|selection_qty=1|is_default=1|selection_can_change_qty=0]
The above example will create the following option:
In the case where you don't add the parameter in the syntax, the default value will be used.
Remove an option
Bundle items option title to remove
Accessoiries
The above example will remove the "Accessoiries" option.
Custom options
With Mass Product Import & Update you can import or update your product custom options.
Dropdown / Radio / Checkbox / Select / Multi-select
Custom option title and option values in the following format: Custom option [title=title1|sku=sku1|price=10%|sort_order=1][title=title2|sku=sku2|price=10|sort_order=2]
You can use the below parameters:
is_require If the custom option is a required field: is_require=1. Default value is: is_require=0
title Default value is empty.
sku Default value is empty.
price Note that the price can be a percentage or a fixed amount.
10 or 10%
Default value is null.
sort_order Default value is null.
In the case where you don't add the above parameters in the syntax, the default values will be used.
Custom option title and option values in the following format: Custom option Text [is_require=1|title=text|sku=txt|price=10|sort_order=1|max_characters=100]
You can use the below parameters:
is_require If the custom option is a required field: is_require=1. Default value is: is_require=0
title Default value is empty.
sku Default value is empty.
price Note that the price can be a percentage or a fixed amount.
10 or 10%
Default value is null.
sort_order Default value is null.
max_characters Default value is null.
If no value is defined for the above parameters, the default values will be used.
Custom option Text [is_require=1|sku=txt|price=10.00|sort_order=1|max_characters=100]
File
Custom option title and option values in the following format: Custom option Text [is_require=1|title=text|sku=txt|price=10|sort_order=1|file_extension=jpg]
You can use the below parameters:
is_require If the custom option is a required field: is_require=1. Default value is: is_require=0
title Default value is empty.
sku Default value is empty.
price Note that the price can be a percentage or a fixed amount.
10 or 10%
Default value is null.
sort_order Default value is null.
file_extension Default value is null.
If no value is defined for the above parameters, the default values will be used.
Once the lines have been imported, you receive a notification.
Use a replacement rule in your profile
Select a replacement rule
Once your rule is saved, you can use it in your profile from: System › Mass Product Import & Update › Profiles
For the attribute you want to edit, click on the ab icon.
A popup displays where you can select the rule you want to apply. Select the rule and click on Validate.
Output the replacement rule value
If you click on Output Data from the black box, you should see the replacement rule value in purple followed by the original value in grey.
PHP API for Mass Product Import & Update
Mass Product Import & Update allows you to fully customize and control the data output by using PHP scripts in different ways.
API coding standards
For each line in the Mapping & Rules tab of your profile, you can add your own custom script based on a PHP syntax.
To add your custom script, click on </> at the end of the line you want to edit. You can then update on the file the value of each column.
Opening and closing tags
Every script must include the opening PHP tag <?php. Note that it is not necessary to use the closing tag.
<?php /* Your custom script */ return $self;
Outputting a value
return Any value that you want to output in your profile, must be returned with the return instruction.
$this object
$this->skip() or return false (boolean false) To ignore the pending line (all the columns of the line).
$this->skipRow() or $this->skip() or return false; To ignore the pending cell as well as all the following cells.
$this->skipCell() or return true; To ignore the pending cell.
Variable $cell
You can call any column of the source file using $cell. It is an array that indexes each column numerically (1,2,3,...) and with a key corresponding to the name of the column header ("name","description","price"...).
$cell["name of the column"] or $cell[INDEX]
For example:
return $cell["description"]. " ".$cell["name"]
Variable $self
$self To retrieve the current value of the column and manipulate the data:
<?php return $self;
For example:
<?php return strtolower($self);
Examples of use
Below are some examples of use with the PHP API.
Change the separator
Transform a number with a floating value separated with a dot instead of a comma.
Magento Open Source vs Magento Commerce vs Magento Commerce Cloud
Magento offers three variations of its product.
As their names have changed over the past few years, here is a recap:
Magento Open Source: previously Magento Community Edition (CE), is a free and non-hosted e-commerce platform.
Magento Commerce: previously Magento Enterprise (EE), is the paid version of Magento and offers support services.
Magento Commerce Cloud: is the paid version of Magento and offers support and hosting services.
Mass Stock Update Vs Mass Product Import & Update
Mass Stock Update
Mass Product Import & Update
Stocks update Update your products stocks from CSV/XML files
Products update Update your products from CSV/XML files according to multiple attributes groups:
Image,
Category,
Merchandising (up sell, cross sell, related products),
Price (Weee tax, group price, tier price, special price...),
Downloadable products,
Grouped products relation,
Configurable products relation,
Custom options,
System attributes (website, sku...),
Attributes defined by the user
Products creation Create products from CSV/XML files
Preview Get a real-time preview of the output data
Custom scripts Use custom scripts to improve the updated data
Schedule Automate the update process using the cron tasks
Access to a CLI Trigger the import process via your CLI
License and domains
License validity
A license is valid for an unlimited period of time on one single installation
If you're using more than one installation, you will have to buy a separate license for each instance.
if you're running several domains on a same installation, you will need only one license for all of them.
Although your license doesn’t have a limited period of validity, your Support & Upgrade period does. By purchasing a module, you’ll be granted a 12-month support period for free. Passed this period, you will have to pay for a new one (see FAQ: Extend your Support period)
Domains pre-registration
You can pre-register your live domain to your license in advance.
Thanks to this option, you'll be able to get the module ready to use on your domain before it goes live.
To pre-register your production domain:
Go to: mY account › Licenses & DOwnloads
Click on the Settings icon next to the module you want your domain to pre-register on.
Click on the link at the bottom of the page saying: Do you want to pre-register your domain in order to be ready to go live?
Finally, enter your domain name and click on pre-register now .
Testing environments
One license is valid for an unlimited period of time on one installation only. However, it is possible to extend or transfer your license in 2 cases:
If you would like to add your testing environments to your license. In that case, it is possible to extend your license to an unlimited number of domains for free. For mywebsite-staging.com or mywebsite-dev.com
If you want to transfer your license to another live domain. In that case, the Support & Upgrade period for your license must still be active.
To be able to use Mass Product Import & Update on both your production and testing environments, follow the instructions below:
Install Mass Product Import & Update on your environment. (see FAQ: Modules installation in Magento or in WooCommerce)
Activate the license. (see FAQ: Licenses activation in Magento or in WooCommerce)
Also, if you are managing a large amount of domains, please contact us so that we can automatically whitelist these domains.
Modules versioning and download
Extensions download
In order to download Mass Product Import & Update, log into your Wyomind account:
Go to: my account › Licenses & downloads
Click on the settings icon next to Mass Product Import & Update.
A new window opens.
Click on the download icon.
Only the latest extension version released within your Support & Upgrade period is available. In order to get the very latest extension version make sure your Support & Upgrade plan is up to date.
Modules upgrade
When purchasing a module from wyomind.com, you benefit from 12 months of upgrade. Within this period you can at any time download the latest version of the module directly from your account.
To upgrade Mass Product Import & Update, follow the steps below:
Go to: my account › Licenses & Downloads
Click on the settings icon next to Mass Product Import & Update.
Click on the download icon.
Install the new version of Mass Product Import & Update in your Magento admin or your WooCommerce back-office.
Modules Installation/Uninstallation
Extensions manual installation
You can install Mass Product Import & Update manually.
Download Mass Product Import & Update (zip file) on: mY ACCOUNT › Licenses & Downloads Refer to the FAQ: Extensions download
Once Mass Product Import & Update is downloaded, open the folder and unzip it.
Copy the content of the unzipped folder and paste all files and directories in your Magento 2 root directory.
In your Command Line Interface, execute:
bin/magento setup:upgrade
If you are using a production mode, execute also:
bin/magento setup:static-content:deploy
bin/magento setup:di:compile
Extensions installation via Composer
You can install Mass Product Import & Update using Composer software in two cases:
if you purchased Mass Product Import & Update on Magento Marketplace.
if you purchased Mass Product Import & Update on Wyomind.com AND requested access to our repository: repo.wyomind.com
Add to your composer configuration our repository:
Extensions activation from the back-office of Magento
Once Mass Product Import & Update is installed, you have to activate the license. For previous versions, you can activate the license from your back-office:
Go to your Magento admin panel. A message pops up at the top of the page.
If the message doesn't appear then you must check that:
1. The Adminhtml_Notifications and Wyomind_Core modules are well enabled. 2. The HTML output of the Adminhtml_Notifications and Wyomind_Core modules are not disabled in: storesconfigurationadvanced advanced 3. The encryption key well exists in app/etc/env.php:
Copy your activation key in: Stores › Configuration › Wyomind › Your extension
You can find your activation key in 2 different places: - In the confirmation email that you received after purchasing Mass Product Import & Update. - In your Wyomind account: My account › Licenses & downloads Select Mass Product Import & Update and click on .
A new page opens where you'll find your activation key (see below).
In your Magento admin go to: Stores › Configuration › Wyomind › Your extension
Paste the activation key in the Activation Key field and choose between the automatic (yes) or the manual (no) activation method: - By choosing Yes, the connection to Wyomind license server will be automatic. - By choosing No, you will have to log on to Wyomind license server yourself.
Click on Save config .
A message appears at the top of your admin panel. Click on that link: Activate it now!
Copy and paste the license code in theLicense code field from your admin or simply click on Activate now!
Finally, refresh your cache, log out and log in back straight after, to complete the installation.
Add another domain to your license
To activate the license on another domain (test, staging...):
Once the extension is installed on the new domain, copy your activation key in: Stores › Configuration › Wyomind › Your extension
After having saved the configuration, a notification appears. Click on Add this domain to my license.
A transfer request will then be sent to our team within an hour. Once the request is taken care of, you will receive a confirmation email. If your transfer request is accepted, you can use Mass Product Import & Update on both environments at the same time.
Note that the order in which you activate your license on your domains does not matter. You can start with your staging/dev/local environment or with your live domain, the process will be the same.
Also, if you have loads of staging domains, or if you are an agency managing load of domains for your customers, please contact us so that we can automatically whitelist these domains.
Extensions activation from the CLI
Once Mass Product Import & Update is installed, you have to activate the license.
For this, you can use the below command line (change the Activation key with the corresponding value):
The indexes may need to be updated after importing data.
You can define the post process action in your profile settings from: System › Data Transfer › Mass PRODUCT IMPORT & Update
You can decide to run the indexers after the import or not:
No No indexer will run. You will have to reindex manually from the CLI
Only the required indexers Automatically decides which indexers must run
Only the selected indexers You decide which indexers to run. For example:
catalog_product_price
cataloginventory_stock
catalog_url
Use regular expression in the file names
If you want to use several files with the same structure to import your products without having to create several profiles (one for each file), then you can use regular expression in the file name.
Instead of a unique name in the file path, you can use a regular expression that will make the file dynamic.
For example:
products_update_[0-9].csv
That expression will take into account all files starting with "products_update_" followed by a number between 0 and 9 and ending with ".csv".
The profile will then run all the corresponding files one by one.
Cron task interval
For your profile to be executed automatically, you need to define the days of the week and the time of execution directly from your profile configuration in: System › Data Transfer › Mass Product Import & Update
By default, cron tasks can be scheduled each period of 30 minutes.
If you need a more precise hour, you can change that interval from: STores › Settings › Configuration › Wyomind › Mass Product Import & Update › Settings
Below is an example with an interval of 20 minutes:
For a good working of the scheduled tasks, the main cron task in Magento must be properly configured. Check how cron tasks work.
Replace values in an import profile
Mass Product Import & Update allows you to replace some values in the output data.
For example, in your source file, the manufacturer name is Wyomind but you need to have The Wyomind Company. Then you can easily replace it using the replacement rules such as in the below example.
Use different attributes and attribute values in the same column
You want to import several products into your Magento back-office but in your source file, you're using different attributes and values in a same column.
For example: length and width.
You can use the dynamic attribute with the following syntax:
attribute_code=value
And then map the column with the dynamic attribute.
You also have the possibility to use PHP scripts to link values coming from different columns.
Define the path to the products of your XML source file
To define the path to products, you must determine the path to the node where the products are stored.
For example, if your XML source file looks like the one below:
Mass Product Import & Update allows you to use files (for example XML or CSV) from your Dropbox.
Here is how to configure your profile for a file stored in your dropbox from the Settings part:
In File location, select Dropbox.
Fill the Path to file field with the file path relative to the root directory of your Dropbox container.
For example : /import/xml
Configure your Dropbox app to allow the Full Dropbox.
For example:
Multi-language data update and import
You can use the Mass Product Import & Update extension to import and/or update your data even if you're managing a multi-language Magento 2 store.
For example, to update the description of your products for your French store view, you can select only the corresponding store view from the Column Mapping section.
Note that you can add as many mapping row as there are languages. For example:
Troubleshooting
Base table or view not found
This issue may be due to a problem during the installation process.
You will be able to fix it by following these steps:
Access your database via your control panel (Phpmyadmin for example).
From the setup_module table, delete the entry Wyomind_extension.
Be careful, that entry depends on your extension. For example, if you have the extension called Simple Google Shopping, you should delete Wyomind_SimpleGoogleShopping.
Logout from your Magento 2 admin.
Log into your Magento 2 admin.
Scheduled tasks don't work in Magento 2
How do cron tasks work?
The cron.php file (available in the pub directory of your Magento 2 root directory) is regularly launched from your server side (generally every 5 minutes).
The cron task for Mass Product Import & Update is targeted and evaluates if a data feed or a profile needs to be refreshed (depending on the timestamp stored in the database and on the schedule table for this specific profile).
If the above condition matches, then the data feed and the profile is re-generated.
Be sure that you have correctly configured a scheduled task from the server side (cpanel) targeting the cron.php file in your magento 2 installation.
The extension includes reporting and debug tools for the scheduled tasks available in: Stores › Settings › Configuration › Wyomind › Mass Product Import & Update
For more information on the configuration of cron tasks in Magento 2, you can check their documentation.
Unable to list current working directory
You should check that the var/flag and var/tmpfolders exist in the Magento root directory. If not, create them with the writing permissions.
Import process fails with "Asymmetric transaction commit"
Basically, an Asymmetric transaction commit means you're trying to execute a query in which a constraint based on a foreign key fails.
For example, if you're trying to add a related product that doesn't exist to another product, then the constraint will fail and the import will fail as well.
The best way to know which constraint fails is to run the import from the CLI and the SQL error will display.
User's reviews
SA
S A
Merchant · Netherlands · User for 7 years
★★★★★
Great for creating and maintaining product catalog
We have been using the module for many years and it greatly helps us import products with multiple languages automatically.
Very easy to setup and powerful features make this a great extension.
K
Kim
Merchant · Denmark · User for 5 years
★★★★★
Game-Changer for Bulk Catalogs
Mass Product Import & Update streamlines our entire catalog workflow—mapping complex attributes, importing thousands of SKUs, and automating scheduled updates saves us hours each day. It’s rock-solid reliable, impressively fast, and handles errors gracefully. Best of all, Wyomind’s support team is always ready to help when we need custom rules or troubleshooting. Highly recommended!
I
iTom
Merchant · Estonia · User for 5 years
★★★★★
Essential Tool!
Just a Great Module for Mass Product Import! I have been using Mass Product Import & Update for Magento 2 for several years now. The module has significantly simplified the process of uploading and updating large volumes of products. It’s fast, flexible in configuration, and reliable in operation. The support team is always helpful when questions arise. Excellent value for the price! Highly recommended for anyone working with large product catalogs.
D
Dgiouzelis
Ecommerce Agency · Cyprus · User for 7 years
★★★★★
The Mass Product Import & Update extension for Magento 1 has been a game-changer for our e-commerce operations.
The Mass Product Import & Update extension has enhanced our operational efficiency and contributed to a more seamless shopping experience for our customers. We highly recommend it to any Magento 1 store owner looking to optimize their product management processes
A
Alex
Merchant · Netherlands · User for 6 years
★★★★★
Worth the money
If you are looking for an extension which can automatically import and update you products, this is the one you need.
N
Niik
Merchant · Italy · User for 6 years
★★★★★
spectacular extension
I've been using it for several years and have always managed to do everything I needed from here
M
Michal
Merchant · United States · User for 6 years
★★★★★
Efficient Product Management
This extension has streamlined my product management with bulk updates via CSV/XML, supporting various attributes. Advanced cron job settings and detailed logs are very useful. Highly recommended for efficient product data management.
JA
JD Auto & Truck
Merchant · United States · User for 5 years
★★★★★
Must Have!!
This is a must have for any business that runs automation with large or small feeds. So easy to use. We have run different ones in the past that did not work as good as this one. We were so happy when we found this extension. I would highly suggest the Mass product import & update for anyone that updates frequently.
SO
Seamus Og McGilligan
Merchant · United Kingdom · User for 4 years
★★★★★
Streamline Your Inventory Management with Wyomind Mass Product Import: Efficiency Redefined!
Wyomind Mass Product Import extension revolutionizes inventory management with its seamless bulk import capabilities. User-friendly, efficient, and reliable, it saves time and boosts productivity. Highly recommended!
SO
Seamus Og
Ecommerce Agency · United Kingdom · User for 4 years
★★★★★
Excellent Extension to Import Mass Products
We are using Mass Product Import & Update extension since last 2.5 years for my Magento Enterprise store. I have imported almost all the products to my website daily from feeds provided by the various distributors. The support is very helpful as they help quickly, polite and with quality fixes. I am extremely happy that I choose this extension over other Expensive competitors and would recommend Wyomind to everyone for the Magento store.
C
CAMIREL
Merchant · France · User for 4 years
★★★★★
Very happy with this module
"The 'Mass Product Import & Update' module for Magento 2 is simply perfect! Thanks to its ease of use and speed, it greatly simplifies the process of importing products. No more hours spent manually entering information , this module allows you to mass import products in just a few clicks, saving valuable time. An essential tool for all Magento 2 online store owners!
E
Erik
Merchant · Netherlands · User for 8 years
★★★★★
Pretty Happy
we are very happy with this extension. We have been using the extension for a number of years now and import our products as prizes. We have various imports, both small and large. I will recommend this extension to everyone!
H
Henri
Merchant · Estonia · User for 5 years
★★★★★
Very flexible and compatible with custom scripts
We are using Mass Product Import & Update for over 2 years now and it is very flexible when using custom scripts etc to import products from different profiles.
It gives more opportunities to implement products with various pricing margins and categories to different stores (very helpful when using multi-stores).
A
Artur
Developer · Poland · User for 8 years
★★★★★
Best solution on the market
I was using Wyomind Mass Product Import & Update for few years and I can tell that this is a life saver when comes to import and update products at Magento!
R
Rolf
Developer · Netherlands · User for 5 years
★★★★★
Great flexible extension, with excellent support
We are using Wyomind Mass Product Import & Update for two years now, and we are very satisfied with the extension and the support. They help quickly, polite and with quality fixes. We would recommend Wyomind to anyone.
T
Tom
Ecommerce Agency · United Kingdom · User for 5 years
★★★★★
Best Import App on the market
Best import app and supporting documentation on the market and very good support provided.
AS
Armindo Soares
Merchant · Portugal · User for 4 years
★★★★★
Very useful application for store automation
I bought the Mass Product Import & Update extension as I needed to import products to my website daily from feeds provided by the various distributors. We work with about 60,000 products with various distributors this tool helped us to have updated stocks with few errors.
M
Mike
Merchant · United States · User for 5 years
★★★★★
The Mass Product Import & Update is a MUST HAVE for any Magento website
we have been using the The Wyomind Mass Product Import & Update foe the past 9 months and must say that is saved us lots of time . we have 500000 sku and run update every day and no issues. support questions are answered quickly .
The Mass Product Import & Update is a MUST HAVE for any Magento website !!!!!
S
Snefru
Developer · Italy · User for 4 years
★★★★★
MSI do the job, Importing process and mapping system
my experience is 2 website on same machine, the first website; 4.000 products (Configurable and Simple) second 110.000 products (Simple products) in any case, it can manage both. Time for sync proliant G8 dual Xeon 32gb ram dedicaded. 4.000 products: about 3 minutes. If you have already update images is a dream machine. 100.000 products: not easy to config, time to execute 4/5 hours. be carefull to Elasticsearch issues, if it fail the process looping and you have to work for let it run flawless. you need a good skill in Magento and Linux system, moving thry logs and fixes. the support is ok.
F
Fernando
Merchant · Portugal · User for 5 years
★★★★★
Helpful and eficient extension
I bought the extension Mass Product Import & Update as I needed to import products to my website daily from a feed that a large distributor provides me. The support was impeccable and the extension does exactly what it sets out to do.
Magento 2 Compatibility
Supported by our master extension versions
2.4.9
2.4.8
2.4.7
2.4.6
2.4.5
2.4.4
Use cases
How merchants put Mass Product Import & Update to work, step by step.
Verify SSL certificate — new profile option for the URL and Web service sources, set to Yes by default, existing profiles included. Only set it to No for a server with a trusted self-signed certificate (see the user guide).
Bug fix
URL, Web service and Dropbox sources — security, with Mass Stock Update 15.3.0: the SSL certificate of https servers is verified, an https source is never downloaded over plain http, and the login and password of a URL no longer appear in the error messages and logs nor are sent to another server after a redirection.
Compatibility
Mass Stock Update — requires Mass Stock Update 15.3.0 or later.
11.2.5
Bug fix
Indexer changelogs — an import that changes nothing no longer logs the products in the changelogs of the Magento indexers (catalog_product_price_cl, catalogsearch_fulltext_cl…). Website assignments, categories (mapping), related products, tier prices (replace) and bundle selections are kept when unchanged instead of being deleted and inserted again. On frequent imports, these changelogs could reach their maximum version and stop recording changes, leaving products out of the category pages.
Several profiles on the same products — a product updated by a different profile than the previous one is no longer logged in the indexer changelogs: the created_by and updated_by columns are ignored by the indexer triggers.
11.2.4
Bug fix
Fixed the error "Using null as an array offset is deprecated" when creating a replacement rule on PHP 8.5.
Improvement
The outputs of the replacement rules templates are escaped, as required by the Adobe Commerce Marketplace review.
11.2.3
Bug fix
Fixed a regression introduced in 11.2.2: has_options and required_options were forced to 1 for configurable, gift card, bundle, downloadable and grouped products on each import (downloadable products could disappear from grouped products). These product types are now left to the native Magento logic
11.2.2
Bug fix
The has_options attribute of bundle products is no longer systematically reset to 0, including during inventory-only imports
11.2.1
Bug fix
Fixed Content Security Policy (CSP) errors
11.2.0
Compatibility
Symfony 5+ compatibility
Improvement
JavaScript code encapsulated to prevent Content Security Policy (CSP) errors
11.1.0
Compatibility
Mass Stock Update — requires the Mass Stock Update version based on PhpSpreadsheet 5.
11.0.9
New feature
Custom options — import of the Date, Date & Time and Time custom options.
11.0.8
Bug fix
Images — fixed the import of the images.
11.0.7
Bug fix
Images — images are no longer duplicated when a profile imports several files (file name given by a regular expression).
11.0.6
Bug fix
Dropdown attributes — an option label such as 3e-12 is no longer read as a number when looking for the option.
11.0.5
Bug fix
Field enclosure — the "none" field enclosure is saved in the profile.
11.0.4
Bug fix
Mixed products — fixed an error caused by an undefined variable when importing mixed products.
11.0.3
Improvement
Optimize some of the module's queries to avoid updating database table rows if there is no data change
11.0.2
Compatibility
Magento 2.4+ compatibility for the cache purge feature
11.0.0
Initial release for the master version
10.0.0 legacy
Initial release for the legacy version
9.0.4
Bug fix
The price view for the bundle products was not updatable/importable
9.0.3
Compatibility
Compatibility with PHP v8.2
9.0.2
Compatibility
Compatibility with Magento v2.4.6 + PHP v8.2
9.0.1
Compatibility
Compatibility with Magento v2.4.6 + PHP v8.2
9.0.0
Compatibility with Magento v2.4.6
Compatibility with Php v8.1
8.13.3
Improvement
Fix the warning triggered by the trim() function if the value is empty
8.13.2
Improvement
Compatibility with PHP v8.1
8.13.1
Bug fix
Fix the import of the bundle product options with identical label
8.13.0
Improvement
Execution time optimization for images import
8.12.0
Improvement of the dynamic attribute feature: dynamic attributes can now be mapped at storeview level
8.11.8
Bug fix for the updates of created_at and updated_at product fields
8.11.7
Improvement of the image import: the same image can be renamed as different destination images
8.11.6
Bug fix that prevent gift cards from being overridden when the import process runs
8.11.5
Bug fix for label images in case of empty label
8.11.4
Rollback patches for install/upgradeData that conflicts with some third-party modules (should be fixed in a coming version)
8.11.3
Replacement rules are executed by order of position
8.11.2
Fix the bundle import for Adobe Commerce edition
8.11.1
Fix the bundle import for Adobe Commerce edition
8.11.0
Ability to update any static attributes
Fix the bundle import for Adobe Commerce edition
8.10.3
Optimization in the image processing: size is only calculated if the "Download the image again if it has changed" option is activated
8.10.2
Minor fix on code
8.10.1
db_schema.xml and db_schema_whitelist.json
8.10.0
Use of db_schema
8.9.1
Fix for multiple dynamic attributes
8.9.0
Improvement
New option added to allow downloading an image via HTTP if it has changed
Dynamic attributes can now be defined within the same field: color=blue|size=XL
Bug fix
Fix for the regular expression for status interpretation during the curl request to control the image to be imported
8.8.3
Compatibility
Compatibility with PHP 8.1
8.8.2
Compatibility
Compatibility with PHP 8.1
8.8.1
Fix for the import of custom options by storeviews
8.8.0
Improvement
Possibility to update custom options by storeviews
8.7.1
prototype.js added in the require call of rules.phtml to avoid execution before the full loading of JS dependencies
8.7.0
Improvement
Possibility to define the position of the children of the grouped/bundle products with the position parameter: [position=x]
8.6.8
Fix for a bug that caused duplication of attribute options (select/multiselect/swatch) when the attribute was only imported for configurable products created on the fly
8.6.7
Fix for a bug that prevented importing swatches with an apostrophe in their label
8.6.6
Fix for a bug preventing the module from working when the Magento instance contains unlabeled product relationship declarations
8.6.5
Fix for a bug when importing tier prices
Slightly optimized execution time
8.6.4
Fix for a bug that could occur when creating grouped products
8.6.3
Optimization of requests generation for import configurations by storeview
8.6.2
Possibility to import any relation type: cross-sell, upsell, and custom types
8.6.1
Control added to avoid execution errors with older versions of M2E Pro
8.6.0
Improvement
Better support for M2E Pro update service
Possibility to notify M2E Pro globally about any product updates
8.5.0
Improvement
Support of FTPS (SSL over FTP) for downloading the import file and importing images via FTP
8.4.7
Fix for the labels of configurable attributes
8.4.6
Fix for the labels of configurable attributes which name contains simple quotes
8.4.5
Fix for a bug that prevented keeping the existing position of products in categories when importing product/category associations
8.4.4
Fix for the image import: the path is prefixed with a slash
8.4.3
Fix for the attribute management with a source model
8.4.2
Fix for a JS error
8.4.1
Fix for a bug preventing the use of the module with attributes having non-standard source model
8.4.0
Deletion of url_rewrite when products are deleted following post-process deletion options
8.3.4
Fix for the image role deletion feature for Magento Enterprise
8.3.3
Fix for a bug preventing the creation of attribute options on the fly for select/multiselect/swatch attributes
8.3.2
Fix for a missing table prefix
8.3.1
Fix for a bug that could prevent retrieving the list of product attributes
8.3.0
Improvement
Management of all attributes with specific source_model
8.2.4
Fix for a bug introduced in 8.2.2 preventing the import of attribute options by value
8.2.3
Fix on the profile's history for cron tasks
8.2.2
Modification of select/multi-select attributes to allow an import by key of all the attributes with a source model
8.2.1
Increase in the maximum size dedicated to the profile mapping
8.2.0
Replication of changes from versions 7.2.2 to 7.2.4 that were lost in version 8.0.0
Modification allowing to import New theme and New layout
8.1.0
Possibility to unassign image roles by leaving the value to null (empty)
8.0.1
Fix for a camel case error
8.0.0
Improvement
The history of profile versions is managed
7.2.4
Fix for a bug that caused swatch images to be lost when importing the attribute
7.2.3
Improvement
When importing a swatch type attribute, if the imported option already exists in the attribute and the swatch is not affected by the import (for example by the color property), then the swatch is kept if there is one in the attribute option
7.2.2
Fix for the import of the Layout attribute
7.2.1
Fix for the mapping when deleting categories
Fix when using product ids other than SKU or ID
7.2.0
Improvement
Possibility to assign values by storeview for label, position, and disabled by suffixing the image parameters with the store code
7.1.0
Improvement
Better management of images for Magento 2.4
7.0.3
Fix for Magento Commerce Edition on the assignation of the updated_in field for existing products
7.0.2
Compatibility
Compatibility with Magento Enterprise: the updated_in field is assigned with a fixed date to match Magento's default behavior
7.0.1
Special cases are taken into account when generating URL rewrites
7.0.0
Improvement
JSON source files are supported
6.9.3
Fix for a bug when replacing tier prices in Magento Enterprise
6.9.2
Fix for the requests storage reset when updating products missing from the import file
6.9.1
Better management for the swatch attributes labels: the label is automatically filled in during the import
6.9.0
Improvement
New feature allowing a dynamic mapping
6.8.4
Improvement
Possibility to empty the products media gallery
6.8.3
Fix for the consecutive execution of profiles
6.8.2
Value automatically added to has_options for configurable products
6.8.1
Allowed mapping size increased for new module installations
6.8.0
Compatibility
Compatibility with Advanced Inventory: possibility to define the points of sale stocks on 0 for products that are not in the import file
6.7.9
Fix for a call to the WyomindMassStockUpdateModelResourceModelTypeStock class
6.7.8
Improvement
Code quality improved
6.7.7
Fix for the import of the rules via CSV files
6.7.6
Fix for the creation of the link between simple and configurable products for Magento EE
6.7.4
Fix for Magento Enterprise and the scheduled update: a position is assigned automatically to the children of grouped products
6.7.3
Improvement
Possibility to import products using other unique identifiers than the SKU
6.7.2
Fix on the upgrade script for the massproductimport_profiles table
6.7.1
Fix for the automatic action on missing products: products available in the file were not correctly identified
6.7.0
Improvement
Possibility to enable/disable the profile
The profile is disabled by default when it results from a duplication
The mapping and the source file path cannot be saved when the path is invalid
Better management of the mapping of the csv file when it is modified externally
6.6.3
Fix for updating stocks for products missing in the import file
6.6.2
Fix when updating stocks for products that are missing from the import file
6.6.1
Fix in the way the module detects if MSI is enabled
6.6.0
Improvement
Better management of automatic actions such as stock status update (out of stock) and/or qty=0 for missing products in the file
6.5.2
Fix for an undefined class property
6.5.1
Minor fix on file
6.5.0
Improvement
Improved license management system (Clear code)
6.4.20
Fix for the categories identification: the name of the default store view is taken into account
6.4.19
Fix for removing categories linked to the product by ID
6.4.18
Minor fix on code
6.4.17
Fix for loading the options of the Google Merchant Center Category attribute
6.4.16
Improvement
Tax classes can now be assigned by website via the store view configuration
6.4.15
Fix for managing has_options for configurable products
6.4.14
Improvement
Better management of swatch attributes: the color parameter must be named
6.4.13
Improvement
Dropdown attributes translations can be emptied using #empty# to use the default value instead
6.4.12
Fix for SKU or attributes values including double quotes
6.4.11
Fix for a class namespace
6.4.10
Fix for multiple WEEE TAX import
6.4.9
Improvement
The destination parameter is taken into account for the galleries
6.4.8
Fix for Magento Enterprise on:
category creation
missing products disable
6.4.7
Fix for categories created after the import
6.4.6
Fix for removing empty translations when the base value contains double quotes
6.4.5
Fix for removing empty translations when the base value contains double quotes
6.4.4
Fix when the option to disable missing products from the import file is used
6.4.3
Improvement
Fix for the translations of attributes options: empty translations won't be created anymore and old translations will be deleted if there is no translation in the import
Compatibility with MSI
6.4.2
Improvement
Better management of translations of the values of dropdown attributes ignoring empty values
6.4.1
Fix for dropdown attributes translations
6.4.0
Improvement
Possibility to translate the value of dropdown attributes for different storeview
6.3.1
Scenario added for the demo
6.3.0
Improvement
Management of catalog_product_flat and catalog_category_flat indexers if the option is enabled in Stores > Settings > Configuration > Catalog > Catalog > Storefront
6.2.15
Bug fix
Fix on permissions for the display of the library in the black box
6.2.14
Bug fix
Fix for the video import
6.2.13
Bug fix
Fix to avoid notices and warnings when the table is empty
6.2.12
Bug fix
Merchandising for configurable products
BSS prefix for categories
Custom options for Magento Enterprise
6.2.11
Minor fix for cron tasks
6.2.10
Improvement
Better import of tier prices: add imported tier prices to existing ones instead of replacing them
6.2.9
Improvement
Better management of URL key generation for categories created dynamically
6.2.8
Fix for sample data
6.2.7
Compatibility fix for some PHP versions
6.2.6
Bug fix
Fix when a mapping element is empty
No error is triggered if no warehouse is saved
Fix for sending emails to the warehouse
6.2.5
Minor fix on code
6.2.3
Enhancement of the scalability for the image processing
6.2.2
Management of backslashes in SKUs
6.2.1
Fix when deleting bundle options items
6.2.0
Possibility to add/delete the bundle products' options
6.1.3
Fix when saving the replacement rules
6.1.2
Fix for configurable products created on the fly
6.1.1
Fix on the "Test Connection" button from the Image settings
6.1.0
Better performance for the import of imagesToMove
Enhanced management of auto-increment for the categories import
6.0.4
Update on the sample data permissions
6.0.3
Update of the sample data for the demo
6.0.2
Fix on a PHP error when creating a replacement rule
6.0.1
Fix for a compilation issue caused by the PHP doc
Code clean
6.0.0
New feature
Management of replacement rules
Compatibility
Compatibility for Magento 2.3.3
5.1.2
Enhanced image import
Possibility to define tiers prices per website
5.1.1
Improvement
New tooltip for the status bar
Code cleaning
Wording fixes
Patch v5.1.1.10
Enhanced images import
DB clean
Patch v5.1.1.9
Fix for duplicated categories and attributes
Fix for the image gallery
Patch v5.1.1.8
Fix for the images import
Patch v5.1.1.7
Fix for duplicate attribute creation
Patch v5.1.1.6
Sample data available for the demo
Patch v5.1.1.5
Fix for creating categories on the fly when configurable products are not created on the fly
Patch v5.1.1.4
Fix for duplicated categories and attribute values
Patch v5.1.1.3
Fix for the cron task
Patch v5.1.1.2
Minor fix on code
Patch v5.1.1.1
Useless files removed
5.1.0
Improvement
Ability to run the index on demand or automatically at the end of the import process
Possibility to select the index to execute
5.0.0
Improvement
Support for Magento MSI
Interface enhancements (dropdowns with pre-populated values)
New syntaxes and options for: categories, configurable attributes, swatch image, category mapping, images/videos, custom options
Better management of request errors
Improvement for Advanced Inventory
Patch v5.0.0.6
Fix on namespace
Patch v5.0.0.5
Fix for the video import
Patch v5.0.0.4
Fix for OPTIONS_CONTAINER
Enhancement for the image import
Patch v5.0.0.3
Fix on storeviews dependencies (price, visibility attributes)
Patch v5.0.0.2
Minor fix for the sample data and the configurable product
Fix for the images import
Patch v5.0.0.1
Minor fix in script
4.3.0
Improvement
Better management of Magento export files
Patch v4.3.0.2
Fix for the import of boolean attribute value
Patch v4.3.0.1
Fix on a typo
4.2.2
Improvement
White spaces in the images urls are stripped out
Improvement of the price import for Magento EE
Patch v4.2.2.1
Fix for the customer Group/Tier prices
4.2.1
Improvement
Support of tier prices for Magento EE
4.2.0
Improvement
New option for each mapping row that allows you to define if the value applies to the created and/or updated products
Bug fix
Fix on the cron interval configuration
4.1.0
Improvement
Possibility to change the cron task interval
Better management of XML files using namespaces
4.0.0
New feature
Profile import/export
Improvement
New interface, easier and faster to configure
Better management of configurable products
New sample data
Patch v4.0.0.4
Minor code fix
Patch v4.0.0.3
Minor fix on code
Patch v4.0.0.2
Wording correction
Patch v4.0.0.1
Fix on a typo
3.2.2
Improvement
Possibility to choose to run the indexers after the import
Patch v3.2.2.2
Fix for the update of products that are not in the source file
Patch v3.2.2.1
Fix on a PHP error
3.2.1
Improvement
Improved images management (when imported through several mapping lines)
Bug fix
Fix on the upgrade script
3.2.0
Improvement
Possibility to add the product position in the category ex: Default Category[0]/Women[10]/Shirt[10]
The import keeps the position of products that are already assigned
Urls re-indexation when updating the url key
Patch v3.2.0.2
Fix for the category mapping and the root category id management
Patch v3.2.0.1
Fix for configurable products
3.1.0
Improvement
Better management of configurable products
Improved management of the images import
Use of regular expressions in the files names
Patch v3.1.0.6
Fix for configurable products
Patch v3.1.0.5
Fix for the attributes
Patch v3.1.0.4
Fix for the tax class when there's no ID
Fix for merchandising (related, up-sell, cross-sell)
Patch v3.1.0.3
Patch for the "merchandising" group for Magento EE
Patch for the attributes with their own source_model
Patch v3.1.0.2
Fix for Magento EE: SQL error because of empty values
Patch v3.1.0.1
Fix when associating products to categories using the category ids
3.0.1
Improvement
Support of the category creation with Magento Enterprise Edition
Patch v3.0.1.1
Better management of attribute (select type)
Creation of fixed categories for Magento Enterprise Edition
Website values are now case insensitive
3.0.0
Improvement
New user interface
New PHP API
Compatibility
Compatibility with Mass Stock Update v7.0.0
Bug fix
Minor fix on file
Patch v3.0.0.3
Fix for empty values
Fix for the product relations in the merchandising section
Patch v3.0.0.2
Fix for the image gallery
Fix for empty attribute value
Patch v3.0.0.1
Fix for configurable products
Possibility to delete an attribute value
2.4.0
Improvement
Management of parents for bundle and grouped products
Patch v2.4.0.2
Fix on the storeview selected when creating group prices
Patch v2.4.0.1
Fix when bundle/grouped products are linked to simple ones
2.3.0
Improvement
Several possible actions after the execution
Patch v2.3.0.1
Cron task fix
2.2.1
Compatibility
Enterprise Edition
Improvement
Support images for EE
Bug fix
Minor bug fix
2.2.0
New feature
New categories management that allows to use category tree
Use of Touchscroll
Ability to filter product based on row ranges
Ability to exclude the header of the csv/txt file
Ability to import/update Cross Sell, Up sell, and related products
Ability to import data from a Dropbox location
Patch v2.2.0.3
Fix for the attribute management
Patch v2.2.0.2
Several bug fixes
Patch v2.2.0.1
Fix for the install script
2.1.0
New feature
Downloadable products can be now imported
Fix for the visibility status for "Catalog, Search"
Patch v2.1.0.6
Fix for the ACL
Patch v2.1.0.5
Fix for the url key
Patch v2.1.0.4
Fix for a method name
Fix for the database using a prefix
Patch v2.1.0.3
Fix for the ACL
Patch v2.1.0.2
Improvement
Ability to create configurable attributes even if the configurable products are not created on the fly
Patch v2.1.0.1
fix for the image import
fix for the database using a prefix
fix for the configurable products import
2.0.0
Refactoring
Code source enhancement
Dependency with Mass Stock Update implemented to avoid duplicating source code
Use of INSERT ... ON DUPLICATE UPDATE ... process
Improvement
Fixed Product Tax is now supported
Group / Tiers prices is now supported
Bug fix
Table prefix is now supported for all tables
Patch v2.0.0.4
Better management of the configurable product attributes
Patch v2.0.0.3
fix for the image import
fix for the database using a prefix
fix for the configurable products import
Patch v2.0.0.2
Fix for the image importation from HTTP
Patch v2.0.0.1
Fix the class names of the FieldDelimiter, FieldEnclosure classes for the csv files
Fix the ProductIdentifier class name
1.7.1
Improvement
New management of the stock updates for Advanced Inventory users
Patch v1.7.1.3
Fix for the images import from HTTP
Patch v1.7.1.2
Fix for the url_key attribute
Patch v1.7.1.1
Fix for the multi-stock management
1.7.0
Improvement
New categories management
Patch v1.7.0.2
Fix for the url_key attribute
Patch v1.7.0.1
Fix for the installation scripts
1.6.1
Improvement
Better support for the attributes updates
1.6.0
Improvement
New command lines to generate and execute the import profiles
1.5.0
Improvement
Custom options are now supported in the mapping section
Patch v1.5.0.1
Fix for the attributes updates
1.4.0
Improvement
XML file structure can now be preserved even if the file differs from one import process to another
Php scripts can be used in the value field of the additional columns
1.3.0
Improvement
Relation with configurable products can now be defined in the mapping section
Configurable products can now be created on the fly from a group of simple products
1.2.0
Improvement
Images can now be imported from a remote server by using HTTP
Products that are not included in the import file can now be deleted/disabled/marked as out of stock
New user interface
Minor code refactoring
1.1.0
Improvement
Magento v2.2.1 compatibility
Support for the color swatch attributes
Support for configurable products
Better support of the XML sub-nodes
Better errors management and display
Patch v1.1.0.2
Javascript fix
Patch v1.1.0.1
Fix for the CSV file headers
1.0.1
Improvement
Ability to use several category names in the same column
use strict mode in javascript files
Patch v1.0.1.4
Fix to avoid any issue when the import file mismatch with the mapping
Patch v1.0.1.3
Fix for an undeclared js variable in ftp.js
Patch v1.0.1.2
Fix for the FTP validation button
Patch v1.0.1.1
fix for images importation from a sftp connection
1.0.0
First public release
Patch v1.0.0.10
fix for images importation from a sftp connection
Patch v1.0.0.9
fix for profiles that don't use additional columns
Patch v1.0.0.8
Fix for the CSV file preview
Fix for the cron tasks
Fix for skipping empty image path
Update the number of children in the category
Patch v1.0.0.7
Category.phtml renamed to category.phtml
Js fixes on category.js
Patch v1.0.0.6
Fix for prefixed tables
Patch v1.0.0.5
Minor bug fixed for the creation of the profiles
Patch v1.0.0.4
Fix for the import AND update in the same profile
Patch v1.0.0.3
Fix for the sample data
Patch v1.0.0.2
Fix for the command lines
Patch v1.0.0.1
Lowercase fix for one model file
Feature request
Specific needs or any ideas of enhancements and new features to add to the extension? Tell us more, we'll get back to you shortly!