Yoox Integration – Feature & Process Guide
Yoox is one of the Mirakl-based marketplaces connected to Pentagon Connect. Unlike some of Pentagon Connect's other Mirakl integrations, Yoox is catalogue-based and multi-channel: a single product is created once and can then carry a separate offer for each Yoox storefront it sells on (for example Yoox Italy, Yoox France or Yoox Spain), each with its own channel-specific price while stock stays shared across all of them.
Each Yoox storefront is set up as its own account in Pentagon Connect, so prices, offer statuses and orders are all tracked per channel even though they share the same underlying product catalogue on Yoox's side.
Quick Reference
Product Management
| Capability | Supported | Notes |
|---|---|---|
| Create new products | Yes | Required fields are set by Yoox's own category taxonomy and vary by category |
| Update offer content (price, stock, condition, description, discount dates) | Yes | Dedicated price-only, stock-only, or combined full-offer update feeds |
| Update core product content (images, materials, taxonomy attributes) after creation | Not documented | No flow was found for resubmitting a product's full content once it has been created — only the initial creation flow is documented |
| Product variants (size/colour groups) | Yes | Variants of the same style are linked with a shared variant group code; each variant is still its own product record |
| Attribute value validation | Yes | Many attributes are checked against Yoox's own per-category allowed-value lists; an unrecognised value is rejected, not accepted |
| Deactivate / remove a listing | Yes | Via an "end listing" action, or a "closed" flag that stops further updates and zeroes the stock |
Pricing & Stock
| Capability | Supported | Notes |
|---|---|---|
| Set price | Yes | Set per offer, per Yoox storefront/channel |
| Set stock/quantity | Yes | Stock is shared across all of a product's channels; only price differs per channel |
| Per-storefront/channel pricing | Yes | Eleven Yoox channels are supported — see Order Management below |
| Discount/sale pricing | Yes | RRP-based; if no discount dates are set they default to now through now + 2 years |
| Lock price from being overwritten | Yes | Per-product "protect price" flag |
| Lock stock from being overwritten | Yes | Per-product "protect quantity" flag |
| Pull an offer from sale without deleting it (zero stock) | Yes | Dedicated zero-stock update; reversible later with a positive stock update |
Orders & Fulfilment
| Capability | Supported | Notes |
|---|---|---|
| Automatic order import | Yes | Continuous; looks back 90 days on first connection, then checks recent activity on a rolling basis |
| Multi-quantity order line handling | Yes | Yoox returns one order line per unit purchased; Pentagon Connect recombines matching lines into one |
| Order acceptance / rejection | Yes | Orders are accepted by default; specific order lines can be flagged for rejection instead |
| Ship orders / push tracking | Yes | Carrier and tracking details are pushed, then the order is marked shipped |
| Carrier matching with fallback | Yes | See Carriers Supported below |
| Partial shipment | No | An order always ships in full in a single call to Yoox |
| Click & collect / pick-up point delivery | Not documented | No mention found in the source material |
Refunds, Returns, Cancellations & Claims
| Capability | Supported | Notes |
|---|---|---|
| Order cancellation | Yes | The call used depends on whether the order has already been debited; only full-order cancellation is allowed before debit |
| Full refund | Yes | |
| Partial refund (quantity or amount) | Yes | |
| Refund shipping charges | Yes | Can be included alongside a product refund |
| Returns | Yes | Handled through the refund flow with reason "Item returned", not as a separate return type |
| Claims / incidents | Not documented | Orders can carry an open "incident" flag, but no process for handling or resolving one was found |
Product Management
Creating products
New products are submitted to Yoox with a set of fields that changes depending on the product's category — Yoox's own category taxonomy decides what's required and what values are allowed, so there isn't one fixed field list that applies everywhere. Pentagon Connect downloads and stores that taxonomy (categories, required/optional attributes and their allowed values) and validates every product against it before sending.
- Core required fields for every product: category, SKU, title, and brand. A missing required field, or a value that isn't on Yoox's allowed list for that attribute, is rejected outright.
- Images: a main image is required, and a secondary image is also required (with up to four further optional images), giving up to six images per product.
- Materials: up to five materials can be listed with their composition percentages.
- Descriptions: product descriptions can be submitted in multiple languages, each mapped to the Yoox storefronts that use that language (for example English for the Benelux, Central Europe, Eastern Europe, Holland, Scandinavia-Eire and Southern Europe channels; Italian for Italy; French for France; Spanish for Spain; German for Germany; Greek for Greece).
- "Made of fur?" flag: a required yes/no attribute on every product, defaulting to "No".
- Variants: products are grouped into a variant set (for example the size/colour options of the same style) by giving them a shared variant group code. Each variant is still created as its own product record, and only the variant(s) actually being created or changed need to be submitted, not every sibling in the group. Removing a product from a variant set is done by resubmitting it without the group code.
- Priority rules: where a value can come from more than one place (for example brand, main image, or the product identifier used with Yoox), an account-specific override takes priority over the general product-level value when both are populated.
- When a batch of products is submitted and some rows fail, the failure response identifies which row failed and why, so a rejected batch can be diagnosed and corrected without resubmitting everything.
The field list above reflects the one confirmed worked example (footwear); other categories will require a different attribute set under Yoox's taxonomy, which Pentagon Connect validates against automatically rather than following a single fixed template.
Updating products
Once a product exists on Yoox, its offer — the price, stock, condition, description and discount-window record tied to that product on a given channel — can be refreshed in several documented ways:
- Price-only update — a lightweight feed for cases where only the price needs refreshing.
- Stock-only update — refreshes just the quantity, including sending a positive quantity again after an item has previously been zeroed out.
- Full offer update — refreshes description, price, stock, condition and discount dates together, sent as one of two variants (one including price fields, one excluding them) depending on whether price protection is set for that product.
- Protect price / protect quantity / protect the whole item flags can each be set per product to exclude that data from any of the updates above, so the price or stock already live on Yoox is left untouched by a given update run.
Re-submitting the underlying product record itself — its title, images, materials or taxonomy attributes — once it has already been created is not documented in the source material reviewed for this page; only the initial product-creation flow, and the offer-level updates above, were described.
Deactivating / removing products
- End listing: flagging an offer to end its listing removes it from sale on Yoox; the product record is marked removed and the offer goes inactive.
- Zero-stock update: a dedicated feed can pull an item from sale by sending a zero quantity, without ending the listing outright — this can later be reversed with a normal positive stock update.
- Closed flag: setting a product to "closed" stops all further updates to Yoox for that product except a final zero-stock push, taking it off sale while leaving the listing itself in place. This applies to already-created products and to new ones not yet sent.
There's no separate hard-delete action beyond these — ending the listing or closing the product is how an item is taken down.
Pricing & Stock Sync
- Per-channel pricing: Yoox is catalogue-based with one product and many offers — one per activated channel. Each channel carries its own price (shown as the sale price on that storefront), while a default/account-level price is still sent with every feed because Yoox requires it. Stock, by contrast, is shared: all of a product's offers carry the same quantity.
- Channels supported: Benelux (BE), Central Europe (CEU), Eastern Europe (EEU), France (FR), Germany (DE), Greece (GR), Holland (NL), Italy (IT), Scandinavia-Eire (DK), Southern Europe (SEU) and Spain (ES). Each Pentagon Connect account corresponds to one Yoox channel.
- RRP-based discounting: if an RRP is set and it's higher than the current price, the item is automatically sent as discounted (RRP as the "was" price). If no discount dates are set, the window defaults to now through now + 2 years; this applies to both the default price and each channel-specific price.
- Currency and tax: all prices are sent in EUR with VAT included.
- Condition: offers are created with a fixed marketplace-defined condition/state code; the confirmed mapping in the source material is for "New" condition items.
- A minimum-stock alert threshold field exists on the offer feed, but is not currently populated by Pentagon Connect.
Order Management
Getting orders
Orders are retrieved automatically and continuously — a single scheduled process both picks up brand-new orders and keeps the status and details of orders already stored in sync, so there is no separate update step. On first connection it looks back 90 days; after that it checks recent activity on a rolling basis so nothing is missed between runs.
By default, every new order is accepted automatically once it reaches a "waiting acceptance" state on Yoox. Specific order lines can instead be flagged internally for rejection; only lines that haven't already been cancelled or refunded are eligible to be accepted or rejected. Once acceptance is confirmed and the order's details are refreshed, the order becomes ready for shipping.
Yoox has one notable quirk among Pentagon Connect's Mirakl marketplaces: when a customer buys more than one of the same item, Yoox returns that as several separate order lines — one per unit — rather than a single line with a quantity greater than one. Pentagon Connect recombines matching lines (same SKU, price and tax) back into a single line so order data reads normally.
Because Yoox is multi-channel, every order also carries the storefront/channel it was placed through, so it is stored against the matching Pentagon Connect account for that channel automatically.
Order information we store
For every order, Pentagon Connect stores:
- Marketplace order ID, order status, currency, order created date, payment date and delivery-by date
- Buyer ID and a marketplace-anonymised notification email address
- The buyer's tax identification number, when the marketplace supplies one
- Billing address: name, company, country, state/province, street (2 lines), city and postal code
- Shipping address: name, country, state/province, street (2 lines), city and postal code
- The sales channel/storefront the order was placed through
- Order and line-level pricing: item price, quantity, shipping cost, discount/promotion amount, and marketplace commission
- Sales tax, marketplace VAT and internal VAT are tracked as three separate figures at both order and line level, so different tax views can be reconciled independently
- Payment method and payment workflow used by the buyer
- Whether the order can currently be cancelled, and whether shipping is currently allowed on it, as flagged by Yoox
- Refund and cancellation history already actioned on the marketplace side — amount, reason and date, for each refund/cancellation on the order
- Carrier, tracking number and tracking URL, once the order has shipped
- Whether an order line has an open "incident" raised by the customer or by Yoox
Shipping orders
Once an order is accepted and ready, Pentagon Connect pushes the shipment to Yoox in two steps run together: first the carrier, tracking number and tracking URL are sent, then the order is marked shipped.
- Carrier matching: the carrier on the order is matched against Yoox's own live list of registered carriers, via an internal carrier-mapping table; if there's no match, an account-level default carrier is used if one is set; if neither applies, the carrier name and tracking number are still sent through under a generic "Other" carrier so tracking information isn't lost.
- Partial shipment is not supported — Yoox, like other Mirakl marketplaces, requires the full order to ship in a single call. Pentagon Connect can still record multiple internal shipments against an order, but only one, full shipment reaches Yoox.
- If an order has already been marked shipped directly on Yoox's side before Pentagon Connect processes it, that's handled without erroring — the order is still updated locally as shipped, with its shipment details recorded.
Cancellations
Which call is used to cancel an order depends on whether the customer has already been charged, based on two flags Yoox returns on the order (whether it can currently be cancelled, and whether it can currently be refunded):
- Not yet debited (accepted but not yet charged): cancelled using a dedicated "cancel a not-yet-debited order" call. Only full-order cancellation is allowed on this path — partial cancellation is not.
- Already debited: cancelled using the order-line cancellation call, which does allow specific lines to be cancelled rather than the whole order.
If a multi-line cancellation only partly succeeds, that's tracked line by line, so a failure on one line doesn't block the lines that did succeed. See Return & Refund Reason Codes below for the cancellation reason list.
Refunds & returns
Refunds are requested per order line, each with an amount, quantity, and reason code, and can cover the item price, the shipping charge, or both. Multiple lines can be refunded in one request, but each refund line is its own transaction on Yoox's side — if one line's refund fails, that failure is tracked against that line individually rather than failing the whole batch. Both full and partial (quantity or amount) refunds are supported.
Yoox doesn't have a separate "return" object — a customer return is handled as a refund with the reason "Item returned". See Return & Refund Reason Codes below for the full reason list.
Claims / incidents
An order line can carry an open "incident", which the customer or Yoox can raise once the order has reached shipping, shipped, or received status. If the order hasn't been paid yet when an incident is raised, the seller doesn't get paid for it. Pentagon Connect stores this open-incident flag at the order-line level and reflects it in the order data retrieved, but the source material has no defined process for handling, responding to, or resolving an incident from Pentagon Connect's side — that gap is called out directly in the underlying specification itself rather than assumed.
Carriers Supported
Carriers aren't a fixed list Pentagon Connect maintains — they're whichever couriers Yoox has registered, read live from Yoox. The carrier used on an order is matched against that live list via an internal carrier-mapping table, or an account-level default carrier; if it doesn't match anything registered, the carrier name and tracking number are still sent through under a generic "Other" carrier so tracking information isn't lost.
Return & Refund Reason Codes
Reason codes are pulled live from Yoox's own reason list (which the source material notes can run to dozens of entries); the following are the reasons captured in the reviewed source material as worked examples, not necessarily the complete live list:
Refund reasons:
- No response from the shop
- Out of stock
- Cancelled by the client prior to shipping
- Item returned
- Item not received
- Agreement found with the vendor
- Marketplace adjustment / discount
Cancellation reasons:
- Cancelled by the client prior to shipping
- Canceled due to late shipment (system-generated)
- Debit failed (system-generated)
- Debit timed out (system-generated)
- Faulty product
- No stock
Known Limitations
- No partial shipment — every order ships to Yoox as one complete shipment.
- No documented flow for updating core product content (images, materials, taxonomy attributes) once a product has been created — only offer-level updates (price, stock, condition, description, discount dates) are documented for existing products.
- No defined process for handling or resolving claims/incidents — only the open-incident flag itself is captured and stored.
- No click & collect / pick-up point delivery found in the source material.
- Product and offer creation are documented in full for one confirmed worked example category (footwear); other categories will use a different attribute set under Yoox's own taxonomy, which is validated automatically rather than individually catalogued on this page.
- Reason code lists above reflect the source material's example response rather than a guaranteed-complete live list — the live list is read directly from Yoox and may contain more entries.
- Carrier list is dynamic, not a fixed set that can be quoted in advance — it depends on what Yoox has registered for the account at the time.
Source Materials
This guide was built from Yoox's Mirakl integration technical specifications and example payloads, covering authentication and database structure, product and offer creation and management, pricing and stock synchronisation, and order retrieval, acknowledgement, shipping, cancellation and refund flows.