To setup your Shopify app in Cobalt for OAuth, you will need the following credentials from your Shopify Partner Dashboard:

  • Client ID
  • Client Secret
  • Scopes

Pre-requisites

  1. Shopify Developer account or Shopify Partners account. You can create one here.
  2. Shopify development store. Follow the steps here to create a development store.
If you haven’t already created an app in Shopify, you’d need to create one.

Creating an app in Shopify

To create a Shopify app and aquire the above mentioned credentials, please follow the steps mentioned below:

  1. Log in to your Shopify Partner Dashboard.
  2. Click on Apps in the left menu of the Dashboard.
Navigation for App setup
  1. Click on the Create App button in the top right and choose Create App Manually.
  2. Enter the unique App Name for your application and click on Create.
  3. In Cobalt, go to your Apps catalog > Search for Shopify > Settings > Use your credentials > Callback Url. Copy the Callback URL as provided in your Shopify settings page.
  4. In the App settings in Shopify Partner Dashboard, navigate to Build > Configuration > URLs section > Remove the default URL present in Allowed redirection URL(s) > Paste the copied Callback Url > Click on the Save and Release button in the top side > Release.
Setting up Shopify Developer app
  1. Navigate to Overview in the left menu and copy the Client ID and Client Secret from the Client credentials section.
Getting Credentials

Configuring credentials in Cobalt

App settings page lets you configure the authentication settings for an OAuth2 based application. For your customers to provide you authorization to access their data, they would first need to install your application. This page lets you set up your application credentials.

Setting up application client credentials

Cobalt lets you use pre-configured applications to play around. You can do so by selecting Use our credentials. However, if you wish to use your own application, select Use your own credentials. Provide the aquired Client Id and Client secret and save it.

Configuring Scopes

Cobalt lets you configure what permissions to ask from your users while they install your application. The scopes can be added or removed from the App settings page, under Permissions & Scopes section.

For some applications Cobalt sets mandatory scopes which cannot be removed. Additional scopes can be selected from the drop down. Cobalt also has the provision to add any custom scopes supported by the respective platform.

OAuth Scopes

Once the scopes has been added to the application in Cobalt, the app will now request for access of the mentioned scopes.

If you are facing scopes missing or invalid scope error. Make sure you are not passing any custom scope not supported by the platform.

Access to protected customer data

Some Shopify APIs alongwith the scopes, also require access to protected customer data. For eg. Abandoned checkouts, Draft Order etc.

To Request Access of protected customer data:

  1. In the left menu of the App, select API access.
  2. Scroll down to Access requests section > Protected customer data access > Request access.
protected customer data request
  1. Select Protected customer data, provide your reasons for using it, and click Save.
  2. Complete rest of the requirements and submit the app for review.
To learn more about protected customer data, visit here.

Managing Distribution of the Shopify App

After you’ve added features to your app, you need to decide how you want to distribute it to merchants.

Shopify has 2 types of distribution which depends on the purpose and audience of the app.

  • Public Distribution : This distribution ensures that the app is public and can be installed on multiple Shopify stores. App needs to be submitted to Shopify for approval and public use.

  • Custom Distribution : This distribution allows the app to be installed only on a single Shopify store or on multiple stores that belong to the same Plus Organization.

Learn more about app distribution here.

To setup Shopify App Distribution:

  1. In the left menu of App settings, navigate to Release > Distribution.
  2. Choose a distribution from Select a distribution method.
Distribution Methods in Shopify

You can’t change the distribution method after you select it, so make sure that you understand the different capabilities and requirements of each type.

  1. Click on Select and confirm the distribution selected.
  2. If selected Public Distribution, ensure that all the requirements are satisfied and submit the app for review by clicking on Create a listing.
  3. If selected Custom Distribution, provide the Store domain of the Shopify Store which is on the same Plus Organization as the one you are developing the app for.

Actions and triggers

Once the above setup is completed, you can create orchestrations of your use-cases using Shopify actions and triggers. Following are the set of Shopify actions and triggers supported by Cobalt.