Skip to content

Akeneo

The Akeneo app adds a field type for selecting products from a connected Akeneo product information management (PIM) instance and referencing them in Storyblok. The selection is part of the API response, including the stock keeping unit (SKU) and product ID you need for further Akeneo API calls.

  • Select products through a modal with filters.
  • Filter by channel, category, locale, and currency.
  • Read the selected product data, including SKU and product ID, from the API response.

In Akeneo, open Connect → Connection Settings → Create. Complete the form with Flow type set to Data destination, then note the following values from the Credentials section:

  • URL of the connection, as it appears in the browser address bar
  • Client ID
  • Client secret
  • Username
  • Password

In Storyblok, add a field of type Plugin to a block in the Block Library and set the custom type to sb-akeneo. Open a story and enter the Akeneo credentials in the field.

To add products, open the product selection modal from the field, filter and select products, and load them into the story.

After you save or publish the story, the field value in the story JSON has the following structure:

{
"items": [
{
"id": "d893b2c0-2c6c-4f6b-bfd3-2738b8fcac2d",
"sku": "8877886635365",
"name": [
{
"data": "Storyblok T-Shirt DE",
"scope": null,
"locale": "de_DE",
"attribute_type": "pim_catalog_text",
},
{
"data": "Storyblok T-Shirt UK",
"locale": "en_GB",
},
],
"type": "product",
"image": [/* image objects */],
"price": [
{
"data": [
{
"amount": "20.00",
"currency": "EUR",
},
],
"scope": null,
"locale": null,
"attribute_type": "pim_catalog_price_collection",
},
],
"updatedAt": "2024-11-26T23:23:42.000Z",
"categories": ["3m"],
"description": [
{
"data": "Some description",
"scope": null,
"locale": "en_GB",
"attribute_type": "pim_catalog_textarea",
},
],
},
],
"plugin": "sb-akeneo",
}

Was this page helpful?

What went wrong?

This site uses reCAPTCHA and Google's Privacy Policy (opens in a new window).Terms of Service (opens in a new window) apply.