Akeneo Custom Category Attributes Bundle

Akeneo PIM compatibilty
Price: €499.00


The Akeneo Custom Category Attributes Bundle is configured with the global Akeneo configuration file app/config/config.yml where you can define custom category attributes of the following types:

  • Checkbox
  • Text
  • TextArea
  • Choice (Select)

Additionally, you can group the attributes into sections with custom headers, and provide the attributes with custom codes and translatable labels.

Planned features for future versions include:

  • More attribute types
  • Images
  • Localizable attribute values
  • Attribute value validations
  • UI for configuring the provided attributes
  • Attribute permissions

We are happy to assist you with the one-time configuration of the bundle. Visit our website or contact us directly!

Release notes

General information

The current version of this bundle is 2.0 (Release date: 01.07.2019). This version provides the most important functions for the enrichment of your category entity.

The software is consistently being updated according to customer requirements.

It is compatible with both Community and Enterprise Edition.

Changelog for HDNET Akeneo Custom Category Attributes Bundle


  • Add support for Akeneo 3.0 and Akeneo 3.1


  • Initial release


Installation of Akeneo Custom Category Attributes Bundle

  1. Unpack the bundle inside the Akeneo directory:
    cd pim/
    tar xzf category-attributes-bundle-x.y.z.tar.gz
  2. Enable the bundle in app/AppKernel.php in the registerProjectBundles() method:
    protected function registerProjectBundles()
            return [
                new \HDNET\CategoryAttributesBundle\HDNETCategoryAttributesBundle(),
  3. Empty and warmup the cache:
    bin/console cache:clear --env=prod
    bin/console cache:warmup --env=prod
  4. Update the database
    1. First check the changes that would be applied:
      bin/console doctrine:schema:update --dump-sql
      This should print only a single SQL query similar to: ALTER TABLE pim_catalog_category ADD attributes LONGTEXT NOT NULL
    2. Execute the changes on the live database:
      bin/console doctrine:schema:update --force
  5. Configure your category attributes in app/config/config.yml:
                    # The section headers in the category form.
                    title: "Section 1"
                        # These are the internal attribute names that will be used e.g. in exports.
                        # You should only use a-z, A-Z, 0-9, -, and _
                            # Types can be checkbox, text, textarea, or choice
                            type: checkbox
                            # Labels can be specified for each locale. If not set, the attribute name is used.
                                en: "Foo"
                                de: "Fu"
                            # Mark the attribute as required.
                            required: true
                            type: checkbox
                                en: "Bar"
                                de: "Kneipe"
                            required: false
                            type: text
                            default: "Write here"
                            type: textarea
                            type: choice
                                de: Auswahl
                                en: Selection
                            # Options for the "select" type, keys (One, Two) being used as labels.
                                One: 1
                                Two: two
                    title: "Section 2"


REST-API support

Export / GET

To export / GET the custom attributes of a category, simply call GET: {{url}}/api/rest/v1/categories/{code}. This request will respond something like:

    "code": "fashion",
    "parent": "master",
    "labels": {
        "en_US": "Clothing",
        "en_GB": "Clothing",
        "fr_FR": "Vêtements",
        "de_DE": "Kleidung",
        "es_ES": "Ropa",
        "it_IT": "Abbigliamento",
        "nl_NL": "Kleding",
        "pt_PT": "Roupas"
    "attributes": {
        "foo": true,
        "bar": false,
        "text": "Changed via UI",
        "textarea": "This attributes where changed via UI.",
        "select": 1

Import / PATCH

To import / patch the custom attributes of a category, simply call PATCH: {{url}}/api/rest/v1/categories/{code}. The body of the request looks like:

    "code": "entertainment_hobby",
    "attributes": {
        "foo": true,
        "bar": false,
        "text": "Changed via API",
        "textarea": "These attributes where changed via REST API."

CSV / XLSX support


To export the custom attributes of a category, simply use the Category export in CSV/XLSX job profile.
The generated file contains the attribute codes you have defined in your config.yml.


To import the custom attributes of a category, simply use the Category import in CSV/XLSX job profile.
Add the attributes code you have defined in your config.yml, one per column.

List your extension on Akeneo Marketplace

Learn about the best practices to enrich Akeneo ecosystem.

Share your contributions with Akeneo Community any way you want.

Need help? Please read our
submission requirements and manual.