Map supplier data into Akeneo. No code.
Your supplier sends a spreadsheet. Akeneo wants a product document with the right family, channel, locale and currency on every value. SDM Portal is the mapping layer in between: you build it once per supplier, and every later file replays the same rules.
- ProtocolAkeneo REST API, /api/rest/v1
- AuthOAuth2 password grant: client ID, secret, username, password
- EditionsCommunity Edition 7 and Serenity, detected at handshake
- StructureFamily
- WritesND-JSON PATCH /products, up to 100 per batch
- Delta syncDocument hash per product
Where an Akeneo supplier feed actually gets stuck
Supplier files are built for humans. Akeneo is built for a schema. Most of the work is the distance between the two, and it comes back with every new file.
Attributes live in families
A supplier column means nothing until you know which family it belongs to. Pick the family and the attribute rail narrows to that family's attributes, in the family's own order.
Every value has a dimension
Akeneo values carry a locale and, for scopable attributes, a channel. A price is a collection with a currency. A metric is an amount plus a unit. Get one of those wrong and the value is refused.
Options are codes, not labels
A select value has to resolve to an existing option code that matches the characters Akeneo accepts. Supplier files send labels like Navy Blue instead.
How SDM Portal writes into Akeneo
You draw the mapping on a canvas. Tricky rules are described in plain language and compiled once into a fixed rule, so runs stay reproducible. Below is what the Akeneo side of that actually does.
Family-scoped mapping
Choose the family and the attribute rail scopes to it, keeping the family's attribute order. The identifier attribute is excluded and a system field named esa_sku is injected instead, so SKU maps like any other column, exactly as it does on Ergonode.
Locale on the edge
Enabled locales come from your instance. Locale is a property of the connection you draw, so three description columns can feed one attribute in three languages. A localizable attribute takes the edge locale; a non-localizable one keeps the first value and warns.
Channel and currency per profile
Publish settings hold the channel and default currency for the profile, offered from your own channels and constrained to that channel's currencies. A scopable value with no channel configured is dropped with a warning. Set this before approval: changing it changes every document hash and forces a full re-push.
Price collections, multi-currency
Currency is also a property of an edge. Several source columns, say price_eur and price_usd, merge into one price collection on one attribute. Mixing edges that carry a currency with edges that do not fails the dry-run instead of guessing.
Metric attributes
A metric value is written as an amount plus the attribute's default metric unit. An attribute without a default unit drops the value and says so, rather than writing a number with no unit.
Option creation with labels
Missing select options are created with per-locale labels. Codes must match the characters Akeneo allows, and an invalid code is rejected with a suggested fix rather than silently rewritten, so the code you see is the code that lands.
New attributes from the editor
Create text, textarea, number, date, simple select, multi select, boolean, price collection and metric attributes without leaving the canvas. Every type needs an attribute group; metric also needs a family and a default unit. The new attribute is appended to the profile's family with a read-append PATCH, so nothing else in the family is touched.
Reference entities on Serenity
A reference entity attribute behaves like a select and its collection like a multi select. The option list is the linked entity's records, so you map supplier values straight onto record codes.
Write mechanics you can audit
Products go out as ND-JSON batches of up to 100. Every line comes back as created, updated or refused, and a refusal is reported per attribute. Rate limits are honoured from the response. Each product carries a document hash, so a re-run of an unchanged file writes nothing. In create and update mode existence is swept first, in chunks of 500 SKUs.
What we can write into Akeneo
Select and multi select values map to option codes, and missing options can be created with their labels. Categories are assigned as a deduped set per product.
What the Akeneo connector does not do yet
We would rather you read this before you sign up than find it in week two. Every item below is a real boundary of the Akeneo connector today.
Product models and variants
Variant axes are an Ergonode feature today. On an Akeneo profile the variant markers are hidden. If an older flow still carries them, the children are written as standalone products and the parents are skipped with one aggregated warning.
Media, tables, identifier
Image and media attributes, table attributes and the identifier attribute are visible in the rail but not writable. They stay readable so you can see the full family.
Reference entity records
Records of a reference entity are read as options, never created. Their label is the record code, so the picker shows codes.
Workflow status
Akeneo has no product workflow status. A status mapping carried over from an Ergonode flow is ignored with one warning instead of failing the run.
Option custom fields
Akeneo options have labels but no custom fields, so the option enrichment features stay hidden on an Akeneo profile.
Deleting attributes
An attribute created through the API cannot be deleted again through the CE 7 API. Create deliberately.
Questions about Akeneo and SDM Portal
Which Akeneo versions does SDM Portal support?
Akeneo Community Edition 7 and Serenity. The edition and version are detected during the connection handshake and shown on the connection row, so you can see exactly what you are connected to.
How does SDM Portal authenticate against Akeneo?
Through an Akeneo API connection: client ID, client secret, username and password over the OAuth2 password grant. The bearer token is cached per connection and refreshed once on a 401. Credentials are stored encrypted and are never part of an exported mapping.
Does SDM Portal support Akeneo product models and variants?
Not yet. Variant axes and bindings are an Ergonode feature today. On an Akeneo profile the variant markers are hidden, and a flow that still carries them writes the children as standalone products while skipping the parents with one warning.
How are channels, locales and currencies handled?
Locale is a property of the mapping edge, so three description columns can feed one attribute in three languages. Channel and default currency are set per profile in the publish settings, offered from your own channels. A price attribute can receive several currencies at once by setting a currency per edge.
Can I see what will happen before anything is written to Akeneo?
Yes. A dry-run shows the result row by row with warnings for unmapped values and dropped fields, and writes nothing. Runs can go to a staging Akeneo first and production after that, and delta sync means only changed products are pushed again.
Running a different PIM?
The editor, the transforms and the workflow are shared. Only the write path differs per PIM, so each connector has its own page.
Map Akeneo once. It runs itself.
Start a workspace, connect your Akeneo instance and map your first supplier file. Fourteen days free, no card charged during the trial.