Skip to content

Conformance table and unverified facts

What this add-on sends to the marketplace, how each call was checked, and which Conrad-specific facts could not be verified publicly. Source of the API description: the official Mirakl Marketplace Seller OpenAPI file published on the Mirakl developer portal (developer.mirakl.com, Mirakl Marketplace APIs, Seller, downloaded 2026-11-09). The operator facts about Conrad come from Conrad’s public seller FAQ and from integrators’ public guides; anything that could not be confirmed is marked UNVERIFIED.

This is a statement about what was tested, not a certification: the add-on was tested against a local stand-in that validates every request against the OpenAPI file. No test ever called a Conrad or any other real Mirakl endpoint, and nothing was tested with a live Conrad seller account.

  1. tests/openapi/build-subset.mjs extracts the operations below from the downloaded OpenAPI file (parameters, enums, request and response schemas, the example payloads).
  2. php tests/unit_mirakl.php runs the driver with the spec’s example payloads as answers and records every request; tests/openapi/check.mjs validates each recorded request: method and path, query parameters and their enum values, JSON body against the schema (unknown properties are errors), multipart fields, the import file columns, the API key header, the Content-Length: 0 of OR24.
  3. The mock server (tests/mock-server/server.js) applies the same validator to every request of the HTTP end-to-end runs on CS-Cart and Multi-Vendor and answers 400 to a request that does not conform; the runs end with “every request conformed”. The e2e scripts refuse to start unless the store’s base URL points at 127.0.0.1.
Id Method and path Used for Checked in
A01 GET /api/account Test connection: shop name, id, currency, channels unit, e2e
H11 GET /api/hierarchies Conrad category tree for the mapping unit, e2e
PM11 GET /api/products/attributes Product attributes of a category (read only, informational) unit, e2e
AF01 GET /api/additional_fields?entities=OFFER Offer fields (attributes) and their allowed values unit, e2e
OF61 GET /api/offers/states Code of the condition “New” unit, e2e
OF01 POST /api/offers/imports (multipart, import_mode=NORMAL) Create or update offers from a CSV file unit, e2e
OF24 POST /api/offers (JSON) Alternative to OF01, selectable in the operator file; not used by default unit
OF02 GET /api/offers/imports/{import} State and statistics of an offer import unit, e2e
OF03 GET /api/offers/imports/{import}/error_report Reason per rejected offer line unit, e2e
OF04 GET /api/offers/imports Finds an import whose answer was lost unit, e2e
STO01 / STO02 / STO03 POST /api/offers/stock/imports, GET .../stock/imports/{id}/status, .../error_report Stock changes and their result unit, e2e
PRI01 / PRI02 / PRI03 POST /api/offers/pricing/imports, GET /api/offers/pricing/imports?import_id=, .../error_report Price changes and their result unit, e2e
OR11 GET /api/orders Orders waiting for acceptance, orders changed since a moment, order lines for a refund unit, e2e
OR21 PUT /api/orders/{order_id}/accept Accept or refuse each line (by stock) unit, e2e
OR23 PUT /api/orders/{order_id}/tracking Carrier (by code, or by name and link) and tracking number unit, e2e
OR24 PUT /api/orders/{order_id}/ship Validate the shipment (empty body, Content-Length: 0) unit, e2e
OR28 PUT /api/orders/refund Refund shipped order lines unit, e2e
OR33 PUT /api/orders/{order_id}/cancel-order-lines Cancel lines the seller cannot deliver unit, e2e
SH21 GET /api/shipping/carriers Carrier codes unit, e2e
RE01 GET /api/reasons Cancellation (CANCELATION) and refund (REFUND) reasons unit, e2e
RT11 GET /api/returns Return requests (seek pagination) unit, e2e
RT21 PUT /api/returns/accept Accept a return request unit, e2e

Not used: the product imports (P41 and following): the add-on does not create catalogue products; OF51 to OF54 (offer exports); OR26 (the per-order refund; OR28 is used), incidents (OR64), messages, invoices and shop documents.

Topic What the add-on does Source
Authentication The seller API key in the plain Authorization header (scheme “Shop-API-Key” of the OpenAPI file), no Bearer, no token request. OpenAPI file
Base URL The Mirakl address of the seller’s account, entered by the seller per mode. https only; hosts that are an IP number, localhost or a non-public name are refused because the server calls the address. The add-on does not know or guess Conrad’s host. UNVERIFIED for Conrad (see below)
Several shops shop_id query parameter when the account field is set OpenAPI file
Call frequency Offer, stock and price imports: at most one per minute and recommended every 5 minutes, per seller; the sync interval setting defaults to 15 minutes. OpenAPI file (“Call Frequency” of each operation)
Rate limit answers The OpenAPI file does not describe HTTP 429 or Retry-After. The generic job queue treats 429, 408, 425 and 5xx as retryable and honours a Retry-After header. Not in the OpenAPI file
Dates ISO 8601 UTC (2026-11-09T10:00:00Z) OpenAPI file
Item What the add-on assumes Status
max and offset on OR11 Offset pagination with page size 100. Mirakl’s general pagination convention; reported by the validator as a note
page_token on RT11 and OF04 Seek pagination: the response has next_page_token; the add-on sends it back as page_token. OF04 also filters origins=API and mode=NORMAL, so a back-office, FTP or REPLACE import of the same size is never adopted. Same (the filters are in the OpenAPI file)
Additional offer fields in the OF01 file Extra columns named by the field code (AF01). Only the OF24 JSON alternative lists them in the file. Reported as a note
Value of product-id-type EAN Used in the OpenAPI example of OF24; the allowed values are operator configuration
Layout of the error reports OF03: a header with sku and error-message. STO03 / PRI03: line number, reason, then the submitted line. The parser finds the sku by header or by value. OpenAPI file
Country codes of orders country_iso_code is ISO 3166 alpha 3; the add-on converts it to alpha 2 OpenAPI file
Address before acceptance “Null before shipping (or acceptance, depending on platform setting)”: orders are imported once they carry an address OpenAPI file
OR21 with a refused line The add-on answers every line, accepted=false for lines it cannot deliver. Whether Conrad’s instance allows a partial answer is UNVERIFIED: a 4xx answer is logged and the order is left for the back office. Not in the OpenAPI file
Amounts of refunds OR11 price is the line “without shipping price” and total_price the line “with shipping price and fees”; OR28 takes the offer part (amount) and the shipping part (shipping_amount) separately. The refund row sends amount = price, shipping_amount = shipping_price, the line’s taxes and the order’s currency_iso_code (required off the operator default currency). A line counts as refunded when earlier refunds cover price and shipping_price. Conrad’s tax mode is UNVERIFIED. OpenAPI file (OR11, OR28)
Refused and cancelled lines Lines in order_line_state REFUSED or CANCELED are not imported. OpenAPI file (OR11)

Conrad facts: what is verified and what is not

Section titled “Conrad facts: what is verified and what is not”

Checked on 2026-11-09 from public sources only: Conrad’s seller FAQ (platform.conrad.de/en/seller/seller-faq.html), the connector guide of e-tailize (e-tailize.com/help/marketplaces/sell-on-conrad/), the Conrad guides of Channable, M2E and ChannelEngine, and the Mirakl customer material. Nothing here comes from a seller contract, a seller login or a live account.

Item Value used Status
Platform Conrad runs its marketplace on Mirakl Verified (e-tailize, Channable, M2E, Mirakl)
Who may sell Approved sellers; VAT-registered with a warehouse in Germany; onboarding with ID, VAT proof, German VAT ID, terms; contact form Conrad seller FAQ. Dutch sellers: Dutch VAT number and warehouse per integrators only: UNVERIFIED
Buyers Business customers (companies, schools, public bodies) in Germany; private customers through a subsidiary shop Conrad seller FAQ (as of the check; Conrad says it plans other countries)
Markets DE, AT, NL, FR, IT live in the operator file; BE marked “limited”; CH marked “announced” DE AT NL FR IT: e-tailize. BE: two integrators, not e-tailize. CH: no public source: UNVERIFIED, the currency CHF and the conversion are implemented but cannot be confirmed for a real account. CZ appears in one list and is not offered
Several countries One connection (store account = one sales channel) per country Channable, e-tailize
Currency EUR; CHF for the announced Swiss market EUR: M2E guide. CHF: not confirmed
API address Entered by the seller; no default UNVERIFIED: the host of Conrad’s Mirakl instance is not published
Authentication API key of the seller user in the back office; plain Authorization header (Mirakl standard) Key creation and “Store Id”: e-tailize. Header: Mirakl standard
Shop ID Conrad’s “Store Id” maps to the optional shop_id e-tailize; the exact mapping is UNVERIFIED
Channel codes Entered by the seller UNVERIFIED, not public
Product identifier product-id-type is an account setting, default EAN Channable and M2E require valid EANs and a manufacturer part number; Conrad’s own FAQ lists “product ID” and MPN and does not name EAN: default UNVERIFIED
Required offer attributes Read live from your instance: offer fields with AF01, product attributes with PM11 Conrad’s required fields are behind the seller login: UNVERIFIED, not assumed. Integrators mention lead time to ship (empty = same-day shipping), shipping class (SM1-SM3, bulk, pallet, extra, free …; some only in Germany), warehouse id 1-5, reverse charge, unit of measure; the add-on treats them as ordinary offer fields
Category tree Read live with H11 from your instance Not public
Order confirmation by API Yes Conrad seller FAQ
Tracking Tracking id and tracking URL; one id per parcel for multi-parcel shipments Conrad seller FAQ; the add-on sends one tracking number per order
Refunds Credit notes by the “Refund” button, whole or partial, irreversible; prepaid orders refundable from “Shipping in progress” Conrad seller FAQ. The add-on refunds shipped lines (the Mirakl rule); earlier refunds are done in the back office
Returns module (RT11 / RT21), STO01, PRI01 Used for returns, stock, price UNVERIFIED that they are enabled for Conrad; if the marketplace refuses them, stock and price are not pushed
Title and images Title up to 120 characters, up to 9 images in the operator file Integrator guide (20 to 120 characters, images at least 400 px): not Conrad documents, UNVERIFIED
Fees Monthly subscription plus a category-based commission; payouts three times a month Conrad seller FAQ, M2E guide; amounts not public. Not used by the add-on
Prohibited goods 18+ rated media, violent media, military toys, items governed by section 10 of the German Battery Act Conrad seller FAQ; the add-on does not filter

Conrad is a trademark of its owner. Mirakl is a trademark of Mirakl. They are named only to say what the add-on connects to. The Conrad logo appears only in the product’s store gallery images, as an identification of the marketplace the add-on connects to, unaltered and only as a “Works with” mark; no published Conrad brand guideline was found, so conservative rules were applied (see research/brand-assets/conrad/SOURCE.md); the add-on itself ships no third-party logo. This add-on is not affiliated with, endorsed by or certified by Conrad or Mirakl.