epuzzle / magento2-module-import-export
epuzzle/magento2-module-import-export
This module provides functionality to extend import and export in Magento 2.
Welcome
This module extends the default Adobe Commerce Import / Export functionality, making it easier to manage bulk data
transfers for products, customers, orders, and custom entities.
It provides:
- REST API for import — enabling seamless integration with external systems (ERP, PIM, CRM, marketplaces, etc.).
- CLI command for manual operations — you can run imports directly from the Magento CLI (
bin/magento epuzzle:import-export:csv-import path/to/file.csv). - Batch file processing — large CSV files are automatically split into smaller batches for faster and safer processing.
- Flexible entity support — you can work not only with standard Magento entities, but also with custom ones defined
in your project. - Asynchronous operations — import and export tasks can run in the background, improving stability and reducing timeout issues.
- Developer-friendly integration — designed for developers, store managers, and system integrators who need more control over synchronization processes.
Builds Status
Requirements
Supported Magento 2 versions
| Version | Status | Notes |
|---|---|---|
| Magento Open Source/Adobe Commerce 2.3.* | x | |
| Magento Open Source 2.4.3 | x | |
| Adobe Commerce 2.4.4+ | ✓ | |
| Magento Open Source 2.4.4+ | ✓ |
Documentation
Postman API
Use our ready-to-run Postman collection to explore and test the Import API endpoints.
License
Copyright (c) 2025 ePuzzle contributors.
This module is MIT licensed.
Project coordinator: [email protected]
2.0.0
- Important changes:
- Moved business logic to the model layer
- Added service contracts for importing CSV data:
ImportInterface,ImportResultInterface, etc. - Changed ACL
EPuzzle_ImportExport::csvtoEPuzzle_ImportExport::csv_import - Added security controller to download import reports
- New features:
- Batching CSV files. Available in CLI command and REST API
- Batching large CSV files before import process automatically
- Added unit tests
1.0.0
- New features:
- Import CSV data using rest API
- Import CSV data using CLI command
Requires 3
| Package | Constraint |
|---|---|
| epuzzle/magento2-module-base | ^1.0 |
| epuzzle/magento2-module-file-uploader | ^1.0 |
| magento/framework | * |
Compatibility
Each Magento release line is installed on its supported PHP versions, then the module is built (DI compilation + static-content deploy) and its unit and integration suites are run. The matrix shows the lines and PHP versions the module is confirmed to install and run on. Code-quality results further down (phpstan, phpcs, …) are reported separately and never affect compatibility.
Code Quality
Advisory checks against the module's source. Static analysis runs once across the whole module; PHPStan re-runs per Magento + PHP version because resolvable symbols differ between releases. These NEVER affect the Compatibility badge. A phpcs finding can't make a module incompatible.
Static analysis
Coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity. Each runs once for the whole module.
| Tool | Status | Findings | Summary |
|---|---|---|---|
| PHPCS | Pass | 0 | |
| PHPMD | Warning | 5 | 5 rule violations (ExcessiveMethodLength:2, IfStatementAssignment:1, NPathComplexity:1, UnusedLocalVariable:1) |
| Cpd | Warning | 2 | 2 duplicated chunks spanning 46 total lines (min-lines=5, min-tokens=70) |
| Composer validate | Info | 2 | valid; 2 advisory notes (composer validate --strict) |
PHPStan
Type-checks the module's PHP against a real Magento install at the configured gate level. Re-runs per Magento and PHP version because resolvable symbols differ between releases.
Tests
Unit and integration suites, run for each applicable Magento and PHP version. A test failure speaks to the module's behaviour, not its compatibility with a Magento line, so it is reported here separately and never reddens the compatibility matrix.
Unit tests
Integration tests
| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | ||
| 2.4.8 | N/A | N/A | ||
| 2.4.9 | N/A | N/A |
Security
Security checks run directly against the module: an audit of its declared dependencies for known vulnerabilities (composer audit) and a scan of its source for malware and web-shell signatures. Each runs once. A malware detection fails the version outright.
More from epuzzle
View vendorThis module provides file upload functionality.
N/A
This module provides admin UI for customer prices module
This module provides prices for customers individually. If you want to add product prices for customers you can use this module.
Turn an existing module into recurring revenue.
If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.