ShipWave Channels

Connecting Mirakl-powered marketplaces

Use one ShipWave adapter to sell on Tesco UK, B&Q, Argos, Walmart.fr, Fnac, and dozens of other Mirakl operators.

What is Mirakl?

Mirakl is the marketplace platform that powers more than 400 operator marketplaces worldwide, including Tesco UK, B&Q, Argos, Walmart Marketplace.fr, Fnac/Darty, El Corte Inglés, Decathlon, Best Buy Canada, and many more. They all share the same API spec, so a single ShipWave adapter connects you to every Mirakl marketplace you have a seller account on. You add one channel per operator (one for Tesco, one for B&Q, etc.).

Before you start

From your operator’s seller portal you will need three things:
  • API key – usually found under My account → API key or Settings → My API key. It is a long opaque string and is the only credential ShipWave needs to authenticate.
  • Operator API domain – the base URL of your operator’s Mirakl instance (e.g. tesco.mirakl.net, diy.mirakl.net for B&Q, argos.mirakl.net). Your operator’s integration guide lists this.
  • Shop ID – a numeric ID assigned by the operator when your seller account was approved. Visible in the seller dashboard URL or under your account settings.
You also need approval from each operator individually — Mirakl does not federate seller status across marketplaces.

Connecting your account

  1. Go to Admin → Marketplace → Channels and click New Channel.
  2. Select Mirakl as the platform.
  3. Pick the operator from the dropdown (Tesco, B&Q, Argos, Walmart.fr, Fnac, etc.). If your operator is not listed, choose Custom Mirakl operator and enter the domain manually.
  4. Enter your API key and Shop ID.
  5. Choose the Shopify store to use as the product source.
  6. Name the channel something obvious (e.g. “Tesco UK”, “B&Q”) — you will likely have several Mirakl channels.
  7. Click Create Channel. ShipWave validates the credentials by calling the operator’s /api/account endpoint and shows “Connected” if successful.

How orders flow in

Mirakl operators do not push webhooks — ShipWave polls the operator’s /api/orders endpoint every 5 minutes for new orders in WAITING_ACCEPTANCE state. When an order arrives, ShipWave automatically acknowledges it within your operator’s SLA (usually 24-48 hours), then imports it into the orders dashboard. After you ship and add tracking, ShipWave calls /api/orders/{orderId}/tracking and transitions the order to SHIPPING then SHIPPED. Expected lag from buyer checkout to ShipWave dashboard: under 5 minutes.

Listings and inventory sync

Mirakl is offer-based: you create an offer against an existing operator catalog product, matched by EAN/GTIN. Every Shopify variant pushed to a Mirakl channel must have a valid 13-digit EAN in its barcode field — offers without one are skipped during sync. ShipWave handles the catalog import + value-list mapping per operator (Tesco’s logistic-class values differ from B&Q’s). Inventory pushes use /api/offers bulk updates; price changes use the same endpoint. Images are pulled directly from your Shopify CDN URLs — the operator caches them on their side. For full listing workflow see Bulk listing operations.

Per-operator routing rules

Each operator has its own category taxonomy, carrier codes, and required attributes. ShipWave ships with built-in rule packs for the most common operators (Tesco, B&Q, Argos, Walmart.fr, Fnac) that auto-map Shopify product types and carrier names to the operator’s expected values. For less common operators, you can edit the routing rules under Channel settings → Mirakl routing. Carrier codes especially vary — Tesco uses Royal Mail/Yodel codes, Walmart.fr expects Chronopost/Colissimo, Fnac uses Mondial Relay/Colissimo.

Common issues

“401 Unauthorized” – the API key is wrong or has been rotated in the operator portal. Regenerate it and update the channel.

“Offer rejected: invalid product” – the EAN does not exist in the operator’s catalog. Submit a product creation request through the operator portal first; once approved (24-72 hours) the offer push will succeed.

“Order stuck in WAITING_ACCEPTANCE” – the acknowledgment job failed (often a transient network blip). Open the order in ShipWave and click Retry acknowledgment.

Inventory not updating – some operators cache offer state for up to 30 minutes. Wait, then refresh; if still stale, check the sync log for HTTP errors.

FAQs

Do I need a separate ShipWave channel per Mirakl operator?
Yes. Each operator is its own marketplace with its own seller account, API key, and shop ID — so each gets its own channel in ShipWave. The good news is the connection flow is identical for all of them.
My operator is not in the dropdown. Can I still connect?
Yes. Pick “Custom Mirakl operator” and enter the API domain manually (e.g. example.mirakl.net). As long as the operator is on Mirakl, our adapter will work.
Why does Mirakl use a static API key instead of OAuth?
Mirakl’s API was designed for system-to-system integration with long-lived back-office tools, so they use a single rotatable API key per seller account rather than OAuth tokens.
Can I list variants on Mirakl?
Yes — each Shopify variant becomes its own offer with its own EAN. Mirakl does not have a parent-child concept like Amazon; variants are just separate offers grouped by the operator’s catalog.
How long do operator approvals take?
Approval varies widely. Tesco and B&Q typically respond within 2-4 weeks. Fnac and Walmart.fr can be faster (1-2 weeks). Apply directly through each operator’s seller portal — ShipWave only connects after you have been approved.

More in ShipWave Channels