This article covers the case of a company that is already using the Magento and has all its data entities (products, product categories, clients etc.) in the Magento database. The Megaventory account is empty of data (either new or after a reset operation).
Preliminary Step – Necessary settings in Magento
The following Magento settings need to be correctly set for the correct interoperability between Megaventory and Magento:
Cron Job (Unix)
Cronjobs, or scheduled tasks, must be enabled in order for the Megaventoryextension to operate properly. By default if the Magento installation isrunning on a UNIX OS the OS should automatically recognize Magento'srequests to use the CRON TAB service. The crontab service command can beused if shell access is granted to the server or added through cPanelor a similar admin tool. The crontab should have rows that look similarto one of these:
* * * * * /bin/sh /[mage_dir]/cron.sh* * * * * /bin/bash /[mage_dir]/cron.sh* * * * * php -f /[mage_dir]/cron.php* * * * * /usr/bin/php /[mage_dir]/cron.php* * * * * /usr/local/bin/php -f /[mage_dir]/cron.php
The Inventory Settings in the Magento software can be found by navigating to System > Configuration > [Catalog > Inventory (left menu)]. The Decrease Stock When product in Placed option (see figure below) will control whether non-shipped items in Sales Orders (a Pending Sales Order in Magento is equivalent to a Verified Sales Order in Megaventory) will be accounted for in the Global Stock. If this option is set to Yes, the Global Stock will decrease immediately when a Sales Order is placed. If this option is set to No, Global Stock decreases only when items are shipped against the Sales Order. The Manage Stock option (see figure below) should be set to Yes.
Step 1 - Adding a web services Role and User in Magento
A new User Role has to be added in Magento. This is done through the System > Web Services > SOAP/XML - RPC Roles screen. Once there, the Add New Role option should be clicked and the Role Name must be filled in (for example: “MegaventoryRole”). Then, the Role Resources (left menu) of this user must have Resource Access >> All. Finally, the Save Role option should be clicked.
After the user role is saved, a new SOAP/XML user has to be added in Magento. This is done through the System > Web Services > SOAP/XML - RPC Users screen as shown in the figure below.
Once there, the Add New User option has to be clicked. Then, under User Info (left menu) the User Name and API Key (password) should be filled as shown in the figure above. A record of the User Name and API Key fields should be kept because they will be used later on in Step 3. Then, the User Role (left menu) of this user must be set to the role name created above. Finally, the Save User option should be clicked.
This newly created user grants access to Megaventory so as to update the data of the Magento store. Once all the steps in this guide have been performed and the user credentials have been entered they are then used in the background and no manual submission will be necessary again. However, the credentials of this user -and specifically the API key- are private for security reasons and should be treated as a password.
Step 2 - Signing up for a Megaventory account
A new Megaventory account should be created here.
After signing up for the first time the user will see the initial Setup page (Admin > Account Setup) as shown in the figure below.
Extra help while filling out the form can be obtained by hovering with the mouse over the bubble icon next to each specific field.
The Enable Sales and Purchase Orders option should be set. The Enable Works (Manufacturing) option should be set if at least one product of type Bundle exists in the Magento store.
Finally, it is strongly recommended that the Numbering Scheme of the Sales Order document is set to automatic numbering. By doing so, all the Sales Orders coming from Magento will receive an Order Reference Number (the sales order number of Magento) and the sales order numbering scheme of Megaventory will be independent from the sales order numbering scheme of Magento. This also makes Megaventory ready to accept Sales Orders from other sales channels as well (other e-commerce software, manual sales orders through phone, etc.). If the Numbering Scheme of the Sales Order document is set to manual numbering, the Magento Sales Order number will be used also in Megaventory. The latter option should be selected if your Megaventory account will receive orders from the Magento store only. After completing the initial Setup the user should click Save and then navigate under the Admin panel and select Users > Display All.
The administrator username should be clicked. This action will bring up the definition of the user as seen in the figure below.
Clicking on the key icon will generate a new random key for the specified user entity. The reader shall keep a record of the generated key; it will be used in Step 5 later on. Finally, the Update button should be clicked to save/update the user entity.
The API key grants access to Magento so as to update the data of the Megaventory account. Therefore, the API key should be treated as a password.
The trial account of Megaventory supports up to 5000 product SKUs and 5000 customers. If your Magento store has more than 5000 products or customers, please contact Megaventory support at [email protected] to raise those limitations for the evaluation period of the Megaventory account.
Step 3 - Activating the Magento integration in Megaventory
To use the Magento eCommerce software, the appropriate flag has to be set in the Account Integrations module of Megaventory. This module lies under the Admin menu tab of Megaventory and handles the few settings involved in integrating Megaventory to any 3rd party software. Extra help while filling out the form can be obtained by hovering with the mouse over the bubble icon next to each specific field.
When ready, the user should save the form by clicking the Save option.
Step 4 - Installation & Activation of the Megaventory extension in Magento
A company that wishes to start using the advanced inventory management features of Megaventory must download and install the Megaventory extension from the Account Integrations module under the Admin area in the Megaventory software.The Megaventory extension may also be downloaded from the Magento Connect (also known as the Magento Extension Marketplace) website here.
Step 5 - Synchronizing the initial data from Magento to Megaventory
After the extension is successfully installed, a new Megaventory menu item appears. Under the Settings tab the user will find the Connectivity panel as well as the Setup Wizard panel that starts the synchronization process with the newly created Megaventory account.
If the Megaventory Extension option is set to Enabled, then the Magento installation will send and receive data with every Magento action that needs to communicate data to Megaventory. Setting the Megaventory Extension option to Disabled will effectively disable all the functionalities the module. For the Setup Wizard to finish successfully, the option should be set to Enabled.
The API URL should be set to: https://api.megaventory.com/v2/json/reply/ and finally, the API Key is the key generated at step 1 above.
When the user clicks the Update button, a success notification icon appears when all settings have been correctly inserted and connection between Magento and Megaventory has been established. When a proper connection between Magento and Megaventory cannot be established, a Connectivity Failed icon appears and an explanation message of the error(s) is displayed. All errors have to be corrected before starting the Data Initialization process.
The Order Synchronization checkbox is initially disabled and will be automatically enabled when the Setup Wizard ends successfully. While this option is unchecked, no sales orders are sent to Megaventory from Magento. This option should be enabled only when the inventory quantities of Magento and Megaventory are synchronized (after the Setup Wizard ends successfully).
Setup Wizard Tab
The Setup Wizard module is displayed in the figure below. Before starting the process, the user has to choose codes for a Shipping Product SKU and a Discount Product SKU (for example: “shipping001” and “Discount001”). These “virtual” products will be added in Megaventory with infinite quantities and will handle the Magento shipping charges and order discounts respectively. The Discount Product SKU will be added in the sales order form of Megaventory (as a product with negative price) if there is a discount in a Magento order.
As soon as the user clicks the Start button, the synchronization process starts. The process automatically sends and receives the following entities to and from Megaventory: [*]Inventory Locations (for example stores, warehouses etc.)[*]Supporting entities (creates a virtual ‘shipping’ and ‘discount’ product and a default ‘Magento Guest’ client to handle those clients that use the Magento shopping cart without subscribing as a registered user)[*]Product Categories[*]Products
In case some entities fail for any possible reason (for example, connectivity is temporarily lost etc.) a log is written to the event database of the Megaventory extension. The log is available under the Log option under the Megaventory menu tab in the Magento software. If for any reason, the setup does not finish successfully, the user may refresh the page and start over.
When the synchronization process ends, the user should click on Yes in order to import the Magento global stock (inventory quantities) to Megaventory. This process will generate a CSV file containing the Magento product quantities which can then be uploaded to Megaventory.
After clicking Yes, the Inventory Location of Megaventory (that will initially receive the Magento quantity information) has to be selected. Note that, since Megaventory supports multiple Inventory Locations, product quantities can be later distributed between Inventory Locations from the Megaventory software; inventory information will always be synced to the Magento software in any case.
Finally, by clicking Export Initial Stock CSV, a CSV (text) file will be generated by Magento. The user should download the file and save it locally in his/her computer. The file contains a snapshot of the current Magento inventory information (global stock: products with their associated inventory quantities) (see Step 6).
The file should be imported/uploaded to Megaventory as soon as it is generated. That will ensure that no Sales Orders are created from Magento front end users during this period and therefore no stock discrepancies will be generated. Ideally, the Magento front-end must be temporarily disabled to ensure no orders are placed by front-end users during this period.
Step 6 - Importing the current Magento quantities in Megaventory
The CSV file is handled by the Inventory Taking module (under the Inventory tab) of Megaventory.
The process usually starts by downloading the excel file and filling it with data. Since the file has been automatically generated by Magento in the previous step, the user should directly proceed to the last step of the Inventory Taking process.
Once the file is uploaded to Megaventory the quantities are adjusted in the selected Inventory Location. The quantities are now synchronized.
Step 7 - Setting up final data
As soon as the inventory file is uploaded to Megaventory, the user shall navigate to the Megaventory > Settings menu tab in the Magento back-end and enable the Order Synchronization checkbox. While this option is unchecked, no sales orders are sent to Megaventory from Magento. When this option is checked, the Magento Sales Orders are sent to Megaventory and Megaventory will send back to Magento the inventory quantities. The Order Synchronization option should be enabled immediately after the quantities of Magento and Megaventory are synchronized. If the Magento front-end was previously temporarily disabled it can now be re-enabled.
Source: Megaventory Knowledge Base
View more threads in the same category: