Introduction: Magento adapter

Topic overview

The Magento adapter App extends the Multi-channel sales framework with capability to connect to the Magento webshops. With the Magento adapter it is possible to use exchange the data with the webshops using the functions found in the MCS framework.

For more information about the features supported by the Magento adapter, see the General features chapter.

For more information about the Multi-channel sales framework, see the document Introduction: Multi-Channel Sales.

Definition of terms

Sales channel

Depending on the context, the term might have one of the following meanings:

1. External system in which items are sold (e.g. web shop, call centre, shopping mall).

2. An ERP business entity which stores the configuration for connection with sales channel within the meaning of 1.

Magento webshop

An open source e-commerce platform written in PHP, providing the online shop functionality with support for B2C and B2B processes.

Magento adapter

An adapter dedicated to the MCS framework. The Magento adapter extends the MCS framework with capability to connect to the Magento webshops. The Magento adapter is provided in a separate App.

Processes

This chapter describes the business processes that are covered in the document Introduction: Multi-Channel Sales with respect to the Magento adapter.

Configuration of the sales channel

The Magento adapter introduces additional steps to the procedure of sales channel configuration, on top of the standard procedure that was described in Introduction: Multi-Channel Sales.

Sales channels

When defining a new sales channel, select the Magento adapter from the drop-down list of all available adapters found in the field Adapter.

Beside from the standard attributes and tabs found in the application, the Magento adapter introduces additional tab Magento. It is necessary to fill all the required attributes in this tab in order to properly define a new sales channel.

For more information regarding the Magento tab, see document Extension: Sales channels/Magento adapter.

Note
If the Magento tab is not visible, please make sure that the view Magento adapter is selected in the [Select and organize views…] menu button in the right-hand part of the standard toolbar. For more information regarding the views, see document Customizable User Interface.

Adapter-specific applications

The Magento adapter introduces a set of supplementary applications, which are used to configure the Magento-specific settings. The applications are:

  • Magento inventory item settings
    • Use this application to define item-specific inventory settings for the sales channels using the Magento adapter. These settings override the global settings found in the Magento tab in application Sales channels.
  • Magento shipping term assignments
    • Use this application to define assignments between Magento and CEE shipping methods to be used during the import of sales orders from the Magento webshop.
  • Magento tax classification assignments
    • Use this application to define assignments between Magento and CEE tax classifications to be used during the export of items from CEE.
  • Magento payment assignments
    • Use this application to define assignments between Magento and CEE payments to be used during the import of sales orders from the Magento webshop.

HTTPS authentication

In case of connection over HTTPS, the SSL authentication requires that the client (the CEE) is provided with a valid server certificate by the server (the shop). The verification of the server certificate is based on the CEE keystore which can be accessed in CEE application System cockpit, category Certificate authority.

To ensure that the server certificate is valid, the server certificate must be imported in CEE using action [Generate or import certificate]. In case of certificate chain with more than one certificate, each certificate found in the certification path should be imported as well. The certificates should be imported in the order in which they appear on the certificate path, beginning from the root certificate. Attribute Logon should be set to Allow connection.

In test configurations, the SSL authentication may be disabled by setting following system property:

com.sem.ext.app.magento.debug.ssl.trustAll=true

Note, this setting should not be used in production environment and is designed for test purpose only.

Data transfers

Exporting item data

The Magento adapter supports all batch applications associated with the process of exporting item data:

  • Export item characteristic classifications
  • Export item categories
  • Export items

With each exported item, following information is transferred to the Magento webshop:

  • Item master data
  • Item characteristics
  • Item logo
  • Item media (PIM)
  • Item relations
  • Item-to-category assignments
  • Item prices

Exporting price data

The Magento adapter supports the batch application Export sales price lists. With each exported price list, following item prices are transferred to the Magento webshop:

  • Product price (standard price)
  • Group prices

For more regarding the determination of prices, see the Calculation of prices chapter.

Exporting availability data

The Magento adapter supports the batch application Export item availability. With each processed item the inventory attributes of a product are update in Magento. The attributes can be found in the Quantity tab in product details in the Magento webshop.

The table below provides an overview of all attributes updated during the export of availability.

Product attributeDescriptionSource in CEE
Manage StockFlag indicating whether the inventory for particular item is managed by the sales channel or directly by MagentoField Item inventory management in application Sales channel item inventory management or default value from application Sales channels
QtyQuantity available in the webshopCalculated based on item quantity on hand, quantity in transit and reservations.
BackordersFlag indicating whether backorders are allowed.

Additionally may include option to notify customer.
Allowed if field Allow negative availability is set to Yes in application
Sales channel item inventory management
or in application Sales channels

Notify customer is enabled if field Notify customer when item not available is set to Yes in application
Magento inventory item settings
or in application Sales channels
Stock availabilityFlag indicating whether the product can be ordered by the customersAvailable if Qty is positive or backorders are allowed

For more information regarding the calculation and export of item availability, see document Introduction: Multi-Channel Sales.

Exporting sales order changes

The Magento adapter supports the batch application Export sales order changes. The table below provides an overview of all changes that are detected by the system, together with the corresponding activity in the Magento webshop.

Type of changeActivity in Magento webshop
Sales order status changed to BlockedHold the order.
Sales order status changed to ReleasedIf held, unhold the order.
Sales order status changed to CompletedAdd comment “Sales Order {0} was completed by Comarch ERP”.
Sales order status changed to CancelledCancel the order.

“Sales Order {0} was canceled by Comarch ERP”.
Sales order delivery status changed to IncompleteAdd comment “Delivery order {0} for Sales Order {1} was canceled by Comarch ERP“
Sales order invoicing status changed to IncompleteAdd comment “Sales Order {0} has items to be invoiced by Comarch ERP”.
Picking status has changedAdd comment “Sales Order {0} is being processed by Comarch ERP”
Delivery order was createdCreate new shipment in Magento.

Add comment with URL to the voucher PDF file.
Customer invoice was createdCreate new invoice in Magento.

Add comment with URL to the voucher PDF file.
Customer invoice status changed to CompletedCreate new invoice in Magento (if not yet exists)

Add comment with URL to the voucher PDF file.
Order confirmation was createdAdd comment with URL to the voucher PDF file.
Receipt of goods status changed to ReleasedAdd comment “Customer return {0} was registered for sales order {1} by Comarch ERP”

In case of changes resulting in creation of voucher PDFs, the adapter can send the URL to the file as a comment in sales order. This function is described in the chapter Transfer of vouchers.

Exporting item categories

The Magento adapter supports the batch application Export item categories.

Only one category tree may be exported to the webshop. The tree which is assigned to the sales channel has the highest priority, therefore it is preferred in following cases:

  • No category trees were selected in the batch parameters.
  • More than one category tree was selected in the batch parameters.

The user may also export another tree of choice, by adding it to the batch parameters and excluding the preferred tree. In case more than one tree is entered, the first one is exported.

With each exported category, following information is transferred to the Magento webshop:

  • Category node master data

Importing sales orders

With this application you import the sales orders from the selected sales channels. During sales order import, there are also customers imported. So there is no need to start batch Import customers before import sales orders.

Import customers

With this batch application the customer data, which were created in the connected sales channel, are taken over in the partner master data. During this, only the data is taken over which has been newly created or changed since the last data transfer.

Importing category trees

Similar to export of category trees, the Magento adapter allows to import this data from the webshop into CEE. The import is executed using batch application Import sales item categories.

Calculation of prices

The Magento adapter supports prices on following price list views:

  • Item
    • Used for product standard and special price
    • Used for product tier prices
  • Customer price classification + Item
    • Used for group prices

Below is an overview of various kinds of Magento prices together with description on how are they converted to and from the CEE price lists.

Product standard price

The standard price is based on the CEE’s price for 1 unit of the item from the view Item. The price unit is the same as the first sales unit of the item. In case the price was defined in another unit, the price is converted accordingly.

Product special price

The special price originate from the promotion sales price lists in CEE. The special price are determined similar to the standard prices.

Magento group prices

Each group price is based on the CEE’s price for 1 unit of the item from the view Customer price classification + Item. The code of the customer price classification should match the code of the customer group in Magento.

For more information regarding the sales price lists, see document Sales Price Listings.

General features

This chapter provides an overview of the Magento-adapter implementation of the general features provided by the MCS framework.

Magento editions

Magento is the provider of three distinct platforms:

  • Magento Community Edition
  • Magento Enterprise Edition
  • Magento Enterprise Cloud Edition.

Officially supported edition is the Magento Community Edition. Other editions may be compatible, but are not officially supported.

Product Information Management

PIM functionality is available throughout multiple applications in CEE. Below is a rundown of all PIM-specific applications and application extensions supported in the Magento adapter.

  • Framework Base
    • Application Items, view Sales
      • Item media
        • Media of type Image are transferred as product Pictures.
  • Framework Multi-channel sales
    • Application Sales channel item relations
      • Item relations
        • Supported relation types: Variant, Alternative, Cross-sell, Upsell

For more information regarding each of the applications, see the respective online-help documentation.

Supplementary features

This chapter provides an overview of all Magento-specific features that are not part of the core Multi-channel sales framework.

Transfer of vouchers

The Magento adapter provides support for the function Transfer vouchers which can be enabled in the identification pane of the Sales channels application.

With the function enabled, the Magento adapter will export URLs to voucher PDF files generated in the CEE during the processing of sales channel orders. This applies to following vouchers:

  • order confirmation,
  • customer invoice,
  • shipping order,
  • customer return.

The PDF files are exported during the batch application Export sales order changes and stored in the webshop. Each file URL can be found in the comments section of the associated order. Please note that for the URL to be valid, the ERP system must be available from the location where the URL is opened.

Extended API

When using the extended API, the adapter delivers additional functionality which is otherwise not available in the unmodified version of the webshop. The additional functions are:

  • Possibility to transfer the category images during import and export of categories.
  • Possibility to export variant relations (also known as “configurable products”).

The extended API is provided as a Magento module which has to be downloaded and installed in the webshop instance.

In order to download the module, please refer to the support delivery text of the Magento adapter App.

In order to make use of the extended API, please enable the option Use extended API in the application Sales channels, tab Magento.

Functional adapter scope

Although the functional scope of the MCS is very extensive, however, on the level of additional adapters responsible for communication there are differences that are associated with the business logic of individual platforms.

Another element are functional enhancements of sales channels, which are not covered in their official interfaces (plugins).

The aim of the chapter is to show the differences and limitations of Magento adapter in the context of the functionality of MCS.

Magento versions overview

The current version of adapter supports following versions of Magento webshop:

  • Magento Community Edition 2.0.5
  • Magento Community Edition 2.3.1
  • Magento Community Edition 2.4.0

When defining a new sales channel, please make sure to select the correct client version.

In case the particular webshop version is not available in the official list, the connection might be possible using different client version. In such case, please select the client version which is the closest to the version of your webshop. For example, if the webshop version is CE 2.3.0, please try using version CE 2.3.1 of the client.

Supported Multi Channel features

This chapter contains features supported by Magento adapter.

Sales channel management

FunctionalityExplanation
B2CThe adapter supports business-to-customer processes.
B2BThe adapter supports business-to-business processes.
B2B & B2C (mixed mode)The adapter allows to use both B2B and B2C functionality simultaneously.
Sales channel partner assignmentsEach sales channel partner represents an assignment between sales channel and a CEE partner.
Default currencyA company can declare a currency as its internal currency. If multiple internal currencies are used simultaneously, one must be designated as the primary currency.
Payment method assignmentsThe assignment is used to find the matching Payment method when importing the Sales order via MCS.
Payment terms assignmentsThe assignment is used to find the matching Payment terms when importing the Sales order via MCS.
Shipping terms assignmentThe assignment is used to find the matching Shipping terms when importing the Sales order via MCS.
Multi store structureMulti store structure can contains many stores, one of which being the master shop, and others the sub shops. For each of the shops, a respective sales channel is configured in the CEE system.

B2C Management

FunctionalityExplanation
Customer import (Batch)Batch is importing customers from Sales Chanel to CEE.
Pseudo partner (Guest purchase)Pseudo partner is used as an ordering party for the sales orders from the sales channel. The Pseudo partner is always used when a customer of the sales channel is not registered as a customer or the customer in the ERP system is not yet available.

B2B Management

FunctionalityExplanation
Multiple Price listsThe possibility to define multiple price listings for customer specific prices.
B2B Partners as OrganizationsYou can assign a Partner template which should be used in case a partner will be created for this sales channel as organization.

Item management

FunctionalityExplanation
Item categories assignmentsItem assignment is an element in the categories and represents an item-to category assignment.
Item categories import (Batch)Import categories from the external system to the ERP.
Item categories export (Batch)Export categories from the ERP to the external system.
Category meta dataRelation between a category of the sales channel and meta data
Cockpit: Sales channel item categoriesApplication presents a quick view of all category trees that meet given conditions (e.g. properties of category and item nodes, use by sales channels).
Item acceptance (Batch)With this batch the item data, which was created in CEE or imported from external sources, is accepted for sales channel processing.
Item export (Batch)Batch allows to export item data to a Sales Channel.
Item characteristicsItem characteristics are used to describe specific features of items.
Cockpit: Item characteristics statusIn this application the status of item characteristics for categories can be easily reviewed. Any missing mandatory or required characteristics are indicated, and for each item it is displayed how many characteristics are assigned.
Item relations: variant itemsAllows to define relations of variant items type.
Item relations: cross sellingAllows to define relations of cross selling type.
Item relations: upsellingWith this application, it is possible to various kind of relations (upselling) between items
Item relations: alternative itemWith this application, it is possible to various kind of relations (alternative item) between items
Item media assignmentsAn assignment between a Sales Item and Media.
Exported Item types: materialAllows to export material type of item to a Sales Channel.
Exported Item types: serviceAllows to export service items to a Sales Channel.
Exported Item types: kitAllows to export items of kit type to a Sales Channel.

Price management

FunctionalityExplanation
Single pricesThe price is the exchange value of an item in monetary units. The price is expressed in a currency and per unit of measure. Prices can be recorded in the system for items and assigned in vouchers.
Scale pricesThe scale indicates the lower limit above which the price component is used for price determination.
Price origin: Manual (from sales channel)The price of each line item is provided by the sales channel (the external system).
Price list export (Batch)Allows to export price list to a sales channel.

Warehouse management

FunctionalityExplanation
Availability exportAllows to recalculate the availability of items for a sales channel.
Cockpit: Item availabilityApplication presents a quick view of all items in sales channels that meet given conditions (e.g. inventory management settings, warehouse organization and category).
Warehouse delivery assignmentsApplication used to define rules for the determination of delivery warehouse in imported sales orders.

Sales order management

FunctionalityExplanation
Sales order importAllows to import Sales orders from Sales Channel to CEE along with customer data.
Sales order changes exportAllows to export changes on the Sales order to a Sales Channel.
Prepayment sales ordersAdapter supports prepayment sales orders.
Time delay for sales order importYou can set the time delay after which the sales order will be imported to a CEE.

Customizing

The Magento adapter function allows to activate or deactivate the Magento adapter App on the OLTP database. If the function is deactivated, it is not possible to define new sales channels using the Magento adapter.

Czy ten artykuł był pomocny?