Overview
Layers integrates with popular analytics, personalization, and promotional tools to enhance your search and discovery experience. All integrations are configured through the Layers dashboard, making it easy to enable and manage connections without modifying your theme code. The integration system is designed to be:- Privacy-compliant: All integrations respect the same consent settings as the Layers Pixel
- Non-intrusive: Integrations only use services already loaded on the page
- Dashboard-managed: Enable or disable integrations with a single toggle
- Extensible: New integrations are added regularly based on merchant needs
Configuring integrations
To manage your integrations:- Go to the Settings page in the Layers dashboard
- Select the Integrations tab
- Toggle integrations on or off as needed
- Select Save changes
Supported integrations
Rivo
Rivo is a loyalty and rewards platform for Shopify merchants. When enabled, Layers receives richer customer profile context from Rivo, enabling enhanced personalization in search results based on loyalty tier, points balance, and reward eligibility. Benefits:- Personalize search results based on customer loyalty status
- Surface products relevant to available rewards
- Enhance customer segmentation with loyalty data
Smile.io
Smile.io is a loyalty and rewards platform for Shopify. When enabled, Layers receives Smile.io loyalty context (such as VIP tier) so merchandising rules and ranking signals can factor in each shopper’s loyalty status. Benefits:- Personalize search results by VIP tier and loyalty standing
- Surface rewards-eligible products to engaged shoppers
- Combine loyalty context with other session signals for richer targeting
LoyaltyLion
LoyaltyLion is a customer loyalty and engagement platform for Shopify. When enabled, Layers receives LoyaltyLion points balance and tier context, enabling personalization based on each shopper’s loyalty standing. Benefits:- Personalize search results using points balance and loyalty tier
- Target merchandising at high-tier shoppers or points-eligible customers
- Enrich session context with loyalty signals alongside cart, location, and history
Blotout
Blotout is a privacy-first customer data platform that helps you collect, unify, and activate customer data without relying on third-party cookies. When enabled, Layers forwards widget clickstream events to Blotout and uses Blotout’s User and Device IDs for consistent cross-session tracking. Benefits:- Unified customer identity across touchpoints
- Privacy-compliant event tracking
- Enhanced attribution for visual search interactions
Microsoft Clarity
Microsoft Clarity is a free analytics tool that provides session recordings, heatmaps, and behavioral insights to help you understand how customers interact with your website. When enabled, Layers streams widget click data to Clarity, allowing you to replay sessions involving visual search and shop similar interactions to identify UX friction points. Benefits:- Session recordings of visual search usage
- Heatmaps showing widget interaction patterns
- Behavioral insights for search optimization
Abra Promotions
Abra Promotions is a promotional pricing platform that enables dynamic discounts and flash sales on Shopify. When enabled, Layers natively integrates with Abra’s discount engine, ensuring that price-based sorting and filtering accurately reflects promotional pricing. This integration is essential for merchants using Abra to run sales and promotions. Benefits:- Accurate price sorting with active promotions
- Correct price filtering during sales
- Consistent pricing across search and collection pages
FoxSell Bundles
FoxSell Bundles is a product bundling app for Shopify that lets you create fixed bundles, mix-and-match bundles, cross-sell offers, multi-variant bundles, and volume discounts. When enabled, Layers computes accurate prices for FoxSell bundle products so they appear correctly in price-based sorting, filtering, and search results. Without this integration, bundle products may display incorrect prices because Shopify stores them differently than standard products. Benefits:- Accurate price sorting and filtering for all bundle types
- Correct price display in search and collection results
- Improved search relevance through bundle component awareness — Layers indexes the titles of products included in a bundle, so searches for component products can surface relevant bundles
- Reads the FoxSell metafields on your products and variants to determine bundle configuration
- Computes the true bundle price by resolving component product prices
- Overrides the indexed price range so sorting and filtering reflect the actual bundle price
- Includes component product titles in the search index for better discoverability
- Fixed bundles — the price is calculated by summing each component product’s price multiplied by its quantity. The resulting price range reflects the cheapest and most expensive possible combinations.
- Mix-and-match bundles — supports two pricing models. With fixed pricing, a flat price is applied based on the selected tier. With dynamic pricing, the price is computed by summing the individual prices of the selected component products.
- Cross-sell bundles — the total price is computed from the component products, and any configured percentage discount is applied. The original undiscounted total is preserved as a compare-at price so shoppers can see the savings.
- Multi-variant bundles — Layers evaluates each parent variant’s bundled component variants to determine a minimum and maximum price across all configurations.
- Volume discount bundles — Shopify already stores the correct base price for volume bundles, so no price override is applied. The integration still indexes component product titles for search discoverability.
When you enable the FoxSell Bundles integration, Layers automatically adds the required FoxSell metafield namespaces to your store’s metafield sync configuration. No manual metafield setup is needed.
After enabling the integration, trigger a catalog resync to recompute bundle prices across your catalog. New and updated products are priced automatically going forward.
Edgemesh
Edgemesh is a client-side performance optimization platform that accelerates page load times through intelligent prefetching, predictive preloading, and edge-based caching. When enabled, Layers syncs integration status to your storefront so that Edgemesh-aware components can coordinate prefetching behavior with Layers API responses. Benefits:- Coordinate image prefetching with Layers search and browse responses
- Leverage Edgemesh’s predictive engine alongside Layers’ Link header preload hints
- Unified performance optimization across search, browse, and product pages
- Improved purchase attribution through Edgemesh session tracking — Layers reads
_em_session_idfrom order note attributes to link purchases back to browsing sessions (see Order Attributes)
Global-E Beta
Global-E is an international e-commerce platform that enables cross-border selling by handling localized pricing, currency conversion, and country-specific adjustments for Shopify merchants. When enabled, Layers applies country-based pricing to all search and browse API responses using rate snapshots synced from Global-E. This means shoppers in different countries see prices converted to their local currency with the correct conversion rates, country coefficients, and rounding rules applied directly in Layers results. Benefits:- Localized pricing in search, browse, and recommendation results without additional client-side conversion
- Accurate price-based sorting and filtering using the shopper’s local currency
- Country coefficient adjustments that reflect regional pricing strategies (not just currency conversion)
- Global-E rounding rules applied server-side so displayed prices match your storefront checkout
- You provide your Global-E Merchant Token and API Base URL in the integration settings
- Layers periodically syncs rate data from Global-E, fetching the list of supported countries along with their currency conversion rates, country coefficients, and rounding rules
- When a storefront API request includes a country code (via the
countryparameter or geo context), Layers looks up the matching rate snapshot for that country - All product prices in the response are converted using the formula:
price × currency_conversion_rate × country_coefficient_rate, then rounded according to Global-E’s rounding rules - The response includes
currency_codeandcurrency_decimal_placesmetadata so your storefront can format prices correctly
Rate table dashboard:
After configuring the integration, the Rate Table panel in the Layers dashboard shows all synced countries with their conversion rates, coefficient rates, and currency details. You can manually trigger a resync from this panel if rates need to be refreshed immediately.
Global-E is currently in beta. The integration supports read-only rate syncing from Global-E’s API. Contact support@uselayers.com if you need help getting set up.
Price conversion is applied at query time, so there is no need to resync your catalog when rates change. Updating the rate snapshot is sufficient.
Okendo
Okendo is a customer marketing platform for Shopify that includes product reviews, surveys, referrals, and quizzes. The Layers integration focuses on Okendo’s quiz feature, bringing shopper quiz responses into Layers so you can personalize search and collection results based on each customer’s stated preferences. When a shopper completes an Okendo quiz, the responses are sent to Layers via webhook and stored against the shopper’s session. On every subsequent search or browse request, Layers automatically enriches the session context with the shopper’s quiz profile, allowing merchandising rules and ranking signals to factor in their preferences. Benefits:- Personalize search and collection results using quiz-derived preferences
- Surface products that match a shopper’s stated needs (e.g., skin type, style preferences, fitness goals)
- Combine quiz context with other signals like cart contents, purchase history, and location for richer personalization
- No theme code changes required. Quiz data flows into Layers automatically once the integration is enabled
- Enable the Okendo integration in the Layers dashboard under Settings > Integrations
- Copy the webhook endpoint shown in the setup panel
- In your Okendo dashboard, register the webhook endpoint and copy the signing secret
- Paste the signing secret into the Webhook Secret field in Layers and save
- When a shopper completes a quiz, Okendo sends the response to Layers via webhook
- Layers normalizes the quiz answers and attaches them to the shopper’s session
- All subsequent search and browse requests for that session automatically include the quiz profile as part of the contextual information
Supported webhook topics:
The integration listens for the following Okendo quiz response events:
- quiz_response.create — a shopper submits a new quiz response
- quiz_response.update — a shopper updates an existing quiz response
- quiz_response.delete — a quiz response is removed
Quiz responses are matched to shoppers using the session ID (subscriber ID in Okendo). This means personalization takes effect within the same browsing session in which the shopper completed the quiz.
Yotpo
Yotpo is a customer marketing platform that includes product reviews and ratings for Shopify merchants. When enabled, Layers syncs Yotpo’s review rating and count metafields from your Shopify products so you can sort, filter, and merchandise on social proof. Benefits:- Sort collection and search results by average review rating or review count
- Build merchandising rules that boost highly-rated products or products with a minimum number of reviews
- Filter products by star rating without any additional catalog setup
- No storefront code changes required — Yotpo already writes review data to Shopify metafields, and Layers picks them up automatically
- Adds the Yotpo review metafield namespace to your store’s metafield sync configuration
- Reads the review metafields that Yotpo writes to each product in Shopify
- Exposes them as first-class product attributes you can reference in sort orders, merchandising rules, and search filters
Dashboard panel:
After enabling the integration, the Yotpo review metafields panel in Settings → Integrations shows how many products have each review attribute populated. Select Resync reviews to queue a fresh sync if you just installed Yotpo or if review data looks out of date.
Enabling Yotpo automatically adds its review metafield namespace to your store’s metafield sync configuration. Disabling the integration removes those attributes from your Layers catalog.
After enabling the integration, trigger a catalog resync — or use the Resync reviews button in the integration panel — so review attributes are populated across your catalog. New and updated products are synced automatically going forward.
Judge.me
Judge.me is a product reviews app for Shopify. When enabled, Layers reads the standard Shopify review metafields that Judge.me writes to your products, so you can sort, filter, and merchandise on review count and rating. Benefits:- Sort collection and search results by review count
- Build merchandising rules that boost products with strong social proof
- Filter products by review count without extra catalog setup
- No storefront code changes required — Judge.me already writes review data to Shopify’s standard
reviews.*metafields, and Layers picks them up automatically
Dashboard panel:
After enabling the integration, the Judge.me review metafields panel in Settings → Integrations shows how many products have each review attribute populated. Select Resync reviews to queue a fresh sync if you just installed Judge.me or if review data looks out of date.
Judge.me’s review count is sortable and filterable today. Sorting by average rating is not yet supported for Judge.me because Shopify stores
reviews.rating as a JSON object rather than a plain number.After enabling the integration, trigger a catalog resync — or use the Resync reviews button in the integration panel — so review attributes are populated across your catalog.
Fera
Fera is a reviews and social proof app for Shopify. When enabled, Layers reads the standard Shopify review metafields that Fera writes to your products, so you can sort, filter, and merchandise on review count and rating. Benefits:- Sort collection and search results by review count
- Build merchandising rules that boost highly-reviewed products
- Filter products by review count without extra catalog setup
- No storefront code changes required — Fera writes review data to Shopify’s standard
reviews.*metafields, and Layers picks them up automatically
Dashboard panel:
After enabling the integration, the Fera review metafields panel in Settings → Integrations shows how many products have each review attribute populated. Select Resync reviews to queue a fresh sync.
Stores that installed Fera before March 2022 must enable Shopify standard metafield sync inside Fera before review data appears in Shopify metafields. Newer Fera installations sync by default.
Fera’s review count is sortable and filterable today. Sorting by average rating is not yet supported because Shopify stores
reviews.rating as a JSON object rather than a plain number.Junip
Junip is a product reviews platform for Shopify. When enabled, Layers reads Junip’s review metafields (both Junip’s ownjunip.* keys and the standard Shopify reviews.* keys) so you can sort, filter, and merchandise on ratings and review counts.
Benefits:
- Sort collection and search results by average review rating or review count
- Build merchandising rules that boost highly-rated products
- Filter products by star rating or review count without extra catalog setup
- No storefront code changes required — Junip writes review data to Shopify metafields, and Layers picks them up automatically
Dashboard panel:
After enabling the integration, the Junip review metafields panel in Settings → Integrations shows how many products have each review attribute populated. Select Resync reviews to queue a fresh sync.
Junip’s
junip.rating_average is sortable numerically. The Shopify-standard reviews.rating attribute is not yet sortable because Shopify stores it as a JSON object.Reviews.io
Reviews.io is a customer review platform for Shopify. Unlike other review apps that store ratings in Shopify metafields, Reviews.io keeps rating data in its own API. When enabled, Layers pulls per-SKU rating aggregates directly from Reviews.io and exposes them as first-class product attributes, so you can sort, filter, and merchandise on social proof. Benefits:- Sort collection and search results by average review rating or review count
- Build merchandising rules that boost highly-rated products or products with a minimum number of reviews
- Filter products by star rating without any additional catalog setup
- Ratings stay current automatically. Reviews.io webhooks push new review events to Layers so aggregates update as reviews come in
- Enable the Reviews.io integration in the Layers dashboard under Settings → Integrations
- Enter your Reviews.io Store ID and API key and save
- Layers fetches per-SKU rating aggregates from Reviews.io in batches and stores them against each product and variant
- Layers registers a webhook with Reviews.io so new and updated reviews refresh the affected SKUs automatically
- Ratings become available as product attributes you can reference in sort orders, merchandising rules, and search filters
Synced attributes:
Dashboard panel:
After enabling the integration, the Reviews.io ratings panel in Settings → Integrations shows how many products have rating data populated, the last sync time, and any SKUs Reviews.io could not match. Select Resync ratings to queue a fresh sync if you just installed Reviews.io or if rating data looks out of date.
Reviews.io stores ratings per SKU, not per metafield. You do not need to add any Reviews.io metafields to your Shopify store or enable metafield sync for this integration to work.
After enabling the integration, trigger a catalog resync — or use the Resync ratings button in the integration panel — so review attributes populate across your catalog. Ongoing updates arrive automatically via webhook.
Swym Wishlist Plus
Swym Wishlist Plus is a wishlist app for Shopify. When enabled, Layers syncs the total wishlist count per product from Swym’sswym_wishlist.wishlist_social_count metafield, so you can merchandise by shopper demand.
Benefits:
- Sort collection and search results by wishlist count to surface trending products
- Build merchandising rules that boost products with strong wishlist demand
- Filter products by wishlist count without extra catalog setup
- No storefront code changes required — Swym already writes wishlist counts to a Shopify metafield, and Layers picks them up automatically
Dashboard panel:
After enabling the integration, the Swym wishlist metafields panel in Settings → Integrations shows how many products have wishlist counts populated. Select Resync wishlist counts to queue a fresh sync.
After enabling the integration, trigger a catalog resync — or use the Resync wishlist counts button in the integration panel — so wishlist counts populate across your catalog.
Stockful
Stockful is an inventory intelligence app for Shopify that tracks stock status, sales velocity, and projected stockouts. When enabled, Layers syncs the inventory metafields that Stockful writes to your products and variants, so you can merchandise and sort on live inventory signals. Benefits:- Sort collection and search results by sales velocity or units sold
- Build merchandising rules that demote low-stock or out-of-stock products before they disappoint shoppers
- Push products approaching a projected stockout up or down without manual curation
- No storefront code changes required — Stockful writes inventory data to Shopify metafields, and Layers picks them up automatically
Dashboard panel:
After enabling the integration, the Stockful inventory metafields panel in Settings → Integrations shows how many products have inventory data populated. Select Resync inventory data to queue a fresh sync if you just installed Stockful or if inventory data looks out of date.
Stockful attributes are available in merchandising rules, conditions, and sort orders, but cannot be enabled as storefront facets. Stockful rewrites these values on every inventory movement, so they change too frequently for facet counts to stay accurate. The Enable as Storefront Facet option is unavailable for these attributes.
After enabling the integration, trigger a catalog resync — or use the Resync inventory data button in the integration panel — so inventory attributes populate across your catalog. New and updated products are synced automatically going forward.
Klaviyo
Klaviyo is a marketing platform for email, SMS, and push campaigns. The Layers integration lets you target merchandising rules, banners, blocks, product sequences, search, and sort orders at shoppers who arrive from a specific Klaviyo campaign, instead of pasting UTM strings by hand. Once connected, Layers syncs your Klaviyo campaigns and their tracking UTMs on a nightly schedule and adds a Campaign field under the Klaviyo group in the contextual conditions field picker. Selecting a campaign from the picker matches any shopper whose session UTMs (utm_source, utm_medium, utm_campaign) came from that campaign, across email, SMS, and push channels.
Benefits:
- Target merchandising at shoppers arriving from a specific campaign without copying UTMs by hand
- Consistent campaign targeting across every contextual surface (rules, banners, blocks, sequences, search, sort orders)
- Automatic nightly sync keeps the campaign list current as you launch new sends
- Resolves Klaviyo’s dynamic campaign-name UTM placeholders to the literal values that actually reach the storefront
- Go to Settings → Integrations in the Layers dashboard
- Toggle Klaviyo on. A dialog opens with a Continue to Klaviyo button
- Approve the requested read-only access to campaigns and account info in Klaviyo
- Klaviyo redirects back to Layers and the initial campaign sync starts automatically
- Open any surface that supports contextual conditions (for example, a merchandising rule) and select Campaign from the Klaviyo group in the condition field picker
- Select a campaign from the searchable dropdown. The condition matches when the shopper’s session UTMs match that campaign’s source, medium, and campaign values
- equals — the rule matches only when the shopper arrived from the selected campaign
- does not equal — the rule matches every shopper except those who arrived from the selected campaign
utm_source, utm_medium, utm_campaign) configured in Klaviyo. Campaigns without tracking UTMs are skipped because they cannot be uniquely matched by the shopper’s session.
Campaign matching is case-insensitive and evaluated entirely from the shopper’s session UTMs. There is no request-time call to Klaviyo, so campaign conditions do not add latency to search or browse requests.
Newly launched campaigns appear in the picker after the next nightly sync. Disconnect and reconnect the integration to force an immediate resync.
Listrak
Listrak is an email, SMS, and cross-channel marketing platform. The Layers integration lets you target merchandising rules, banners, blocks, product sequences, search, and sort orders at shoppers who arrive from a specific Listrak broadcast message, without pasting UTM strings by hand. Once connected, Layers syncs your Listrak broadcast messages and their tracking UTMs on a rolling schedule and adds a Campaign field under the Listrak group in the contextual conditions field picker. Selecting a message from the picker matches any shopper whose session UTMs (utm_source, utm_medium, utm_campaign) came from that send.
Benefits:
- Target merchandising at shoppers arriving from a specific Listrak send without copying UTMs by hand
- Consistent campaign targeting across every contextual surface (rules, banners, blocks, sequences, search, sort orders)
- Automatic sync keeps the message list current as you launch new broadcasts
- Falls back to the message subject line when a broadcast does not define a Google Analytics campaign name
- In Listrak, open Integrations → Integration Management, create an integration with type Email, and enable the List and Message areas. Note the generated Client ID and Client Secret.
- Go to Settings → Integrations in the Layers dashboard and toggle Listrak on.
- Enter the Client ID and Client Secret and select Save changes. Layers validates the credentials against the Listrak API.
- The initial message sync starts automatically. Ongoing syncs run every 15 minutes with a wider daily reconciliation.
- Open any surface that supports contextual conditions (for example, a merchandising rule) and select Campaign from the Listrak group in the condition field picker.
- Select a message from the searchable dropdown. The condition matches when the shopper’s session UTMs match that message’s tracking values.
Supported operators:
The Listrak Campaign field supports two operators:
- equals — the rule matches only when the shopper arrived from the selected message
- does not equal — the rule matches every shopper except those who arrived from the selected message
If a Listrak list has Google Analytics disabled, its messages are skipped during sync. Enable Google Analytics on the list in Listrak to make its broadcasts targetable in Layers.
Campaign matching is case-insensitive and evaluated entirely from the shopper’s session UTMs. There is no request-time call to Listrak, so campaign conditions do not add latency to search or browse requests.
Newly launched broadcasts appear in the picker after the next sync (typically within 15 minutes).
Event forwarding
When analytics integrations (Blotout, Clarity) are enabled, Layers forwards visual search and shop similar events to these services. The following events are forwarded:Implementation notes
- Integrations only forward events to services that are already loaded on your page
- No additional scripts are loaded by enabling integrations
- All integrations respect your store’s consent management settings
- Events are forwarded with the same payload structure as they are sent to Layers
- If an integration service is not available on the page, events will silently skip forwarding
Requesting new integrations
Layers regularly adds new integrations based on merchant needs. If you use a tool that isn’t currently supported, you can request it directly from the dashboard. To request a new integration:- Go to Settings → Integrations in the Layers dashboard
- Select Request an integration in the page header. The same button also appears when your search matches no integrations
- Fill in the request form:
- Service name - the tool or platform you want connected
- Category - the closest matching category, or Other
- What should it do in Layers? - which data should flow in and how you’d use it, such as sorting, filters, or targeting
- Select Send request
- Technical feasibility
- Merchant demand
- Privacy and performance considerations
- Alignment with Layers’ integration principles