E-commerce
Everything in A vs B's e-commerce suite is built on one idea: you connect your catalog once, and from then on A vs B keeps a single, always-fresh copy called the Live Catalog. Recommendations never show stale prices. Out-of-stock items drop automatically. Commerce audiences read the same product truth.
You do not wire a separate catalog for each feature. Connect it once, and the whole platform shares it.
The Commerce menu shows in the sidebar for projects marked as an online store, so a blog or a marketing site is not carrying a store menu it will never open. You are asked when you create a project, and you can change the answer at any time from Project Settings › General › Online store. Switch it on and the menu appears straight away.
- Turn on Online store to add the Commerce menu to this project's sidebar.
How the data contract works
The recommended path to a complete catalog is a server-side source: Shopify, a product feed URL, the Push API, or an upload. These give you every product, not just those a shopper happened to browse. You can optionally layer the snippet's live price/stock capture on top to record real-time price changes and the exact price each shopper saw.
When more than one source has data for the same product, the freshest write wins. The order of priority is:
live browser event → Shopify webhook → Push API / feed → upload baselineEvery feature that reads product data goes through the same Live Catalog. There is no secondary copy, no per-feature mapping step, and no rebuild when a price changes in your store.
The journey
Troubleshooting
Products are not showing up in the verification panel
For server-side sources (Shopify, feed, Push API, upload), check the source health card on the Product catalog page for an error message. For the snippet's live price/stock capture, check that the A vs B snippet is installed on your product pages and that your mapping uses a real sku value. If you are relying on the browser event source (GA4 or JSON-LD), confirm it is switched on for this project on the Product catalog page. The verification panel only counts views that actually reached A vs B.
Catalog coverage is lower than expected
Coverage is the percentage of items your recommendation recipes suggest that have a Live Catalog row. If it is low, your recipes are referencing SKUs that have not come through the catalog yet. Check the Products tab on the catalog management page: search for a specific SKU to see whether it is stored. The most common cause is that the catalog source has not finished its first import, or that your product feed does not include all the SKUs your order history references.
A source row shows an error status
Open the error detail in the source health card. Common causes: the feed URL returned a non-200 response; the Shopify bulk operation failed partway through; a Push API bulk import hit an infrastructure error partway through (already-processed rows are kept, and A vs B retries automatically). A single row with no sku does not cause this: A vs B skips that one row, counts it, and lets you review it under View skipped items without failing the rest of the import. Fix the underlying issue and use the Sync now button to re-trigger the source.
Out-of-stock products are appearing in recommendations
The excludeOutOfStock parameter defaults to on for every recipe. If OOS products are still appearing, check that your catalog source is writing the availability field. When a source write does not include availability, A vs B does not leave the field blank: it defaults the product to in_stock, so the OOS filter correctly leaves it showing, exactly as if it really were in stock. Fix the mapping in your source so availability is included, and out-of-stock products will start being excluded.