Odoo Magento 2 Connector
Odoo Magento 2 Connector
Odoo Magento 2 Connector

Odoo Magento2 Connector

Visit App
A. Introduction

Magento is the leading eCommerce platform used for online stores. It is a high-performant, scalable solution with powerful out of the box functionality and a large community built around it that continues to add new features. Using this connector, a seller can integrate Magento2 Store with Odoo and manage different Import-Export operations with automation features.

Let’s explore its salient features & functionalities in brief.

B. Installation

After successfully downloading the Odoo Magento2 Connector App and its dependencies (if any) from Odoo store or Emipro shop, place it on the Odoo Add-ons path or at any other desired path. Now, restart the Odoo instance and navigate to Apps in the dashboard. Click on Update Apps List from the menu. Once it completes loading successfully, Odoo Magento2 Connector will be visible in Apps.

Click on the Install button. Success! Now, you are ready to use the Odoo Magento2 Connector in your Odoo.

1. Installing Magento Extension

Integrating your Magento with your Odoo can interconnect disparate parts of your business, improving data visibility and accuracy. To associate both of them, Magento Extension is the key player which can break data out of silos to lead faster order processing, improved visibility into shipping requirements and better customer experience. Hence, this is the most important configuration.

Now, let us start it step by step. Please follow the below given sequence.

Add “Emipro_apichange” Magento extension to the Magento side, follow the following steps:

Add the latest version of the extension:
  • Go to Magento-Connector Module folder
  • In that, you will find an extension named "Emipro" folder

Pre-Installation Step:
  • Backup your Magento web directory and database.
  • Disable the Cache
  • Disable Compilation Mode

Upload Extension:
  • Copy the the Emipro folder and upload it to Magento.
  • Go to your Magento root directory
  • Go to the extension extracted folder

Select extension's all files and folders and upload them into your Magento root directory


Install Extension:
  • Upgrade your Magento: from SSH, run the command in Magento2 root directory -"php bin/magento setup:upgrade"
  • Deployment of static content: run this command in Magento2 root directory -"php bin/magento setup:static-content:deploy"

Refresh the Cache:
  • Go to System > Cache Management
  • Select all and refresh the cache


Add Additional Parameter in odoo.conf file:

For Odoo Magento2 Connector, to execute the job of import or export operation, we need to configure the job runner. To configure job runner follow the following steps:


Add following parameters in odoo.conf file:

  • [options-connector]
    channels=root:1
    Magento:1
    workers=5

    dbfilter = (db_name)

Do following changes in /etc/init.d/odoo script:
  • Load odoo with option “--load=web,odoo_magento2_ept”
  • Example : start-stop-daemon --start --quiet --pidfile ${PIDFILE} --chuid $ {USER} --background --make-pidfile --exec ${DAEMON} -- $ {DAEMON_OPTS} --load=web,odoo_magento2_ept

Generate Access Token On Magento:

Access Token tells us that you have the authorization to act on behalf of the user while integrating with other software. It is your identity which provides an easy way to work with Magento in Odoo, and are a widespread standard program across well-known organisations and services. So, let’s generate it step-by-step from the Magento interface.

1) Go to System / Integration menu.

2) Click On button Add New Integration.

3) Enter General Information like a name for integration, email and current user’s password.

4) Go to API tab > and Select ALL In Resource Access and Click on Save button to save Integration.

5) To active Integration click on Active link.

6) Click on Allow button in opened Popup. link.

7) Save Access token and click on Done to use Integration. link.

2. Create and configure Magento Instance

After installing Odoo Magento2 Connector in your Odoo, you can see Magento menu in your Odoo if Current user has rights as manager or User for Magento Connector.

Now, on the other hand, we have all the required information and authentication data from Magento which will help us to integrate it with Odoo. So, let’s create and configure the Magento Instance in Odoo.

  • You can Configure Magento Instance under Menu Magento / Configurations / Settings.
  • There is one section called Instance Configuration. Click on Create More Instance.
  • You can see the wizard for Instance configure.
  • In that wizard add Magento2 details like a version of Magento, Magento Location, Access Token, Warehouse and click on Create Button.
  • As we have generated Access Token from the above procedure in Magento, we have to enter the same information over here.

Once, the Integration process is complete, we need to configure the Magento2 connector to carry out the various processes between them.

Navigate Magento / Settings and select the Magento Instance you created. If there is no Magento Instance, simply click on Create More Instance button and fill up the basic information for Magento and Odoo.

2.1 General Configuration

This configuration is mainly focused on how the data will be managed in Odoo, arrived from Magento. It is mandatory to configure.

Choose Warehouse: Select the warehouses available in your Odoo for the Magento2 store you are going to integrate. Here, you can select multiple warehouses.

Select Version: Select the Magento version you are going to integrate with your Odoo.

Magento URL: Set your Magento2 store URL here.

Stock Field: Choose the stock field of product from Forecasted Quantity and Quantity On-Hand which will be used for stock inventory updates. If you keep it empty, Quantity On-Hand will be used by default. When we export/update the stock from Odoo to Magento, this configuration is vital.

Pricelist: Pricelist is the list of prices for different products by customer and supplier wise. Note that Product price will be set from this pricelist if Catalog Price Scope is global.

Catalog Price Scope: Select Global, if the product price in Odoo will be considered for all your Magento2 stores and will be the same for all Websites. Select Website if the prices will be different for your various Magento websites.

Magento Company: All your imported data from Magento2 will be added in the company you select here.

2.2 Product Configuration

This configuration will help you to organize the product imported from Magento in the best possible way. By smartly configuring it, you can better manage even the newly created products and stock in your Odoo.

Auto Create Product: Check the box to create new product in Odoo if it is not found while Importing Product from Magento. If it is not checked, please note that the Job may get failed while importing orders or products.

Import Images of Products: SImport product images along with product from Magento to Odoo while you carry out import product operation.

Is Import Product Stock?:Check this box if you want to Import Product Stock from Magento to Odoo.

Import Stock Warehouse: Set your Odoo warehouse if you have checked the above box.

2.3 Other Configuration and Setting Auto Cron Job

After configuring the General and Product configuration, you can start your operations from Magento to Odoo and vice versa. However, below mentioned configurations will give you some extra speed by automatizing several Import-Export operations at the specific time period and offer some tiny yet effective features that can take care of your customers, better than before.

Is Import/Export Only Basic Catalog Info: If you check this box, it will import the information of product except Magento Attributes. These attributes are found in the Products / Configuration / Simple Products in Odoo.

Is Use Odoo Order Sequence?: If you check this box, orders will be arranged as per your Odoo sequence when it gets imported from Magento.

Invoice Done Notify Customer: Send the mail to your customer automatically when Invoice of Magento order is created in your Odoo.

Number of Products per Cron Job: Enter the number of products you want to process in single cron job carried out in Odoo. Let’s say if you want to process 50 products in the first stage, then enter 50. So, when the next stage is ready, it will again take the next 50 products.

Auto Cron Configuration

You can perform various import-export operations automatically in your Odoo by configuring cron jobs. It includes Import Product Categories, Import Sales Orders, Auto Export Product Stock, Auto Export Shipment Information and Auto Export Invoice.

To make all your cron job smooth, you should keep the distance of minimum 10 minutes between two cron jobs. If the multiple cron jobs are set at the same time interval, it may affect your system performance.

3. Configure Magento Features

Note that, when Magento Instance is created, it will fetch Website, Storeview, Payment methods and Shipping methods. So here, let us understand how Instance and Website are connected with each other and how to configure the Magento Website further as per our requirements.

Note that, for each website - there will be a separate instance i.e. 1 Website = 1 Instance. 2 Website = 2 Instance.

3.1 Magento Website Configuration

Go to Magento / Configuration / Instance Details / Websites and you will see the list of all the imported Magento Websites. Now, if you want to configure the Magento website further, click on any of it and you will find all imported information like pricelist, code and other details. Let us discuss them in brief.

Other Configuration tab

Default Attribute Set: The attribute set imported from Magento website will be shown here. If there is no attribute set in Magento, then you can either set it from here or leave blank.

Here, Attribute Set consists of Attribute and Attribute Groups that are too fetched from Magento simultaneously.

Delete Product Image on Magento: When you delete any product image in Odoo, it will automatically delete in Magento Website too. Check this box if you need this.

Pricelist : If Catalog Price Scope is website, system will get/set price based on this pricelist.

After configuring all of the above parameters, click on the button Synchronize Metadata. It will fetch the storeviews and website from Magento2.

3.2 Magento Storeview Configuration

Now, once the storeview(s) is fetched from Magento2, go to Magento Website / Magento Storeview and click on the storeview you want to configure. You can see all the storeviews as per below image.

So, now you can see that all the information of Magento Storeview is imported. You can further configure it as per the requirement. While syncing metadata, the default language of Storeview will be set in Odoo too.

Code: Here, you will see the country code of storeview created in Magento. It can be US, UK, IN, etc.

Website: Select the Website that you want to keep for this storeview. We will see how to configure the Websites fetched from Magento in coming steps.

Magento ID: A unique ID from Magento is shown here which is fetched from Magento.

No Sales Order Synchronization: Check this box if you want to sync the Sales Orders from Magento to Odoo and vice versa.

Base Media URL: Enter the link of Magento where you have stored the images of products of Magento Store. It will be available from Magento backend.

Sales Team: Select the Sales Team in your Odoo which will manage this storeview.

Language: Select the language for that particular Magento Storeview. By default, it will keep the language which is fetched from Magento itself.

Sales Order Prefix: You can set any prefix (word or letters) to identify the Sales Order fetched from Magento.

3.3 Configure Specific Website

Navigate to Magento Website from storeview configuration itself by clicking on external link button .

Global Channel: Select the Global Channel from your Odoo to organize discussions between individual teams, departments, projects, or any other group that requires regular communication.

Instance, Magento ID and Code will be prefilled as it fetched from Magento itself.

Warehouse: Select the Warehouse for this Magento Website in which you will carry out product operations.

Pricelist: Select the proper Pricelist as it is the list of costs for various products by customer.

Tax include in price: Let’s discuss this with one example.


    If the tax is not included in the price, you will get:
  • Price without tax: $100
  • Taxes: $10
  • Total to pay: $110

    If the tax is included in the price
  • Price without tax: 90.91
  • Taxes: $9.09
  • Total to pay: $100

Create Tax if not found? : It will automatically create the new tax if it is not found in Odoo. It will further ask to add value in Tax Account and Tax Refund Account.

3.4 Configure Payment Methods

Navigate to Magento / Configuration / Payment Methods and you can see the list of payment methods fetched from Magento. You can also directly create/configure while configuring the Magento Website as shown in above screenshot.

While configuring the payment methods for Magento in Odoo, you can modify all the parameters as per your requirements, as shown in the figure below.

Company: Select the Company of your Odoo for Magento transactions.

Payment Journal: Select the Payment Journal you created in Odoo to record the transactions made in Magento.

Invoice Journal: Select the Invoice Journal in which all the invoice entries are recorded, ordered by date.

Automatic Workflow Select the Automatic Workflow that you have configured for this payment method. (We will see how to configure Automatic Workflow in next points).

Website: Select the Magento Website for which you are configuring this Payment Method.

Import Rule: Select Always, if you want to fetch the orders from your Magento Store with this payment method. Select Never, if you don’t want the orders of Magento Store with this payment. Select Paid, if you want to fetch all the Paid orders from Magento Store (orders fulfilled successfully) in Odoo.

Import Past Orders of X Days: Select the past number of days for the Orders to be fetched from Magento to Odoo. For example, if you select 30, it will only import the orders from past 30 days.

Payment Term: Set the Payment Term for the Orders that will be fetched in Odoo

3.5 Configure Automatic Invoice Workflow

Navigate to Magento / Configuration / Automatic Invoice Workflow to configure the various workflows, specifically for the tasks related to invoice generation.

Set the Payment Journal, Sales Journal, Shipping Policy, Invoicing Policy and other common workflow options to carry out operations in a better way. Either keep it in Manual mode or in Automatic Validation mode.

3.6 Delivery Methods

Go to Magento / Configuration / Delivery Methods and setup a delivery methods for Magento through which you will be providing shipping to your customers. Navigate to Magento Information tab and set the Magento Carrier as per the requirement.

4. Import Export Operations

4.1 Import Operations

With this Magento2 integration app, you can import and export various operations hassle-free with proper references that keeps you on track. Listed are the operations that can be imported from Magento:

  • Import Customer Category
  • Import Customer
  • Import Sale Order
  • Import Products
  • Import Product Stock
  • Import Attribute Set
  • Import Product Category
  • Import Specific Order

Note: For importing specific order, one more field will be activated in which you need to enter the Sale Order Reference for that particular order.

4.2 Export Operations

Listed are the operations that can be exported to Magento:

  • Export Shipment Information
  • Export Invoices Information
  • Export Product Stock

4.3 Imported Data from Magento

There are many types of Data that can be imported from Magento and listed in Odoo to better manage the operations between them. For example, Customer Invoices, Sales Order, Delivery Orders, Products, Magento Product Category, Magento Attribute Set, Magento Attribute and Customers. Below are the screenshots for your reference.

5. Simple and Configurable Products

5.1 Configurable Products

All the configurable products from Magento will be imported to Odoo as shown below. Here, you can see that there are product variants button which simply means that the product is configurable. However, if you make any changes to this will not affect in Magento as it cannot be exported back.

Here is the Simple product fetched from Magento with no product variants. Modification in it will not affect in Magento as it cannot be exported too.

Product Images fetched from Magento will be visible as shown below.

6. Analysis and Logs

A sales analysis report shows the trends that occur in a company's sales volume over time. Navigate to Sales / Reporting / Sales and you will come across the product/service sales carried out by you in Odoo.

An invoice analysis report shows invoice made for the various customers of the company who had purchased its products/services. Navigate to Invoice / Reporting / Invoice and you will come across the product/service sales carried out by you in Odoo.

Logs

Odoo create logs of every operation which you perform for Import or Export. Every import or export operation create job, job execute, it will import or export record. Based On configuration, job will execute and in case of any misconfiguration or any wrong response from Magento, job become fail and it gives the reason of job fail in result.

You can requeue the failed job, it will re-execute job. The logs which are focused on the Magento Odoo integration are Magento Process Log and Magento Cron Logs as shown below.