Single sign on with Shopify Multipass

Is there an easy way to integrate with Shopify Multipass?

Thanks

3 Likes

From the looks of it you would need a custom auth plugin. Is there any reason you prefer this over existing OAuth 2 support they also provide?

Does it offer the same functionality? If so then no other reason than I didn’t know about it!

Although it seems the oauth2 isn’t available on your lower hosted packages if I’m correct?

Yeah our generic OAuth 2 plugin would be business and up, multi pass would require enterprise though and custom work

So I guess the best option is to go self hosted then.

Can we do OAuth2 on self hosted?

You can do literally anything self-hosted, provided you have sufficient time and engineering expertise!

1 Like

Sure but is there an OAuth plugin?

Yes

https://github.com/discourse/discourse-oauth2-basic

2 Likes

Did you get this to work?

Note for future visitors, Shopify’s OAuth2 integration is for store-owners only, not end users

Multipass support might be possible with a custom plugin, but note it is not quite “SSO” in the conventional sense. I believe multipass goes the other way - it would allow people to click a link on the forum and be automatically logged into the shopify store.

5 Likes

This is where you want to talk to The Pavilion (@Angus) about an integration between Shopify and Discourse.

I saw you had an old marketplace post here

Did you/pavillion manage to get true SSO working with Shopify as the identity provider? If so, awesome! (and also I’d love to know which APIs you used to achieve it :wink: )

4 Likes

Angus did pull it off, but by using Auth0 as the identity provider.

5 Likes

Cool! Does Auth0 use Shopify as the identity provider? Or has Shopify been configured to use Auth0 as the identity provider?

2 Likes

I’ll let @Angus step in with all the technical answers. He’s great to work with!

3 Likes

Auth0 is the identity provider.

Multipass is a great option if it’s available, but as mentioned, it’s an enterprise solution, i.e. you need to have Shopify Plus. If you’re using Multipass and Auth0 (or another identity provider) this is relatively straightforward. As to integrating multipass directly with Discourse (i.e. the original question), you’d need to build a plugin, but it wouldn’t be too hard.

In @outofthebox’s case Multipass wasn’t available. I implemented it using a shopify theme, Auth0 Single Page App SDK and a number of Auth0 rules. It’s somewhat involved. I hope to publish it at some point, but we’ll see.

There is probably scope for a Shopify Discourse App actually which would make this somewhat easier. I started to build it at one point, but found a more efficient way for the goal at hand.

6 Likes

Just a note that the code I referred to above is available here, along with a detailed readme.

Please note the warnings in the readme. I would not recommend you set this up unless you understand what this implementation is doing.

I plan to make a multipass integration (the official Shopify SSO solution) in the near future. If you’re interested in the multipass integration and want more concrete details you can PM me or reply here. If there’s signifcant interest I’ll prioritise it.

3 Likes

Hey @angus we’re keen on a multipass integration (we’re on Shopify Plus and looking at setting up Discourse as a community for customers), could you send some more details and when you think you’ll have something developed?

3 Likes