World is now on Opti ID! Learn more

Jonas Bergqvist
Nov 4, 2015
  3247
(0 votes)

New version of EPiServer.Find.Commerce

A new version of EPiServer.Find.Commerce (9.3.0) was recently released. This version makes it easier to use Find together with Commerce. We now listen to ecf events, price updates, and inventory updates. We also index markets and relations. More features will be released soon, as the nested querying is being developed by the Find team.

Listening of ECF events

We listen to ECF events. We add your typed content to the indexing queue when a change is made in the ECF layer.

Service API

Your typed content is now indexed/reindexed/removed from the index after a request is made to the service API.

Commerce manager

We listen on remote events from commerce manager, and index your typed content when something changes in commerce manager.

It's not 100% sure that the front end site will receive the event from commerce manager. If the front-end site is down when an event is triggered, the typed content is not  added to the indexing queue. A safer approach will be developed later.

Indexing prices

We index both the default price and the whole price collection for variation content. Performance will be a lot better when receiving prices from the index, instead of using the price provider. It will be possible to make price filters for a specific user when nested query support is released in EPiServer.Find.

Reindex content on price updates

If your document indexes a property of type Price, or IEnumerable<Price>, the document is reindexed when prices are changed, if the price provider raises the price update event. The default provider raises the price update event. More information how to raise the event from a custom price provider can be found here: http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/9/Search/find-integration/raise-price-and-inventory-event-updates/

Remove prices from index

It's easy to remove the indexing of prices for variation content. Documentation how to remove the extension can be found here: http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/9/Search/find-integration/overriding-default-conventions/

Indexing inventory

We index the inventory collection for the variation content. Performance will be a lot better when receiving the inventory from the index, instead of using the inventory provider. There can be a problem indexing inventories if the inventory is changed too often. In that case, the inventory should be removed from the index.

Reindex content on inventory updates

If your document indexes a property of type Inventory, or IEnumerable<Inventory>, the document is re-indexed when the inventory is changed, if the inventory provider raises the inventory update event. The default provider raises the inventory update event. More information how to raise the event from a custom inventory provider can be found here: http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/9/Search/find-integration/raise-price-and-inventory-event-updates/

Remove inventories from index

It's easy to remove the indexing of inventory for variation content. Documentation how to remove the extension can be found here: http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/9/Search/find-integration/overriding-default-conventions/

Relations

We now index relations between different catalog content.

  • Products: Variation references for a product
  • Variations: Product(s) the variation are related to.
  • Packages: Package entries for a package, and the related package(s) for the entries.
  • Bundles: Bundle entries for a bundle, and the related bundle(s) for the entries.
  • Nodes: Both parent node relations, and child node relations.
  • Associations

Markets

Markets are indexed for EntryContentBase, which makes it easy to filter content based on a market. The filter "FilterOnCurrentMarket" only receives entries that are available on the current market.

New version of Brilliant cut

There is an updated version available of Brilliant cut, which uses the new EPiServer.Find.Commerce package.

Github: https://github.com/jonasbergqvist/BrilliantCut

Site: http://www.brilliantcut.se/

Documentation

Documentation about the find integration can be found here: http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/9/Search/find-integration/find-integration/

Nov 04, 2015

Comments

Please login to comment.
Latest blogs
Make Global Assets Site- and Language-Aware at Indexing Time

I had a support case the other day with a question around search on global assets on a multisite. This is the result of that investigation. This co...

dada | Jun 26, 2025

The remote server returned an error: (400) Bad Request – when configuring Azure Storage for an older Optimizely CMS site

How to fix a strange issue that occurred when I moved editor-uploaded files for some old Optimizely CMS 11 solutions to Azure Storage.

Tomas Hensrud Gulla | Jun 26, 2025 |

Enable Opal AI for your Optimizely products

Learn how to enable Opal AI, and meet your infinite workforce.

Tomas Hensrud Gulla | Jun 25, 2025 |

Deploying to Optimizely Frontend Hosting: A Practical Guide

Optimizely Frontend Hosting is a cloud-based solution for deploying headless frontend applications - currently supporting only Next.js projects. It...

Szymon Uryga | Jun 25, 2025

World on Opti ID

We're excited to announce that world.optimizely.com is now integrated with Opti ID! What does this mean for you? New Users:  You can now log in wit...

Patrick Lam | Jun 22, 2025

Avoid Scandinavian Letters in File Names in Optimizely CMS

Discover how Scandinavian letters in file names can break media in Optimizely CMS—and learn a simple code fix to automatically sanitize uploads for...

Henning Sjørbotten | Jun 19, 2025 |