ResourcePicker "Select All" only selects visible variants (~50), not all variants - Critical bug for discount apps

When using shopify.resourcePicker() to select a product with more than 50 variants, clicking the “Select All” checkbox only selects the currently visible variants (~50), not all variants of the product.

The user must manually click “Load all variants” at the bottom of the list before selecting - but there’s no indication this is required, and most users don’t notice the button.

Steps to Reproduce

  1. Call shopify.resourcePicker({ type: “product”, filter: { variants: true } })
  2. Select a product with 100+ variants
  3. Click the “Select All” checkbox (top-left)
  4. Click “Add”
  5. Check the returned variants array

Expected: All 100+ variant IDs returned
Actual: Only ~50 variant IDs returned (the visible/rendered ones)

Code Example

const result = await shopify.resourcePicker({
type: “product”,
action: “select”,
multiple: false,
filter: { variants: true }
});

console.log(result[0].variants.length);
// Expected: 100+ (all variants)
// Actual: ~50 (only visible variants)

Business Impact

We’re a Shopify discount app. This bug causes:

  1. Silent data loss - Merchants believe they selected all variants, but only ~50 are saved
  2. Broken discounts - Customers adding variant #60, #70, etc. don’t receive discounts
  3. Support burden - Merchants report “discount doesn’t work” when it’s actually this App Bridge bug
  4. Workarounds required - We had to implement detection logic to auto-expand selections, adding fragile complexity

This has been affecting our merchants for over a year. We’ve seen the related thread where @Liam-Shopify confirmed it’s a known bug under investigation, but wanted to create a dedicated post to ensure
visibility given the severity.

Environment

  • App Bridge (latest via shopify global)
  • Affects both @shopify/app-bridge-react and direct App Bridge usage
  • Reproducible across all browsers

“Select All” checkbox should select ALL variants, not just rendered ones

Is there an ETA on a fix? This is a P1 for apps dealing with variant-level selections.