• v5.0
    • Versions
    • master

 

  • Install Akeneo PIM
    • Install Akeneo PIM for development with Docker
    • Install Akeneo PIM manually
      • System Requirements
      • System installation on Debian 10 (Buster)
      • System installation on Ubuntu 18.04 (Bionic Beaver)
      • System installation on Ubuntu 20.04 (Focal Fossa)
      • Installing Akeneo PIM Community Edition (CE)
      • Installing Akeneo PIM Enterprise Edition (EE) with the Archive
      • Setting up the job queue daemon
      • Setting up the Events API
    • How to customize the Dataset
    • How to Add Translation Packs
  • Upgrade Akeneo PIM projects
    • How to apply a patch?
      • How to apply a patch - Community Edition
      • How to apply a patch - Enterprise Edition - Flexibility Cloud offer
      • How to apply a patch - Enterprise Edition - On Premise offer
    • Where is the Changelog?
    • How to upgrade to a minor version?
    • How to upgrade to a major version?
      • Upgrade from 3.2 to 4.0
      • Upgrade from 4.0 to 5.0
  • Import and Export data
    • How import works
    • Understanding the Product Import
    • Understanding the Product Export
    • Formats
      • Localized labels
      • Scopable labels
      • Association types data structure
      • Attribute data structure
      • Category data structure
      • Family data structure
      • Family variant data structure
      • Group data structure
      • Options data structure
      • Product data structure
      • Product model data structure
    • Akeneo Connectors
    • How to Customize Import / Export
      • How to create a new Connector
      • How to import Products from a XML file
      • How to clean a CSV file during a Product import
      • How to automate imports/exports
  • Manipulate the Akeneo PIM data
    • How to Customize Mass Edit Operations
      • How to register a new bulk action
      • How to Register a New Mass Edit Action on Products
    • How to Manipulate Products
      • How to Query Products
      • How to Create Products
      • How to Update Products
      • How to Validate Products
      • How to Save Products
      • How to Remove Products
    • How to Manipulate Non-Product Objects
      • How to Query Non-Product Objects
      • How to Create Non-Product Objects
      • How to Update Non-Product Objects
      • How to Validate Non-Product Objects
      • How to Save Non-Product Objects
      • How to Remove Non-Product Objects
    • How to add a custom action rule
      • General information about rule format
      • How to add a custom action in the rule engine
    • How to Define Access Control List
    • How to Customize the Catalog Structure
      • How to Create a Reference Data
    • How To Customize Teamwork Assistant (Enterprise Edition)
      • Customize notifications
      • Add a calculation step
      • How to log calculation step
      • Remove projects impacted by a custom catalog update
    • How to store assets externally
    • How to Configure Measurement Limits
  • Maintain Akeneo PIM projects
    • First aid kit
    • Bug qualification
    • Common issues
    • Scalability Guide
      • Audit with 3 Representative Catalogs
      • More than 10k attributes?
      • More than 10k families?
      • More than 10k categories?
      • More than 500 attributes usable in the product grids?
      • More than 100k products to export?
      • More than 1GB of product media to export?
    • How to purge history
      • How to Purge jobs executions
      • How to adapt the version purger to your needs
  • Contribute to Akeneo PIM
    • How to report an issue?
    • How to translate the user interface?
    • How to enhance the documentation?
    • How to contribute to a Connector?
    • How to submit a patch to the PIM?
    • How to contribute to the frontend part of the application
    • How behavior tests are architectured in the PIM?
      • Establishing Decorator Pattern
      • Using Spin In Behat
  • Use SSO authentication locally
  • Reference Entities
    • Configure Entity Limits
    • Create a new Reference Entity Attribute type
    • Enrich Records with a new Reference Entity Attribute type
    • Add a Custom Property to Your Custom Attribute Type
    • Refresh records completeness
  • Troubleshooting guide
  • Technical overview
    • Product Information
    • Teamwork Assistant (Enterprise Edition)
      • Project creation
      • Project completeness
      • Project Completeness widget
      • Catalog update impact
      • Scalability guide
      • Users permission summary for Behat tests
    • Collaborative workflow
      • Simple workflow
      • Partial workflow
  • Technical architecture
    • Best Practices
      • Create a project
      • Create a reusable bundle
      • Code Conventions
      • Coding Standards
    • How to implement your business logic using the event system
    • Events
      • Storage events
      • Workflow events (Enterprise Edition only)
    • How to Localize your data
      • How to change the PIM locale
      • How to Use Localizers
      • How to use Presenters
    • How to Add a Notification
    • Performances Guide
      • Memory usage of rules execution (Enterprise Edition)
      • Memory leak fix in Rules Engine (ORM)
      • More than 100 WYSIWYG editors in a page
      • PHP7 and HHVM Compatibility?
      • Job product batch size
    • How to Use the Web REST API
    • Standard format
      • Products
      • Other entities
      • Usage
    • Application Technical Information
      • Application Technical Dependencies
      • Server side set up for hosting
      • System Requirements
      • Recommended configuration
      • Client side configuration and compatibilities
      • Operation processes
      • Flow Matrix
  • Akeneo Cloud Edition
    • Flexibility
      • Environment accesses
      • System Administration & Services Management
      • Periodic tasks & Crontab configuration
      • Composer settings
      • Queue Management & Workers
      • Disk Usage Management
    • Serenity
  • Akeneo Onboarder
    • Prerequisites
    • How to install the Onboarder bundle
    • Synchronization
    • How to update a minor version or to apply a patch
      • How to update the Onboarder bundle - Enterprise Edition - Flexibility Cloud offer
      • How to update the Onboarder bundle - Enterprise Edition - On Premise offer
    • How to upgrade to a major version
    • Troubleshooting
    • How to uninstall the Onboarder bundle
    • Environment variables
      • Using the DotEnv file
      • Using environment variables

Other entities¶

Attribute¶

array:26 [
  "code" => "a_date"
  "type" => "pim_catalog_date"
  "labels" => array:1 [
    "en_US" => "A date"
    "fr_FR" => "Une date"
  ]
  "group" => "other"
  "unique" => false
  "useable_as_grid_filter" => false
  "allowed_extensions" => []
  "metric_family" => null
  "default_metric_unit" => null
  "reference_data_name" => null
  "available_locales" => array:1 [
    0 => "en_US"
  ]
  "max_characters" => null
  "validation_rule" => null
  "validation_regexp" => null
  "wysiwyg_enabled" => false
  "number_min" => null
  "number_max" => null
  "decimals_allowed" => false
  "negative_allowed" => false
  "date_min" => "2016-09-01T00:00:00+0200"
  "date_max" => "2016-09-30T00:00:00+0200"
  "max_file_size" => null
  "minimum_input_length" => 0
  "sort_order" => 0
  "localizable" => true
  "scopable" => false
]

type

data structure

data example

notes

code

string

"a_date"

it’s the identifier of the attribute

type

string

"pim_catalog_date"

labels

string[]

["en_US" => "A date", "fr_FR" => "Une date"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

group

string

"other"

it represents the code of the object
Akeneo\Pim\Enrichment\Component\Category\Model\GroupInterface

unique

boolean

false

useable_as_grid_filter

boolean

true

allowed_extensions

string[]

[0 => "pdf", 1 => "doc"]

List of extensions

metric_family

string

"Power"

it represents the constant FAMILY in classes of
Akeneo/Bundle/MeasureBundle/Family/

default_metric_unit

string

"watt"

it represents one of the constant in classes of
Akeneo/Bundle/MeasureBundle/Family/, except FAMILY

reference_data_name

string

"color"

it represents the code of the object
Akeneo\Pim\Enrichment\Component\Product\Model\ReferenceDataInterface

available_locales

string[]

[0 => "en_US", 1 => "fr_FR"]

only for locale specific. If the array is empty, locale specific
is false. Each element of the array represents the code of the
object Akeneo\Channel\Component\Model\LocaleInterface

max_characters

integer

255

validation_rule

string

"email"

validation_regexp

string

"[0-9]"

wysiwyg_enabled

boolean

false

number_min

string

"10"

number_max

string

"25"

decimals_allowed

boolean

true

negative_allowed

boolean

false

date_min

string

"2016-09-01T00:00:00+0200"

formatted to ISO-8601 (see above)

date_max

string

"2016-09-01T00:00:00+0200"

formatted to ISO-8601 (see above)

max_file_size

string

"255.00"

limit in MB

minimum_input_length

integer

2

sort_order

integer

0

localizable

boolean

false

scopable

boolean

false

Enterprise edition

On Enterprise edition, attribute is overridden to add:

array:27 [
  ...
  "is_read_only" => false
]

type

data structure

data example

is_read_only

boolean

true

Attribute Option¶

array:4 [
  "code" => "option_a"
  "attribute" => "a_simple_select"
  "sort_order" => 1
  "labels" => array:1 [
    "en_US" => "A option"
  ]
]

type

data structure

data example

notes

code

string

"option_a"

it’s the identifier of the attribute option

attribute

string

"a_simple_select"

the element represents the code of the
Akeneo\Pim\Structure\Component\Model\AttributeInterface

sort_order

integer

0

labels

string[]

["en_US" => "A option"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

Association Type¶

array:2 [
  "code" => "X_SELL"
  "labels" => array:2 [
    "en_US" => "Cross sell"
    "fr_FR" => "Vente croisée"
  ],
  "is_two_way" => false,
  "is_quantified" => false
]

type

data structure

data example

notes

code

string

"X_SELL"

it’s the identifier of the association type

labels

string[]

["en_US" => "Croll sell"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

is_two_way

boolean

true

When true, the association is a two-way association

is_quantified

boolean

false

When true, the association is a quantified association

Attribute Group¶

array:4 [
  "code" => "other"
  "sort_order" => 100
  "attributes" => array:19 [
    0 => "sku"
    1 => "a_date"
    2 => "a_file"
    3 => "an_image"
    4 => "a_metric"
    5 => "a_multi_select"
    6 => "a_number_float"
    7 => "a_number_float_negative"
    8 => "a_number_integer"
    9 => "a_price"
    10 => "a_ref_data_multi_select"
    11 => "a_ref_data_simple_select"
    12 => "a_simple_select"
    13 => "a_text"
    14 => "a_text_area"
    15 => "a_yes_no"
    16 => "a_localizable_image"
    17 => "a_scopable_price_with_decimal"
    18 => "a_localized_and_scopable_text_area"
  ]
  "labels" => array:2 [
    "en_US" => "Other"
    "fr_FR" => "Autre"
  ]
]

type

data structure

data example

notes

code

string

"other"

it’s the identifier of the attribute group

sort_order

integer

0

attributes

string[]

[0 => "sku", 1 => "a_date"]

each element of the array represents the code of the
Akeneo\Pim\Structure\Component\Model\AttributeInterface.
Order is defined by property sortOrder in AttributeInterface

labels

string[]

["en_US" => "Other", "fr_FR" => "Autre"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

Category¶

array:3 [
  "code" => "winter"
  "parent" => "master"
  "labels" => array:1 [
    "en_US" => "Winter",
    "fr_FR" => "Hiver"
  ]
]

type

data structure

data example

notes

code

string

"other"

it’s the identifier of the category

parent

string[]

[0 => "sku", 1 => "a_date"]

it represents the code of the object
Akeneo\Tool\Component\Classification\Model\CategoryInterface

labels

string[]

["en_US" => "Winter", "fr_FR" => "Hiver"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

Channel¶

array:6 [
  "code" => "tablet"
  "labels" => [
    "en_US" => "Tablet"
    "fr_FR" => "Tablette"
  ]
  "currencies" => array:1 [
    0 => "USD"
  ]
  "locales" => array:1 [
    0 => "en_US"
  ]
  "category_tree" => "master"
  "conversion_units" => array:2 [
    "a_metric" => "KILOWATT"
    "a_metric_negative" => "CELSIUS"
]

type

data structure

data example

notes

code

string

"ecommerce"

it’s the identifier of the channel

labels

string[]

["en_US" => "Tablet", "fr_FR" => "Tablette"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

currencies

string[]

[0 => "USD", "1 => "EUR"]

each element of the array represents the code of the
Akeneo\Channel\Component\Model\CurrencyInterface

locales

string[]

[0 => "sku", 1 => "a_date"]

each element of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

category_tree

string

"master"

only root category. It represents the code of the object
Akeneo\Tool\Component\Classification\Model\CategoryInterface

conversion_units

string[]

keys of each element of the array represent the code of the
Akeneo\Pim\Structure\Component\Model\AttributeInterface.
Values of each element of the array represent one of the constant
in classes of Akeneo/Bundle/MeasureBundle/Family/, except FAMILY

Currency¶

array:2 [
  "code" => "USD"
  "enabled" => true
]

type

data structure

data example

notes

code

string

"USD"

it’s the identifier of the currency

enabled

boolean

false

Family¶

array:6 [
  "code" => "my_family"
  "labels" => array:1 [
    "en_US" => "My family"
  ]
  "attributes" => array:4 [
    0 => "a_number_float"
    1 => "a_price"
    2 => "a_picture"
    3 => "sku"
  ]
  "attribute_as_label" => "sku"
  "attribute_as_image" => "a_picture"
  "attribute_requirements" => array:1 [
    "ecommerce" => array:2 [
      0 => "a_price"
      1 => "sku"
    ]
  ]
]

type

data structure

data example

notes

code

string

"my_family"

it’s the identifier of the family

labels

string[]

["en_US" => "My family"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

attributes

string[]

[0 => "sku"]

each element of the array represents the code of the
Akeneo\Pim\Structure\Component\Model\AttributeInterface

attribute_as_label

string

"sku"

it represents the code of the object
Akeneo\Pim\Structure\Component\Model\AttributeInterface

attribute_as_image

string

"a_picture"

it represents the code of the object
Akeneo\Pim\Structure\Component\Model\AttributeInterface. Can be null.

attribute_requirements

array

["ecommerce" => [0 => "sku", "a_text_area"], "tablet" => [0 => "sku"]]

each element of the array represents the code of the
Akeneo\Pim\Structure\Component\Model\AttributeInterface

Group¶

array:3 [
  "code" => "my_group"
  "type" => "RELATED"
  "labels" => array:1 [
    "en_US" => "My group"
  ]
]

type

data structure

data example

notes

code

string

"my_group"

it’s the identifier of the group

type

string

"RELATED"

labels

array

["en_US" => "My group"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

Group Type¶

array:3 [
  "code" => "VARIANT"
  "is_variant" => true
  "labels" => array:1 [
    "en_US" => "Variant type"
  ]
]

type

data structure

data example

notes

code

string

"VARIANT"

it’s the identifier of the group type

is_variant

boolean

false

labels

array

["en_US" => "Variant type"]

each key of the array represents the code of the
Akeneo\Channel\Component\Model\LocaleInterface

Locale¶

array:2 [
  "code" => "en_US"
  "enabled" => true
]

type

data structure

data example

notes

code

string

"fr_FR"

it’s the identifier of the locale

enabled

boolean

false

Rule (Enterprise Edition)¶

array:5 => [
  "code" => "my_rule"
  "type" => "product"
  "priority" => 0
  "conditions" => array:1 [
     0 => array:3 [
       "field" => "a_name"
       "operator" => "contains"
       "value" => "description"
     ]
  ]
  "actions" => array:1 [
    0 => array:3 [
      "type" => "set"
      "field" => "a_text_area"
      "value" => "the new description"
    ]
  ]
]

type

data structure

data example

notes

code

string

"my_rule"

it’s the identifier of the rule

type

string

"product"

it represents the type of the object
Akeneo\Bundle\Tool\RuleEngineBundle\Model\RuleDefinitionInterface

priority

integer

100

conditions

array

[0 => ["field" => "a_name", "operator" => "contains", "value" => "description"],
1 =>["field" => "a_text", "operator" => "!=", "value" => "name"]]
each element of the array represents a condition for
Akeneo\Pim\Enrichment\Component\Product\Query\ProductQueryBuilderInterface

actions

array

"product"

each element of the array represents the action to apply when
condition is fulfilled

Usage¶

The standard format is used to:

  • import data

  • export data

  • update objects in memory (imports, PEF for products, Mass Edit)

  • define the data expected in the Akeneo\Pim\Enrichment\Component\Product\Query\ProductQueryBuilderInterface filters

  • store variant groups values

  • store draft changes (EE)


Found a typo or a hole in the documentation and feel like contributing?
Join us on Github!