We've created a new shopify app which would act as an interface between our platform and shopify, thus connect and Sync store(s) on our platform with shopify. Furthermore, will sync all products, collections and other relevant details.
However, its a one way sync at the moment (from our platform to shopify and not other way around).
Talking about tech stack, our app is built upon NodeJs + ReactJs.
We've also introduced AWS lambda functions (serverless tech) to do away with the need for provisioned servers.
We've recently submitted app for review to shopify so that it can listed and publicly available for customers to install and use.
Received feedback from them that they're facing white-screen as soon as they try install app from shopify for connecting stores. Attaching reference screen shot below:
Apparently, 404 - page not found error.
We managed to reproduce same issue on our local testing environments and observed that this is more of Infrastructure/environment issue rather than an app issue and came to conclusion that some Lambda related config may be causing this issue since if we remove lambda from picture and verify install-uninstall scenarios, they are working perfectly and as desired. But with Lambda, this issue can be reproduced frequently on multiple environments.
Since, we dont want to take chance and go for app submission with this issue still there (which will increase chance of another rejection), only option we've is to remove Lambda from picture and then verify.
Since im not very much familiar with Lambda,
Another point i want to highlight here's our customers/merchants are also already doing app install/uninstall and havent faced/reported any such issue yet. So this issue seems confined to shopify review process, as during the review process, they encountered this issue that prevented them from completing the review. And as a result, they didn't approve our app.
Look forward to some timely assistance/feedback/suggestion.
Are you using the React+Next+Node? If so, it's a know issue that nextJs doesn't work well on AWS Lambda.
I've tried deploying the same tech stack do Lambda before and had the same issue as you.
Your best option is to provision a node server and run your app on it.
If you submit the app the the review team has the same issue they might suspend your account.
NextJS creates/removes files as the pages are requested. For that reason it needs to use the filesystem, which is not available when using lambda.
The last time I looked into that was about 6 months ago.
After spending a considerable amount of time I gave up and had to provision a server the tradicional way. Might try again for my next app.