7.3.4. Implementation examples

Below are examples of ERP connector implementation in a project where there is communication with many different ERP systems.

Order Export

We export orders to 20 providers. Some of them are using FTP/SFTP to exchange files, some of them are using SOAP or REST or even they want to send the orders via EMAIL.
Also, each provider has a specific set of rules (for example orders should be sent in bundle (one file with multiple orders) or only during the work days.

Figure 234 ERP Connector - Order Export Example

An additional section, “Order Export Configuration” was added to Provider.

INCREMENT FOR EXPORTED ORDERS: The administrator can specify the increment number, to know how many orders were sent to a specific provider.

IS VERIFICATION NEEDED: The administrator can enable/disable additional validation - In this case, Magento sends a request to an external server to check if the file was uploaded correctly and has content.

VERIFICATION CRON SCHEDULERS: The configuration, when validation request should be sent

USED PAYMENT METHOD: In the project, we have different order export configuration, depending on which payment method was selected by the customer in checkout.

BRAND: As in the previous field, there is an option to select a different configuration depending on which brand is assigned to the product

EXPORT STRATEGY: Depending on your provider, orders can be sent as separate requests (or files) or in bundles

CRON SCHEDULERS FOR ORDER EXPORT: Configuration of when and how orders should be sent to an external system

Figure 235 ERP Connector - Order Export Example (part 2)

SENDER ADDRESS: The additional address that is added to the exported order

COMMENT (PROVIDER’S MESSAGE FOR ADMIN): In this field, the administrator can store some information about order export

ADDITIONAL CONFIGURATION: If the provider requires some extra data (for example client_id, specific shipping amount), this section can be used. We can add multiple fields and use them in the order of export file content.

Stock Import

We prepared a logic to import stock data from multiple providers. Some of them send stock information via files on the FTP/SFTP servers, some of them send data in CSV/XML/XLSX files via e-mail.

CONVERT MINIMUM ORDER QTY: During stock import, product quantity is divided by the attribute value set in every product

SAVE IMPORT HISTORY: Allows to save information about imports in the database

DISABLE PRODUCTS THAT NOT EXIST IN FEED: If the product doesn’t exist in the stock import file, it will be disabled

UPDATE ONLY PRODUCTS THAT EXIST IN FEED: Only products that exist in the stock import file will be updated

IF CALCULATED QUANTITY IS > 0, SET STATUS “ENABLED”: If the calculated quantity is bigger than 0, the product status should be set to “Enabled”

SET STOCK STATUS BASED ON VERIFY STOCK QTY: In some cases, stock status should be set to “Out of stock” even if the calculated quantity is > OUT OF STOCK QTY

ADDITIONAL CONFIGURATION: This section allows to set additional data is needed for some providers

CONDITIONS: It allows to set rules, that will be used during the stock import process

CRON SCHEDULERS: Configuration of when and how orders should be sent to an external system

COMMENT (PROVIDER’S MESSAGE FOR ADMIN): In this field, the administrator can store some information about order export

Order Tracking Import

Tracking information is provided by external systems. Magento imports this data, adds it to orders and sends notifications to customers.

IS TRACKING ENABLED: Option to enable/disable tracking import for a specific provider

SAVE IMPORT HISTORY: Allows to save information about imports in the database

CARRIER: Providers use different carriers (for example Post, DHL, UPS) and in this field, the administrator can specify which carrier should be used for the provider

VALIDATE TRACKING NUMBER: In some cases, Magento validates the tracking number

MINIMUM (INVALID) ITEMS COUNT FOR GIVEN PERIOD: Custom validation was implemented, we have information when in a specific time less than X tracking numbers were imported.

MINIMUM DAYS FOR CHECK SINCE DATE CHECK: In this field, the administrator can specify the time, used in the previous field

CRON SCHEDULERS: Configuration of when and how orders should be sent to an external system