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.
Leave Us a Review for Order Import/Export
## [1.4.3] - 2021-03-04
- Calculation error which causes creditmemos to be created even when they shouldn't be
## [1.4.2] - 2020-11-24
- Fixed issue where exception is thrown when creating credit memo for configurable product and simple_sku is not defined
## [1.4.1] - 2020-07-17
- Changed the way that invoices and orders are saved simultaneously to better match native Magento process
- Added a default value of 1 for base_to_global_rate that applies whenever the value is missing from the import CSV or if that value cannot be calculated based on the imported data
- Added table to store import/export config settings and removed them from the core_config_data table
- Removed all instances of SerializerInterface and getSerializer() to keep module backwards compatible
## [1.3.4] - 2019-08-01
- Added context class to avoid using a constructor in the AbstractConfig class
- Fixed issue in which non-existent payment methods would throw an exception and prevent import
- Fixed issue in which default values in config.xml were serialized instead of json encoded
## [1.3.3] - 2019-07-22
- Changed uses of PHP's native serialize/unserialize functions to the methods used by Magento's SerializerInterface
## [1.3.2] - 2019-07-22
- Fixed issue in which if a status history was being imported with a pre-existing entity_id, the history/comments wouldn't import
## [1.3.1] - 2019-03-21
- Changed error messaging to be more verbose so that when there is an error or items missing from a CSV file, the solution will be more obvious
## [1.2.9] - 2019-03-16
- Added functionality so that invoices created by the extension use the order's date and the created at/updated at dates instead of using today's date
- Added functionality so that credit memos created by the extension use the order's date and the created at/updated at dates instead of using today's date
- Added functionality so that shipments created by the extension use the order's date and the created at/updated at dates instead of using today's date
## [1.2.8] - 2019-03-13
- Added feature to ban specific observers when importing orders. This fixes an issue in Magento 2.3 in which an exception is thrown when creating a shipment including any products that do not exist in the catalog
## [1.2.5] - 2018-11-02
- Updated the invoice creation functionality to ensure that coupon codes and discounts are properly recorded as part of the invoice
## [1.2.4] - 2018-10-30
- Updated the item parser class to trim leading/trailing spaces off of item characteristics before parsing
## [1.2.3] - 2018-08-23
- Fixed issue in which the order currency code and base currency code were not always being recorded in the database
- Fixed issue in which the order item qty shipped was not being displayed on the order view screen
- Fixed issue in which the customer group id was not being saved to the order
## [1.2.2] - 2018-08-21
- Fixed issue in which a malformed or incorrect value in the billing_region, billing_region_id, shipping_region, or shipping_region_id columns would throw a fatal error upon import
## [1.2.1] - 2018-07-05
- Changed CSV-reading strategy to a stream, reading one line at a time to significantly improve memory usage
Reviews: Order Import/Export
Excellent Customer ServiceGreat compan!, quick and friendly customer service, went above and beyond to help us. Thank you!!
Great extension for Migrating a site to MagentoThis extension help me migrate my orders and customers from my old site to Magento 2. Once I correctly built the CSV file the process was smooth. Support was quick to answer my questions and even helped me through some of my blunders.
Great serviceWe had some issues with getting the data imported. We reached out to MageModule and they helped us get it resolved, going above and beyond. Thank you
Easy MigrationHaving done a number of data migrations on a number of different platforms over the years, when I was first tasked with solutioning a migration plan for our old store platform to Magento I was pretty sure it would be a mess. This extension has made the process very simple and easy to execute on without needing to be an expert in Magento.
The developers have been exceedingly responsive to every question I have had so far.
If you need to import orders and related data to Magento this is probably the easiest, simplest approach you could take.
The one area for improvement would be in using a more standard format (JSON / XML) for the related data (Order lines, History, etc).
Made syncing servers a breeze and easy to do!This Magento extension made syncing our v2.1.7 server to v2.3.1 so much easier and was well worth the price. MageModule did the install for us on both servers which made it even easier and I'd highly recommend both the extension and managed installation. Shawn at MM was extremely helpful and was able to get the installs done for us so we could meet our server migration timeline. Takes out all the headache and guess work out of this process. Thanks MageModule.
Worked PerfectI had the product installed and the orders exported from one site to another in about 10 minutes with 0 errors. I would definitely recommend the extension and the company. Will be using in the future.
Works Like a Charm & Excellent Service to Boot!We use this to import orders from a third-party sales platform into our Magento store. It's worked flawlessly since inception. Shawn also assisted with several customizations and is a pleasure to work with.
Perfect extension and supersuperb fast replies!Shawn is a very professional guy, you should see his Linkedin page ;)
There are a lot plugins but we chosen this one cause its approved by magento.
Happy did this cause there was a small issue and sent email, in 10 minutes got email back.
Short said in 3 hours time Shawn solved all issues by releasing a updated version right away with a kind explanation what was the problem, which was not really a problem but a small addon.
So if you have doubts buying this extension for MAgento 2 i would say dont hesitate go for it!
Shawn also helped us providing good information for our store, very great really amazing!