When using the App Bridge Resource Picker to select variants from a product with over 50 variants, Shopify displays a “Load all variants” button.
If I click this button and select variants from the full list and click add, they’re included as expected. However, when I reopen the Resource Picker and select a new product without clicking “Load all variants” again for the previously selected product, any variants that were not reloaded (i.e., not part of the initial 50) are deselected when I click add again, even though they were selected before.
Thank you for confirming that this is a known bug. I wanted to clearly outline how severely this issue impacts our use case, as it has been causing real problems for us for over a year.
Our Situation
We’re a Shopify discount app that uses the ResourcePicker to let merchants select products and variants for bundle discounts.
When a merchant selects a product with 100+ variants and uses the “Select All” checkbox, only the first ~50 variants are returned — specifically, the variants visible before clicking “Load all variants.”
Business Impact
Silent data loss
Merchants believe they’ve selected all variants, but only ~50 are actually saved.
Broken discounts
Customers adding variant #60, #70, etc. to their cart don’t receive the discount.
Merchant complaints
Merchants report “the discount doesn’t work,” when it technically does — just not for the silently excluded variants.
Trust erosion
Merchants lose confidence in our app due to a bug that actually originates in App Bridge.
Core Issue
The “Select All” checkbox only selects the currently rendered variants (first ~50), not the full product.
From a user’s perspective, “Select All” naturally implies all variants, not “all currently visible variants.” There’s also no visual indication that the selection is incomplete.
Workaround We Had to Implement
We now detect when ~50 variants are selected on a product that has more variants and automatically expand the selection to include all of them. This approach is fragile and adds unnecessary complexity that ideally shouldn’t be required.
Could you share an ETA for a fix, or consider adding a UI warning when a partial selection occurs?
Thanks again for looking into this, we really appreciate it.