Magento 2.0 Extension Upload Validation Tool

March 21, 2016

Magento 2.0 Extension Upload Validation Tool

In preparation for the Magento Marketplace launch, we’re releasing important tips for creating Magento 2.0 extensions as well as resources to help verify the packaging of extensions prior to submission.

You can find a script here, which you can run against your code to determine if it will pass Magento 2.0 package validation criteria. The current version is a standalone PHP script that takes the Composer package ZIP file(s) on the command line. Errors are reported to the screen. Examples include a missing composer.json file, missing fields in the composer.json file, and more.

More information on the Magento 2.0 extention technical review:

Part of our focus on quality with the new Magento Marketplace is a technical review of extensions before they can be listed on the Marketplace. This technical review consists of the following checks:

  • Valid package type and structure

  • Code does not contain plagiarism

  • Code does not contain malware

  • Code follows Magento Coding Standards

The validation tool ensures that the package submitted can be used to create a customization for the Magento 2.0 platform. It also looks at the structure of the package to make sure it meets the following criteria:

  • Is in zip file format

  • Is no more than 30 MB

  • Is a magento module, magento theme, magento language, or metapackage

  • All contain composer.json and registration.php (metapackage only needs composer.json)

  • composer.json file must be present at the top-level or one-level down of the zip file, with required fields completed

  • Contain etc/module.xml if Magento module

  • Contain theme.xml if Magento theme

  • Contain language.xml if Magento language

  • If the extension consists of a combination of the required components (module, theme or language), each component should be submitted as a separate package

Please provide feedback to

For additional technical information, see Magento developer documentation.