Skip to content

Product Settings

The Product Settings page allows you to configure which product data to sync from your Shopify store and how to filter products during synchronization.

Overview

The Product Settings page is divided into two main sections:

  1. Product Field Selection - Choose which fields to include in the sync
  2. Product Filter Selection - Configure filters to determine which products are synchronized

Product Field Selection

Select which product and variant fields you want to store in your database. This minimizes the amount of data you sync and store.

Available Field Categories

CategoryDescriptionDefault Selection
Product FieldsStandard Shopify product fields (id, title, productType, tags, etc.)All selected
Variant/Inventory FieldsProduct variant fields (id, price, inventoryQuantity, etc.)All selected
Product MetafieldsCustom product metafields grouped by namespaceNutrition panel fields selected
Variant MetafieldsCustom variant metafields grouped by namespaceCustom quiz_recommendations selected

Product Filter Selection

Configure filters to determine which products are synchronized. Filters use a group-based system where:

  • Groups are connected with OR logic (products matching any group are included)
  • Conditions within a group use AND or OR logic (configured per group)

Filterable Fields

Field TypeGraphQL FilterableFields Available
Product Fields✅ Yesvendor, status, productType, tags
Variant Fields✅ Yesprice, inventoryQuantity
Product Metafields❌ No (JavaScript filtering)All product metafields
Variant Metafields❌ No (JavaScript filtering)All variant metafields

Filter Operators

Operators vary by field type:

Field TypeSupported Operators
StringEquals, Not Equals, Contains, Starts With, Ends With
BooleanEquals, Not Equals
NumberEquals, Not Equals, Greater Than, Less Than, Greater/Equal, Less/Equal
Array/TagsContains, Contains Any Of, Does Not Contain, Does Not Include Any Of
List TypesContains, Contains Any Of, Not Contains

How It Works

  1. GraphQL Pre-filtering: Product and variant fields that are GraphQL-filterable are used to build the initial query
  2. JavaScript Post-filtering: Metafields and non-filterable variant fields are filtered in JavaScript after fetching
  3. Hybrid Approach: This minimizes API calls while still supporting all filter types

Example Filter Configuration

Group 1 (AND):
  - product.status = "ACTIVE"
  - variant.price < 10.00
  - variant.inventoryQuantity > 1
  - variant.custom.quiz_recommendations = true

Group 2 (OR):
  - product.productType != "no buy"
  - product.tags does not include "felise" or "kaufusi"

Products matching Group 1 OR Group 2 will be synchronized.