Extensions Approval Requirements


As Akeneo and our Akeneo App Store continue to grow thanks to you, it has become increasingly important for us to review the submission process for new extensions in an effort to maintain the quality standards that Akeneo users are expecting. By doing this, we will make sure that our Akeneo App Store remains a valuable resource for the Akeneo Community.

The requirements to submit an extension (an App, a Connector or a Bundle) on Akeneo App Store are listed below.

Your extension will not be approved to go live on the Akeneo App Store in case it doesn’t meet with any of these criteria.

The listing of your extension must have an exhaustive description, versioning information, and a few screenshots.

The more complete the description of your extension is, the more likely Akeneo users will install and use it. Akeneo PIM is about delivering a compelling product experience, so that should also apply to the Akeneo App Store. A few screenshots will also help the end-users to understand what your extension looks like, where is it hosted and if it is easy-to-use or dedicated to people with a technical background.

The page of your extension must come with documentation (installation, configuration and/or user guide) even if they are not open-source.

Same as for the description, we expect our users to be as autonomous as possible to get the most out of your extensions. Any step-by-step guide you can provide to accompany the release of your contribution on Akeneo App Store will enhance the experience of our Community on Akeneo PIM. This documentation should either be an install guide, or a user guide to go through all features. This documentation will also significantly reduce your workload for support.

You must provide a main point of contact in case Akeneo teams need to reach out to you for functional or technical questions about your contribution.

As much as we’d like to know how your extensions work, sometimes Akeneo teams are not sure to have the proper answer to a specific question. We need to be able to contact someone in your team who could assist us in providing our users with the right answers.

Any new extension must provide incremental value compared to what is already available in Akeneo or Akeneo ecosystem. Duplicates will not be accepted.

As the Akeneo ecosystem continues to grow, we want to continue delivering quality solutions that our users are looking for. Make sure that the extension you are about to submit doesn’t exist yet on Akeneo App Store, and provides additional features to what’s already available.

Functional tests have been performed on your contribution before submission to confirm it actually works with an Akeneo PIM instance.

Before we approve your extension on Akeneo App Store, we will check whether you performed functional tests or not. These tests will ensure that your extension is ready to install in a PIM environment, either on-premises or in the Cloud. If your extension is interfaced within the PIM, we may ask you for a copy of your extension to conduct additional tests.

You are able to demonstrate your contribution to Akeneo App Store team, through a live demo or a video hosted on a streaming platform.

Although it won’t be asked during the submission process, you should be able to demonstrate how your extensions work, at least once, to the Akeneo team. Frequently we advise Akeneo users to utilize Akeneo App Store contributions to enhance their experience, or simply to answer their use cases. A live demo or a video demonstration (e.g. a webinar) is always helpful in that regard. Feel free to add a video URL to the description of your extension ; it will also benefit to the community.

Please note these criteria don’t apply to Coming Soon pages.

Recommended tests

Quality is a MUST and we urge you to run as many tests as possible to ensure your extensions and add-ons work well for any kind of product catalog.

Although we do not certify extensions on the Akeneo App Store, Akeneo teams will always expect  extensions that are durable, performant and scalable.


Code quality tests

Confirm that you are  using the right coding conventions?

Make sure you take advantage of online tools, such as PHPCheckstyle for those who are  using PHP language. To check if your code has common programming flaws like unused variables, empty cache blocks or unnecessary object creation, you could also rely on PMD to improve your developments.

These tests will be particularly important if your extension aims to be open-source, as it will help others to contribute.


Unit tests

Each menu and each feature of your extensions should work properly in a PIM environment.

Tools like PHPunit or PHPSpec will help you conduct unit tests to confirm it does.


Functional tests

Functional tests should be conducted based on the user stories you have defined during the scoping of your extension.


Scalability and Performance tests

Thanks to Akeneo PIM capabilities, our users can scale their activity and centralize hundreds, thousands, up to millions of products. Running scalability tests will challenge the performance of your extension for large amounts of data, and will help to identify potential ways to improve it.


Happy with the results of your tests? Share them with the Community, or write us at apps@akeneo.com so we can tell Akeneo teams.

Maintenance and Support

Maintenance and support are two of the most frequently asked questions by our Enterprise users for extensions.

When you have a business to run, it is normal to believe that the extensions available on Akeneo App Store support the latest Akeneo releases and that someone will answer your calls in case the extension doesn’t work properly.

Although offering Maintenance and Support is not required for us to approve your extension on the Akeneo App Store, we hope you will allocate sufficient resources to deliver a good customer experience to the users of your extensions.

To decrease the amount of workload necessary each time Akeneo releases a new version of the PIM, we strongly advise you to develop your extensions using Akeneo REST API, whose code will never change. To know more about our API, please visit this page.