# Changelog of Farfetch Scraper (`autofacts/farfetch`) Actor

- **URL**: https://apify.com/autofacts/farfetch/changelog.md
- **Full Actor documentation**: https://apify.com/autofacts/farfetch.md

### Changelog

#### 09/27/2026 — 2.0

2.0 adds category scraping and reads everything from Farfetch's catalog service
rather than its website. Product records keep the 1.x fields and value types.
The one change to how an existing field is laid out is the Colour option, which
moves the size id from the first entry of each variant's `options`; the other
changes, listed below, are to what the fields contain.

- added category scraping: a storefront (`https://www.farfetch.com/`,
  `https://www.farfetch.com/jp/`) or department (`/shopping/women/`,
  `/uk/shopping/men/`) start URL returns one category record per category —
  1,216 in a whole storefront, titled in the language of the storefront's
  product records. Each record has the category's path, a handle that is the
  same in every storefront, its product count (sale included, where the
  website's category page shows the full-price products) and its listing
  filters: categories, designers and colours, each value with its product
  count, plus price and discount ranges, full price or sale, and attributes
  such as heel height. Size filters are not included. Category records share
  the default dataset with products and have their own "Categories" view.
- added the `withCategoryProducts` input: also scrape every product of those
  categories, each product once however many categories list it. Off by
  default.
- added set pages (`/sets/….aspx`) as start URLs.
- added `source.language` to product records, and each variant's `sku`: the
  merchant's own stock keeping unit for the offer the variant is priced from,
  whose format varies by merchant.
- changed: pay-per-event billing has two events, `product` (per product saved,
  as before) and `category` (per category record).
- changed: a product found through a listing gets a public page URL built from
  its designer and name, such as
  `https://www.farfetch.com/shopping/women/jacquemus-les-doubles-sandals-item-28543291.aspx`.
  This is usually the website's own URL, but can differ for names with
  punctuation (`…-california-2-0-…` for the website's `…-california-20-…`).
  A product start URL keeps its own URL, without the query string, as
  `canonicalUrl`; a short product link (`/item-<id>.aspx`) gets the product's
  full page URL instead of the short link.
- changed: image URLs no longer end in `?ov=true`. 1.x added it to the images
  of some records and not others, the same image included.
- changed: each size is priced at the offer Farfetch shows for it (the
  preferred merchant's), and its `stockCount` adds up the stock of every
  merchant selling that size. The product's `price` is its cheapest size in
  stock. When several sizes share that price, 1.x took the one the website
  listed first and 2.0 can take another, so `price.stockCount` can differ.
- changed: `variants` list the sizes in stock first, as before, but in size
  order, where 1.x followed the website's order. The other sizes follow, out
  of stock at the product's price, as before.
- fixed: a product no merchant has on offer gets its full record (title,
  details, images and currency), out of stock at 0; 1.x often returned an
  empty record for it.
- changed: `options` starts with a Colour option holding the product's colour:
  the designer's (as `extraInfo.color`), or Farfetch's colour family when the
  designer's is missing. Farfetch sells each colour as a product of its own,
  so the option has one value. Each variant's `options` lists that colour's id
  before the size id, so the size id is no longer the first entry.
- changed: `details.madeIn.origin` names the country ("Made in China") where
  the US storefront says "Imported", and is in English on every storefront,
  also where the record is in another language ("Made in Italy" where the
  Japanese storefront in Japanese, `?lang=ja-JP`, says "イタリア製").
- changed: composition part names (`details.composition[].name`) are in
  English on every storefront ("Outer" where the German storefront says
  "Außenmaterial").
- changed: with `withSizeFit`, measurements that hold for every size, such as
  a heel height, are given on every variant; 1.x left most variants'
  `measurements` null.
- changed: each `recommendedProducts` item's `raw` keeps the 1.x fields and
  types, filled from Farfetch's catalog, and the recommended products
  themselves differ from the website's. `promotion`, `returnDetail` and
  `rankingAlgorithm` are always null. There are up to 12 per product, as
  before, but often fewer: 1.x always gave 12, 2.0 gives 5 to 11 for about
  half of all products.
- changed: listing order. Listings return the products the website lists, as
  1.x did (full-price ones, except on sale pages), but the new way of
  collecting them brings them in a different order, so a run capped by
  `maxRequestsPerCrawl` gets a different selection of products than 1.x did.
  A listing sorted by price (`sort=4`) keeps the same order from run to run.
- fixed: listings 1.x could not resolve work: search pages
  (`/shopping/women/search/items.aspx?q=`), and slugs its lookup missed
  (`/shopping/women/knitwear-1/`, `/shopping/men/stussy/`). A slug the website
  does not know is looked up by name within the URL's department
  (`/de/shopping/women/kleider-1/`, `/shopping/women/bags-1/`); one that names
  nothing fails the listing instead of scraping the whole department.
- fixed: the `attributes:` listing filter (`attributes:11006=19500036`, a heel
  height) narrows the listing; 1.x ignored it.
- fixed: `maxRequestsPerCrawl: 0` means no limit, as its description says; 1.x
  processed no request at all.
- changed: URLs without a country folder (`https://www.farfetch.com/shopping/...`)
  are priced in the proxy's country when the run sets one
  (`apifyProxyCountry`), as before; without one they are priced for the US in
  USD, where 1.x followed whichever country its proxy happened to use.
- changed: the Chinese-language storefronts of Hong Kong, Macau and Taiwan
  (`/zh-HK/`, `/zh-MO/`, `/zh-TW/`) are priced in their country's currency
  (HKD, TWD), as `/hk/`, `/mo/` and `/tw/` are; the website, and so 1.x,
  prices those three in USD, which Farfetch's catalog has no prices in there.
- known limitation: the shipping-from, delivery-speed, sustainability-label and
  size url filters are not applied; they are reported in the run log.

#### 09/14/2026

- improved listing scrape speed and reliability.
- fixed: scraping the same product from different locales returned only one
  record; it now returns one record per locale, each with its own currency.
- fixed: a product pinned to a specific store no longer overwrites the same
  product from a category or brand listing.
- restored support for listing filters in the url: colour, designer, price,
  discount, size scale, sort order, attributes, exclusive, promotion and tags.
  Filters that cannot be applied are reported in the run log instead of being
  silently ignored.
- added support for sale listing pages.
- known limitation: the shipping-from and delivery-speed url filters are not
  applied yet.

#### 06/22/2026

- improved product and listing scrape speed and stability.
- fixed per-variant prices, which were reported as 0 for non-default variants.
- `details.highlights` is now a flat list of strings (previously nested),
  matching the dataset schema.
- `recommendedProducts`: each item's `raw` now carries the full product field
  set (price, attributes, delivery methods, tags, etc.).

#### 01/24/2026

- improve detail data retrieval stability.

#### 22/05/2025

- removed module check if product recommends is enabled.

#### 18/03/2025

- added support of fetch recommended products' detail.

#### 17/03/2025

- added support of fetch variant size/fit info.
- added support of fetch product recommends at most 90.

#### 27/02/2025

- added support of madein,label,condition info

#### 12/22/2024

- added support of fetch Highlights,Composition,Washing Instructions,Product IDs info

#### 11/9/2024

- fix to support new product list page

#### 28/7/2024

- update to supported new struct of product list page
- refactor scraper with newest crawlee

#### 13/7/2023

- fix `load product page html failed` error

#### 2/4/2023

- fix bug of extract from product list page

#### 21/1/2023

- added support of new product data format
- added currentFormatted field for price
- removed useless color variant in the output if the origin not format it as seperate variant option
