The all Collection
Every shop has a built-in all collection that contains all public products. This is the easiest way to get all products:
Common Patterns
Get all products (paginated)
Get products from a specific collection
Get a single product by slug
Use this when you already know the product slug (e.g., from a URL like/products/cool-t-shirt):
Bundles
A shop can sell bundles - a fixed set of products sold together for one price. The product endpoints return bundles alongside regular products, so every result is one of two shapes, discriminated bytype:
priceis the bundle price for the cheapest selection of variants, converted to the requestedcurrency.compareAtPriceis the undiscounted sum of the products and isnullwhen the creator disabled it or the bundle is not discounted.pricingStrategyis one ofSAME_AS_INDIVIDUAL(sum of the products),DISCOUNT_BASED(discountPercentageoff the sum) orFIXED_PRICE(price).stateisSOLD_OUTwhen the creator marked the bundle as sold out or any of its products is unavailable.
Displaying the price for a selection
price is the bundle price for the cheapest selection of variants. When the bundled products have variants with different prices (say a 3XL shirt costs more than S), recompute the price client-side whenever the customer changes a variant - the response contains everything you need: the pricingStrategy and the raw unitPrice of every variant, already converted to the requested currency:
DISCOUNT_BASED bundle discounts it too - the same math the checkout applies to the variants actually in the cart. Round once, at the end, to the currency’s scale.
This is a display-time preview. The binding amount is always computed server-side from the items in the cart; when requesting a
currency other than the shop’s, the preview can differ from the cart by at most one cent due to per-variant conversion rounding.offers. Control this by composing your collections (for example a collection without the bundled products, or one without the bundle).
Why Collections?
Collections let you:- Organize products into categories (e.g., “Apparel”, “Accessories”)
- Control which products appear on your storefront
- Create featured or seasonal groupings
all collection is always available as a catch-all.