John Lewis: marketplace guide
About this guide
This is a ChannelEngine guide on the London-based marketplace John Lewis. Here you can find information on how to request a John Lewis account, how to configure this marketplace on ChannelEngine, and what the specific requirements are.
Table of contents
Marketplace-specific requirements and exceptions
About the marketplace
John Lewis is a UK department store retailer that operates online at johnlewis.com and through brick-and-mortar stores across Great Britain. It is part of the John Lewis Partnership.
In 2025, John Lewis launched an online marketplace, powered by Mirakl, that allows approved merchants to list and sell products directly to customers. The marketplace uses a direct-shipping model where you as a seller hold the stock and fulfill orders, rather than John Lewis buying, storing, and distributing the products.
Commercial information
| Founded | 1864 (marketplace launched in 2025) |
| Founder | John Lewis |
| Headquarters | London, England |
| Area served (orders) | United Kingdom |
| Area served (shipments) | United Kingdom |
| Revenue | £13.4 billion (John Lewis Partnership, FY2025/26) |
| Number of monthly visits | circa 16 million |
| Website | johnlewis.com |
| Product categories | fashion, home, electricals, gifts, sport, and beauty |
| Input language | English |
| Input currency | GBP |
| Content creation | yes |
How to request an account
John Lewis curates the brands on its marketplace, so acceptance is selective. Before you can sell on John Lewis, you need an approved seller account. To apply for an account:
- Register your interest by contacting John Lewis through the John Lewis Partnership supplier portal, or via email product.supplier.queries@johnlewis.co.uk.
- Share your product range, images, pricing, and any required product certifications with the John Lewis team.
- Once John Lewis approves your brand and sets up your account, connect it to ChannelEngine using the details in the Setup section below.
Associated costs
John Lewis does not publicly share its marketplace fees. Confirm the current commission rate, any setup or listing fees, and the payment terms directly with John Lewis before you onboard.
Marketplace features
| Supported | Not supported |
| Product content | Sales channels |
| Product offers | Refurbished products |
| Orders | Repricing |
| Shipments | Cancelations (marketplace) |
| Cancelations (merchant) | Multiple stock locations |
| Returns (merchant) | Marketplace fulfillment service |
| Returns (marketplace) | Last-mile delivery/shipping labels |
| Carrier mapping | |
| HTML formatting | |
| Product variations (manual/automatic) | |
| Invoice uploads | |
| Settlements |
Settings and configuration
Setting up each channel on ChannelEngine follows the same flow, though not every channel includes the steps listed below.
- Go through the Setup.
- Create a Product selection.
- Complete the Categorization.
- Set up the Mappings: content, offers, and carriers.
- Configure the Pricing: rules and currency conversion.
- Fill in the Stock settings.
- Finish the Activation.
- Check the Listed products overview.
Marketplace-specific requirements and exceptions
The sections below describe exceptions to the standard settings and configuration steps required to set up this channel on ChannelEngine.
Setup
On ChannelEngine
Connection
- This channel is a Mirakl-based channel. Therefore, you connect to it with your Mirakl Connect SSO account. For more information on configuring Mirakl Connect SSO with ChannelEngine, check out the Mirakl-based channels: SSO authorization article.
- If you would like to test the order flow with this plugin, contact the ChannelEngine Support team to configure the connection of your plugin to support testing. For more information on testing orders, check out the article ChannelEngine: how to create test orders.
Invoice uploads
To configure your invoice settings, go to Advanced settings. Then, select one option from the dropdown menu in the Enable invoice uploading field, which contains the following options:
- ChannelEngine invoices - when ChannelEngine receives a shipment, ChannelEngine automatically generates an invoice and attaches it to the shipment before exporting the shipment.
- Merchant invoices (optional) - when ChannelEngine receives a shipment, ChannelEngine exports the shipment – even if there is no invoice attached to it.
- Merchant invoices (required) - when ChannelEngine receives a shipment, ChannelEngine only exports the shipment if an invoice is attached to it. If not, you receive a notification.
- None - when ChannelEngine receives a shipment, ChannelEngine takes no action other than notifying you that no invoice is present.
If you select one of the Merchant invoices options, make sure to upload the invoice to ChannelEngine via the Merchant API or via the web interface. To learn more, check out the article ChannelEngine: upload merchant invoices.
Mappings
Content
All products (required)
- Brand / sub brand - the brand or sub brand of the product. For a sub brand, show it with the brand as follows [brand] / [sub brand].
- Country of origin - select the country where the product was manufactured from the list of available countries.
- Initial retail price - the initial retail price used for product setup. Enter this price again in the offer.
-
Main image - the URL of the main product image. The requirements are:
- File format - JPEG.
- Resolution - at least 1,000x1,000 px.
- For the image order and requirements per category, see the John Lewis Ecomm Brand Guidelines.
- Material composition - the product's material composition that appears on the product display page. The maximum character length is 999.
- Product composition - the product's material composition for internal use. For fabric, state the percentage mix. The maximum character length is 80.
- Product name - the full name of the product. The maximum character length is 50.
- Product reference number - the supplier or internal product reference for a group of variants or a single option (color). The maximum character length is 20.
- Selling text - extra product information, such as copy written by the supplier or brand. The maximum character length is 2,048.
- Short name - a short name required by John Lewis legacy systems. Must be the same for all SKUs in a product family. The maximum character length is 20.
- SKU code - the seller's unique identifier for each SKU.
- Standard colour [variant attribute] - the standard color that is used for filtering in the left sidebar on the website.
- Supplier colour [variant attribute] - the supplier's color name. The maximum character length is 20.
- Unit cost price (excl. VAT) - the unit cost price. Mandatory for the Dropship platform model. For One Creditor, copy the selling price into this field.
All products (optional)
-
Alt 1-10 image - the URL of additional product images. The requirements are:
- File format - JPEG.
- Resolution - at least 1,000x1,000 px.
- Embargo date - the date before which the product cannot be sold. Format: yyyy-MM-dd, e.g.: 2025-12-25.
- Exclusive - indicates whether the product is exclusive to the John Lewis brand only, or exclusive/sheltered to another brand.
- Generate barcode - a flag indicating that a barcode (EAN) is not available for the product. If set to Yes, the EAN can be left empty and the product is accepted even though the data is incomplete.
- Planned launch date - the date when you plan to launch the product. Format: yyyy-MM-dd, e.g.: 2025-12-25.
- Product sustainability - indicates whether the materials used in product manufacture have any sustainability credentials.
- RIN (JL internal) - leave this empty as this is for internal use only.
- Variant group code - the unique identifier for a group of variations, usually the Parent SKU. Required whenever product variations (colors or sizes) exist.
Offer
Required
- Price - (appears here if using pricing v1) the item's base price/regular sales price. If a discount is created in the Pricing step, this price becomes the 'from' price. Enter a decimal value. Do not enter a currency.
- Consumer code - the barcode for the SKU. Can follow the EAN-13, EAN-8, or UPC-A standard. This attribute connects product data with product offers.
Optional
- Available start date - the date when the product becomes available. Format: yyyy-MM-dd HH:mm:ss zz, e.g.: 2021-08-25 15:33:00 +01.
- Available end date - the date when the product stops being available. Format: yyyy-MM-dd HH:mm:ss zz, e.g.: 2021-08-25 15:33:00 +01.
The following offer attributes are common to some Mirakl-based marketplaces:
- ECO #1-5 amount - the amount due for the eco-contribution related to the product. E.g.: 2.50.
- ECO #1-5 EPR category code - the extended producer responsibility (EPR) code that applies to the product. For a list of category codes, check out the article Providing data to comply with circular economy regulations in Mirakl's help center (note that you need to be logged in to Mirakl to access this page). E.g.: DE-WEEE, FR-DEA, etc.
- ECO #1-5 producer ID - your producer ID, received upon registering with a packaging register, such as Germany's LUCID. The maximum number of characters is 255.
- Category-specific ECO attributes - depending on your sales country, you might be required to map additional ECO attributes for products in specific categories. Review which ECO attributes to map within each category.
If pricing v2 is activated in your environment, you will see the following offer attributes, which are common to all Mirakl-based marketplaces:
- Allow promotion below min price - set to true to allow the promotion price to drop below your product's minimum price. To learn more, check out the article ChannelEngine: promotions.
- Strike price - the regular selling price. Only map this if you set up a discount. For guidance, check out the Working with discounts section of this article.
- Map your current selling price in Price in Pricing, Price rules.
- Additionally, the Fee groups attribute appears in Mappings, Fee group mappings, if pricing v2 is activated. Map the marketplace fee group ID of the product there.
The following offer attributes are also common to all Mirakl-based marketplaces:
- Discount start date - the date from which the product's sale price is valid, if applicable. Input the date as a fixed value. The date format is YYYY-MM-DD HH:MM:SS ZZ. All dates follow ISO month-day formatting, and all times follow 24-hour formatting in the UTC timezone. E.g.: 2026-10-25 15:30:00 +01 will start your discount on 25 October 2026 at 3:30 PM, one hour ahead of UTC time.
- Discount end date - the date until which the product's sale price is valid, if applicable. Input the date as a fixed value. The date format is YYYY-MM-DD HH:MM:SS ZZ. All dates follow ISO month-day formatting, and all times follow 24-hour formatting in the UTC timezone. E.g.: 2026-10-30 23:59:59 +01 will end your discount on 30 October 2026 at 11:59 PM and 59 seconds, one hour ahead of UTC time.
- Discount price - (appears only if you use pricing v1) the product's sale price, if applicable. This attribute must have a lower value than the Price attribute.
- Discount quantity threshold - the minimum quantity required for the discount rate to be available.
- Leadtime to shipment - the number of days before you ship the product. You can create your own unique rules, if applicable. For more information on this, check out the article Lead time to ship in Mirakl's help center.
- Minimum quantity alert - map this attribute to receive a notification from Mirakl if your stock drops below the threshold defined.
- Offer state - the product's condition. Find your option from the dropdown menu by selecting the fixed value to apply to all.
- Product tax code - the taxation code applicable to the product.
- Logistic class - your optional shipping class. Make sure to map the shipping class using the marketplace’s codes and not with the labels that are visible in the partner portal's user interface. These codes vary per marketplace. If this marketplace makes use of logistic class codes, they can be found below.
Logistic class codes
| Code | Label | Description |
init |
Medium (M) | - |
2PRSN |
Two-person delivery | Items heavier than 30 kg and/or which require two or more people to deliver. |
Carrier
Carrier mapping is not required on Mirakl-based marketplaces. However, with carrier mapping, you can map your carrier to a specific list of carriers maintained by this marketplace. Carrier mapping enables ChannelEngine to automatically send the tracking codes to this marketplace, allowing buyers to eventually track the shipment themselves. If your carrier is missing from the list, please directly contact the marketplace.
Pricing
Working with discounts
These instructions apply to most Mirakl marketplaces. If there are any exceptions on this marketplace, these are noted below.
Pricing v1
- To set up a discount, map the Discount price, Discount start date, and Discount end date attributes. If you want to set a permanent discount, map the Discount end date attribute with a date in the far future instead of leaving it unmapped. Otherwise, the offer is not exported, and errors are shown on the Validation and feedback tab.
- The discounted price is only exported if it is lower than the base price.
- If you do not want to set a bulk discount, leave the Discount quantity threshold attribute unmapped.
- To set a bulk discount, the Discount quantity threshold must be set to a value higher than 1. For example, a value of 2 indicates that the buyer must purchase two or more products at the same time to benefit from the discount.
Pricing v2
- To set up your strikethrough price, map the Strike price attribute to your regular price in Offer mappings.
- Then, indicate the discount period. Map the Discount start date and Discount end date attributes to indicate the start and end dates of your discount.
- If you do not want to set a bulk discount, leave the Discount quantity threshold attribute unmapped.
- If you do not set up a bulk discount, set up your discount price:
- Go to Pricing, Promotions.
- Choose your discount method, e.g.: percentage discount, and configure the start and end dates.
- Select the products to which the discount is applied.
- Keep in mind:
- Your discount price and Strike price cannot have the same value.
- ChannelEngine only sets a discount if your discount price is lower than Strike price.
- If set up correctly, your product displays a discount label and a strikethrough price on the channel.
Listed products
If you have problems with products not appearing on Mirakl-based marketplaces – especially if you are trying to create products, check the Listed products page for more information. Use the Channel status filter or the Validation and feedback tab to view all known errors for specific products.
If you see either of the below statuses, refer to the article ChannelEngine: why is my product listed as 'Product not found' in the inventory report?:
- Product not found in inventory report
- Product not in offer file
Products that ChannelEngine has failed to export are shown as Invalid, e.g.: products with an empty GTIN or that do not yet exist on the marketplace.
Alternatively, download the error report generated by Mirakl. To do so:
- Log onto the Mirakl platform and go to Catalog, Product imports.
- Identify the latest report and click the See details button.
- Download the CSV file Non-integrated products report.
Additional information
Order extra data items
When an order is imported to ChannelEngine, ChannelEngine also retrieves extra data items related to the order itself – or to order lines. This extra data is specific to this marketplace. An explanation of each can be found below:
Order extra data
| Keys | Conditional* | Description |
sb-invoice |
Yes | The invoice number and date. |
sb-credit-notes |
Yes | The self-billing credit notes for refunds. |
delivery-slot-booked |
Yes | An appointment for a two-person delivery booked by a carrier with the customer. |
2p-delivery-status |
Yes | The status of a two-person delivery. Not required for a one-person delivery. |
order-delivery-information |
Yes | A message about the delivery populated by John Lewis systems. |
* Conditional fields are only displayed if the marketplace provides a value.
FAQs
How often does each task run on Mirakl-based marketplaces?
By default, Mirakl-based marketplaces follow the schedule below:
| Task | Frequency |
|---|---|
| Export product data to marketplace | every 60 minutes |
| Export product offers to marketplace | every 15 minutes |
| Import product offers from marketplace | every 15 minutes |
| Import orders from marketplace | every 15 minutes |
| Export order shipments to marketplace | every 15 minutes |
| Export returns to marketplace | every 30 minutes |
Can I map attributes on ChannelEngine and on the Mirakl platform?
No. Mapping attributes on the Mirakl marketplace platform interferes with ChannelEngine's content export. Therefore, it is recommended to categorize and map content only on ChannelEngine.
Why am I not receiving feedback on my content and/or offer exports?
Some Mirakl-based marketplaces manually review content and/or offers before products can go live. Because of this, feedback reports may take a few hours or several days to become available.
Offer feedback - error reports are mostly generated automatically and are imported quickly.
Content feedback
- Transformation error report - automatically generated and usually imported within a maximum of one day.
- Conventional error report - requires a manual review by the Mirakl-based marketplace, and not all do so. It can take several days for this report to be imported.
Note that the previous feedback report is not removed from ChannelEngine until both the latest transformation and the conventional reports have been fully processed by ChannelEngine. If there are no errors to report, no new reports are generated.
Comments
0 comments
Article is closed for comments.