App bridge 2.0 bug blocks app submission

Shopify Partner
59 6 16

I recently submitted an app using app-bridge 2.0 and it got rejected for reasons I think are directly related to a 2.0 bug.

The reviewer rejected my app because of some error I’ve never encountered. When I looked at the screencast, I saw that the reviewer was trying to access my app through the direct app url rather than through shopify (e.g. I tested this same method of access with my other app already approved in the app store and still on version 1 of app bridge and it worked.

At first, I thought it was because he was missing the ‘host’ parameter, so I added code into the app that would base64 encode the shopOrigin as the host, if it was missing. I tested it again and though the initial error was gone, it redirected me to my storefront with an error saying app not found. I figured this was something related to unapproved vs approved apps and it wouldn’t be a problem because testers probably have magical tools.

But after sleeping on it, I didn’t want to risk getting the app rejected again so I tested my app again with a downgraded version of app-bridge (v1.30.0), and it worked. I could access my app directly from the app url and it would redirect me to my app embedded within the Shopify partner dashboard. The only thing I changed was the app-bridge version.

It seems to me that it’s highly probably that app-bridge 2.0 is the cause of the bug here. It may be a niche use-case for most merchants but it’s a blocker for any developer trying to submit an app. Hope this helps anyone else with the same problem.

Replies 2 (2)

Shopify Partner
72 18 33

Hi @kyle_truong,

I struggled with this for a few days and finally found this PR coming down the road in the shopify_app gem:

Here is everything that will be included in 18.0.0:

Hope that helps!

Playwright | Create Shopify Scripts without writing code |
- Was my reply helpful? Please Like and Accept Solution.

Shopify Partner
59 6 16

It's been a few months and I found the problem still persists on a new app I'm building.

I made sure to set both `shop` and `host` parameters, the `host` one being base64 encoded, but app bridge is redirecting to a 404 page. I managed to bypass the issue with my last app submission by downgrading to app bridge 1.30.0 but it seems that app bridge 2 is now required for new apps. I also made a github issue outlining more details here:

I may be lucky if my future app reviewer doesn't test the same thing but it still breaks the return flow on app subscriptions. How can I work around/fix this issue?