Getting Started Building A Shopify App

December 23, 2015 Getting Started Building A Shopify App

Over the past week, I’ve been reading through all of the Shopify app docs to get a lay of the land for developing a public Shopify app. One thing has become clear: there is a lot of information to take in for building a Shopify app.

The Shopify docs are very well done, but I often found myself getting off in the weeds reading through the API, code and libraries. As a result, this post will represent a roadmap of the initial first steps I’ve taken to build my first Shopify app. As appropriate, I’ll link back to the relevant Shopify docs rather than repeating everything here.

Also, this past week I received approval for my first Shopify App idea! At the end of this post, I’ll give a brief overview of the idea and outline the next few posts in this Building A Shopify App series.

In this post i’ll discuss the following:

  • Creating a Shopify Partner account
  • Creating a Shopify development store
  • Choosing a Shopify App idea
  • Creating your application service
  • Creating your Shopify App listing
  • What Shopify App am I building?

Creating a Shopify Partner account

The first step you need to do before you can create a Shopify App is to signup to become a Shopify Partner.

A Shopify Partner account is free, and will represent you or your business within the Shopify app store. Shopify has an overview of the Shopify Partner account setup here.

A word of caution: Be careful how you initially enter the Company Name when setting up your partner account. This name ends up being the handle used in the links to your account going forward. Based on a few examples I’ve seen (like this one), I don’t believe this can be easily changed.

Creating a Shopify development store

Next, you’ll need to create your Shopify development store. You can create your free development store from within the Development Stores section of your Shopify Partner dashboard:

shopify-create-dev-shop

The Development store will allow you to install and test your Shopify app throughout the development process.

Choosing a Shopify App idea

At this point, you should have a general idea of the type of app you’d like to build before proceeding to the next steps.

Your app idea should, at a minimum, adhere to Shopify’s app review checklist.

In addition, it is a good idea to also submit your app for approval to the Shopify app email: apps@shopify.com. The Shopify folks responded in less than 24 hours and were very helpful with approving my idea.

Creating your application service

Your app must run on your own application server. As a result, your application service is responsible for:

  • Handling the store signup OAuth flow
  • Processing any Shopify Callbacks needed by your app
  • Serving any embedded admin views for managing your app
  • Billing integration
  • And more…

Over the course of building my first Shopify App, I plan on expanding on many of these points with their own blog post. In the meantime, here are a few resources I’ve found helpful for getting started on the application service portion of my Shopify App:

Creating your Shopify App

Once you have your application service up and running, you can create your app via the Apps section of your Partner dashboard. At a minimum, you will need to enter the following required fields:

  • Application name - The name of the application.
  • Application url - When a merchant clicks on the app banner from their store admin, Shopify will redirect them to this URL.
  • Redirect url - One or more urls you can send a merchant back to after authorizing your app.

Once you’ve created your Shopify app, you should be able to add it to your Development store and start iterating on your app’s features.

When your app is ready, Shopify also provides a nice way to submit your app for beta testing. From their docs, when you submit your app for beta testing:

One of our developer advocates will take a quick look at your listing and then publish the app as beta. Merchants will then be able to install and review your app, giving you valuable feedback!

What Shopify App am I building?

My first Shopify app will help Shopify stores showcase their Best Sellers. This is similar to what you may find on a site like Amazon:

best-seller

A best sellers list in a store provides shoppers an easy way to shop when they don’t have a strong brand preference. Shoppers can just follow the lead of the other popular products (personally this is how I often shop on Amazon).

In addition, there may be some value in surfacing these top sellers for store owners within the Shopify Admin to help with making intelligent e-commerce decisions.

This app should be able to take advantage of many of the core Shopify app components including:

  • Shopify callbacks
  • Shopify API calls
  • Embedded App SDK
  • Possibly UI hooks

The final details for this app are still to be determined. I think this should be a nice initial app to explore these topics further and share my experiences with you.

Summary

In this post, I’ve covered a high-level overview of the first steps needed to start building a Shopify app. These steps included:

  • Creating a Shopify Partner account
  • Creating a Shopify development store
  • Choosing a Shopify App idea
  • Creating your application service
  • Creating your Shopify App listing