By integrating a grocery store into Whisk, the grocery store will be available within Whisk’s platform. This means the store can choose whether the store appears:
- Within every consenting partner on Whisk’s platform (this includes recipe publishers, Samsung Smart Appliances, users of Whisk’s APIs, and Whisk’s consumer apps). There are over 4M pages receiving 400M monthly impressions where your store may appear.
- Exclusively for one or more partners within Whisk’s network
Various use cases for retailers can be found here: https://whisk.com/business/
Upon integration, a retailer becomes available to users based on these rules:
- Across all Whisk platforms/sites (option A) or on only specific sites/partners (option B)
- Users in the relevant locations (geo-location)
Technical integration
There are two parts to an integration:
- Product mapping: Products are mapped to Whisk’s internal ontology which allows Whisk to display the correct store products against shopping list items.
- Authentication: A link between Whisk and the store to allow users to fill their store baskets with selected products.
Typical user flow:
Integration process
Technical integration methods
There are two components to the integration: 1. Product Matching and 2. Store Authentication.
Product Mapping
Whisk uses two methods to map store products to ingredients.
- Using Whisks’ Food Genome (recommended)
Whisk syncs a store’s inventory into the Whisk platform. This can be achieved through an API or by uploading flat files with all product inventory. Inventory at the retailer is typically synced every 24 hours. Whisk then uses the following to make the links between products and shopping list items:
- Natural Language Processing: Whisk matches all products to its proprietary ontology, the Food Genome, automatically using Deep-learning based Natural Language Processing
- Product mapping: Most shopping list line-items have multiple possible products from retailers, so Whisk selects defaults based on algorithms which select “best matches”. These are based on the following criteria to select the most appropriate product:
-
- Item required (what’s closest)
- Quantity required
- Attributes (e.g. organic, fresh, frozen)
- Price
- Personal preferences
- Other attributes
- Using a store’s own matching (alternative)
If a store has its own product matching capability, this can be used instead. This typically allows Whisk to pass in a simplified ingredient (e.g. “<5>, <Carrot>” instead of “5 carrots cut into small pieces and washed”). It may also allow Whisk to authenticate a user in order to use their store loyalty scheme to find personalised matches based on a user’s in-store purchases.
Store authentication
Whisk then needs a method through which to send lists of items to a users’ basket at the retailer. This can be achieved using:
- OAuth/SSO APIs (best-practice, recommended)
- Through methods where Whisk passes a user’s credentials (username/password) to the store through other means (alternative)
Store authentication
Whisk then needs a method through which to send lists of items to a users’ basket at the retailer. This can be achieved using:
- OAuth/SSO APIs (best-practice, recommended)
- Through methods where Whisk passes a user’s credentials (username / password) to the store through other means (alternative)
Store Authentication methods
Whisk uses two methods to authenticate supermarket.
- OAuth / SSO (Single Sign On) integration
This integration method is preferred because it’s (a) more stable, (b) is faster to integrate and (c) requires no login from user once the store transfer is complete (the user can land on a pre-logged-in store page).
2. Username & Password integration
This integration method requires a user to login at the store once the items have been transferred. The user is not automatically logged in on their device.
If a partner wishes to mitigate security responsibilities involved with step #1, Whisk can provide it’s authentication interface directly in the CA, both the turnkey (via iFrame) and API (via OAuth) integration.