For the product status a special export flow was written. Depending on creating or updating a product, this flow will be different. An extra status attribute with code ‘akeneo_status’ will be created in Magento. Even if you don’t have this attribute in Akeneo. This custom ‘akeneo_status’ attribute represents the ‘Akeneo waarde’ on the visuals below. You can change the akeneo_status A - B mapping with an other Akeneo attribute. The meaning of this attribute is that it is possible to have the Akeneo status value into Magento without changing Magento’s product status value itself. Sometimes you don’t want to change the Magento status directly but you still want to have the latest Akeneo status value.
We believe that if it is desirable that Akeneo 1-on-1 controls the Magento status, it is necessary that the price also comes from Akeneo.
In this case, it is mandatory to set up an ‘ab’ mapping between the Magento attribute with code ‘status’ and Akeneo’s status attribute. In addition, a mapping must also be set up between the Magento price attribute and an Akeneo attribute.
In case a status attribute is mapped but there is no ‘price’ mapping available or the product price value is 0 euro, the connector will send 0 euro during product CREATION. The product will then also be created with the status ‘Disabled’. Ofcourse we want to prevent selling products with no price.
The Magento API connector will no longer update the Magento status attribute value as long as no ‘price’ mapping is provided or the value thereof is 0 euros. The same logic goes for the ‘price’ attribute.
For configurable products (related to product models in Akeneo), the logic is as follows:
- If the attributes ‘status’ and ‘price’ exist at the product model level, the same logic applies to the configurable product.
- If specific variations of these attributes exist at the product model level, the same logic also applies.
- However, if the ‘price’ attribute only exists at the lowest (product/SKU) level, and a specific variation of the ‘status’ attribute exists at the product model level, the ‘status’ value at the product model level will always be exported.
Product creation
Product update
When a product will be updated, the connector will check if the product is complete. If the product is not complete, we have a specific flow.
When exporting a product to Magento, the process begins by checking if the completeness filter is enabled. If the filter is not enabled, the product is sent directly to Magento. If the completeness filter is enabled, the next step is to check if the product is marked as complete. If the product is not complete, it is sent to Magento as is. If the product is complete, the system checks whether the product already exists in Magento. If the product does not exist, it is skipped. If the product exists, the workflow then checks if the status is mapped. If the status is not mapped, the product is skipped. If the status is mapped, only the product’s status is updated in Magento. This ensures efficient data management by sending only relevant updates to Magento while skipping unnecessary operations.