Connector Overview

The Connector works as a go-between that integrates Magento Commerce (MC) and the Order Management System (OMS), digesting and outputting information, like aggregated stock updates, order creation, and shipment and return/refund info, between the disparate systems.

There are several modules—Catalog, Inventory, Sales, and Post-sales—that assist in the communication between, and integration of, MC and OMS.

See OMS Connector architecture to learn more about the specifics of these interactions.

Features

The Connector has myriad features available out-of-the-box for immediate use. Some features and use cases, however, require some integration work to be fully operational. The following grid details availability for commonly used Connector functionalities.

Feature Availability
Auto-registration to API out-of-the-box
Bundle products out-of-the-box
Partial shipment with customizations
Gift cards out-of-the-box
Logistics import out-of-the-box
Multi-location inventory out-of-the-box
Order export out-of-the-box
Partial capture with customizations
Store credit out-of-the-box
Refunds and returns out-of-the-box
Simple/configurable products out-of-the-box
Custom order attributes out-of-the-box
Custom product attributes out-of-the-box
Virtual products out-of-the-box

Disabled or modified functionalities

Out-of-the box, MC provides an implementation for Order Management and Inventory Management tools, which may conflict with implementations existing in the OMS.

Some standard MC functionalities, like shipping and payments methods or return management, are disabled or read-only.

Other standard MC functionalities, such as the addition of an Export full catalog option or the ignoring of default stock values, are simply modified.

See all disabled and modified MC functionalities, as related to the OMS, in Connector architecture.

Stock updates

OMS will inform MC of stock quantities every time there is new information available to be exported. For stock inventory updates, ensure that the messages are consumed in the correct order to avoid inconsistently overwritten values.

If, for instance, the OMS sends a FULL snapshot and a few minutes afterward generates a DELTA update, you must ensure MC is not processing the DELTA update before the FULL snapshot is completed (so that quantities are not overwritten).

In the messages sent to MC for stock updates (FULL and DELTA) a timestamp field is included.

MC has a filter for stock messages, when a new stockUpdateMessage is consumed. The filter:

  • Receives the productId and timestamp from the message.
  • Retrieves the corresponding product entry from cataloginventory_stock_item_update.
  • If message.timestamp < entry.timestamp the message is discarded or the entry is updated with the message.timestamp, and the stockUpdate process continues.

The solution to this scenario is to calculate the timestamp for the full import when it is started, and use it for all the full messages (like a transaction ID). In this case, the DELTA will have a higher timestamp than the FULL, so when the SKU in the FULL tries to be updated the message will be discarded because its timestamp is lower than the last update (DELTA).

Reports

You can see average and historical message time consumed in each of the endpoints consumed by the Connector module in the Connector system report in the Magento Commerce Admin. This report provides visibility to the messages ingested by the Connector that are delivered by the OMS.

Message processing results system report

We use timing information about messages received from the OMS and processed by the Connector as performance measurements to ensure the Connector is processing messages in a desired amount of time. If there is a problem with a specific synchronization flow, for instance, having this information at your fingertips allows you to easily troubleshoot the issue.

See the System Reports user guide for more information.