Easily Import and Export Orders
MageModule Order Import/Export extension is a feature-rich program that can easily import and export orders via CSV file on the Magento 2 e-commerce platform. This module was created by a Magento 2 Certified Professional Developer with intimate knowledge of all aspects of the order system. It can be used from either the admin panel GUI or from Magento's command line interface. It can be used to import or export orders on a cron schedule and is fully equipped to handle multi-store orders in multiple currencies. The end result of importing orders with this extension is an order that is so complete that it is indistinguishable from an order that was placed directly on the site.
The extension was carefully built according to Magento best practices and has been fully vetted by Magento's marketplace quality assurance team. Care has been taken to ensure that other Magento developers can customize the order import/export format with relative ease, according to their clients' needs. Additionally, this extension does more than just import or export orders. It can also create invoices, credit memos, shipments, customers, payment transactions, and much more.
Customers & Addresses
When importing, one of the first events to occur is the handling of the customer for each individual order. The extension will either match a customer from the CSV file to an existing customer by e-mail address or create the customer if he/she does not exist. To further explain the handling of customers:
- The order data is checked to determine if it is a guest order or a registered user order.
- If the order is a guest order, the customer is neither matched to an account nor is an account created.
- If the order is a registered user order, the extension attempts to match the customer to an existing customer by referencing the e-mail address.
- If the customer does not already exist, the customer account will be created.
- Upon creation of the customer account, the customer will be added to the same website to which the order is associated.
- The customer will then be added to the appropriate customer group if the CSV data includes a customer group ID. If the customer group ID is not included, the customer will be added to the website's default customer group.
- After the customer account is created or matched, the billing and shipping address are added to their account. In order to avoid database clutter and duplicate addresses, the order addresses are compared to each other as well as to any existing addresses on the customer's account and if a match is found, the address is not added.
Products & Order Items
After the customer handling is complete, the module moves on to the importation of order items. All product types, including simple, grouped, configurable, bundle, virtual, and downloadable, can be fully imported. One of the great things about OIE is that products included in the CSV do not need to exist in the website catalog and they will still import to the order completely and properly. Of course, if the order item SKU does match a product SKU from the catalog, the order item and the existing product will be matched to each other.
Order items will import with the proper quantities, tax rates, discounts, row totals and more. Additionally, users can include optional data for each order item such as the quantity invoiced, quantity shipped, quantity backordered, quantity returned, quantity refunded, and quantity canceled. When included in the import, this optional data will ensure that the proper counts show on each item in the order and they will also be used during the creation of invoices, shipments, and creditmemos.
Payments & Transactions
Full payment and transaction information can also be imported. While only minimal payment information is required for a successful import, the inclusion of additional data such as the transaction ID and a matching payment method code can make the order complete enough that a merchant will be able to do an online refund, if necessary. Just as with other parts of this order import extension, payment methods included in the CSV file do not need to exist in the Magento system for a successful import.
Invoice, Credit Memo, & Shipment Creation
When importing orders to the system, users have the option to allow the creation of invoices, credit memos, and shipments. When the configuration options for these entities are set to yes, the extension will further analyze the data and use it accordingly to create them. Here's how it works:
- When an order item contains the qty_invoiced, the quantity specified is what will be invoiced. If the qty_invoiced is not included, then the full qty_ordered will be invoiced.
- To create a credit memo, both options, Create Invoices and Create Credit Memos, must be set to yes. This is because a credit memo cannot be issued for an item that has not been invoiced. The user must include the qty_refunded for any order items that are to appear on the credit memo. Additionally, when the credit memo is created, it does not perform an actual refund, it simply creates the credit memo in the Magento system.
- To create a shipment, the order item must contain the qty_shipped. Tracking numbers cannot yet be imported but this feature will be included in a future update to the extension.
Error & Success Reporting
Whether run from the command line interface or from the admin panel browser interface, MageModule OIE provides detailed and useful error and success messages. The messages will include things such as the number of rows successfully imported and information for any rows that were not imported successfully. When errors are reported, the row number is included in the message to ensure that the customer is able to determine exactly which orders are causing errors. The same exact error/success messages that get displayed in the browser will also report to the terminal when using the CLI commands to import orders. In addition, the user can set a hard limit to the number of allowable errors so that the import can be automatically killed if a high number of errors are occurring.
Command Line and Cron Capabilities
MageModule's Order Import/Export extension has an easy-to-user Command Line Interface(CLI). The CLI commands offer the same configuration options as the admin panel GUI. The CLI can be used to prevent large files from causing execution timeouts or memory shortages. Additionally, the CLI commands can be used in cron jobs to schedule exports and imports of order files.
Just about every single piece of data related to an order can be exported. On average, an order export file contains 250+ columns. The columns include all information related to the store, customer, payment, transactions, billing and shipping information, status history, comments and much more. The data is exported in a manner that is both machine readable and human readable. Additionally, the module is designed to be able to import an exported file without any modification whatsoever. This is especially helpful when exporting data from one instance of Magento and importing it to another, nice and easy.