We successfully released “Softone ERP add-on for Magento integration with automatic synchronization of data”.
We added:
- add automatic synchronization of items from Softone to Magento
- add automatic synchronization of orders from Magento to Softone
- use Magento hooks
- use message queue
- use service broker
- add API to listen for sync events
- sends a notification to Softone user that order x has been imported from Magento
The solution requires the following:
- Softone
- SQL Server 2008 minimum
- Magento 2.4 with rest api activated and Webhook free Extension
- Windows Server
- DypS1MagentoIntegration – windows service installed on S1 Windows server
The solution uses the following mechanism:
S1 -> Magento
- when adding/modifying an article or modifying the stock of an article (through a document with an effect on the stock, such as nir, transfer, etc.) in S1 a stack of messages will be populated with article id, timestamp, unclaimed status.
- the message stack will inform DypS1MagentoIntegration that it has an item to send in Magento
- DypS1MagentoIntegration asynchronously reads the stack and processes what it hasn’t yet processed – reads the
item from S1, sends it to Magento and deletes from the queue - If DypS1MagentoIntegration is unreachable, when it becomes reachable it will process the unprocessed messages in the queue
Magento -> S1
- the webhook was configured as follows:
- when creating an order in Magento, a webhook is triggered when its status is X
- webhook calls DypS1MagentoIntegration web service and logs the result. If necessary (error) the command can be retransmitted
- DypS1MagentoIntegration takes the order from Magento, adds it to S1 and sends a notification to the user that order x has been imported from Magento
- If DypS1MagentoIntegration is unreachable, the webhook can send a warning email to the user that order x has been imported from Magento.
Advantages of the current version:
- DypS1MagentoIntegration takes the order from Magento, adds it to S1 and sends a notification
- real-time synchronization of orders from Magento to Softone without user intervention
- user notification when an order is imported from magento to softone
Both flows are shown in the diagram below.
We also successfully developed:
Take a look at our integration services and projects.
DypS1MagentoIntegration Softone ERP addon
Integrate Softone ERP with Magento platform
Dependencies
- Softone ERP
- .NET Framework 4.6.1
- Newtonsoft.Json 12.0.3
- RestSharp 106.11.4
- log4net 2.0.8
- Dyp.Integration.Magento2 1.0.2
Installing
- Copy DypS1MagentoIntegration.dll, Dyp.Integration.Magento2.dll, RestSharp.dll, Newtonsoft.Json.dll log4net.dll to Softone ERP installation folder
- Create a menu entry of type DllForm with action .DypS1MagentoIntegration.dll;Softone2MagentoForm with name Dyp - Sync Softone Magento
Using
- Open Dyp - Sync Softone Magento from Softone menu
- To synchronize items from Softone to Magento, select "Start Date" and "End date" from the user interface and push the "Export items" button. Items created or updated between chosed dates will be created or updated in Magento.
- To import Orders from Magento to Softone, select "Start Date" and "End date" from the user interface and push the "Import orders" button. The orders created between selected dates will be imported in Softone. If the order doesn't exists in Softone, will be created, else will be ignored.
- The operations is logged in Log section in user interface. The log is also saved in Softone ERP installation folder with name DypS1MagentoIntegration*.log
- For automatic synchronization, magento hooks, message queue and service broker need to be configured
Uninstalling
- Remove menu entry Dyp - Sync Softone Magento created on install
- Delete DypS1MagentoIntegration.dll, Dyp.Integration.Magento2.dll, RestSharp.dll, Newtonsoft.Json.dll log4net.dll from Softone ERP installation folder
Authors
- Dragos Jarca dragos.jarca@dynamicpuzzle.ro
License
This project is licensed under the Dynamic Puzzle License.
Changelog
All notable changes to DypS1MagentoIntegration project will be documented in this file.
[1.0.5.0] - 2023-03-01
Added
- add function for lichidation of old products that is out of stock
- child product are created active
- corrected link of child; childs are linked on update too
- corrected photo content
- add possibility to sync only one family of products, one order
- use stored procedures
- add indexes
- configure rolling log by date
- corrected change of category
[1.0.4.0] - 2023-01-23
Added
- add automatic synchronization of items from Softone and Magento
- add automatic synchronization of orders from Magento to Softone
- use Magento hooks
- use message queue
- use service broker
- add API to listen for sync events
[1.0.3.7] - 2021-09-20
Added
- add tool for customer verification
- add log for find customer order
[1.0.3.6] - 2021-08-19
Added
- treat pending_payment order status
[1.0.3] - 2021-05-14
Added
- add import for configurable products
- link simple products to configurable products
- autocreate product categories when importing products
- add more custom attributes
- create custom attributes values when importing products
- treat configurable products at import order
- map Magento RegionCode to Softone DISTRICT
- prepared for Magento multi source inventory
- prepared for multi price import
- create split orders
- correct seting media type
- treat inexisting category
- add last payment transaction id to imported order comment
[1.0.2] - 2020-06-24
Added
- add possibility to run from command line, so the integration can be automatized
- search and create customer uppercase
[1.0.1] - 2020-06-15
Added
- add category management
- extend items attributes imported from Softone ERP to Magento
- import item stock from Softone to Magento
- add sales person when import orders from Magento to Softone ERP
[1.0.0] - 2020-02-17
Initial release
Added
- import items and prices from Softone ERP to Magento
- import customers from Magento to Softone ERP
- import orders from Magento to Softone ERP