Feed table schema reference

Every feed has a dedicated MySQL table in the Adobe Commerce database. All feed tables share the same column structure. The table below lists each feed with its CLI feed name, indexer ID, and feed table name.

Supported feeds

Actual list of feeds depends on the installed SaaS Data Export package.

Feed (--feed)
Purpose
Indexer ID
Feed Table
Export Mode
products
Product catalog (attributes, categories, images, etc.)
catalog_data_exporter_products
cde_products_feed
Immediate
productAttributes
Attribute definitions and metadata. Used to define search schema.
catalog_data_exporter_product_attributes
cde_product_attributes_feed
Immediate
categories
Categories data
catalog_data_exporter_categories
cde_categories_feed
Immediate
prices
Product prices with customer group prices and tier prices
catalog_data_exporter_product_prices
cde_product_prices_feed
Immediate
variants
Configurable product variants
catalog_data_exporter_product_variants
cde_product_variants_feed
Immediate
scopesWebsite
Website with store view codes
scopes_website_data_exporter
scopes_website_data_exporter
Legacy
scopesCustomerGroup
Customer group definitions
scopes_customergroup_data_exporter
scopes_customergroup_data_exporter
Legacy
productOverrides
Calculated product permissions
catalog_data_exporter_product_overrides
cde_product_overrides_feed
Immediate
categoryPermissions (EE)
Raw category permissions data
catalog_data_exporter_category_permissions
cde_category_permissions_feed
Immediate
orders
Sales orders status
sales_order_data_exporter_v2
sales_data_exporter_orders_v2
Legacy

The Export Mode column indicates how each feed collects and submits data:

  • Immediate-mode feeds — Collect data, skip unchanged items using content hashes (hash deduplication), and submit updates in the same indexer run.
  • Legacy-mode feeds (scopesWebsite, scopesCustomerGroup, orders) — Store assembled data in the feed table first and submit it via a separate cron job.

See Synchronization modes.

Schema

Column
Type
Description
id
INT (PK)
Auto-increment primary key
source_entity_id
INT
Entity ID from the Commerce source table (for example, catalog_product_entity.entity_id)
feed_id
VARCHAR
Unique identifier for a feed item. Computed as a hash of the item’s identity fields (for example, sku + storeViewCode), not an auto-increment value.
feed_data
JSON
Feed payload for this item. Only minimal information as entity identifier and scope is populated. When PERSIST_EXPORTED_FEED=1 is set, full payload is stored.
feed_hash
VARCHAR
Content hash used for change detection. Computed from the payload, excluding timestamps (modifiedAt, updatedAt). If the hash matches the previous export, the item is not re-submitted.
is_deleted
TINYINT
Soft-delete marker. Set to 1 when the entity is deleted in Commerce.
modified_at
TIMESTAMP
Last time this feed item was modified
status
INT
Submission status code from the last export attempt. See Feed submission and HTTP error handling.
errors
TEXT
JSON-encoded error details returned by the SaaS service for this item
metadata
JSON
Internal sync flags and lock metadata info used by the export framework

Common diagnostic queries

Use the following SQL queries to inspect feed table state directly. Replace placeholder values such as <SKU>, <ATTRIBUTE_CODE>, and <CATEGORY_ID> with actual values from your environment. See Supported feeds for the full list of table names.

Products feed — by SKU:

SELECT JSON_EXTRACT(f.feed_data, '$.sku') AS 'SKU',
       JSON_EXTRACT(f.feed_data, '$.storeViewCode') AS 'store view code',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_products_feed f
WHERE JSON_EXTRACT(f.feed_data, '$.sku') IN ('<SKU>');

Product attributes feed — by attribute code:

SELECT JSON_EXTRACT(f.feed_data, '$.attributeCode') AS 'code',
       JSON_EXTRACT(f.feed_data, '$.storeViewCode') AS 'store view code',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_product_attributes_feed f
WHERE JSON_EXTRACT(f.feed_data, '$.attributeCode') IN ('<ATTRIBUTE_CODE>');

Prices feed — by SKU:

SELECT JSON_EXTRACT(f.feed_data, '$.sku') AS 'SKU',
       JSON_EXTRACT(f.feed_data, '$.websiteCode') AS 'website code',
       JSON_EXTRACT(f.feed_data, '$.customerGroupCode') AS 'customer group code',
       IFNULL(cg.customer_group_code, '-- (base price)') AS 'AC customer group',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_product_prices_feed f
LEFT JOIN customer_group cg
       ON sha1(cg.customer_group_id) = JSON_EXTRACT(f.feed_data, '$.customerGroupCode')
WHERE JSON_EXTRACT(f.feed_data, '$.sku') IN ('<SKU>');

Product overrides feed — by SKU:

SELECT JSON_EXTRACT(f.feed_data, '$.sku') AS 'SKU',
       JSON_EXTRACT(f.feed_data, '$.websiteCode') AS 'website code',
       JSON_EXTRACT(f.feed_data, '$.customerGroupCode') AS 'customer group code',
       IFNULL(cg.customer_group_code, 'NA (deleted)') AS 'AC customer group',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_product_overrides_feed f
LEFT JOIN customer_group cg
       ON sha1(cg.customer_group_id) = JSON_EXTRACT(f.feed_data, '$.customerGroupCode')
WHERE JSON_EXTRACT(f.feed_data, '$.sku') IN ('<SKU>');

Categories feed — by category ID:

SELECT JSON_EXTRACT(feed_data, '$.categoryId') AS 'Category ID',
       JSON_EXTRACT(f.feed_data, '$.storeViewCode') AS 'store view code',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_categories_feed f
WHERE JSON_EXTRACT(feed_data, '$.categoryId') IN (<CATEGORY_ID>);

Variants feed — by configurable product SKU:

SELECT JSON_EXTRACT(feed_data, '$.parentSku') AS 'configurable SKU',
       JSON_EXTRACT(feed_data, '$.productSku') AS 'Variant SKU',
       JSON_EXTRACT(f.feed_data, '$.optionValues') AS 'options',
       f.status, f.modified_at, f.is_deleted, f.errors
FROM cde_product_variants_feed f
WHERE JSON_EXTRACT(feed_data, '$.parentSku') = '<SKU>';
recommendation-more-help
commerce-help-data-export