Behind the App: Klevu

Lauren Clevenger
Dec 3, 2019 · 8 min read

Klevu is an instant site search solution for ecommerce stores. Klevu provides BigCommerce’s only on-site search solution powered by Natural Language Processing technology. Klevu’s most powerful features include self-learning search, multi-language support, merchandising promotions and a data-driven dashboard to drive conversions.

We recently sat down with Joseph McDermott, Senior Solutions Architect at Klevu to talk about their journey to building their BigCommerce app and what’s next on their roadmap.

Hi, Joseph. Tell us about Klevu.

Klevu is an intelligent on-site search solution designed to help ecommerce businesses increase onsite sales and improve the customer shopping experience, by leveraging advanced semantic search and natural language processing to help visitors find exactly what they are looking for.

Our latest App provides exactly this for BigCommerce. After a simple installation process, Klevu immediately begins synchronizing all of the complex data within products, categories and CMS content of a BigCommerce store, enriching and refining this data for search as it passes through the Klevu indexers.

Once integrated into the theme, again with a simple automated process, the BigCommerce search input box will be transformed into a powerful quick-search including search term suggestions, products, categories, pages, and articles. The style and functionality can be customized further via the Klevu Merchant Centre, a portal nested within your BigCommerce admin panel.

On submitting a search query, the search results page is also transformed into an intelligent listing of your products, automatically ranked in an order appropriate to what the customer is looking for. Klevu also provides faceted search out of the box, including BigCommerce custom product options, allowing customers complete control over search results filtering.

The Klevu App for BigCommerce launched in August 2019 as a private beta to great success and has since launched on the public BigCommerce marketplace. It has been well received by all customers so far, but we’re not stopping there. We are continually reviewing feedback from customers and our own internal discussions to continue innovating search for BigCommerce.

Why did you decide to build this app and offer it in the BigCommerce Marketplace?

The prerequisites for a Klevu integration were all met by BigCommerce, so we knew we’d be a good fit for this platform and market.

We were looking for:

  • A mature API exposing the data needed for Klevu to index and enrich.
  • A flexible theme to integrate into the applicable areas.
  • The ability to seamlessly integrate our admin portal into the BigCommerce admin.
  • Opportunity. Most importantly, we were looking for a good market where we could offer improvement in the native search offering.

BigCommerce is a huge player in the ecommerce market and we only expect it to grow even bigger, so we are very excited to have such a seamless integration of advanced, intelligent search within this powerful platform.

What do you think made the development of this app a success?

First and foremost this app build was a success because of the team of incredibly talented people we have at Klevu working across three different continents and even more timezones. Only upon reflection do you realize how many different skill-sets go into launching a successful app of this nature.

  • In the UK CEO Nilay Oza and Product Manager, Saumil Trivedi in India came up with the initial blueprints of the BigCommerce App, aiming to repeat on successes with previous App integrations with other ecommerce platforms and markets.
  • James Roberson led the development of the App over in the US, building out a middleware between BigCommerce and Klevu to power the data synchronization and App configuration.
  • In India Akanksha Maurya lead the development of the JavaScript integration with the frontend, ensuring the Klevu search functionality displayed perfectly across the many iterations of BigCommerce themes.
  • Gunjan Aswani, traveling between UK and India, led the backend development work required to integrate the BigCommerce data with the Klevu indexers, where the search data is enriched and prepared for intelligent search.
  • Daniela Rouse in the US, Amy Marks in the UK, and Tabrez Shaikh in India ensure any and all marketing materials for the App look great and convey the relevant details of what the Klevu can do for BigCommerce.
  • Miles Tinsley and Ford Crane in the US remain in constant communication with the BigCommerce team regarding commercials and sales.
  • Finally, myself and CTO Niraj Aswani act as hybrid technical leads, ad-hoc developers and product owners overseeing and supporting all of the above.

Add to this our entire team of developers, sales, marketing, devops and support agents making sure our customers understand the App, get the support they need and most importantly give them and their customers the best possible search in their BigCommerce store.

With such a wealth of varied people involved in the project, both technical and non-technical, we were able to adapt our launch requirements for the App in an agile manner and ensure must-have features were included and nice-to-have features were filed in our backlog.

How did you build it?

Integrating Klevu Search involves two key parts:

  1. A data feed to collect and index the product and cms data.
  2. A frontend integration to display search results on the merchant’s website.

We were lucky enough to already have some active BigCommerce customers integrated with Klevu using their own data feed, as well as similar integrations with other ecommerce platforms, so we had a pretty good idea of what was important for an MVP in a new market:

  • One-click installation.
  • Automated data feed from BigCommerce with products, facets and cms content.
  • Out of the box frontend integration of auto-suggest, landing page and facet filtering.
  • Multi-currency support.
  • Customer group pricing and price lists, in all currencies.
  • Customer group level product visibility for B2B customers.

In developing our BigCommerce App we must have covered every BigCommerce tool available including API v2 and v3, Stencil CLI theme bundling, webhooks, customer group product visibility, and B2B price lists.

We used a LAMP stack for the App utilizing the BigCommerce PHP composer package “bigcommerce/api” to give easy access to the API. Our integration process involves downloading and modifying the customer theme, for which we automate the usage of BigCommerce node package “stencil-cli”.

In terms of building the data feed, BigCommerce API allows for the majority of catalog data to be retrieved, however, as a developer one must be mindful of API rate limits, back-off periods and retry functionality, especially when synchronizing stores with tens of thousands of SKUs. We spent a good amount of effort timing, analyzing and de-duplicating API requests to ensure we were as performant as possible, including assessing the pros and cons of BigCommerce APIv2 vs APIv3 for each endpoint.

The frontend integration involved making changes to the BigCommerce theme to inject some placeholder templates and JavaScript for rendering Klevu quick-search and the search results landing page. We utilized theme variables of Stencil and Blueprint to ascertain the current customer’s group and active currency in order to provide accurate and contextual search results in terms of price display, price filtering, and product visibility.

With BigCommerce it is easy to create and maintain Dev, Staging and Production versions of our App, connected to corresponding versions of our backend systems, making ongoing development very straightforward. We remain in active development of new features today!

Did you encounter any technical challenges along the way? If so, what were they?

One-click Installation

An automated, one-click installation process was a must-have from day one, having been informed by the BigCommerce team that a lot of Apps require a developer to be involved. This actually caused us the most headaches due to the sheer flexibility of BigCommerce Themes, which can be Stencil or Blueprint, can have any folder/file structure and come in many forms. We needed an automatic process that would inject the required customizations into all of them. This automation was nearly dropped from our MVP a few times, but we persevered to deliver this key feature and have had great success with our customers so far.

Price Lists and Multi-Currency

Some of the MVP features we opted for could be considered quite advanced for a launch product, such as Customer Group Pricing and Multi-Currency, however, the majority of our first customers are actively using these BigCommerce features and require their search to reflect this, so we have already been rewarded by this decision. These group-specific and currency-specific prices are not available via the BigCommerce API, so we spent a good amount of time ensuring our calculations matched those of BigCommerce.

Tax

Finally, there was tax, which did result in a minor course correction limiting us to US-only for the launch of our beta. The existing BigCommerce API does not provide prices both inclusive and exclusive of tax, and there is currently no way to retrieve the tax rates via the API. After detailed technical discussions with various members of the BigCommerce team, we came up with an interim solution to allow merchants to choose how tax should be represented in search results. We spent a lot of time ensuring our calculations matched those of BigCommerce to the penny for all currencies, all customer group discount types and all tax configurations. We are now in discussions with the BigCommerce team on how they might expose this data via their API to eventually replace our interim solution.

Tell us about the release process for Klevu. How did it go? What did you learn?

Our first installation was actually on a Klevu employee’s BigCommerce store, so it was nice to have a relatively low-pressure starter, and we learned a lot from just that one installation which we could feedback into our support documentation and onboarding process.

We arranged a private beta period with the BigCommerce team, during which time we carefully selected some key customers who had BigCommerce stores complex enough to push our App integration to the limits.

We’ve had a few bits and pieces come back in terms of small bugs, tweaks and improved control over which data gets indexed for search, but nothing more than one would expect from a beta period. We did a huge amount of user acceptance testing during development so this is a testament to our QA teams for finding and ironing out any issues prior to launch.

The highlight is to report that we have had flawless integrations with all BigCommerce themes we’ve attempted to install on so far using our automated installation process, which was a difficult part of the project for us so we are very pleased to have a positive outcome.

Recently we gave a demo to the BigCommerce team, showing the installation process and showcasing the power of Klevu search results. The response to which was excited clapping during the video conference, which was a huge boost for us in terms of meeting their high expectations.

Finally, What’s Next for Klevu?

We’re only at the beginning of our journey with BigCommerce. We’re already receiving great feedback from happy customers on potential features and granting even more control over how Klevu Search integrates with their store.

In fact, since our initial launch, we’ve already made one major improvement, utilizing the `include` functionality of BigCommerce’s API v3 which allows us to collect more complex Product data in fewer requests, drastically reducing the time needed to synchronize larger BigCommerce stores from minutes to just seconds in some cases.

We definitely see this as an ongoing partnership working with the BigCommerce team and BigCommerce Community and look forward to our journey together improving on-site search for all of their respective customers.


We’d like to thank Joseph and Klevu for sharing their story and giving us an inside look into their development process. You can learn more and view the Klevu app in the BigCommerce Marketplace here.

BigCommerce Developer Blog

News, tips, and stories for developing on BigCommerce

Lauren Clevenger

Written by

Senior Manager, Community & Developer Relations at BigCommerce

BigCommerce Developer Blog

News, tips, and stories for developing on BigCommerce

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade