The Datapel MagentoLink provides a method for automatically downloading sales and uploading customers/stock levels to a Magento based eCommerce website.
Communication to the Magento Site is done via WebServices (not FTP or file transfer). This means that all scheduling and control of the upload and download can be managed from the local WMS server. Like the FTP based integration we use scheduled tasks to trigger the actions of the MagentoLink module.
There are two modes of operation: Download and Upload of Sale Order information.
In this mode the MagentoLink will request orders from the Magento site of a particular status (in our case PENDING). The status of the ORDER indicates that it has not been downloaded - as soon as the MagentoLink reads the complete order from the website it will UPDATE the statue to either INPROGRESS, or PROCESSING; this status is dependent on the customer setup. In either case it indicates to the MagentoLink that this order has been retrieved from the site.
Once the order is read - the various attributes from the configuration file are used to MAP the Magento Sale to a WMS XML sale order file. This file is placed in the usual import queue folder. In most cases once the MagentoLink has completed the download an additional command line of WMS.EXE /import_transactions is used to immediately consume the XML order files. This task is usually performed every 30 minutes.
The configuration file for magento link MUST BE set to match the order status for new orders to download - this is usually, but not always - PROCESSING, you need to run through the creation of a sale order and check using the Magento admin interface the lifecycle of order status to make sure the system is correctly configured otherwise downloading will NOT work.
Uploading Consignment and Status Change
The second action requires a script within WMS to create an status change xml file. On shipping an order the WMS will create a status change XML file that contains shipping information, original transaction reference information and other notes. The xml files (one per order) are matched to the online sale which is then updated to a CLOSED or SHIPPED status. This process usually triggers Magento to send an email to the customer. At this stage there is no way to modify the line items - so if stock is short shipped the order is not changed by WMS in anyway - this is a limitation of the system currently. This task usually performs End Of Day.
In this case the SCRIPT FILE may need modification depending on where the MAGENTO SALE ORDER # is mapped to in the WMS. It will generally be in one of two places - either the WMS Invoice Number or the WMS Purchase Order Number. Again the script must be checked to ensure the correct field is used either: objSale.SalesHead.InvoiceNumber or objSale.SalesHead.PurchaseOrder.
Uploading Customer and Inventory Information
As part of the integration the MagentoLink module can send customer and inventory information to the Magento system from WMS. In both cases this requires the installation and configuration of VIEWS and a DATAPULL node in the PREFS.XML configuration file.
Typically the CUSTOMER update works once a day - after EOD maintenance replication so that new customers created in MYOB will be created in the Magento system as well as in the WMS system. The Datapull schedule can operate every hour or so but needs to be timed so that any upload gets the latest information.
Inventory levels are done every hour or so - again a DATAPULL node must be configured in the PREFS.XML. In this case the datapull should run every 10 minutes. The inventory upload is matched by SKU and if configured website/storeid.