Skip to main content

Fetching Categories from Akeneo

  • In Alumio, go to “Integrations → Incoming → Akeneo - Fetch - Categories”.
  • To get all categories from the Akeneo system, use an Incoming “Akeneo - Fetch - Categories”.
Image
This incoming will create a task inside Alumio with data structured as Alumio base categories. There some transformer inside this Incoming before processing the category.
  1. Akeneo - Prepare convert category - Labels - To localizations.
  2. Akeneo - Convert - Category - To Alumio Base.
  3. Akeneo - Filter - Category.
Akeneo - Prepare convert category - Labels - To localizations This transformer converts label data from Akeneo. An example of the Akeneo labels:
{
  "labels": {
    "de_DE": "E-commerce",
    "en_GB": "E-commerce",
    "en_US": "E-commerce",
    "es_ES": "E-commerce",
    "fr_FR": "E-commerce",
    "it_IT": "E-commerce",
    "nl_NL": "E-commerce",
    "pt_PT": "E-commerce"
  }
}
Since the current data structure is incompatible with Shopware, the transformer “Akeneo - Convert - Category - To Alumio Base” is used to convert it into a compatible format.
{
  "localizations": [
    {
      "localeCode": "de_DE",
      "translation": "E-commerce"
    },
    {
      "localeCode": "en_GB",
      "translation": "E-commerce"
    },
    {
      "localeCode": "en_US",
      "translation": "E-commerce"
    },
    ....
  ]
}
Akeneo - Convert - Category - To Alumio Base. This is the transformer that converts the entire category data into Alumio Base data. An example of the Alumio base category:
{
  "code": "master",
  "parent": null,
  "localizations": [
    {
      "localeCode": "de_DE",
      "translation": "E-commerce"
    },
    {
      "localeCode": "en_GB",
      "translation": "E-commerce"
    },
    {
      "localeCode": "en_US",
      "translation": "E-commerce"
    },
    {
      "localeCode": "es_ES",
      "translation": "E-commerce"
    },
    ...
  ]
}
Akeneo - Filter - Category
  • Use this transformer to filter previously created tasks into task categories to avoid duplication.
Image
  • To recreate a task, you should remove the entity from the storage “Akeneo - Filter - Categories”.

Sending Categories to Shopware

The task that was created through Incoming “Akeneo - Fetch - Categories” will then be processed further by the Route “Synchronize Categories - From Akeneo into Shopware” and will be sent using this Outgoing. This Outgoing will transform the Alumio Base Categories into Shopware one and check to create or to update the category with the data from this outgoing’s previous iteration. The sending in the Outgoing will be processed by the transformer:
  1. Shopware - Prepare convert - Translations from Alumio Base
  2. Shopware - Prepare convert - Category - Parent from Alumio Base Category.
  3. Shopware - Convert - Category from Alumio Base Category
  4. Shopware - Check and send - Category.
Shopware - Prepare convert - Translations from Alumio Base
This transformer will create Shopware translations from Alumio localization.
Shopware - Prepare convert - Category from Alumio Base Category
This transformer will check the parent and map it into the Shopware ID.
Shopware - Convert - Category - from Alumio Base Category
This transformer will finally convert the Category from Alumio Base into Shopware.
Shopware - Check and send - Category
  • This transformer will check the current Shopware category ID from the previous iteration of this transformer to determine whether we need to create or update the category in the Shopware System.
  • An example of a creation payload will look like this.
{
  "name": "Interior Accessories",
  "active": true,
  "visible": true,
  "external": "interior_accessories",
  "metaTitle": "Interior Accessories",
  "translations": {
    "2fb5fe2e29a4d70aa5854ce7ce3e20b": {
      "name": "Interior Accessories",
      "metaTitle": "Interior Accessories",
      "shopId": "1"
    }
  },
  "parentId": "019ae36535417124bf220aa84f54064b"
}

Automatic Categories Synchronization Setup

  • Go to “Integrations → Schedulers → Akeneo - Fetch Categories”.
    Image
  • Set a schedule expression and enable the configuration.
  • Go to “Integrations → Schedulers → Shopware - Send - Categories”.
    Image
  • Set a schedule expression and enable the configuration.