Authenticate, create users and setup integration in external platform via App

We have a SaaS platform that works well. Our platform has an ability to import products from Shopify. For that we ask users to create a custom app (via Develop Apps) to create an integration and provide us with “admin API access token”, which we save in our DB. It works fine, but user experience is not pretty (creating apps, pasting tokens, etc.).

We would like to have a public app, which any user can install and it would redirect a user to our platform and setup this shopify integration automatically. Here’s the basic scheme, we still want to keep our platform as a separate entity, where users could login externally via social accounts like google account or username/password.

The problem

We have user access token, so we can make Shopify API calls from the external platform (like get products, orders, etc.). However we can’t figure out the unique user ID from access token (especially e-mail), so we can’t securely map our workspace with a user. There is this User resource, but it is available only for Shopify plus clients, requires manual approval from shopify support. Maybe I’m looking it the wrong way?

The perfect solution

Once a user installs our app, she/he can click the button in Shopify admin and gets redirected to our external platform where we have a dedicated “workspace” created for this user’s shop and authenticated unique user with actual user’s e-mail, and a proper Shopify integration is setup with all the required permission. Is it possible to do that?

Hello @mseimys

Did you try this FREE social login app?

https://apps.shopify.com/hook-one-tap-login