Hi everyone,
I’m developing a custom Wishlist app for my Shopify store, and I’m running into an issue with bundle products. When I try to add a bundle product to the wishlist, I get the following error message in the product admin panel:
“Channel Channel Local Wishlist does not support bundle products”
This appears as a red error banner when selecting the custom app as a sales channel and saving the product in the Shopify Admin
A few details:
-
The bundle product is active and visible in the Online Store.
-
My app is installed as a custom app and uses the Shopify Admin and Storefront APIs.
-
Regular products and variant-based products work perfectly with the wishlist app.
My Questions:1. Are there special permissions or scopes required in the app to support bundle products?
-
Is there a limitation in Shopify or a known restriction that blocks bundle products from being published to custom sales channels like “Local Wishlist”?
-
What is the recommended approach for making wishlist apps compatible with bundle products?
The error is real, but I think the sales channel is the thing to question rather than the bundle support.
Bundles carry component relationships that a channel has to declare it understands, and custom channels do not get that by default, which is why the publish is refused. There is no scope you can add to change it.
The bigger question is why the wishlist is a sales channel. A wishlist stores references to products and reads them back. It does not need its own publication, because it is never the surface the customer buys from; they buy from the online store. Creating a channel means every product now has to be published to it, and you inherit exactly this class of restriction for bundles, and later for anything else Shopify adds channel gating to.
What I would do instead: store the product and variant GIDs in your own data, and read them back through the Storefront API against the Online Store publication the customer is already browsing. Bundles come back fine that way because you are reading a product that is published where it is meant to be published. You also get correct per-market pricing and availability for free, which a custom channel would have made you handle yourself.
The one thing to handle either way is deletion: a saved GID can point at a product that no longer exists, so treat a null response as “remove from list” rather than letting it throw.
I build Listify, a registry and wishlist app, and we store references rather than publishing to our own channel, which is the main reason bundles have never been a special case for us.