Magento2 generic module for exporting new orders to a 3rd-party service
The extension provides a simple API for exporting new orders to a 3rd-party service. You can use it as a base for your specialised module. By default it exports an order after invoice creation. By default it used RabbitMQ to send the orders asynchronously for smoother experience. This feature can be disabled via backend panel.
To install the extension using Composer use the following commands:
composer require mslwk/module-generic-order-export php bin/magento module:enable MSlwk_GenericOrderExport php bin/magento setup:upgrade
You can download the extension directly from GitHub and
put it inside
app/code/MSlwk/GenericOrderExport directory. Then run the
php bin/magento module:enable MSlwk_GenericOrderExport php bin/magento setup:upgrade
To use this module you are required to do several things. You are strongly advised to create your own module extending contents of this one.
Create your own implementation of the
MSlwk\GenericOrderExport\Api\OrderExportServiceInterfaceresponsible for the actual export process and add a preference to your
<preference for="MSlwk\GenericOrderExport\Api\OrderExportServiceInterface" type="You\YourModel\Model\YourOrderExportService" />
If you don't want to use RabbitMQ to queue the export process go to
Stores -> Configuration -> Sales -> Sales -> Order Export -> Enable async export
If you want to export your orders under different conditions disable the default observer responsible for exporting the orders (
mslwk_order_export_sales_order_invoice_register) via your
etc/events.xml. After that you have to create your own plugin/observer/whatever to export the orders. Go to
If you need a fallback mechanism in case of export failure you have to implement it yourself to reflect your needs.
- Maciej Sławik - https://github.com/maciejslawik
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details